每个人儿时都有一个武侠梦,梦想自己有一天10块钱买到一本如来神掌,从此仗剑走天涯,不过在桃花岛,真的有一本秘籍:隔空玩游戏,今天,就带领大家翻阅翻阅这本秘籍。
这本秘籍全部都是用python来完成的哦,想要学会它然后仗剑走天涯,就要先学会一部分python知识,好了,我们先来看看效果吧~
演示完毕,现在我们来进入教学阶段吧~本次我们只讨论手势识别的过程,用python写游戏,我们放在后续的章节放出来吧。
首先,一个很复古很经典的问题:把大象放进冰箱需要几步?
1. 打开冰箱门
2. 把大象放进去
3. 关上门
手势识别的过程也是这样:
1. 打开摄像头
2. 识别手势
3. 关闭摄像头
4. 本文结束哈哈哈
好了,进入正题吧!这次手势识别用到的python库主要有OpenCV(一个很强大很好用免费开源的计算机视觉工具)、NumPy(矩阵运算)。
打开摄像头:
我们在python中导入必要的模块
import cv2
import numpy as np
定义好摄像头
camera = cv2.VideoCapture(0) # 0代表本机自带摄像头
写一个循环,不停的从摄像头中取数据,摄像头会把每一帧画面都传回来
while camera.isOpened():
ret, frame = camera.read()# 读取摄像头的数据 frame为画面 ret 为标识
将图像初步处理并显示
frame = cv2.bilateralFilter(frame, 5, 50, 100) # 双边滤波
frame = cv2.flip(frame, 1) # 图片翻转 Y轴翻转
cv2.rectangle(frame, (int(cap_region_x_begin * frame.shape[1]), 0),
(frame.shape[1], int(cap_region_y_end * frame.shape[0])), (255, 0, 0), 2) # 画框框
cv2.imshow('original', frame)
这里我们首先使用了bilateralFilter-双边滤波ÿ