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
第16回 MLOps 勉強会(Online) LT枠 大田黒
Search
Hiroyuki Ootaguro
February 17, 2022
Technology
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
第16回 MLOps 勉強会(Online) LT枠 大田黒
https://mlops.connpass.com/event/236071/
Hiroyuki Ootaguro
February 17, 2022
More Decks by Hiroyuki Ootaguro
See All by Hiroyuki Ootaguro
OBD2 x RaspberryPiで車両情報を蓄積&BIで分析できるようにする
xecus
0
980
Product Development in Resilire seed phase 20210812
xecus
0
210
AI x IoT利活用SaaSにおけるデータ基盤の構築
xecus
0
1.1k
BIT VALLEY 2020 - AI x IoT活用サービスの立ち上げ・拡販のための取り組み
xecus
0
2.9k
Other Decks in Technology
See All in Technology
生成AIの活用/high_school2026
okana2ki
0
130
cccccc
moznion
0
1.9k
Amazon EVS で VCF 9.0 / 9.1 のサポート開始まとめ
mtoyoda
0
290
事業価値を⽣み出すSREへ SREが担うべき意思決定の5層
kenta_hi
2
3.5k
CSに"SLO"は要らない、経営層に"99.9%"は伝わらない - SREを全社に"翻訳"する3原則
cscengineer
PRO
1
4.5k
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.4k
ゼロをイチにする仕事が終わったあと
smasato
0
340
ZOZOTOWNの進化と信頼性を両立する負荷試験
zozotech
PRO
2
160
AI Agent SaaS を支える自社仮想化基盤への挑戦と実運用 / ai-agent-saas-virtualization
flatt_security
2
3.8k
あなたの『Site』はどこですか? — xREという考え方
miyamu
0
1.2k
SRE Next 2026 何でも屋からの脱却
bto
0
620
AIレビューはどこまで任せられるのか?自動化と人が背負うレビューの境界
sansantech
PRO
2
720
Featured
See All Featured
A Tale of Four Properties
chriscoyier
163
24k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
460
Building Flexible Design Systems
yeseniaperezcruz
330
40k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
460
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
410
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
630
Evolving SEO for Evolving Search Engines
ryanjones
0
240
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.4k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
190
Speed Design
sergeychernyshev
33
1.9k
Six Lessons from altMBA
skipperchong
29
4.3k
Transcript
2022年02月16日 大田黒 紘之 https://mlops.connpass.com/event/236071/ 第16回 MLOps 勉強会(Online) LT枠
Confidential 自己紹介 大田黒 紘之 @xecus , Born in Chiba 1994
▪東京都立産業技術高専 医療福祉工学科 コース (2009/4 - 2014/3) メカトロニクスとか数値計算周りを専攻。 人工衛星開発も一部。 ▪首都大学東京に編入 電気電子工学、半導体周りを専攻(量子効 果デバイスとか) ▪ABEJA 2015年〜 ・Insight for Retail (IoT x AI利活用プロダク ト)の立ち上げ・拡販 ・AIプロダクト事業部 プラットフォーム グループMGR (2022年1月現在) 社内勉強会用
Confidential 突然ですが.... 車を買ったので、世界で一つだけのMyドライブレ コーダーを作りたい!! 社外勉強会用
Confidential 何がやりたいか 4 ドライブ レコーダー <従来のドライブレコーダー> SD Card <今考えているドライブレコーダー案> ドライブ
レコーダー SD Card 動画 ストレージ AI推論による 意味づけ 車両情報 (運転情報) BIツ ール 等 事故が起きた時に自分・警察・保険会社が見る (それ以外のシーンではほとんど使わない) ECU 車を運転し続けるという体験をアップデートできる Something GPS 社外勉強会用
Confidential 機能の指向性を妄想 5 • ①細かい車両情報(OBD)を蓄積&BIツールで分析できるようにする (オレオレドラレコ基本機能) • ②撮影した動画をクラウド上で見ることができる(オレオレドラレコ基本機能) • ③車の維持が楽になる世界
◦ 時間・走っている場所毎のガソリン消費量や燃費変動の見える化。ガソスタレコメンド。 ◦ 車の部品のリアルタイム故障検知・予測(車のオルタネータが劣化してきた、BAT電圧低い等) ◦ オイル交換やオイルフィルター交換等の目安と近くのお店をレコメンドしてくれる世界 • ④車と家族の思い出を振り返られるような世界 ▪ GPSを用いた走行ログの蓄積と可視化。動画と連携。携帯のアプリから見る事ができる。 • ⑤解像度の高い運転危険情報が見えるようになる世界 ◦ 動画情報の意味解析を通じて、地域ごとのヒヤリハット情報等を蓄積化 & カーナビ反映 ◦ 例:地域ごとの危険イベントの集計・見える化 • ⑥企業やドライバーが環境に配慮できる世界観 ◦ 低炭素社会実現の為のCo2排出量の見える化 (SDGs, ESG文脈でもありそう) 個人 社会 社外勉強会用
Confidential 課題解決のアプローチ 6 ・ビジョン思考とデザイン思考を組み合 わせて、アプローチしてみる。 ・自分自身ソフトウェアエンジニアなの で、プロトタイピングをしながら進めて みる https://diamond.jp/articles/-/195874?page=2 社外勉強会用
Confidential OBD2 7 • OBD = On Board Diagnosis (車の自己診断機能)
• CAN通信というプロトコルを拡張している • OBDの歴史は深い ◦ 1971年 FI(Fuel Injection: 電子制御式燃料噴射装置)搭 載車の登場 ◦ 1980年代 自己診断機能で修理しやすく ◦ 1982年 自己診断機能の統一化からOBDの誕生 => OBDのベースに ◦ 1996年 OBD-IIの登場 (20年以上前からある枯れたプ ロトコル) • めっちゃいろんなデータが取れる ◦ https://en.wikipedia.org/wiki/OBD-II_PIDs 仮説:OBDを使えば、超細かい車両情報が ドライブレコーダーに記録できるかも 社外勉強会用
Confidential OBD2 8 ※OBD端子の位置はメーカー・車種に依存 (TOYOTA RAIZEは運転席の足元に) 社外勉強会用
Confidential OBD-IIを利活用するには 9 ECUや周辺コンポーネントのCANバスがOBD用物理ポートから出ているので、 そこを拝借して、データの送受信を行う (結構怖いw) http://make.bcde.jp/raspberry-pi/obd2canで自動車と通信ハード編/ https://monoist.itmedia.co.jp/mn/articles/0807/09/news140.html 社外勉強会用
Confidential OBD-IIを利活用するには 10 オレオレレコーダープログラム On RaspberryPi オレオレプロトコルスタック ここをうまくや ってくれる物理 層周りのハード
ウェアが必要 社外勉強会用
Confidential OBD2 (CANBUS)の通信ハードウェア 11 MCP2515 CANコントローラー MCP2551 CANトランシー バーIC https://docs.longan-labs.cc/1030001/
CANコントローラのICを使い、RaspberryPiやMCUと通信できるようにする ※カニチップ(Ethernetコントローラー)みたいなもん https://diary.freebbs.biz/archives/cat23/raspberrypi_spi.php 社外勉強会用
Confidential OBDコネクタからCANバスへのアクセス 12 CANコントロー ラーモジュール (UART制御) USB⇔UART変 換 モジュール 社外勉強会用
Confidential OBD2 13 社外勉強会用
Confidential OBD2フレームの解析 14 ECU (PID: 0x7E8)からサービスID(0x01)・データPID(0x0C: EngineSpeed)のリクエストに対す る応答。データLengthは4Byte データは 0x0D190000(00)
→ (0x0D ✕ 256 + 0x19) / 4 = 838 Rpm 社外勉強会用
Confidential システム全体像 15 Raspberry Pi 車両情報等 BIツールで 振り返り 社外勉強会用
Confidential RaspberryPi ⇔ 車両部分 16 CAN通信モジュール USB⇔CAN変換 USB⇔Serial変換 (FT234等) Serial⇔CAN通信
(Seeed社 Serial CAN- BUS Module) MCP 2551 MCP 2515 CAN通信モジュール RaspberryPi CAN通信モジュール OBD情報取得 プログラム (obd_recorder.go) /mnt/usb_memory Engine_rpm.jsonl xxxx.jsonl CAN通信モジュール OBD2端子 ECU #1 ECU #1 ECU #1 車両側 /dev/tty USB0 社外勉強会用
Confidential RaspberryPi ⇔ クラウド(GCP)部分 17 CAN通信モジュール RaspberryPi CAN通信モジュール /mnt/usb_memory CAN通信モジュール
GCP (クラウド側) Streaming Insert Engine_rpm.jsonl xxxx.jsonl Service Account ※数時間程度のざくっとプロトタイピング。下記プラグインを利用 https://github.com/fluent-plugins-nursery/fluent-plugin-bigquery OBD情報取得 プログラム (obd_recorder.go) car_dataset engine_rpm_table xxxx_table 社外勉強会用
Confidential データ取得の様子@京葉市川パーキングエリア 18 社外勉強会用
Confidential BIツール(Redash) x OBDデータ 19 • 現在取得できているデータ ◦ エンジン回転数(RPM) ◦
エンジン負荷(%) ◦ アクセルの位置(%) ◦ 冷却材の温度(C) ◦ 大気の圧力(kPA) →高度情報取れる ◦ インテークの温度 ◦ インテークの圧力 ◦ バッテリーの電圧 ◦ Short Time Fuel Trim (短期燃料トリム) ◦ Long Time Fuel Trim (長期燃料トリム) ◦ エンジン始動からの経過時間 社外勉強会用
Confidential ProtoTyping部分 20 社外勉強会用
Confidential WebカメラをRaspberryPiに接続 21 • ドンキカメラ ◦ MJPG ▪ 1280x720 30FPS
◦ YUYV ▪ 640x360 30FPS 社外勉強会用
Confidential ProtoTyping部分 22 RaspberryPi CAN通信モジュール video_recorder.py /mnt/usb_memory/videos CAN通信モジュール GCP Streaming
Insert YYYYMMDD-HHMMSS.mp4 Service Account video_uploader.py 社外勉強会用
Confidential OpenCVでWebカメラの映像を保存 (video_recorder.py) 23 • OpenCVのVideoCaptureとVideoWriterを用い て、60秒おきにファイル書き出しを実施 • 動画中に撮影時間をputTextを記載 社外勉強会用
Confidential 保存した動画のGCSアップロード (video_uploader.py) 24 • VideoRecorderの出力するmp4ファイルを随 時GCSへ動機 • (FluentdやEmbulk等で、ファイルの TIMESTAMPからパスをいい感じに調節しなが
らアップロードできるならそちらに切り替えた い) 社外勉強会用
Confidential オレオレドライブレコーダーの映像解析 25 • 映像データの意味付け ◦ ObjectDetection ▪ https://github.com/open- mmlab/mmdetection
◦ Segmentation ▪ https://github.com/open- mmlab/mmsegmentation 社外勉強会用
Confidential ABEJA Advent Calendar 2021の1日目の記事。 https://qiita.com/xecus/items/c96bec764e20946059a0 元ネタ 社外勉強会用
Confidential 紹介①: ABEJA Platform (MLOps Platform) 27 社外勉強会用 https://abejainc.com/platform/ja/
Confidential 宣伝①: ABEJA Platform (MLOps Platform) 28 社外勉強会用 https://qiita.com/Nagafuchik/ items/f265824e8091f5c384a9
https://qiita.com/naoki0423/ items/1cf91993561712be8c13
Confidential 宣伝②:ABEJA 採用強化しています! 29 社外勉強会用 https://hrmos.co/pages/abeja/jobs