1
从该网站下载openni2的SDK(win、linux等版本都有)
解压
然后去shell所在目录,运行install.sh
sudo ./install.sh
这一步是将 Primesense 相机的 UDEV 规则放入/etc/udev/rules.d.
确认设备连接状态:
lsusb
进入Tools文件夹运行NiViewer。报错的话安装缺少的包即可。
cd Tools
./NiViewer
sudo apt-get install freeglut3-dev
如果出现报错:
openDevice failed:
DeviceOpen using default: no devices found
Press any key to continue . . .
参考此链接的解决方案:
No devices found error with OpenNI2
我就出现了这个报错,并且还是没有解决。
下面介绍方法二。
2
git clone这个仓库
然后安装一些库:
sudo apt install git libusb-1.0-0-dev libudev-dev
sudo apt install openjdk-8-jdk
sudo apt install freeglut3-dev
到解压后的文件夹下make:
make -j4
然后完成链接配置:
sudo ln -s $PWD/Bin/x64-Release/libOpenNI2.so /usr/local/lib/ # $PWD should be /yourPathTo/OpenNI2
sudo ln -s $PWD/Bin/x64-Release/OpenNI2/ /usr/local/lib/ # $PWD should be /yourPathTo/OpenNI2
sudo ln -s $PWD/Include /usr/local/include/OpenNI2 # $PWD should be /yourPathTo/OpenNI2
sudo ldconfig
ASUS Xtion Pro Live OpenNI driver驱动的安装:
sudo apt install libopenni-sensor-primesense0
为了允许非 sudoer 从通过 USB 端口连接的传感器读取数据,需要为 udev 系统添加规则。
与debian udev 文档/etc/udev/rules.d/80-persistent-local-usb.rules中的建议类似,使用以下内容创建:
KERNEL == "ttyUSB0", MODE = "0777"
完成以上步骤后,在生成的Bin目录下测试是否安装成功。
├── ClosestPointViewer
├── EventBasedRead
├── libDepthUtils.a
├── libMWClosestPoint.so
├── libOpenNI2.jni.so
├── libOpenNI2.so
├── MultiDepthViewer
├── MultipleStreamRead
├── MWClosestPointApp
├── NiViewer
├── OpenNI2
│ └── Drivers
│ ├── libDummyDevice.so
│ ├── libOniFile.so
│ ├── libPS1080.so
│ └── libPSLink.so
├── org.openni.jar
├── org.openni.Samples.SimpleViewer
├── org.openni.Samples.SimpleViewer.jar
├── PS1080Console
├── PSLinkConsole
├── SimpleRead
└── SimpleViewer
运行SimpleViewer成功