这里怎挽,进来喝杯茶,听我慢慢讲
————————————
本贴是python实现手势识别(入门)
————————————
————————————
✔ 记得点赞,回复,关注
————————————
使用open-cv实现简单的手势识别。刚刚接触python不久,看到了很多有意思的项目,尤其时关于计算机视觉的。网上搜到了一些关于手势处理的实验,我在这儿简单的实现一下(PS:和那些大佬比起来真的是差远了,毕竟刚接触不久),主要运用的知识就是opencv,python基本语法,图像处理基础知识。
最终实现结果:(犹豫不能发动图就发张图片吧)
——————
手势识别
获取视频(摄像头)
这部分没啥说的,就是获取摄像头。
`
cap = cv2.VideoCapture("C:/Users/lenovo/Videos/1.mp4")
#读取文件#
cap = cv2.VideoCapture(0)
转换至YCrCb空间
(y,cr,cb) = cv2.split(YCrCb)
res = cv2.bitwise_and(img,img, mask = skin)
return res
————————
轮廓处理
————————
轮廓处理的话主要用到两个函数,cv2.findContours和cv2.drawContours,这两个函数的使用使用方法很容易搜到就不说了,这部分主要的问题是提取到的轮廓有很多个,但是我们只需要手的轮廓,所以我们要用sorted函数找到最大的轮廓。
def B(img):
#binaryimg = cv2.Canny(Laplacian, 50, 200) #二值化,canny检测
h = cv2.findContours(img,cv2.RETR_EXTERNAL,cv2.CHAIN_APPROX_NONE) #寻找轮廓
contour = h[0]
contour = sorted(contour, key = cv2.contourArea, reverse=True)#已轮廓区域面积进行排序
#contourmax = contour[0][:, 0, :]#保留区域面积最大的轮廓点坐标
bg = np.ones(dst.shape, np.uint8) *255#创建白色幕布
ret = cv2.drawContours(bg,contour[0],-1,(0,0,0),3) #绘制黑色轮廓
return ret
——————————
另外帖子发不下了,全部代码在一楼
来自于互联网!