天天看點

ubuntu14.04+ROS indigo+kinectV1 骨骼點檢測

經過一番搗鼓,終于實作了在ubuntu14.04和ROS indigo下使用kinectV1實作骨骼點檢測,整理如下:

首先把kinectV1的驅動裝好,參考上一篇blog:http://blog.csdn.net/zqxf123456789/article/details/52015850

為了使用OpenNI實作骨骼點檢測,還需要進行以下步驟:

删除這個庫,不然後面會帶來以下問題:

         sudo apt-get remove libopenni-sensor-pointclouds0

再安裝兩個庫:

         sudo apt-get install ros-indigo-openni-launch

         sudo apt-get install ros-indigo-openni-camera

下面安裝openni_tracker,實作骨骼點檢測功能的關鍵庫:

         cd ~/catkin_ws/src

         git clone https://github.com/ros-drivers/openni_tracker.git 

         cd ..

         catkin_make

需要安裝的就這些,在實作之前還有3個地方需要檢查一下:

1.檢查一下openni_tracker這個package所在的路徑是否已經添加到ROS_PACKAGE_PATH中,如果沒有後面會報錯找不到openni_tracker這個package

    在終端中輸入:echo $ROS_PACKAGE_PATH,如果沒有顯示openni_tracker這個package所在的路徑,則在終端中輸入:

    export ROS_PACKAGE_PATH=/home/user_name/catkin_ws/src:/opt/ros/indigo/share:/opt/ros/indigo/stacks(具體内容是在原來ROS_PACKAGE_PATH值的基礎上加上openni_tracker的路徑,以“:”分隔)

2.source /home/user_name/catkin_ws/devel/setup.bash,也可以把這句話加到.bashrc中,這樣就不必每次打開終端都輸一遍了

3.rosrun rqt_reconfigure rqt_reconfigure

打開設定視窗,在camera下選擇driver,然後勾選depth_registration。具體過程和作用可以參考官網說明:http://wiki.ros.org/openni_launch/Tutorials/QuickStart

以上步驟都做好後,下面就是實作功能了:

roslaunch openni_launch openni.launch camera:=openni ……………………………………(1)

rosrun openni_tracker openni_tracker ……………………………………………………………(2)

rosrun rviz rviz…………………………………………………………………………………………(3)

在rviz中,把Global Options > Fixed Frame 改成openni_depth_optical_frame(如果沒有在(1)指令最後添加camera:=openni,那麼Fixed Frame隻有camera_depth_optical_frame可選);

點選Add(左下角),選擇PointCloud2,确定;

把 PointCloud2 >Topic改成/openni/depth_registered/points;

再點選Add,選擇TF;

适當調整可視框中的角度和放大倍數,站在kinect前面,不一會就能看到骨骼點資料了

參考連結:

weewqrer的部落格:http://blog.csdn.net/weewqrer/article/details/48183969

https://github.com/ros-drivers/openni_tracker/issues/9

enjoy!

繼續閱讀