首先可以在目录中新建一个文件夹kinect2(非工作空间)。
mkdir -p kinect2
然后,将libfreenect安装到该文件夹里,执行如下代码,完成安装:
cd kinect2
git clone https://github.com/OpenKinect/libfreenect2.git
cd libfreenect2
sudo apt-get install build-essential cmake pkg-config libusb-1.0-0-dev libturbojpeg libjpeg-turbo8-dev
sudo apt-get install libglfw3-dev libopenni2-dev
cd ..
mkdir build && cd build
cmake .. -DENABLE_CXX11=ON
make
make install
获取设备权限:
sudo cp ../platform/linux/udev/90-kinect2.rules /etc/udev/rules.d/
./bin/Protonect cpu
./bin/Protonect gl
./bin/Protonect cl
cd ~/nx_ws/src/
git clone https://github.com/code-iai/iai_kinect2.git
cd iai_kinect2
rosdep install -r --from-paths .
cd ~/catkin_ws
catkin_make -DCMAKE_BUILD_TYPE="Release"
设置环境变量:
source devel/setup.bash
接下来进行测试,打开kinect接口:
roslaunch kinect2_bridge kinect2_bridge.launch
新建一个终端,显示运行图像
rosrun kinect2_viewer kinect2_viewer
$ sudo apt-add-repository ppa:deb-rob/ros-trusty
$ sudo apt-get update
$ sudo apt-get install libopenni2-dev
cmake … -Dfreenect2_DIR=$HOME/freenect2/lib/cmake/freenect2
我的路径是安装在了usr/local中,所以路径为/usr/local/lib/cmake/freenect2
执行如下测试:
$ NiViewer2
NiTE2 是目前最先进最强大的3D计算机视觉中间件,拥有精简的主机,最小的CPU负载和多平台支持。该中间件为应用程序提供了一个清晰的用户控制API,包括基于手的和全身控件。 这些算法利用从硬件设备接收到的深度,颜色,IR和音频信息,使其能够执行手部定位和跟踪,场景分析器(将用户与背景分离),准确的用户骨架关节跟踪以及各种手势识别等等。
NiTE2 有另种下载方式,一是在 官网 | OpenNI, 或者 开发者提供 (NITE_SDK), 根据需要下载对应的版本,注意版本并不是越高越好。
关于 NiTE2 的开发,大神码农提供了相关讲解及一些开发教程,附上传送门 (1) 码农-叶梅树, (2) Make Change
下载NiTE-Linux-x86-2.2放在工作空间中,地址:http://cvrlcode.ics.forth.gr/web_share/OpenNI/NITE_SDK/
然后进行安装
$ cd ~/catkin_ws/src
$ cd NiTE-Linux-x86-2.2
$ chmod 777 install.sh
$ sudo sh install.sh
2)配置环境变量
cat NiTedevEnvironment >> ~/.bashrc
这个时候打开.bashrc,应该可以看到如下两行:
3)修改OpenNI.ini文件
添加Repository=/usr/lib/OpenNI2/Drivers到该文件最下方,
$ cd Samples/Bin
$ vi OpenNI.ini
如下:
4)测试
执行如下命令,测试是否安装成功,若安装成功,应该可以检测出人的骨骼(需在有效范围内)
./UserViewer
如看到下图所示的场景,表示安装成功:
6.安装骨骼检测的ROS功能包openni_tracker
sudo git clone https://github.com/ros-drivers/openni2_tracker.git
cd openni2_tracker
修改CMakelist.txt
vi CMakeLists.txt
$ cd ~/nx_ws/
$ catkin_make --pkg openni2_tracker
进行测试,首先启动相机的ROS驱动文件
roslaunch kinect2_bridge kinect2_bridge.launch
然后切换到NiTE-Linux-x86-2.2中Redist目录下,
cd /home/liam/newspace/src/NiTE-Linux-x86-2.2/Redist
运行节点
$ rosrun openni2_tracker openni2_tracker
如果没有问题的话,应当看到