视觉搭建
前言
- 基础性工作,注意,不支持USB2.0,只支持USB3.0
- Ubuntu16.04,老版本请直接去github上看
TOC
参考
iai-kinectv2
libfreenect2
USB 权限
详细博客
记录
安装libfreenect2
cd libfreenect2
cd depends; ./download_debs_trusty.sh
sudo apt-get install libusb-1.0-0-dev
sudo apt-get install libturbojpeg libjpeg-turbo8-dev
sudo apt-get install libglfw3-dev
sudo apt-get install beignet-dev
sudo apt-get install libva-dev libjpeg-dev
sudo apt-get install libopenni2-dev
cd ..
mkdir build
cd ./build
cmake .. -DENABLE_CXX11=ON
make -j4
sudo make install
# /usr/local/
测试
- 最后可以运行程序,在build下面有个bin文件夹,放置生成的输出文件,插上kinect,然后运行。此时黄灯变成白色的,表示有驱动。注意:只能用于USB3的接口,好在台式机和笔记本都有3.0的口。改成如下的超级命令即可。
sudo ./bin/Protonect
- ./Protonect cl 查看依赖错误信息
复制iai-kinect2ROS包
测试
roslaunch kinect2_bridge kinect2_bridge.launch
Intel笔记本问题
Intel GPU问题
sudo apt install ocl-icd-dev
- 在自己的新笔记本电脑上没有实现,可能是最新的kabylake GPU问题
AMD显卡台式机测试
- 由于也是16.04+AMD显卡,所以依赖项安装与前一致
cmake禁用OPENCL
- 由于两台电脑都有OPENCL问题,故重新安装驱动包
cmake .. -DENABLE_CXX11=ON -DENABLE_OPENCL=OFF -DENABLE_CUDA=OFF -DENABLE_TEGRAJPEG=OFF
usb权限问题
cd /etc/udev/rules.d
sudo gedit 90-kinect2.rules
# ATTR{product}=="Kinect2"
SUBSYSTEM=="usb", ATTR{idVendor}=="045e", ATTR{idProduct}=="02c4", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="045e", ATTR{idProduct}=="02d8", MODE="0666"
SUBSYSTEM=="usb", ATTR{idVendor}=="045e", ATTR{idProduct}=="02d9", MODE="0666"
运行ROS
roscore
rosrun kinect2_bridge kinect2_bridge _reg_method:=cpu _depth_method:=opengl
# 颜色和深度数据混合
rosrun kinect2_viewer kinect2_viewer
# 只有深度数据
rosrun kinect2_viewer kinect2_viewer ir
roslaunch kinect2_bridge kinect2_bridge
Nvidia显卡设置
sudo apt-get install libusb-1.0-0-dev
sudo apt-get install libturbojpeg libjpeg-turbo8-dev
sudo apt-get install libglfw3-dev
sudo apt-get install libopenni2-dev
sudo apt-get install libva-dev libjpeg-dev
sudo apt-get install beignet-dev
sudo apt-get install nvidia-modprobe opencl-headers