MediaPipe的编译与测试

本文详细介绍了如何在Ubuntu和Win10环境下编译MediaPipe,包括环境配置、依赖安装、Bazel设置,以及HelloWorld和HandTracking等实例测试。同时,文章还讲解了MediaPipe在Android上的应用,包括解决编译错误、生成aar包的步骤,并展示了Object Detection的实时检测效果。
摘要由CSDN通过智能技术生成

MediaPipe是谷歌开源的多媒体机器学习框架,里面包含了很多例如姿态、人脸检测、虹膜等各种各样的模型以及机器学习算法。用于构建跨平台多模态应用的ML管道的框架。其包括快速ML推理、经典计算机视觉。核心框架由 C++ 实现,并提供 Java 以及 Objective C 等语言的支持。MediaPipe 的主要概念包括数据包(Packet)、数据流(Stream)、计算单元(Calculator)、图(Graph)以及子图(Subgraph)。数据包是最基础的数据单位,一个数据包代表了在某一特定时间节点的数据,例如一帧图像或一小段音频信号;数据流是由按时间顺序升序排列的多个数据包组成,一个数据流的某一特定时间戳(Timestamp)只允许至多一个数据包的存在;而数据流则是在多个计算单元构成的图中流动。MediaPipe 图是有向的——数据包从数据源(Source Calculator或者 Graph Input Stream)流入图直至在汇聚结点(Sink Calculator 或者 Graph Output Stream) 离开。

一、Ubuntu下配置MediaPipe
1、环境配置
Python >= 3.9.0
Bazel >= 3.7.2, (< 4.0.0 for iOS)
GCC/G++ >= 8.0.0 (Linux, macOS)
NuGet
jdk安装(源码安装):ubuntu18 安装jdk11 (jdk-11.0.9_linux-x64_bin.deb)
OpenCV3 (最好OpenCV3,安装OpenCV4编译C++报错)
(1)OpenCV3安装:
cd mediapipe-master
chmod +x setup_opencv.sh
./setup_opencv.sh
(2) 安装MediaPipe所需依赖库

pip --default-timeout=1000 install -i requirements.txt

(3) Bazel下载与安装
Bazel下载地址
Bazel3.7.2下载地址
Bazel 安装:

chmod a+x bazel-3.7.2-installer-linux-x86_64.sh
./bazel-3.7.2-installer-linux-x86_64.sh --user
 echo 'export PATH="/home/xx/.bazel/bin/:$PATH"' >> ~/.bashrc
 source ~/.bashrc
 bazel --version

(4)Python3.9.1安装
ubuntu 16.04 编译安装 python3.9
Python3.9.1 make过程中报错:fatal error: ffi.h: No such file or directory
在这里插入图片描述
该错误是因为缺少ffi库的原因,解决方法:

sudo apt-get install libffi-dev

安装完成后继续make,问题解决~
(5) 安装SDK/NDK以及配置相应的环境变量
-> cd到mediapipe-master文件夹下,执行命令:

chmod +x ./setup_android_sdk_and_ndk.sh
bash ./setup_android_sdk_and_ndk.sh ~/Android/Sdk ~/Android/Ndk r18b

->配置环境变量
一次性操作,关闭终端后需要重新进行配置

export ANDROID_HOME=/home/admin1/Android/Sdk
export ANDROID_NDK_HOME=/home/admin1/Android/Ndk/android-ndk-r18b

永久配置全局环境变量:

sudo gedit /etc/profile
## 在profile最下方添加:
export ANDROID_HOME=
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Linda Fan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值