https://blog.csdn.net/chenxin_130/article/details/6693390
小斤注:關于OpenNI2.X版本的安裝與開發環境配置,請參考《Kinect開發教程六:OpenNI2簡介、安裝與VS開發環境配置》
-----------------------------------------------------------------------
Kinect作為新一代的體感設備,小斤就不多介紹咯,微軟日前也發布了相應的官方SDK,用以開發Kinect在PC上的應用。但就目前的情況而言,微軟的KinectSDK只能在Win 7平臺上使用,因此小斤選擇了OpenNI作為Kinect開發的第一塊踏腳石,它是目前已被廣泛使用和認可的開源Kinect開發庫。
準備
首先大家需要下載三樣東西:
第一,OpenNI ,小斤在這里下載:http://www.openni.org/Downloads/OpenNIModules.aspx,選擇OpenNI Binaries,注意要下載Development Edition,這樣才有Sample可以測試查看。此外,源碼也可以在GitHub上看到:https://github.com/OpenNI/OpenNI
第二,SensorKinect,它就是Kinect的驅動了,可以在https://github.com/avin2/SensorKinect的Bin中找到。
第三,NITE,這是PrimeSense 提供的中間件,可以分析Kinect讀取的資料,輸出人體動作等等。目前在http://www.openni.org/Downloads/OpenNIModules.aspx,選擇OpenNI Compliant Middleware Binaries就能夠下載了。
安裝
【1】下載完畢后,先把Kinect放在一邊,安裝OpenNI。
(小斤安裝OpenNI后,安裝SensorKinect過程中,會彈出”Please install OpenNI version….”之類的錯誤,重啟后再一次點擊SensorKinect安裝就解決了。有同學提示說,安裝OpenNI的Windows用戶一定要用管理員身份跑安裝程序才行,沒有的話有一部分文件無法寫入,會導致之后的錯誤。)
【2】安裝SensorKinect驅動,裝完,把Kinect插上,此時系統就會自動開始搜索驅動了,如果沒有搜索到,那么需要指定驅動目錄了。假設SensorKinect默認安裝在默認路徑,指定驅動目錄C:\ProgramFiles\Prime Sense\Sensor\Driver。
驅動安裝成功的話,在設備管理器中,會出現:
【3】安裝NITE,裝完后,由于NITE定義的320*240分辨率與SensorKinect的640*480不同,這邊有個關鍵步驟,假設安裝在默認路徑:
從"c:\Program Files\PrimeSense\Sensor\SampleXMLs\NITE\Data\" 里復制所有XML文件到 "c:\ProgramFiles\Prime Sense\NITE\Data\" 覆蓋
從"c:\ProgramFiles\Prime Sense\Sensor\SampleXMLs\OPENNI\Data" 里復制所有XML文件到 "c:\Program Files\OpenNI\Data" 覆蓋
此外,NITE是需要序列號的,但其官網免費提供了一個:0KOIk2JeIBYClPWVnMoRKn5cdY4=
我們只要將"c:\Program Files\Prime Sense\NITE\Data\"目錄下所有配置文件,把Licenses部分替換即可:
<Licenses>
<License vendor="PrimeSense"key="0KOIk2JeIBYClPWVnMoRKn5cdY4="/>
</Licenses>
測試
【OpenNI】
如果安裝在默認路徑下,測試程序可以在C:\Program Files\OpenNI\Samples\Bin\Release下找到,這里小斤使用的是NiViewer.exe和NiSimpleViewer.exe,都是顯示深度圖,如果運行沒問題就可以咯。另外,NiUserTracker這個程序也很有趣,可以跟蹤你的人體,前提是它捕捉到你人體后,你做出一個標定動作(舉起雙手)并維持一段時間。
SimpleViewer:
UserTracker:
如果安裝一切正常,但這些例子無法顯示結果,可以關閉防火墻試試,某些防火墻的設置會阻攔OpenNI的組件讀取攝像頭。
【NITE】
同樣的,如果安裝在默認路徑下,測試程序可以在C:\Program Files\OpenNI\Samples\Bin\Release下找到,小斤玩了下StickFigure,這個程序能在一個空間中顯示出骨架。
VS開發環境
要使用VS進行開發的話,需要配置include和lib路徑。
進入VS,點擊菜單Tools,進入Options。
在Projects and Solutions中,選擇VC++Directories。
假設OpenNI安裝在默認路徑下,則include files加入C:\Program Files\OpenNI\Include,Library files加入C:\ProgramFiles\OpenNI\Lib。
這樣VS的開發環境就配置好了。如果建立了OpenNI的開發項目,則還需要在項目屬性——Linker——Input 中的Additional Denpendencies,加入openNI.lib。
(以上配置在VS2010中有些出入,include和library可能被移到項目屬性中配置)
與OpenNI的Sample使用OpenGL不同,小斤之后的教程范例中,會使用OpenCV進行圖像的輸入輸出,以簡化程序(如果你看了OpenNI Sample的代碼,會發現代碼被OpenGL占了一大半)。大家可以在http://www.opencv.org.cn/上找到安裝配置方法,小斤就不贅述了。(當然大家也可以直接無視范例中的OpenCV輸出部分,把OpenNI讀取的數據直接print出來。)
----------------------------------
作者:小斤(陳忻)
本文屬于原創文章,如需轉載引用請注明原文作者和鏈接,謝謝。
---------------------
作者:小斤陳
來源:CSDN
原文:https://blog.csdn.net/chenxin_130/article/details/6693390
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!