zoukankan      html  css  js  c++  java
  • OpenCV中Kinect的使用(1)

      图像处理中一般为了更好的获取外部信息都会使用到Kinect,其优势在于除了传统的RGB摄像头之外,还拥有一个获取深度信息的3D深度感应器,因此可以获得外界物体的3维信息实现物体的跟踪、手势识别等各项功能。更详细的介绍可参考:身體就是控制器,微軟Kinect是怎麼做到的?

    下面介绍OpenCV中Kinect的一些简单的使用方法。

    • Kinect驱动的安装

      这里选择PrimeSense公司的OpenNI系列(开源+多平台64+32),主要由三部分组成(从底层到高层):PrimeSenser驱动(底层驱动),OPENNI软件包(提供硬件与应用软件连接的中间层),NITE软件包(负责手势和骨咯侦测)。

      安装顺序如下:

      1 OpenNI-Win32-1.3.2.1-Dev.msi

      2 avin2-SensorKinect-0e5a176BinSensorKinect-Win-OpenSource32-5.0.3.3.msi

      3 NITE-Win32-1.4.0.5-Dev.msi

      4 Sensor-Win32-5.0.3.3-Redist.msi

      “OPENNI会根据(C:Program FilesOpenNI)下面data下的3个xml文件来启动硬件(值得注意的是,它不是直接访问硬件传输数据,而是呼叫驱动代理C:Program FilesPrimeSenseSensorBin下面的*.exe[所以我们要先安装openNI再安装driver];

      安装好OPENNI和sensore dirver后,我们只可以运行openNI里面的部分事例(C:Program FilesOpenNISamples);为什么是部分呢?因为OPENNI和骨咯软件NITE是联动的,里面高级的samples需要访问NITE引擎”。

      测试OpenNI驱动是否安装成功的简单方法便是运行其自带的sample,如C:Program FilesOpenNISamplesBinRelease下的NiViewer.exe。

    •  注意事项:  

      1:OpenNI官网上OpenNI以更新到2.0系列,其架构和组成已和1系列发生了很大的不同,其中包括安装方法,组成等,而且更重要的一点是现在OpenCV的版本中还没有开发出对应OpenNI2系列的接口,因此现在要通过OpenNI驱动Kinect的话必须要使用OpenNI 1系列,1和2系列的变化具体可参考官网:《Middleware Library Guidelines》

      2:要驱动Kinect的话,OpenCV应在自己的电脑上重新cmake过一遍,参见这里

      3:如果仅仅要利用Kinect获取深度图像的话,只需安装1和2即可,如果要加入手势识别和骨骼识别的话,3和4必不可少;

      4:无论你的电脑是32(x86)还是64bit,32bit的OpenNI驱动都可以顺利安装成功,同理,OpenCV也一样,一切都按照32bit的操作即可(包括VS的配置和使用); 

      5:无法定位程序输入点XXXXX到OpenNI.dll库上的解决方法。 

    参考资料:

    使用Kinect传感器

    Kinect OPENNI 安装教程(for Win x64 i32)

    2013-10-26 

  • 相关阅读:
    windows的80端口被占用时的处理方法
    Ansible自动化运维工具安装与使用实例
    Tomcat的测试网页换成自己项目首页
    LeetCode 219. Contains Duplicate II
    LeetCode Contest 177
    LeetCode 217. Contains Duplicate
    LeetCode 216. Combination Sum III(DFS)
    LeetCode 215. Kth Largest Element in an Array(排序)
    Contest 176 LeetCode 1354. Construct Target Array With Multiple Sums(优先队列,递推)
    Contest 176
  • 原文地址:https://www.cnblogs.com/steven-blog/p/3389904.html
Copyright © 2011-2022 走看看