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-0e5a176\Bin\SensorKinect-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 Files\OpenNI)下面data下的3個xml文件來啟動硬件(值得注意的是,它不是直接訪問硬件傳輸數據,而是呼叫驅動代理C:\Program Files\PrimeSense\Sensor\Bin下面的*.exe[所以我們要先安裝openNI再安裝driver];

  安裝好OPENNI和sensore dirver后,我們只可以運行openNI里面的部分事例(C:\Program Files\OpenNI\Samples);為什么是部分呢?因為OPENNI和骨咯軟件NITE是聯動的,里面高級的samples需要訪問NITE引擎”。

  測試OpenNI驅動是否安裝成功的簡單方法便是運行其自帶的sample,如C:\Program Files\OpenNI\Samples\Bin\Release下的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 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM