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