#Jetson+D435i+T265でSLAMやってみたい
先のエントリーで、セットアップまでできて、それっぽく動かしてみました。
試行錯誤しながら順番に動かしてみることにします。
ターミナルを2つ立ち上げて実行。
roslaunch realsense2_camera rs_t265.launch
rostopic echo /tf
Rvizに出力するにはDEMOを動かしたらOKです。
roslaunch realsense2_camera demo_t265.launch
#SLAM
こちらのページを参考に、SLAMをやってみます。
RealsenseでSLAMをする。
roslaunch realsense2_camera rs_aligned_depth.launch
roslaunch rtabmap_ros rtabmap.launch rtabmap_args:="--delete_db_on_start" depth_topic:=/camera/aligned_depth_to_color/image_raw rgb_topic:=/camera/color/image_raw camera_info_topic:=/camera/color/camera_info
SLAMはできているみたいですが、右半分は更新されずに背景の残骸になっています。
別のデモを動かしてみます。
roslaunch realsense2_camera opensource_tracking.launch
こちらのページが参考になります。
RealsenseでSLAM, visual odometry
他にも、モータを動かす参考に、JetBotもあります。
JetBot
私と同じくSLAMを動かそうとしている人もいます。
ちょっと調べると、参考になりそうなサイトを発見。
【7Days自由研究】Visual SLAMとROSを使えるようになる話 Day-5
#ROSの使い方を整理
理解しないままSLAMを呼び出ししようとしても時間の無駄ですので、もう少し整理することにします。
そもそもやりたいことは、D435iで周辺をマッピングし、T265で自己位置推定。
それができるようになれば適当なROSのスクリプトを書いてラジコンが走らせられます。
REALSENSE_ROSのドライバに添付のlaunchファイルを使うと、ぞろぞろトピックが吐き出されます。
うまいこと吐き出したトピックを捕まえて処理することができれば良いのです。
先程、T265のトピックはかんたんに捕まえることができました。
D435iはどうでしょう。
試しにサンプルを実行して、どうなっているかを確認します。
roslaunch realsense2_camera opensource_tracking.launch
実行するとこんな感じ。
設定はこんな感じ。
PointCloud2>Topic = /voxel_cloud
MapCloud>Topic = /rtabmap/mapData
ノード間の関係性をグラフ化して表示する。
rosrun rqt_graph rqt_graph
この接続をうまいこと組み替えたら、いい感じになる?