さくっとPTAMをROSで試す(2)・・・USBカメラを接続する
前回の記事
実際にカメラを接続して、PTAMを利用してみる。
カメラは広角の方が良いらしい。広角の分、広い範囲を撮影でき、多くの特徴をトラックできるからだと思われる。
使ったカメラはこちら。
iBUFFALO マイク内蔵200万画素WEBカメラ 120°広角ガラスレンズ搭載モデル BSW20KM11BK
- 出版社/メーカー: バッファロー
- 発売日: 2012/07/20
- メディア: Personal Computers
- 購入: 1人 クリック: 1回
- この商品を含むブログ (4件) を見る
環境
- ホストOS:Windows10
- ゲストOS:Ubuntu14.04
- VirtualBoxバージョン:5.0.12
VirtualBoxの設定
- VirtualBoxのゲストOSからホストのWebカメラを使う - Kikuchy's Second Memory
http://kikuchy.hatenablog.com/entry/2014/02/23/VirtualBox%E3%81%AE%E3%82%B2%E3%82%B9%E3%83%88OS%E3%81%8B%E3%82%89%E3%83%9B%E3%82%B9%E3%83%88%E3%81%AEWeb%E3%82%AB%E3%83%A1%E3%83%A9%E3%82%92%E4%BD%BF%E3%81%86
VirtualBoxにExtension Packを導入。
ゲストOS側での設定
ゲストOSを起動して、VirtualBoxのタブより”デバイス”→”WEBカメラ”から、接続したカメラを選択する。
ROSの設定
下記サイトを参考。
- SVOをWindows上のVirtualBoxのUbuntuで動かす(その2:カメラ編) - cvl-robot's diary
http://cvl-robot.hateblo.jp/entry/2014/07/03/171452
sudo apt-get install ros-indigo-cv-camera
動作を確認。下記コマンドはそれぞれ別ターミナルで実行。(source devel/setup.shも忘れずに)
rosrun cv_camera cv_camera_node rosrun image_view image_view image:=/cv_camera/image_raw
これでカメラの映像が取り込めていることが確認できる。 とりあえずROSのPTAMに映像を流し込んでみる。
まず、PTAMのlaunchファイルをいじる。
cd ~/catkin_ws/src/ethzasl_ptam/ptam/launch nano ptam.launch
以下の記述を修正(cv_cameraの記述)
<remap from="image" to="$(openenv IMAGE /cv_camera/image_raw)" />
これで、PTAMとcv_cameraを接続できる。 起動してテストしてみる。
rosrun cv_camera cv_camera_node
roslaunch ptam ptam.launch
ノードの接続を確認してみる。
rosrun rqt_graph rqt_graph
しかし、カメラの画像データ形式が違うのか、うまく表示されない。