Kinect for Windows SDK開發入門(十五)進階指引 下

來源:互聯網
上載者:User

上一篇文章介紹了Kinect for Windows SDK進階開發需要瞭解的一些內容,包括影像處理Coding4Fun Kinect工具類庫以及如何建立自己的擴充方法類庫來方便開發,接下來介紹了利用Kinect進行近距離探測的一些方法,限於篇幅原因,僅僅介紹了近距離探測的三種方式。

 本文接上文將繼續介紹近距離探測中如何探測運動,如何擷取並儲存產生的影像資料;然後將會介紹如何進行臉部識別,以及介紹全息圖(Holograme)的一些知識,最後介紹了一些值得關注的類庫和項目。

2.4 運動識別

目前,利用運動識別(motion detection)來進行近景識別是最有意思的一種方式。實現運動識別的基本原理是設定一個起始的基準RGB映像,然後將從網路攝影機擷取的每一幀影像和這個基準映像進行比較。如果發現了差異,我們可以認為有東西進入到了網路攝影機的視野範圍。

不難看出這種策略是有缺陷的。在現實生活中,物體是運動的。在一個房間裡,某個人可能會輕微調動傢具。在戶外,一輛汽車可能會啟動,風可能會將一些小樹吹的搖搖晃晃。在這些情境中,盡然沒有連續的移動動作,但是物體的狀態還是發生了變化,依據之前的策略,系統會判斷錯誤。因此,在這些情況下,我們需要間歇性的更改基準映像才能解決這一問題。

與我們之前遇到的問題相比,完成這些任務看起來需要更強大的映像分析處理工具。幸好,之前介紹的開源OpenCV庫提供了某種複雜的即時影像處理操作的能力。OpenCV是Intel公司在1999年發起的一個項目,它將一些進階的視覺研究成果加入到OpenCV庫中並開源貢獻給了全世界。2008年,一個名為Willow Garage的科技孵化公司負責對該項目的更新和維護。幾乎同時EmguCV項目開始發起,他提供了對OpenCV的.Net封裝,使得我們在.Net環境下能夠使用OpenCV庫中的函數。下面我們將使用EmguCV來完成運動檢測以及後面的幾個示範項目。

EmguCV項目的官方網站為http://www.emgu.com/wiki/index.php/Main_Page 實際的原始碼和安裝包放在SourceForge( http://sourceforge.net/projects/emgucv/files/ )上。本文使用的Emgu版本為2.3.0。Emgu的安裝過程很簡單直觀,只需要點擊下載好的可執行檔即可。不過有一點需要注意的是EmguCV似乎在x86架構的電腦上啟動並執行最好。如果在64位的機器上開發,最好為Emgu庫的目標平台指定為x86,如下圖所示(你也可以在官網上下載源碼然後自己在x64平台上編譯)。

要使用Emgu庫,需要添加對下面三個dll的引用:Emgu.CV、Emgu.CV.UI以及Emgu.Util。這些dll可以在Emgu的安裝目錄下面找到,在我的機器上該路徑是:C:\Emgu\emgucv-windows-x86 2.3.0.1416\bin\。

因為Emgu是對C++類庫的一個.Net封裝,所以需要在dll所在的目錄放一些額外的非託管的dll,使得Emgu能夠找到這些dll進行處理。Emgu在應用程式的執行目錄尋找這些dll。如果在debug模式下面,則在bin/Debug目錄下面尋找。在release模式下,則在bin/Release目錄下面。共有11個非託管的C++ dll需要放置在相應目錄下面,他們是opencv_calib3d231.dll, opencv_conrib231.dll, opencv_core231.dll,opencv_features2d231.dll, opencv_ffmpeg.dll, opencv_highgui231.dll, opencv_imgproc231.dll,opencv_legacy231.dll, opencv_ml231.dll, opencv_objectdetect231.dll, and opencv_video231.dll。這些dll可以在Emgu的安裝目錄下面找到。為了方便,可以拷貝所有以opencv_開頭的dll。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.