<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 如何基于Dragoboard 410c開(kāi)發(fā)板設計簡(jiǎn)單手型識別方案?

如何基于Dragoboard 410c開(kāi)發(fā)板設計簡(jiǎn)單手型識別方案?

作者: 時(shí)間:2018-08-03 來(lái)源:網(wǎng)絡(luò ) 收藏

手勢交互是未來(lái)人機交互領(lǐng)域發(fā)展的一個(gè)重要方向,本文將參考使用Opencv實(shí)現靜態(tài)手勢識別玩轉石頭剪刀布一文,教大家如何在Dragoboard 410c上使用Python腳本語(yǔ)言實(shí)現簡(jiǎn)單的手型識別,通過(guò)從USB攝像頭獲取手型圖像,然后識別出石頭-剪刀-布三個(gè)手型。

本文引用地址:http://dyxdggzs.com/article/201808/385318.htm


具體實(shí)現步驟如下:

1)獲取USB攝像頭圖像:

這里主要是通過(guò)Opencv提供的Python接口cv2,具體可以參考410c板獲取USB攝像頭圖像一文,里面詳細介紹了在dragonboard 410c上使用USB攝像頭獲取圖像。

2)設置手勢區域

在視頻區域內設置一個(gè)手勢區域,只有將手放入到該區域,系統才可以正確的識別手型,其他區域的系統不做處理,具體代碼如下:

#設置手型區域

cv2.rectangle(img,(426,0),(640,250),(170,170,0))

#獲取手型區域圖像并保存

img = img[0:210,426:640]

cv2.imwrite(“wif.jpg”,img)

3)對檢測區域進(jìn)行圖像處理,其核心代碼如下:

img = cv2.imread(“wif.jpg”,0)

element = cv2.getStructuringElement(cv2.MORPH_RECT,(11,11))

dilate = cv2.dilate(img, element)

erode = cv2.erode(img, element)

result = cv2.absdiff(dilate,erode);

retval, result = cv2.threshold(result, 40, 255, cv2.THRESH_BINARY);

result = cv2.bitwise_not(result);

result =cv2.medianBlur(result,23)

4)判斷手型,其中部分核心代碼如下:

if width[i]=20 or width[i]>=40:

width_jiandao= False

width_length += width[i]

if width_jiandao==True and count==2:

return 1;

if(area 8500):

#print ‘stone;

return 0;

print “width_leng”,width_length

......

if(area>14000 or count>=3):

#print ’paper‘;

return 2;

if(width_length110):

#print ’rock‘;

return 1;

else:

#print ’paper‘;

return 2;

到這里我們就完成了整個(gè)手型識別的核心部分,具體的代碼較長(cháng),直接附件http://pan.baidu.com/s/1kUKSxoV,用該代碼運行就可以進(jìn)行手型檢測,效果如下圖所示,雖然不準確,但是基本上可以檢測出三種不同的手型:




評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>