1.安装驱动文件libfreenect
$ git clonehttps://github.com/OpenKinect/libfreenect2.git
$ cd libfreenect2
$ sudo apt-get install build-essential cmakepkg-config libusb-1.0-0-dev libturbojpeg libjpeg-turbo8-dev
$ sudo apt-get install libglfw3-devlibopenni2-dev
$ mkdir build && cd build
$ cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/freenect2 -DENABLE_CXX11=ON
$ make
$ make install
$ sudo cp ../platform/linux/udev/90-kinect2.rules /etc/udev/rules.d/
2.测试
运行测试:./bin/Protonect cpu
3.安装kinect2对应的ROS包
$ mkdir -p catkin_ws/src
$ cd catkin_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"
$ echo "source ~/catkin_ws/devel/setup.sh" >> ~/.bashrc
完成上面配置后测试安装结果:接下来进行测试,打开kinect接口 打开新终端
$ roslaunch kinect2_bridge kinect2_bridge.launch
继续打开新终端
$ rosrun kinect2_viewer kinect2_viewer
4.安装Openni2
$ cd ~/libfreenect2/build
$ sudo apt-add-repository ppa:deb-rob/ros-trusty
$ sudo apt-get update
$ sudo apt-get install libopenni2-dev
$ sudo apt install openni2-utils
$ sudo make install-openni2
测试结果 $ NiViewer2
5.安装Nite与骨骼测试
NiTE2 是目前最先进最强大的3D计算机视觉中间件,拥有精简的主机,最小的CPU负载和多平台支持。该中间件为应用程序提供了一个清晰的用户控制API,包括基于手的和全身控件。 这些算法利用从硬件设备接收到的深度,颜色,IR和音频信息,使其能够执行手部定位和跟踪,场景分析器(将用户与背景分离),准确的用户骨架关节跟踪以及各种手势识别等等。 NiTE2 有另种下载方式,一是在 官网 | OpenNI, 或者 开发者提供 (NITE_SDK), 根据需要下载对应的版本,注意版本并不是越高越好。 关于 NiTE2 的开发,大神码农提供了相关讲解及一些开发教程,附上传送门 (1) 码农-叶梅树, (2) Make Change
下载NiTE-Linux-x64-2.2放在工作空间中,地址:http://cvrlcode.ics.forth.gr/web_share/OpenNI/NITE_SDK/
下载完成之后解压到工作空间下的src文件夹夹下如下:
然后进行安装
$ cd ~/catkin_ws/src
$ cd NiTE-Linux-x86-2.2
$ chmod 777 ./*
$ sudo sh install.sh
$ cat NiTEDevEnvironment >> ~/.bashrc
这个时候打开.bashrc,应该可以看到如下两行:
3)修改OpenNI.ini文件 添加Repository=/usr/lib/OpenNI2/Drivers到该文件最下方,
$ cd Samples/Bin
$ gedit OpenNI.ini
如下:
4)测试
执行如下命令,测试是否安装成功,若安装成功,应该可以检测出人的骨骼(需在有效范围内)
$ ./UserViewer
6.安装骨骼检测的ROS功能包kinect2_tracker
$ cd catkin_ws/src/
$ git clone https://github.com/mcgi5sr2/kinect2_tracker.git
$ ln -s ~/catkin_ws/src/NiTE-Linux-x64-2.2/Samples/Bin/NiTE2/ ~/.ros/NiTE2
$ cd ~/catkin_ws/src/kinect2_tracker
$ source setup_nite.bash
$ gedit CmakeLists.txt
修改CMakeList.txt文件:
找到set(NITE2_DIR )和set(NITE2_LIB )两行,改为:
修改如下:
set(NITE2_DIR ~/catkin_ws/src/NiTE-Linux-x64-2.2/)
set(NITE2_LIB ~/catkin_ws/src/NiTE-Linux-x64-2.2/Redist/libNiTE2.so)
编译
$ cd ~/catkin_ws/
$ catkin_make
测试效果:
第一个终端
$ roslaunch kinect2_tracker tracker.launch
第二个终端
$ rosrun rviz rviz
结果如下:
到这里夹完成安装配置了。后续会出如何使用这些数据来写代码。