Python+OpenCV 背景减除 实现初步(简单的)手势提取

it2022-05-05  148

Python+OpenCV 背景减除 实现初步手势提取

1, 读取摄像头 2, 背景减除 fgbg1 = cv.createBackgroundSubtractorMOG2(detectShadows=True) fgbg2 = cv.createBackgroundSubtractorKNN(detectShadows=True) # fgmask = fgbg1.apply(frame) fgmask = fgbg2.apply(frame) # 两种方法 3, 将没帧图像转化为灰度图像 在高斯去噪 最后图像二值化 gray = cv.cvtColor(res, cv.COLOR_BGR2GRAY) blur = cv.GaussianBlur(gray, (11, 11), 0) ret, binary = cv.threshold(blur, 0, 255, cv.THRESH_BINARY | cv.THRESH_OTSU) 4, 选取手部的 ROI 区域 绘制轮廓 gesture = dst[50:600, 400:700] contours, heriachy = cv.findContours(gesture, cv.RETR_EXTERNAL, cv.CHAIN_APPROX_SIMPLE) # 获取轮廓本身 for i, contour in enumerate(contours): # 获取轮廓 cv.drawContours(frame, contours, i, (0, 0, 255), -1) # 绘制轮廓 print(i)

效果图


最新回复(0)