基于Dragonboard 410c開發(fā)板windows平臺(tái)上搭建kinect運(yùn)行環(huán)境
隨著目前AR/VR應(yīng)用市場的興起,與體感感應(yīng)相關(guān)的技術(shù)越來越受到國內(nèi)一線硬件廠商的青睞!本系列的博客,我們將介紹如何基于qualcomm平臺(tái)使用微軟的kinect傳感器進(jìn)行體感技術(shù)的開發(fā),(由于篇幅較長,會(huì)分成多篇博客詳細(xì)介紹)正所謂工欲善其事,必先利其器,我們先從Kinect的開發(fā)環(huán)境搭建開始。
本文引用地址:http://www.ex-cimer.com/article/201710/365547.htm一.Kinect簡介
Kinect,全稱為Kinect for Xbox 360,是由微軟開發(fā)并應(yīng)用于Xbox 360 主機(jī)的體感設(shè)備。它讓玩家不需要手持或踩踏控制器,而是使用語音指令或手勢來操作 Xbox360 的系統(tǒng)界面。但在技術(shù)發(fā)燒友的努力下,開始被逐步應(yīng)用于更廣的圖像識(shí)別領(lǐng)域。
1.Kinect硬件:Kinect有三個(gè)鏡頭,中間的鏡頭是 RGB 彩色攝影機(jī),用來采集彩色圖像,最大支持1280*960分辨率成像;左右兩邊鏡頭則分別為紅外線發(fā)射器和紅外線CMOS 攝影機(jī)所構(gòu)成的3D結(jié)構(gòu)光深度感應(yīng)器,用來采集深度數(shù)據(jù)(場景中物體到攝像頭的距離),而紅外攝像頭最大支持640*480成像。Kinect還搭配了追焦技術(shù),底座馬達(dá)會(huì)隨著對焦物體移動(dòng)跟著轉(zhuǎn)動(dòng)。Kinect也內(nèi)建陣列式麥克風(fēng),由四個(gè)麥克風(fēng)同時(shí)收音,比對后消除雜音,并通過其采集聲音進(jìn)行語音識(shí)別和聲源定位。
圖1 Kinect硬件實(shí)物圖
2.Kinect軟件開發(fā)環(huán)境:
Kinect目前支持windows與android兩大系統(tǒng),關(guān)于kinect在android系統(tǒng)的使用會(huì)在接下來的博客中介紹,本文先介紹kinect在windows中的使用。kinect在windows上的軟件開發(fā)環(huán)境,目前流行以下兩種:
2.1.微軟官方的SDK:Kinect for Windows SDK Beta,特別是可以使用 C# 與.NETFramework 4.0 來進(jìn)行開發(fā)。Kinect for Windows SDK主要是針對Windows7設(shè)計(jì),內(nèi)含驅(qū)動(dòng)程序、豐富的原始感測數(shù)據(jù)流程式開發(fā)接口、自然用戶接口、安裝文件以及參考例程。Kinect for Windows SDK可讓使用C++、C#或VisualBasic語言搭配MicrosoftVisualStudio2010工具的程序設(shè)計(jì)師輕易開發(fā)使用。
Kinect for Windows SDK Beta下載地址:
http://research.microsoft.com/zh-cn/um/redmond/projects/kinectsdk/download.aspx
2.2.非官方SDK:SensorKinect + NITE + OpenNI2+VS2010,其中SensorKinect是Kinect的驅(qū)動(dòng);NITE是PrimeSense提供的中間件(目前已有新的工具可替代,詳情可上http://openni.ru/files/nite/index.html),可以分析Kinect讀取的資料,輸出人體動(dòng)作等;OpenNI(opennatural interface開放自然交互,目前已更新到OpenNI2)是一個(gè)多語言,跨平臺(tái)的框架,它定義了編寫應(yīng)用程序,并利用其自然交互的API??梢缘竭@里下載。從名字判斷其終極目標(biāo)大約是實(shí)現(xiàn)少數(shù)派報(bào)告的效果,從目前放出來的一些demo,恐怕已經(jīng)超越了這個(gè)終極目標(biāo)。它不是專為Kinect開發(fā),但有Kinect的生產(chǎn)商PrimeSense的支持。而此種方式也是本博客準(zhǔn)備介紹的使用方式(畢竟要在高通平臺(tái)上實(shí)現(xiàn),開源的OpenNI2更適合)。
二.win 7 系統(tǒng)配置kinect開發(fā)環(huán)境
1.SensorKinect:首先進(jìn)入http://www.microsoft.com/en-us/kinectforwindows/develop/overview.aspx下載Kinect的驅(qū)動(dòng),按正常步驟安裝驅(qū)動(dòng)后,接入Kinect就會(huì)發(fā)現(xiàn)燈亮可驅(qū)動(dòng)。
2. OpenNI2:下載地址:http://openni.ru/openni-sdk/index.html直接下載安裝即可。
圖2 選擇OpenNI下載
3. NITE:下載地址:http://openni.ru/files/nite/index.html直接下載安裝即可
4. VS2010:全稱是Microsoft Visual Studio 2010,相信大家都很熟悉這個(gè)windows平臺(tái)的開發(fā)工具。這里主要介紹的是在VS2010使用OpenNI需要進(jìn)行的必要配置:
4.1 本人使用的是win7 64 位的系統(tǒng),因此在安裝OpenNI2后,安裝程序自動(dòng)生成的環(huán)境變量分別是:
OPENNI2_INCLUDE64=C:Program FilesOpenNI2Include
OPENNI2_LIB64=C:Program FilesOpenNI2Lib
OPENNI2_REDIST64=C:Program FilesOpenNI2Redist
注意:本人默認(rèn)OpenNI2的安裝路徑,如果大家安裝在別的盤符,路徑將會(huì)相應(yīng)改變,這點(diǎn)要注意下。
4.2 新建VS C++項(xiàng)目后,右擊進(jìn)入項(xiàng)目屬性,進(jìn)行以下配置:
【1】ConfiguraTIon ProperTIes,C/C++,Gerenal,在AddiTIaonal Include Directories項(xiàng)中添加$(OPENNI2_INCLUDE64)
【2】ConfiguraTIon Properties,Linker,Gerenal,在Additiaonal Library Directories項(xiàng)中添加$(OPENNI2_LIB64)
【3】Configuration Properties,Linker,Input,在Additiaonal Dependencies項(xiàng)中添加openNI2.lib
4.3 值得注意的是win7 64位的系統(tǒng),必須按下圖將平臺(tái)預(yù)先選擇好,否則編譯時(shí)會(huì)因?yàn)殒溄訋焓《恢眻?bào)一些莫名其妙的錯(cuò)誤。
圖3 VS2010導(dǎo)入OpenNI工程
至此,kinect在windows上的開發(fā)環(huán)境我們基本搭建完畢,后面的博客我們將正式開始動(dòng)手進(jìn)行基于qualcomm平臺(tái)的kinect程序開發(fā)。
評(píng)論