cv2手勢動態識別

2021-08-29 20:29:41 字數 982 閱讀 7267

本篇文章主要介紹使用cv2來實現手勢的動態識別。

下面是示例**:

import cv2

import numpy as np

capture = cv2.videocapture(0)

while capture.isopened():

ret, frame = capture.read()

cv2.imshow("frame", frame)

# 中值濾波,去除椒鹽雜訊

dst = cv2.medianblur(frame, 5)

# 轉換到hsv顏色空間

dst_hsv = cv2.cvtcolor(dst, cv2.color_rgb2hsv)

# 對hsv空間進行量化,得到2值影象,亮的部分為手的形狀

dst_temp1 = cv2.inrange(dst_hsv, (0, 30, 30), (40, 170, 256))

dst_temp2 = cv2.inrange(dst_hsv, (156, 30, 30), (180, 170, 256))

mask = np.array([frame.shape[1], frame.shape[0]])

mode = cv2.bitwise_or(dst_temp1, dst_temp2, mask)

# 形態學操作,去除雜訊,並使手的邊界更加清晰

d = cv2.erode(mode, (3, 3))

d = cv2.morphologyex(d, cv2.morph_open, (3, 3))

d = cv2.dilate(d, (3, 3))

d = cv2.morphologyex(d, cv2.morph_open, (3, 3))

np.copyto(d, d)

# 得到手的輪廓

image, contours, hierarchy = cv2.findcontours(d

cv2作弊手冊

img cv2.imread cv2.imshow show img cv2.waitkey cv2.destroyallwindows 視窗只會在呼叫waitkey 函式時才會更新 數學表示 所有的波形都可以由一系列簡單且頻率不同的正弦曲線疊加得到。影象由許多頻率組成,分離不同的頻率來理解影象和提...

iOS開發 19 手勢解鎖

m檔案 import zjlockview.h define kbtncount 9 inte ce zjlockview 儲存選中按鈕 property nonatomic,strong nsmutablearray selectedbtns 記錄當前點位置 property nonatomic,...

2015 10 27 手勢優先順序

如果一張既要單擊手勢,又要雙擊手勢,要怎麼處理,看完這句 你就知道了 uitapgesturerecognizer doublerecognizer uitapgesturerecognizeralloc initwithtarget selfaction selector handledouble...