您的位置 首页 传感器

怎么根据Dragoboard 410c开发板规划简略手型辨认计划?

手势交互是未来人机交互领域发展的一个重要方向,本文将参考使用Opencv实现静态手势识别玩转石头剪刀布一文,教大家如何在Dragoboard 410c开发板上使

手势交互是未来人机交互范畴开展的一个重要方向,本文将参阅运用Opencv完成静态手势辨认玩转石头剪刀布一文,教咱们如安在Dragoboard 410c开发板上运用Python脚本语言完成简略的手型辨认,经过从USB摄像头获取手型图画,然后辨认出石头-剪刀-布三个手型。


详细完成过程如下:

1)获取USB摄像头图画:

这儿主要是经过Opencv供给的Python接口cv2,详细能够参阅410c板获取USB摄像头图画一文,里边详细介绍了在dragonboard 410c上运用USB摄像头获取图画。

2)设置手势区域

在视频区域内设置一个手势区域,只要将手放入到该区域,体系才能够正确的辨认手型,其他区域的体系不做处理,详细代码如下:

#设置手型区域

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

#获取手型区域图画并保存

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

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

3)对检测区域进行图画处理,其间心代码如下:

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;

到这儿咱们就完成了整个手型辨认的中心部分,详细的代码较长,直接附件http://pan.baidu.com/s/1kUKSxoV,用该代码运转就能够进行手型检测,作用如下图所示,尽管不精确,可是基本上能够检测出三种不同的手型:


声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/chuanganqi/149332.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部