Intel RealSense D435 をROSで使う
Intel RealSense D435を買いました!
とりあえず、ROSで動かせるようにします。
環境は下記です。
- Ubuntu 16.04 64bit
- ROS Kinetic
この記事は、下記のGithubの説明通りなので、これをちょっとわかりやすく説明しているだけです。
Intel RealSense D435 単体で動かせるようにする
まずはROSうんぬんではなく、単体で動かせるようにする必要があります。
aptでインストールできるので、比較的簡単です。
sudo apt-key adv --keyserver keys.gnupg.net --recv-key C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C8B3A55A6F3EFCDE
#リポジトリの登録
sudo add-apt-repository "deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo xenial main" -u
sudo apt-get update
#インストール
sudo apt-get install librealsense2-dkms librealsense2-utils librealsense2-dev librealsense2-dbg intel-realsense-dfu
これでインストールは終わりです。
Viewerソフトが一緒にインストールされているので、実行します。
realsense-viewer
ウィンドウが表示されるので、"RGB Camera"のトグルをONにして、画像を表示してみます。
しかし、私の環境では画像が表示されませんでした。
また、ウィンドウが表示されると同時に、D435のファームウェアアップデートの通知が表示されています。
結果的に言うと、このファームウェアをアップデートすると画像が表示されたので、アップデート作業が必要そうです。
基本的に、アップデートしようとすると該当のWebページに飛ぶので、そこの通りにすればよいです。
#まずは現在のファームウェアバージョンを確認
intel-realsense-dfu –p
#D435が認識されているか確認
lsusb
lsusbを実行すると私の環境では下記のように表示されました。
"Intel Corp"というのがRealSense D435です。
この行のBus No(ここでは004)とDevice No(005)の数字を次のコマンドで使います。
#ファームウェアのアップデート
intel-realsense-dfu -b 004 -d 005 -f -i ./Signed_Image_UVC_5_10_6_0.bin
アップデート後D435を再度挿しなおして、Viewerソフトをもう一度起動すると、カメラ画像が表示されました。
デプスもきちんと取れています。
ROSを使って動かす
aptには登録されていないので、githubからソースコードをダウンロードしてきます。
今回はversion 2.1.3を使用します。
sudo apt-get install ros-kinetic-rgbd-launch
catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release
catkin_make install
カメラ画像の表示
下記コマンドをそれぞれ別端末で実行すればOK
roslaunch realsense2_camera rs_camera.launch
rosrun image_view image_view image:=/camera/color/image_raw
3D情報の表示
下記コマンドをそれぞれ別端末で実行すればOK
roslaunch realsense2_camera rs_rgbd.launch
rosrun rviz rviz
Rvizの設定でFixed Frameをcamera_linkに設定。
PointCloud2を追加すると表示できます。
Discussion