DINOv2 を使って、ROS2 SLAM(自己位置推定)に役立てる。
前回、フィジカルAi で ROS2 自立走行ロボットを動かす。#2
で、Diffusion policy の input に、DINOv2 を使った model を試したが、
"DINOv2 の input 画像に何か入れると、特徴量を返してくる" 特性を活かすと、
一度通った場所のランドマークを記憶させられる様じゃ。
これを使えば、SLAM(自己位置推定)が、行える。もう、Static Map を予め作る必要がない。
Google Ai に色々訪ねていたら、教えてくれた。
なんとも便利な Model を、Meta(旧 Facebook)が作ってくれたもんじゃ!!
1. 概略は、
1.1 SLAM データ作成。
1) 屋外で、ロボットの走行コース上で、10[M] ごとに、RGB Camera の画像と、その時の、gnss-rtk から求めた、緯度、経度と、ロボットの向きのデータを集めて回る。
この時、no を順に割り当てて行く。
2) 上記データの画像をDINOv2 の feed させて、その特徴データを、Faiss( ベクトルデータが扱える DB) に、順に登録する。
以上で、 今回の、SLAM コース情報の出来上がり。
1.2 ROS2 diff car ロボットでの利用。
3) ROS2 diff car ロボットで、RGB カメラの画像を、DINOv2 の feedさせて、
出てきた特徴量で、Faiss の検索をかける。
特徴量が見つかると、Faiss は、登録時の no を返してくるので、
先に集めた、data の no と一致する、緯度、経度から、今の 位置を得る。
しかし、gnss-rtk があれば、必要が無いが!!
gnss-rtk が使えない、室内だと使えるかも。
検証コードは、python pytorch で、簡単に書ける。
Googl Ai に聞けば、コードを教えてくれる。
このページの 1.概略 の部分を Google Ai に聞けば教えてくれる。
コード自体は、簡単だから、試してみては?
ただし、Inference 時のハードのリソースが、結構要求される。
ROS2 実機 Diff Drive Car で実装、テストするには、ここが難問か!!
以前、SLAM でランドマークを使う方法を模索していたが、
ROS2 自作 Turtlebot3 による 草刈りロボット開発。#15 Robot Localization
これが、上記の、回答になりそう。
Diffusionの最近のブログ記事
DINOv2 を使って、ROS2 SLAM(自己位置推定)に役立てる。
おんちゃん (2026年7月 1日 17:19)
フィジカルAi で ROS2 自立走行ロボットを動かす。#2
おんちゃん (2026年6月16日 13:32)
フィジカルAi で ROS2 自立走行ロボットを動かす。#2
ACT の sub goal が、芳しくないので、業を煮やして、diffusion の sub goal を試してみた。
まだ、作っている途中だが、簡単に動いた。
こちらは、優秀みたいじゃ。
なんじゃこりゃ、こんなに、簡単にうごくの?
LeRobot ACT sub goal で、使った 同じ ROS2 bag ファイルを使って、 train させました。
ROS2 Gazebo WearHouse Tugbot で、 sub goal node を作って、走行させたら、うまく完走できるようです。
当初、TF 補正ナシで、走行させていましたが、TF 補正有りが必要だとわかって、TF 補正して、走行させたら、うまく完走できるようになりました。
しかし、あまりに、障害物の近くを走行するので、見ていて冷や冷やします。
ROS2 広域 Planner の走行パスを使って、複数のチェックポイントを、 model に入力して、走行させますが、
model は、それを完全になぞることはせずに、自分の学習脳の判断で、あくまで走行します。
ここが、ROS2 Nav2 の走行とちょっと違うかな?
train 用の、ROS2 bag データを採る時は、障害物から少しゆとりをもって離れた場所を走行させた方がよいぞね!!
検索
このアーカイブについて
カテゴリ
- AI (8)
- CentOS7.x (5)
- ChatGPT (1)
- Orange PI 5 (5)
- QGIS (1)
- ROS2 (31)
- T100TA (2)
- Ubuntu Mate 20.04 (1)
- Windows (11)
- armbian (4)
- おんちゃんの雑談 (21)
- アフェリエイトで儲けるぞ。 (1)
- セキュリティー (5)
- プログラム開発 (139)
- Android Studio 2.1 (1)
- Android Studio Flamingo (3)
- C++ CGI (4)
- CNTK 2.4 (8)
- CUDA Programming (1)
- Coral EdgeTPU (9)
- ESP32 esp-idf (23)
- GPS (10)
- IMU (7)
- Java (9)
- Jetson Nano (17)
- Keras (12)
- OpenCV2 (1)
- OpenCV3.3.x (3)
- OpenCV3.4.2 (1)
- OpenCV4.1.1 (1)
- PIC (4)
- Perl CGI (2)
- Platformio IDE (7)
- Pytorch (13)
- ROS (43)
- Raspberry Pi (5)
- Sipeed MAix (10)
- Stereo Camera (3)
- TensorFlow (14)
- TensorFlow 2 (9)
- TensorRT 5.1 (2)
- Visual Studio Code (1)
- esp32 arduino (8)
- esp8266 arduino ide (5)
- node.js (5)
月別 アーカイブ
- 2026年8月 (1)
- 2026年7月 (5)
- 2026年6月 (1)
- 2026年5月 (5)
- 2026年4月 (3)
- 2026年3月 (3)
- 2026年2月 (2)
- 2026年1月 (7)
- 2025年12月 (2)
- 2025年11月 (5)
- 2025年10月 (6)
- 2025年9月 (1)
- 2025年8月 (5)
- 2025年7月 (10)
- 2025年6月 (2)
- 2025年5月 (2)
- 2025年4月 (1)
- 2025年3月 (1)
- 2025年2月 (1)
- 2025年1月 (1)
- 2024年12月 (2)
- 2024年11月 (3)
- 2024年9月 (4)
- 2024年8月 (4)
- 2024年7月 (3)
- 2024年6月 (6)
- 2024年5月 (2)
- 2024年4月 (3)
- 2024年3月 (1)
- 2024年2月 (2)
- 2024年1月 (3)
- 2023年12月 (1)
- 2023年11月 (2)
- 2023年10月 (1)
- 2023年8月 (2)
- 2023年7月 (2)
- 2023年6月 (5)
- 2023年5月 (1)
- 2023年4月 (3)
- 2023年3月 (4)
- 2023年2月 (2)
- 2023年1月 (2)
- 2022年12月 (3)
- 2022年11月 (3)
- 2022年10月 (1)
- 2022年9月 (2)
- 2022年8月 (2)
- 2022年7月 (3)
- 2022年5月 (3)
- 2022年4月 (1)
- 2022年2月 (3)
- 2022年1月 (1)
- 2021年12月 (3)
- 2021年10月 (4)
- 2021年9月 (8)
- 2021年7月 (3)
- 2021年5月 (2)
- 2021年4月 (3)
- 2021年3月 (9)
- 2021年1月 (9)
- 2020年12月 (2)
- 2020年11月 (7)
- 2020年10月 (3)
- 2020年9月 (3)
- 2020年8月 (2)
- 2020年7月 (4)
- 2020年6月 (1)
- 2020年5月 (2)
- 2020年3月 (7)
- 2020年1月 (3)
- 2019年11月 (5)
- 2019年10月 (1)
- 2019年9月 (1)
- 2019年8月 (1)
- 2019年7月 (4)
- 2019年6月 (1)
- 2019年5月 (3)
- 2019年3月 (1)
- 2019年2月 (2)
- 2019年1月 (3)
- 2018年12月 (9)
- 2018年10月 (3)
- 2018年9月 (2)
- 2018年6月 (5)
- 2018年4月 (2)
- 2018年3月 (1)
- 2018年2月 (1)
- 2018年1月 (1)
- 2017年12月 (2)
- 2017年10月 (5)
- 2017年9月 (1)
- 2017年8月 (1)
- 2017年4月 (1)
- 2017年1月 (1)
- 2016年8月 (1)
- 2015年11月 (1)
- 2015年10月 (1)
- 2015年9月 (1)
- 2015年4月 (1)
- 2015年2月 (2)
- 2015年1月 (1)
- 2014年8月 (1)
- 2014年7月 (1)
- 2014年1月 (1)
- 2013年7月 (1)
- 2013年4月 (1)
- 2012年11月 (1)
ウェブページ
- ウエブページの練習です。
- images