通過手機(jī)攝像頭實(shí)現(xiàn)動(dòng)作追蹤一----單幀的識(shí)別
點(diǎn)擊:1934
A+ A-
所屬頻道:新聞中心
以前講過了如何用Aforge實(shí)現(xiàn)多點(diǎn)動(dòng)作追蹤(基于Aforge的手勢識(shí)別之三~~~多點(diǎn)手勢識(shí)別),不過是在PC平臺(tái)上實(shí)現(xiàn)的,以前也實(shí)現(xiàn)了在WM/Wince上的Opencv庫移植,所以這次就嘗試在WM/Wince平臺(tái)上實(shí)現(xiàn)動(dòng)作追蹤,代碼改自O(shè)pencv內(nèi)置的camshiftdemo.c例子。
本文先實(shí)現(xiàn)camshift的單幀識(shí)別,本文的代碼可以到這里下載:http://www.rayfile.com/zh-cn/files/284d11ca-c1fc-11df-9ae4-0015c55db73d/,代碼運(yùn)行截圖:
選中圖片中綠色部分,程序自動(dòng)用紅框圈出識(shí)別出來的部分。
接下來說說程序的原理:
1.計(jì)算被跟蹤目標(biāo)的色彩直方圖,在HSV中分離出HUE
2.使用HUE建立被追蹤顏色的直方圖,并產(chǎn)生反向投影圖空間
3.反向投影圖空間中使用mask凸顯追蹤顏色
4.搜索并計(jì)算出追蹤顏色部分的范圍
接下貼出在PC上運(yùn)行單幀識(shí)別程序的各種運(yùn)算結(jié)果,可以幫助理解代碼的原理:
把原圖通過RGB to HSV之后的結(jié)果
通過HSV中分離出的HUE
通過HUE建立的直方圖,統(tǒng)計(jì)選中顏色(原圖中選中的是綠色)
對Hue圖像做直方圖反向投影,然后做掩膜處理得到想要的部分
使用cvCamShift搜索出掩膜處理后凸顯的部分,并計(jì)算出范圍。
(審核編輯: 智匯小新)
分享