ros下使用Kinect傳感器對移動機器人環境進行三維建模(rgbdslam方法),並使用rviz打開

1. 安裝Kinect驅動

安裝openni

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

安裝libopenni-sensor-primesense-dev

sudo apt-get install libopenni-sensor-primesense-dev

安裝驅動

mkdir ~/kinectdriver 
cd ~/kinectdriver 
git clone https://github.com/avin2/SensorKinect 
cd SensorKinect/Bin/
tar xvjf SensorKinect093-Bin-Linux-x64-v5.1.2.1.tar.bz2
cd Sensor-Bin-Linux-x64-v5.1.2.1/
sudo ./install.sh

驅動安裝成功後,再安裝下列包

sudo apt-get install ros-indigo-openni-* ros-indigo-openni2-* ros-indigo-freenect-*

測試Kinect(我使用的是Kinect一代)

roslaunch freenect_launch freenect-registered-xyzrgb.launch  
rosrun image_view image_view image:=/camera/rgb/image_raw
rosrun image_view image_view image:=/camera/depth_registered/image

2. 安裝rgbdslam功能包

進入工作空間,下載並解壓

cd ~/catkin_ws/src
wget -q http://github.com/felixendres/rgbdslam_v2/archive/indigo.zip
unzip -q indigo.zip

安裝以來並進行編譯

cd ~/catkin_ws
rosdep install rgbdslam  
rosdep update
catkin_make

3. 建立三維模型/重建

roslaunch freenect_launch freenect.launch
roslaunch rgbdslam rgbdslam.launch

打開後轉動Kinect,即可對周邊環境進行建模

建好後,就可以保存你的三維了,在rgbdslam界面,按空格鍵,暫停後,在電腦最上方選擇SAVE,save as point clund,保存到你想要的文件夾中,選擇後最好等一會,因爲一個三維點雲體積都很大!

4. 保存並使用rviz查看三維地圖

首先安裝PCL,處理點雲的必備工具,安裝方法爲

sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl
sudo apt-get update
sudo apt-get install libpcl-all

安裝後,使用pcl將點雲發佈到ros上

rosrun pcl_ros pcd_to_pointcloud quicksave.pcd

這時,運行rviz

rosrun rviz rviz

打開界面後,在最上方的Fixed Frame輸入 base_link,在下面的add中添加PointClound2,添加後,打開pointclound2的列表,在topic中選擇/cloud_pcd,如圖



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章