zoukankan      html  css  js  c++  java
  • ubuntu中安装OpenNI

    一、OPenNI篇

    1.软件下载:

    (1)OpenNI: http://www.openni.org/openni-sdk/

    此处选择了linux 下的 OpenNI 2.1 Beta (X86) 版本.

      下载完成后解压,cd进入解压后的路径:$ sudo ./install.sh

    (2)SensorKinect

    step1 下载SensorKinect

    执行命令:$git clone https://github.com/avin2/SensorKinect.git

    如果提示没有git这个命令,则先下载git,打开终端:sudo apt-get install git

    过程比较慢.......要耐心的等.....

    step2:结束后会在当前路径出现一个文件夹SensorKinect,cd进SensorKinect/Platform/Linux /CreateRedist,之后$ sudo ./RedistMaker,这里可能会提示找不到命令,

    只需右键 RedistMaker文件,属性-权限-在Allow executing file as programming前面打勾(这样就可以执行RedistMaker 这个脚本了)

    耐心等.........

    step3:<运行不成功,没有生成 final文件夹,上层目录Linux下也没有生成Redist文件夹!!>

    这时,当前文件夹(即CreateRedist)下会多出一个final的文件夹,进去,把里面的Sensor-Bin-Linux-x86-v5.1.0.25.tar.bz2复制出来,再解压,再放回去。(有人可能会问,为什么不直接在里面解压,我试了,没那个权限,sudo chmod 777 Sensor-Bin-Linux-x86-v5.1.0.25.tar.bz2 也没办法。)

    (注意:执行完setp2后,上层目录Linux下还多了个Redist文件夹。里面也有个 Sensor-Bin-Linux-x86-v5.1.0.25.tar.bz2 跟CreateRedist里面的那个Sensor-Bin-Linux-x86-v5.1.0.25.tar.bz2 一样。网上有复制这个出来,解压再放回去,好像也可以。)

    step4:

    进入Sensor-Bin-Linux-x86-v5.1.0.25文件夹,执行sudo ./install.sh

    如果提示没那个命令,解决办法同step2。

    13/5/13:参照了英文版的安装方法:http://igorbarbosa.com/articles/how-to-install-kin-in-linux-mint-12-ubuntu/

    但还是同样的问题,没有生成Redist文件,但从sensorkin文件中的bin 文件中找到了SensorKinect093-Bin-Linux-x86-v5.1.2.1压缩文件,解压后在上述解说的linux文件下自行建立了文件夹Redist,把压缩包的解压文件放了进去,开始后续的安装。

    安装过程中提示错误:

    usr/bin/niReg: not found 看到网上http://blog.sina.com.cn/s/blog_71708d570100wkb1.html说是openni安装中的一个bug,故按照其说明自行建立了文件夹niReg:

    willing@willing-laptop:~$ cd /usr/bin
    willing@willing-laptop:/usr/bin$ sudo mkdir niReg

    再试,提示说usr/bin/niReg: Permission denied

    故修改文件夹属性访问权限:

    willing@willing-laptop:~$ su
    密码:
    su:认证失败
    willing@willing-laptop:~$ sudo passwd
    输入新的 UNIX 密码:
    重新输入新的 UNIX 密码:
    passwd:已成功更新密码

    willing@willing-laptop:~$ su
    密码:

    root@willing-laptop:/home/willing# chmod 777 /usr/bin/niReg

    之后再试,还是usr/bin/niReg: Permission denied,直接用根用户安装,还是同样的反馈!

    Step 5安装usb库--LibUSB  <此处安装成功>

    1) Run: sudo apt-get install libusb-1.0-0-dev

    2) Run: sudo apt-get install freeglut3-dev

    如果到这里还有问题的话,可以去看 SensorKinect里面的readme。



     原文链接:http://www.linuxidc.com/Linux/2012-03/55805.htm

    经过一番挣扎,发现了这个http://blog.csdn.net/yalun1990/article/details/8883242 在系统ubuntu10.04下是不能安装的,通过升级到ubuntu12.04后再试,可以实现成功实现安装步骤,但没有实现sample的正确运行。

    这方面的文章其实不少,不过很多都已经过期了,提供的下载链接大多也已失效(主要因为openNI网站进行了不小的变动,尤其是当openNI2.0推出以后,需要基于Kinect SDK,使得Linux下配置变得困难许多。。因此我用的是openNI1.x版本)。

    需要下载的:

    1. OpenNI SDK v1.5.4.0,NiTE v1.5.2.21,在 http://www.openni.org/openni-sdk/openni-sdk-history-2/ 可下到;

    2. OpenNI-Compliant Sensor Driver v5.1.2.1。这个驱动我一开始也从上边的网址下的,但是安装后openNI里的sample程序均运行失败,提示什么参数不对的信息。。后来没有解决,于是换了这个:https://github.com/avin2/SensorKinect/zipball/unstable (文件名:avin2-SensorKinect-v0.93-5.1.2.1-0-g15f1975.zip)
     
    安装:
     
    1. 安装相关支持库: sudo apt-get install libusb-1.0-0-dev freeglut3-dev g++
     
    2. 安装openNI SDK: 新建文件夹Kinect, 将压缩包解压至其下,命名为openNI, 然后sudo ./install.sh,运行openNI下的安装脚本;
     
    3. 安装AVIN2(也就是那个openNI的senor driver):解压到Kinect下,命名为sensorkin,然后:
       cd ~/Kinect/sensorkin/Platform/Linux/CreateRedist/
    chmod a+x RedistMaker
    sudo ./RedistMaker
    cd ../Redist/Sensor-Bin-Linux-x64-v5.1.2.1. 
    sudo ./install.sh
     
    4. 注册和安装NITE:解压到Kinect下,命名为nite
    cd nite/Data, 修改里面的三个xml文件  Sample-Scene.xml, Sample-Tracking.xml, 和 Sample-User.xml:把其中<License vendor=”PrimeSense” key=”"/> 替换为 
    License vendor=”PrimeSense” key=”0KOIk2JeIBYClPWVnMoRKn5cdY4=”/>
    然后运行nite下的安装脚本:sudo ./install.sh
     
    这样安装就完成了。如果最后一步不注册的话,那么与NITE相关的sample将不能正常运行。
     
    最后可以运行/Kinect/openNI/samples/Bin/x86-Release和/Kinect/NITE/samples/Bin/x86-Release下的samples看看,应该都能正常运行了。^_^
     
    参考文献:
    1. http://igorbarbosa.com/articles/how-to-install-kin-in-linux-mint-12-ubuntu/  ( How to: Install Kinect in Linux (Mint 12, Ubuntu 12.04,By igorbarbosa)
    2. http://mitchtech.net/ubuntu-kinect-openni-primesense/  (Ubuntu + Kinect + OpenNI + PrimeSense, BY MICHAEL)
  • 相关阅读:
    void*指针的由来
    Linux下的ELF文件格式简介
    通过中断门或陷阱门的转移——【只上传好图一张】
    ELF(Executable and Linking Format)
    call Init8259A——痛定思痛,不要数典忘祖了
    orange's习题——第三章【中断和异常】
    静态库
    可执行文件elf的格式
    谈谈我对攻读计算机研究生的看法
    tips for C
  • 原文地址:https://www.cnblogs.com/weilin1216/p/3078673.html
Copyright © 2011-2022 走看看