用Python编程识别手势数字

谷歌出了一个开源的 、跨平台的、可定制化的机器学习解决方案工具包,给在线流媒体(当然也可以用于普通的视频、图像等)提供了机器学习解决方案。感兴趣的同学可以打开这个网址了解详情:mediapipe.dev/

它提供了手势 、人体姿势、人脸、物品等识别和追踪功能 ,并提供了C++ 、Python 、JavaScript等编程语言的工具包以及iOS、Android平台的解决方案,今天我们就来看一下如何使用MediaPipe提供的手势识别来写一个Python代码识别手势中的数字:0-5  。

准备工作

电脑需要安装Python3,建议安装Python3.8.x的版本。除此之外 ,还需要安装Opencv-Python、MediaPipe以及numpy几个工具包,可以使用pip进行安装:

准备6张图片,分别是6张手的图片。

编写程序

  1. 编写一个handutil.py模块 ,这个handutil模块有一个HandDetector类 ,提供了检测手势 、获取手势数据的方法 。代码如下,详细解释看代码注释:

  1. 编写另一个fingercount.py代码,在这个代码中 ,调用handutil.py的HandDetector类提供的方法,获取手势数据,每个手势数据由3个数字组成:id, x, y ,分别代表手势中某个点以及这个点的x\y坐标位置。下图是手势识别中每个id对应手的部位说明。

从上图可知:4, 8, 12, 16, 20分别代表大拇指、食指、中指 、无名指和小指的指尖 。完整代码如下:

运行代码,我们可以看到能够识别手势中的数字,并显示对应的图片和数字了

本文版权归去快排wWw.seogUrublog.com 所有,如有转发请注明来出,竞价开户托管,seo优化请联系qq❉61910465