161 Views
March 13, 25
スライド概要
ROSJP LT Raspberry Pi で動かす カメラベースオドメトリ推定 2024/12/27 サイバーエージェント AI Lab 石田岳志
AI Lab の紹介 学術貢献 事業貢献 自己位置推定 3次元復元 環境理解 2
スマートカートを作ってみたい 自己位置推定を用いたサービスの可能性検証
こんな経験ありませんか? ● 広いホームセンターで ○ ● 欲しいものを探して店内を行ったり来たり... せっかくスーパーに行ったのに... ○ 料理酒買い忘れた!! 4
店舗内を案内してくれるショッピングカートの開発 ● 欲しい商品まで案内 ● おすすめ商品の提示と案内 実現可能性を検証するため、 簡単なものを作って実験中 5
Q. カートのナビゲーションに必要なものは? 6
Q. カートのナビゲーションに必要なものは? 自己位置推定 自分の居場所がわからなければ 欲しいものにたどりつけない 7
自己位置推定に必要なセンサー カメラ ● 安価、低消費電力 LiDAR ● 正確な位置推定ができるが 店舗で使うには高価、高消費電力 ● ショッピングカートが数十万円 2時間おきに充電 → 導入してもらえない 8
自己位置推定に必要なセンサー カメラ ● 安価、低消費電力 LiDAR ● 正確な位置推定ができるが 店舗で使うには高価、高消費電力 ● ショッピングカートが数十万円 2時間おきに充電 → 導入してもらえない 9
利用したセンサ RealSense D455 ● ● 高価だが、ひとまず実験用に ○ ROS2で動かせる ○ 視野角が広い ○ ステレオカメラ・IMU の利用可能性も探れる 実際のカートにする際はより安価なセンサを使いたい Intel RealSense D455 10
これまでの取り組み 地図に対する自己位置推定 3次元復元ソフトウェア COLMAP で 画像から店舗の地図を作る パートナーであるサツドラホールディングス株式会社様のご協力のもと EZOHUB TOKYO でデータを取得しました 11
これまでの取り組み 地図に対する自己位置推定 店舗の地図ができたぞ! 12
これまでの取り組み ● 地図に対する自己位置推定 入力画像と地図の情報をマッチングし、位置推定 ○ 正確な位置推定が可能 ○ 処理が重い (この動画ですら4倍速) https://youtu.be/OBBnJqUkoQg パートナーであるサツドラホールディングス株式会社様のご協力のもと EZOHUB TOKYO でデータを取得しました 13
カートにカメラを取り付けて自己位置推定するには ● 安価な計算機でも滑らかに動いて欲しい ● もっと軽量な位置推定手法はないか? 14
カートにカメラを取り付けて自己位置推定するには ● 安価な計算機でも滑らかに動いて欲しい ● もっと軽量な位置推定手法はないか? オドメトリ推定 15
オドメトリ推定 局所的な移動を計測する技術 ● 地図上での位置はわからない ● 局所的な移動だけがわかる 長所 地図とのマッチングをしないため 高速に動作可能 短所 長時間推定を続けると https://youtu.be/qbEtsQFN57k パートナーであるサツドラホールディングス株式会社様のご協力のもと EZOHUB TOKYO でデータを取得しました 誤差が蓄積していく 16
PC を台車に載せ、カートに見立てて実験 ● 台車に RealSense と Ubuntu PC を載せて動かしてみる 17
オドメトリ推定 対象環境 https://youtu.be/4dIjLJ6BXzM パートナーであるサツドラホールディングス株式会社様のご協力のもと EZOHUB TOKYO でデータを取得しました 18
オドメトリ推定 赤外線ステレオ画像からオドメトリを推定 赤外線ステレオ → 深度推定用の赤外線照射パターンを無効化 画像特徴点 (デバッグ用) → RGB (推定には使用せず) → https://youtu.be/K2RWohNj5ek パートナーであるサツドラホールディングス株式会社様のご協力のもと EZOHUB TOKYO でデータを取得しました 19
エッジデバイスでの動作 スマートカートに載せるため 安価なコンピュータで動かしたい Raspberry Pi 4B 20
Raspberry Pi 4B でオドメトリ推定を動かす ● オドメトリ推定を Raspberry Pi 4B で動かす ● 結果は Raspberry Pi のモニタで表示 モジュール構成 21
Raspberry Pi 4B でのオドメトリ推定 ● Raspberry Pi 4B でも 遅延なく動作することを確認した ● 1フレームあたり 20ms 程度で処理できた ● 小型ディスプレイで表示しているので 画質は荒い https://youtu.be/RHn2tNZQpBQ 22
大変だったこと ● C++ のビルドに時間がかかりすぎる ○ Raspberry Pi 4B で C++ をビルドすると遅い... ○ 1行書き換えてビルドし直す → 3分かかる 23
まとめ ● スマートカート技術検証のため、2つの手法を実装した ○ 地図に対する位置推定 ○ オドメトリ推定 ● オドメトリ推定は Raspberry Pi 4B 上でも動作した ● 2つの手法を組み合わせ、 高速で滑らかに動作する位置推定手法を開発できる 2つの位置推定手法をマルチスレッドで動かし、結果を統合 24