Ubuntu16.04上安装使用Intel RealSense R200

环境:

操作系统:Ubuntu 16.04

Ros版本:Kinetic

硬件:英特尔公司的RealSense R200摄像头

安装librealsnese

1.首先查看自己系统内核:

使用命令:uname -r

如果内核版本低于4.4.0就按照安装指南解决,但是现在Ubuntu16.04基本上都是4.4.0以上的内核,而且通过上一步的更新,绝大部分会将内核升级到最新的稳定内核。

2.下载源代码

下载源程序在github上下载librealsense v1.12.1版本,网址在“https://github.com/IntelRealSense/librealsense/tree/v1.12.1”可以在网页上下载好之后解压到自己的安装目录,例如我安装在了install文件夹下。

3.安装librealsense build 所需的包libusb-1.0和pkg-config

sudo apt-get install libusb-1.0-0-dev pkg-config

 sudo apt-get install libglfw3-dev

4. 库构建过程

先进入下载的librealsense-1.12.1目录下,新建一个名为build的文件夹,使用cd 进入该文件夹,或者直接使用命令行:

cd 你的librealsense-1.12.1目录

mkdir build && cd build

cmake ..

make && sudo make install

到此librealsense安装完,但是在Linux上运行RealSense深度摄像头需要将补丁应用于内核模块。

 Video4Linux后端准备

1.安装位于librealsense源目录中的udev规则:

sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && udevadm trigger

2.安装内核模块构建所需的openssl包:

sudo apt-get install libssl-dev

3. 这步是其他教程里没有的,因为我踩过坑。

Ubuntu 14/16 LTS 该脚本将从源代码下载,修补和构建uvc内核模块。
然后它将尝试插入修补模块而不是活动模块。如果失败,将保留原始uvc模块。

需要先在下载的文件夹ubuntu-xenial下执行下面命令来复制文件到相应目录。

cp debian/scripts/retpoline-extract-one scripts/ubuntu-retpoline-extract-one 

然后在继续

./scripts/patch-realsense-ubuntu-xenial.sh

4.通过检查内核日志中的最新条目来检查安装

sudo dmesg | tail -n 50

安装realsense_camera 

1.在这个网址下载功能包:https://github.com/IntelRealSense/realsense-ros/tree/indigo-devel

下载后解压到自己的catkin_ws/src下。

2.下载依赖项

cd catkin_ws

rosdep -y install --from-paths src --ignore-src

3.编译工作空间

cd catkin_ws

catkin_make

这一步完成后就成功了。

打开realsense r200

1.ros wiki中指出:

enable_pointcloud(bool,默认值:false)
指定是否启用本机pointcloud。默认情况下,由于性能问题,它设置为false。此选项折旧以支持rgbd_launch pointcloud,并将在不久的将来删除。

在 …/src/realsense-indigo-devel/realsense_camera/launch/includes/nodelet_rgbd.launch.xml
在该文件内将enable_pointcloud的值设为true
catkin_make重新编译

2.打开摄像头

roslaunch realsense_camera r200_nodelet_rgbd.launch

rosrun rviz rviz

将Fixed Frame 后面更改为camera_depth_frame

点击Add,添加 PointCloud2,将Topic更改为/camera/points即可。

你可能感兴趣的:(ROS)