mediapipe包实现简单的手势识别

发布时间 2023-11-17 15:06:42作者: 小明同学404

前言

  一开始我还是java和c++的忠实用户,对python多少有点轻视,但很快就发现我错了,python没有java和c++那样严格的各种语法和格式要求,可以说是非常简易的。而且python有着大量的第三方库,可以轻轻松松用十几行代码实现各种各样的功能,代码写起来还是比c++和java轻松许多的。最近也在学习python里的一些第三方库,就写篇文章记录一下学习成果和笔记吧。

环境配置

  我的开发环境是python3.8+pycharm,这次主要用到的包就是mediapipeopcv-python,怎么下载这两个包我就不说了,如果有不会的可以自行百度。下面就先简单介绍一下这两个包吧,(只是简单介绍一下这些包在这个案例里要干什么以及可以干什么,具体的我也不是太了解了)。

  MediaPipe

  MediaPipe 是一款由 Google Research 开发并开源的多媒体机器学习模型应用框。我们可以直接获取到谷歌已经训练好的识别模型,通过接口调用对图片或视频里的人进行手部、脸部或者身体骨架的识别,这些模型我们也可以使用自己的数据进行训练,这里不再多说。在这个案例里面我们要使用手部检测的模型。

  首先我们先看一下GitHub上这部分的文档上的示例代码。

#导入opencv-python的cv2模块
import cv2
#导入mediapipe模块
import mediapipe as mp
#获取绘制特征点的工具类
mp_drawing = mp.solutions.drawing_utils
#这个应该是设置绘制时的样式的
mp_drawing_styles = mp.solutions.drawing_styles
#获取手部识别模型的类
mp_hands = mp.solutions.hands