Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ドラレコのデータを解析してみた
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
SuzukIoT
August 11, 2021
Programming
0
420
ドラレコのデータを解析してみた
ドラレコに記録されているGPSとGセンサーの値を調べてみた話です。今回はPioneerのVREC-DH300Dを購入してデータを解析した結果を共有します
SuzukIoT
August 11, 2021
Tweet
Share
More Decks by SuzukIoT
See All by SuzukIoT
ゆるくはじめたハードウェア製作 その後
suzukiot
0
380
KURUMA IoTLT Vol.4 オープニング
suzukiot
0
380
VREC-DH300D データ解析・続
suzukiot
0
570
ゆるくはじめるハードウェア製作
suzukiot
0
550
KURUMA IoTLT
suzukiot
0
280
The Things NetworkのLoRa WANゲートウェイを設置しました その2
suzukiot
0
360
The Things Network の LoRa WAN ゲートウェイを設置しました
suzukiot
0
460
スマホと車を繋ぐSmartDeviceLinkについて
suzukiot
0
770
Other Decks in Programming
See All in Programming
Swift ConcurrencyでよりSwiftyに
yuukiw00w
0
250
手戻りゼロ? Spec Driven Developmentとは@KAG AI week
tmhirai
1
170
CSC307 Lecture 13
javiergs
PRO
0
310
Claude Code、ちょっとした工夫で開発体験が変わる
tigertora7571
0
200
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
360
API Platformを活用したPHPによる本格的なWeb API開発 / api-platform-book-intro
ttskch
1
120
守る「だけ」の優しいEMを抜けて、 事業とチームを両方見る視点を身につけた話
maroon8021
3
360
オブザーバビリティ駆動開発って実際どうなの?
yohfee
3
740
Takumiから考えるSecurity_Maturity_Model.pdf
gessy0129
1
130
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
160
ご飯食べながらエージェントが開発できる。そう、Agentic Engineeringならね。
yokomachi
1
290
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
650
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
187
22k
Mobile First: as difficult as doing things right
swwweet
225
10k
Darren the Foodie - Storyboard
khoart
PRO
3
2.7k
Building Applications with DynamoDB
mza
96
6.9k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.2k
Speed Design
sergeychernyshev
33
1.6k
Ethics towards AI in product and experience design
skipperchong
2
220
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
320
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
140
Navigating Weather and Climate Data
rabernat
0
130
Building an army of robots
kneath
306
46k
Transcript
ドラレコのデータを解析してみた ドラレコのデータを解析してみた KURUMA IoTLT Vol.3 KURUMA IoTLT Vol.3 2021/08/11 2021/08/11
SuzukIoT@sZtk1 SuzukIoT@sZtk1 📧 suzuki tenfourth.jp
愛車遍歴 • MAZDA Atenza SEDAN • ディーゼル 2200cc • FF2WD
6MT とある漫画でディス られてます
これまで運転してきた車 • 三菱 Λ(ラムダ)ギャラン エテルナ • FR / 5MT •
パワステなし • 運転免許取り立て から 🔰 • ダイハツ ミラ Xリミテッド • FF / AT • 高性能HDDナビ搭載 妻
ドラレコに記録されているデータ • カメラの映像 • GPSの情報 (正確にはGNSS) • Gセンサー
GPSの情報 • 緯度経度 • 時刻 • 速度 • 高度 •
進行方向 • 位置情報の精度 機種により記録されてない場合も ある
Gセンサー • 通称:加速度センサー (Gは重力) – X軸、Y軸、Z軸の3軸が主流 – 強い衝撃が加わった事が分かる – 細かく見ると、急のつく操作を検知できる
• 急加速、急減速、急ハンドル – ノイズ成分が多いので誤検知もある • 装置に加わる振動、傾きで値が変わる
ドラレコのデータを可視化してみる • この画面にドラレコのmicroSDのフォルダーをド ラッグ&ドロップする • 記録された位置の軌跡 • 速度等のグラフが表示できる https://tenfourth.jp/apps/driveplayer/
データの見方 (Speed) どこでどれだけ速度を出していたか分かる
データの見方 (Altitude) 標高の高低が分かる (GPSなので誤差多め)
データの見方 (Variation) • 北を0度で時計回りの角度で進行方向を示す • 値が変わった所が曲がった場所
データの見方 (G sensor) • X軸:前後 (加速減速、減速が+、加速-) • Y軸:左右 (符号はセンサー次第) •
Z軸:上下 (何かの段差や踏んだ際の衝撃)
データの見方 (DOP) • GPSの感度が悪い時に値が上がる (位置がずれやすい) • トンネル内、立体駐車場、ビルの間など • 相対的な値なので、機種や取付方により数値は変わ る。一律な評価はできないが感度が悪い場所の特定
は可能
読み込み可能なデータ • 現状対応できているのは、一部の機種のみ – KENWOOD – Pioneer NMEAを書き出す機種のみ ナビ連携機種も色々カスタマイズされてて無理っぽい GPSもGセンサーも無い機種は当然非対応です
手持ちは KNA-DR300
対応機種を増やしたい • 色々な機種のデータを見た い欲求でドラレコを購入 • Pioneer VREC-DH300D – 2021年 5月
発売モデル – 前後カメラ – GPS搭載 – Gセンサー搭載
機種の選定理由 • PCアプリ非対応! https://jpn.pioneer/ja/carrozzeria/recorder_sd/list/
ディレクトリ構成 • microSDにはMP4の動画ファイルのみ GPS と Gセンサーのデータは書き込まれてないのか? 無いからPCアプリ非対応なのか?
MP4ファイルの解析 • MP4(MOV)のファイル → BOXの集まり – Size(4バイト) FourCC (4バイト) 何のデータかを示す文字列
Payload データ本体 • Payloadの中に子のBOXが入る事もある – つまり、階層構造となっている • 謎のFourCCがあるか? • Size の値より外に余分なデータが含まれてないか?
BOXの階層構造 • 普通の動画ファイルのようだった • BOX外にデータは連結されてない • 不明なFourCC – samn: 分からないけど32バイトは小さすぎ
– thm: サムネイルのJPEG画像だった – free: 怪しいけど、規則性が無さそう
3つ目のtrak • メタデータのトラックがあった 普通はビデオとオー ディオの2トラック
メタデータの詳細 • 3分間の動画に180個 → 1秒 1サンプル • サイズは276バイトで固定 位置情報とGセンサーのデータがありそう?
1データを見てみる 46 4D 41 53 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 08 01 08 06 08 02 04 07 02 06 00 00 00 00 00 00 00 00 00 00 00 00 00 4F 46 4E 49 4D 4D 41 53 53 41 4D 4D 01 00 00 00 00 00 00 00 00 00 00 00 E5 07 07 1E 10 29 2E 1B 02 00 00 00 8E 37 DE 3D 20 7F 7C 3F 0B 2B 2C 3E 41 45 4E 8C 02 00 15 01 23 3B 0D 14 28 00 58 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 44 41 54 45 45 54 41 44 文字“FMAS” 文字“DATEE” 文字“TAD”
データの変化を見てみる で括った所が、1ず つ増えている。恐らく時刻? 2C →2D →2E
E5 07 07 1E 10 29 2C 2021 (07 E5)
年 7月 30日 16時 41分 44秒 時刻データの取得 動画に埋め込まれている日時と一致した 年はリトルエンディアン E5 07 → 58631 だったので最初は分 からなかった 時刻は日本時刻
測位不可時のデータを見る GPSが取れてなくても変化す る値は、恐らくGセンサー? 予想: 0x6c ~ 0x77 の12バイトで4 バイト×3軸分の加速度が入っ ていると予想
Gセンサーの取得 4バイトで1軸分のデータと想定して値を出してみる console.log(Buffer.from([0xd9, 0x64, 0x13, 0x3f]).readFloatLE(0)); console.log(Buffer.from([0x0e, 0x38, 0x60, 0x3c]).readFloatLE(0));
console.log(Buffer.from([0x3c, 0xc9, 0x25, 0x97]).readFloatLE(0)); 0.5757575631141663 0.013685239478945732 -5.35683689084154e-25 G単位の値っぽい気はするけど、まだ断定できない D9 64 13 3F 0E 38 60 3C C9 25 97 BF
緯度経度と速度 測位出来ているデータを比較する 移動変化の少ない時の2秒分のデータ を見る 時刻データ Gセンサーの値
緯度経度と速度 • “AEN”は何かは不明。E→EAST、N→NORTHでは? • 速度が 04 (0x84) とあるので、“AEN”の直後(0x7b)~速度 の手前(0x83) の間に緯度経度があると予想した
緯度経度のデータ取得 • 経度→緯度の順でデータが入っていた • 経度の“分”が2桁? (0~60なので1桁で十分だけど) 経度 緯度 度 分
秒 度 分 秒 8C 03 00 C6 15 24 00 4E 15 140 3 5574 (15C6) 36 0 5454 (154E)
今後の展開 • ドラレコデータ可視化アプリの開発進捗を公 開していきたい • ドラレコデータの解析リクエストお待ちして おります (データを提供ください)