Ubuntu14.04下openni2以及nite2的配置-kinectv1篇

弄了好几次,总算是搞好了,先说一下我的系统配置:32 bitubuntu14.04 LTSUS2.0接口(for kinect v1),kinect v1nite2.0.0x86),openni2.2x86),freenectgit clone……见下面),主要参考网页:http://www.cc.gatech.edu/grads/a/ahuaman3/docs/tutorials/software/build/perception.html(转载),注意安装过程中不要插kinect,具体步骤如下:

1. freenect 的安装

1.1 安装依赖项

首先更新一下系统 因为我是反复重装了几次系统才搞好(^-^

 sudo apt-get update

然后安装依赖项直接

sudo apt-get install git g++ cmake libxi-dev libxmu-dev libusb-1.0-0-dev pkg-config freeglut3-dev build-essential 

1.2 下载freenect

使用git

git clone https://github.com/OpenKinect/libfreenect.git

这样直接放置在home下。

然后修复bug,主要针对使用OpenCV+OpenNI的,所以不在此赘述,详见上面的网页。

接下来要编译一下,首先进入到freenect的最高目录下,

cd  libfreenect

mkdir build

cd build

cmake .. –DBUILE_OPENNI2_DRIVER=ON

make

make install

如果有报错的话多半是依赖项的问题,缺啥直接安装就好了。到此完成了freenect的安装。

2. OpenNI2的安装

   我把下载的openn2放在了home文件夹下,下载的网页网上很多,安装过程很简单:

cd OpenNI2.2-Linux-x86

然后运行install.sh   

sudo  ./install.sh

生成的环境变量拷到.bashrc 

cd  ~

sudo gedit .bashrc

copy进去之后保存退出就ok了。至此完成了OpenNI2的安装。

然后是usbrules修改,其实freenect自带的有一个,在libfreenect/platform/linux/udev/51-kinect.rules 直接拷到  etc/udev/rules.d/下,没有找到的话在etc/udev/rules.d 下新建一个51-kienct.rules,把以下内容考进去:

UBSYSTEM=="usb", ATTR{idVendor}=="045e", ATTR{idProduct}=="02b0", MODE:="0666"

SUBSYSTEM=="usb", ATTR{idVendor}=="045e", ATTR{idProduct}=="02ad", MODE:="0666"

SUBSYSTEM=="usb", ATTR{idVendor}=="045e", ATTR{idProduct}=="02ae", MODE:="0666"

SUBSYSTEM=="usb", ATTR{idVendor}=="045e", ATTR{idProduct}=="02c2", MODE:="0666"

SUBSYSTEM=="usb", ATTR{idVendor}=="045e", ATTR{idProduct}=="02be", MODE:="0666"

SUBSYSTEM=="usb", ATTR{idVendor}=="045e", ATTR{idProduct}=="02bf", MODE:="0666"

保存退出就好了,到现在还剩下最后一步:把freenect驱动拷进来,参数 –L 要记得

cp -L ${HOME}/local/lib/OpenNI2-FreenectDriver/libFreenectDriver.so   OpenNI-Linux-x86-2.2/Redist/OpenNI2/Drivers

如果要使用里面的例程 记得拷到Tools下,如下

cp -L ${HOME}/local/lib/OpenNI2-FreenectDriver/libFreenectDriver.so   OpenNI-Linux-x86-2.2/Tools/OpenNI2/Drivers

至此完成了所有步骤,如果顺利的话,NiViewer是可以运行的,我在第一次安装的时候是不成功的,具体原因是插上kinect后 ,使用lsusb查看的时候没有Xbot Camera 只有另外两个Motor Audio,换了一台电脑就好了,具体原因我也没该清楚,希望能够得到大家的帮助,把这个疑惑解开。所以插上kinect后,使用lsusb命令查看确保有以下三个:

Xbot camera

Xbot motor

Xbot audio

如果没有的话,检查一下是不是2.0端口,或者反复多插拔几次,这些只是经验,希望对大家有用。都有的话,运行以下命令

cd  OpenNI-Linux-x86-2.2/Tools 

./NiViewer

会出现rgb和深度图,错误的话会出现opendevice failed

3NiTE的安装

过程很简单,还是把安装包拷到home文件夹下,运行install.sh,拷贝环境变量到.bashrc中,拷贝libfreenectDriver.so NiTE-2.0.0/Samples/Bin/OpenNI2/Drivers

cp  ${HOME}/local/lib/OpenNI2-FreenectDriver/libFreenectDriver.so   NiTE-2.0.0/Samples/Bin/OpenNI2/Drivers,

然后关键的一步,我当时运行UserViewer也是打不开设备,所以才想到这一步的,cdNiTE-2.0.0/Samples/Bin/下,看到有一个libOpenNI2.so,这是安装包自带的一个当然不行,于是我把OpenNI-Linux-x86-2.2/Redist下的libopenNI.so考过来replace掉原来的那个文件,在进到NiTE-2.0.0/Samples/Bin/下跑UserViewer时出现了想要的深度图,在前面移动一下还有Tracking的标签。

 

本文到此就结束啦!有问题的大家可以相互交流,也可以在csdn上联系我,(虽然我也是新手),祝大家科研更进一层楼,每天都有新发现!

 

 

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值