2013年6月24日月曜日

ROSのccny_rgbdでmapping

RGBDセンサからの画像だけで,自身の移動距離を推定するvisual odometryを使います.

そのために参考[1,2]に沿ってccny_rgbd_toolsをインストールします.

前準備

ccny_rgbdを使う前に,下のことはやっておきます.
  1. rosmakeのために~/rosをROS_PACKAGE_PATHに追加
  2. Xtionドライバ設定

インストール


ccny_rgbd_toolsはapt-getで取れないみたいなので,githubからソースコードを取ってきてmakeします.

rosmakeをするために,ホームフォルダのrosに移動します
cd ros

git(ソースコードを取ってくるプログラム)をインストールします
sudo apt-get install git-core

ソースコードを取ってきます
git clone https://github.com/ccny-ros-pkg/ccny_rgbd_tools.git

必要なパッケージをインストールします
rosdep install ccny_rgbd_tools 

makeします(10分くらいかかりました.前準備の1が必須です)
rosmake ccny_rgbd_tools 

これでインストールは完了です.

実行

mappingのプログラムを動かしてみます

ccnyのopenniを実行します
roslaunch ccny_openni_launch openni.launch publish_cloud:=true

別の端末でccnyのマッピングを実行します
roslaunch ccny_rgbd vo+mapping.launch

別の端末でrvizを起動します
rosrun rviz rviz

rvizの起動後はメニューバーから「File」→「Open Config」を開きます

その後,~/ros/ccny_rgbd_tools/ccny_rgbd/launch/vo+mapping.rvizを選択します.


すると,マップっぽい表示が出ます.


画像が出ると嬉しいです.

課題

参考[1]には「↓のコマンドを入力すればslamが使えるよ」とあるんですが,エラーが出てcallできません.
rosservice call /generate_graph 
rosservice call /solve_graph




↓でサービスを確認すると,上のサービスはリストに存在します.なぜcall出来ないのか謎です.
rosservice list

解決策を知っている方がいらしたら、教えて頂けるとありがたいです.

参考

  1. ROS.org:ccny_rgbd_tools
  2. github:ccny_rgbd_tools


0 件のコメント :