日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]手勢交互是未來人機(jī)交互領(lǐng)域發(fā)展的一個重要方向,本文將參考使用Opencv實(shí)現(xiàn)靜態(tài)手勢識別玩轉(zhuǎn)石頭剪刀布一文,教大家如何在Dragoboard 410c開發(fā)板上使用Python腳本語言實(shí)現(xiàn)

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

 


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

1)獲取USB攝像頭圖像:

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

2)設(shè)置手勢區(qū)域

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

#設(shè)置手型區(qū)域

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

#獲取手型區(qū)域圖像并保存

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

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

3)對檢測區(qū)域進(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_length<110):

#print ’rock‘;

return 1;

else:

#print ’paper‘;

return 2;

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

 


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉