在Windows上运行mediapipe:快速部署模型的AI框架

 

一、mediapipe简介

mediapipe可以被视为谷歌版的onnx,其设计目的在于跨平台部署AI模型,并提供一系列工具来监测不同平台、不同设备运行人工智能模型时的性能表现。

尽管mediapipe已经陆续支持训练自定义模型,但博主更推荐使用Pytorch/Tensorflow训练模型,再通过mediapipei进行部署。正如前文所言,可以把mediapipe当做onnx来使用。

mediapipe支持的平台、解决方案和工具如下。

1、平台

Android、iOS、Python、JavaScript、C++

2、解决方案

(1)视觉任务

对象检测、图像分类、图像分割、交互式分割、手势识别、手部特征点检测、嵌入图片、人脸检测、面部特征检测、姿态特征点检测、人脸风格化、整体特征点检测。

(2)文本任务

文本分类、文本嵌入、语言检测。

(3)音频任务

音频分类。

3、工具

针对计算图和推理管道的可视化工具、推理过程的分析与跟踪工具、模型性能基准测试工具(未推出)。


二、mediapipe官网

在安装和使用mediapipe之前,有必要呈现mediapipe的四个官方网站。由于网站是不断更新的,建议在安装和使用mediapipe之前仔细阅读。

1、软件概览

Home - mediapipe

这个网站实际上就是介绍了mediapipe支持的平台、提供的解决方案和具有的工具。

2、使用指南

MediaPipe 解决方案指南  |  Google AI Edge  |  Google AI for Developers

这个网站提供了在线调用AI模型的功能,可能需要科学上网。除此之外,提供了在不同平台上安装和使用mediapipe的指南。

3、库GitHub

GitHub - google-ai-edge/mediapipe: Cross-platform, customizable ML solutions for live and streaming media.

这个网站指向mediapipe项目源,提供了在不同平台上使用mediapipe的必备资源。

4、案例GitHub

GitHub - google-ai-edge/mediapipe-samples

案例GitHub和库GitHub是两个不同的概念,案例GitHub提供了在不同平台上部署mediapipe的程序,例如提供了在树莓派平台上调用图像分类模型进行推理的程序(用户无需编程)。


三、mediapipe安装

根据相关报道,截止2024年12月,Python已经超过C++成为最受欢迎的编程语言。因此,本篇将以Python为例,说明如何在Windows上安装和使用mediapipe。

本博客的主要阅读对象是刚接触人工智能的新手用户,因此,将尽可能详细地介绍从miniconda的安装到mediapipe的安装。

1、安装miniconda

miniconda是管理Python虚拟环境的一款软件,下载地址如下,注意只需要下载miniconda而不是Anaconda。下载完成后安装即可。

Download Now | Anaconda

f3404079a0fb4808a97d87eaf6c8c237.png

2、安装mediapipe

在“开始”的搜索框中输入“miniconda”,然后打开Anaconda Prompt。

5173607c550b4729bfb12ef1c303c99e.png

在打开的Anaconda Prompt中,输入以下指令,设置为默认镜像源下载。

conda config --add channels defaults

然后,输入以下指令,创建mediapipe环境。

conda create -n mediapipe python==3.12

3d86a9e68d174749a8981c5c7799ce40.png

如果完成mediapipe虚拟环境的创建,将显示以下画面。

ee79720bfc934222a15a3baf1510d38b.png

使用以下指令,激活mediapipe环境。

conda activate mediapipe

使用以下指令,安装mediapipe。

pip install mediapipe

eb292b5d19d14535a422b137e5420fd9.png

安装完成后,测试mediapipe是否可用。输入以下指令,如果没有报错,则说明mediapipe已完成安装。

python
import mediapipe as mp

5f9991d4728847f8b57d3baf747fd9cb.png


四、mediapipe使用

如前所述,mediapipe提供了一系列示例程序,新手用户可以直接运行这些示例程序,体验不同类型的人工智能任务。

1、下载mediapipe samples

mediapipe samples是官方提供的一系列示例程序,从案例GitHub下载或从本博客绑定资源下载。

GitHub - google-ai-edge/mediapipe-samples

6ba0d14a1f2540dfa9a4c7421e9d071a.png

2、下载wget

由于mediapipe samples需要使用到wget工具,需要打开网站下载或从本博客绑定资源下载。

Index of /gnu/wget

如果从网站下载,按照下图选择EXE版本。

b4df61c7f74740238de0221f0dd776d9.png

下载完成后,将wget.exe复制粘贴到以下地址。

C:\Windows\System32

然后,按下win+R运行cmd,输入wget后,如果出现下图提示,说明wget已经可以正常使用。

e6bfa1a8da39439fa84615136a7f80b7.png

3、安装opencv-python

对于视觉任务,mediapipe依赖opencv库,因此,还需要在mediapipe虚拟环境中安装opencv-python。

首先,打开anaconda prompt并激活mediapipe虚拟环境。

然后,输入以下指令安装opencv-python。

pip install opencv-python

安装完成后,无需退出anaconda prompt及mediapipe虚拟环境。

4、启动推理

至此,终于可以使用mediapipe示例程序了!

在mediapipe-samples文件夹中,examples子文件夹存放了多种任务。

7c46ef7603ed4f64b37c7b4c0af8b34e.png

接下来,以运行hand_landmarker(手部关键点检测)为例,介绍如何使用mediapipe示例程序。

进入hand_landmarke文件夹,发现一共有5个平台,其中python是在计算机上运行的,raspberry_pi是在树莓派上运行的。由于python子文件夹中使用的是.ipynb格式,配置相应的运行环境比较麻烦,所以使用raspberry_pi文件夹中的程序。

3918e19a62814182875ed099688d2b9a.png

进入raspberry_pi文件夹,右键选中detect.py,选择“复制文件地址”。

6546efd085e44b3ea0cb8f33d167ba6a.png

在anaconda prompt中粘贴以下指令,注意示例程序的地址应该根据实际情况做修改。

python "C:\Users\71401\Desktop\mediapipe-samples\examples\hand_landmarker\raspberry_pi\detect.py"

cdd92ec0f5e642b1a64e30456d69370c.png

如果程序正确运行,系统将弹出一个窗口,此时画面中将显示出手部关键点检测的实时推理结果。

ebce7dc3fd3e4aedbe78f37c884047c4.png

如果要退出推理,在此窗口中按ESC键即可。

不同设备的摄像机默认方向不同,如果发现左右手相反,可以打开detect.py程序,将102行注释掉(或删掉)。注释某行代码,只需在改行代码的开头处添加#符号。

4eb76961ced048a98927efd6f25d7ec8.png

然后保存程序,最后再用上述指令运行,可以发现摄像头的捕捉画面反过来了,并且左右手的识别也发生调整。

81ad9cec4a3b4f2bae9dc323d8ff0bd9.png

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值