MediaPipe 跨平台视觉AI环境即搭即用指南
【免费下载链接】mediapipeCross-platform, customizable ML solutions for live and streaming media.项目地址: https://gitcode.com/GitHub_Trending/med/mediapipe
做移动端或桌面端的人脸检测、手势识别、姿态估计时,通常要自己处理摄像头取流、模型推理、结果渲染这一整条链路。MediaPipe 把这条链路封装为跨平台机器学习框架,内置预训练模型,覆盖人脸检测、手势识别、姿态估计、物体追踪等场景,同一套图(graph)配置可在 Android、iOS、桌面与 Web 之间复用。本文只解决一件事:把 MediaPipe 在本机构建起来并验证通过。
🧩 开始前:环境要求
| 类别 | 要求 | 用途 |
|---|---|---|
| 操作系统 | Debian/Ubuntu、macOS、Windows(实验性)、WSL | MediaPipe Framework 的主要构建目标 |
| 构建工具 | Bazelisk(Bazel 6.5.0 及以上) | 编译源码并拉取第三方依赖 |
| Python | Python 3,需可被 Bazel 找到解释器 | 构建期生成 proto 等产物 |
| OpenCV | 3.x ~ 4.x(按发行版预编译包安装) | 图像读写与视频流处理 |
| FFmpeg | 随 OpenCV video 模块附带 | 视频文件解码输入 |
| GPU 驱动 | 可选,EGL/Mesa(Linux 桌面) | 仅 GPU 示例需要,CPU 构建可跳过 |
📦 获取代码与依赖
先拿源码,再装依赖。
git clone https://gitcode.com/GitHub_Trending/med/mediapipe cd mediapipe依赖按平台分叉:
- Linux / WSL:用发行版包管理器装预编译 OpenCV(
libopencv-*.dev,FFmpeg 经libopencv-video-dev带入),再装 Bazelisk 与 Python 3。 - macOS:Homebrew 装
opencv@3与 Bazelisk,xcode-select --install补齐命令行工具。 - Windows:MSYS2 + Visual C++ Build Tools 2019 + WinSDK,OpenCV 3.4.10 离线安装,并设置
BAZEL_VS等变量。
⚙️ 构建并验证
执行最小验证命令,它会把 hello_world 编译并运行一次:
bazel run --define MEDIAPIPE_DISABLE_GPU=1 mediapipe/examples/desktop/hello_world:hello_world终端连续打印 10 行Hello World!,即环境可用。该命令运行 hello_world.cc 中定义的一张串联两个 PassThroughCalculator 的简单图,用于确认 Bazel、OpenCV 与 Python 解释器三者都已就绪。
🖼️ 在示例目录里体验
桌面示例集中在 mediapipe/examples/desktop/,推荐从 face_detection/ 入手;每个示例的BUILD文件都带一条可运行的样例命令,注明 graph 配置文件与输入输出路径。移动端对应 mediapipe/examples/android/ 与 mediapipe/examples/ios/。
🧯 常见问题速查
- 找不到 Python 解释器(
local_execution_config_python报错)→ Bazel 定位不到 python 二进制 → 追加--action_env PYTHON_BIN_PATH=$(which python3)。 No module named numpy→ 缺少 Python 依赖包 → 用pip3 install装上对应包。undefined reference to cv::...→ OpenCV 未按仓库配置指向 → 按 install.md 调整WORKSPACE与opencv_*.BUILD。- 拉取
org_tensorflow等远程依赖超时 → 网络/镜像不可达 → 配置代理或bazel clean --expunge后重试。 pip install mediapipe找不到版本 → 系统不在 64 位支持列表 → 换 x86_64 Linux/macOS 或 amd64 Windows。
📚 接下来
- 想理解 Packet、Graph、Calculator 三大核心概念:读 docs/framework_concepts/。
- 想排查构建或调 GPU:看 docs/getting_started/troubleshooting.md。
- 想改模型而非只跑示例:进 mediapipe/model_maker/ 用 Model Maker 微调。
完成这些之后,你现在可以构建任意 desktop 示例,或把同一张 graph 部署到 Android 与 iOS 应用里。
【免费下载链接】mediapipeCross-platform, customizable ML solutions for live and streaming media.项目地址: https://gitcode.com/GitHub_Trending/med/mediapipe
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考