MediaPipe Python 安装速通指南:一条 pip 命令跑通人脸检测
MediaPipe Python 安装速通指南:一条 pip 命令跑通人脸检测
【免费下载链接】mediapipeCross-platform, customizable ML solutions for live and streaming media.项目地址: https://gitcode.com/GitHub_Trending/med/mediapipe
MediaPipe 是面向实时媒体处理的跨平台机器学习框架,内置人脸检测、手部关键点、姿态等现成模块。这篇文章带你从空环境跑到 Python 里的人脸关键点检测,整个 MediaPipe Python 安装过程就围绕一条 pip 命令。
⚡ 装之前先自查:3 个问题
动手前把这三条过一遍,能省掉大部分弯路:
- Python 版本:必须 3.9~3.12,且是 64 位。低于 3.9 或升到 3.13 以后都没有官方预编译包,pip 会直接拒装。
- 系统支持:Linux x86_64、macOS 10.15 以上、Windows amd64。别的平台得自己从源码编译。
- 虚拟环境:建议装在虚拟环境里(一个把包装进"沙盒"、不弄脏系统 Python 的隔离空间),下一步顺手就建,别省这一步。
一条最短路径:建环境、装包
建沙盒、进沙盒一句搞定,前半段创建环境,后半段激活它:
python3 -m venv mp_env && source mp_env/bin/activate敲完你会看到终端行首多了个(mp_env)前缀,这是"人进沙盒"的标志,之后装的东西都进沙盒。
沙盒就绪,装 MediaPipe 只需一行:
pip install mediapipe等它跑完,输出最后一行出现Successfully installed mediapipe-x.x.x ...,说明装好了。
✅ 装完先验证:5 行代码看真效果
装没装好,不靠版本号说话,跑一次检测才算数。把下面这段存成face_test.py,旁边放一张有清晰人脸的照片test.jpg:
import mediapipe as mp import cv2 mp_face_mesh = mp.solutions.face_mesh with mp_face_mesh.FaceMesh() as face_mesh: image = cv2.imread("test.jpg") results = face_mesh.process(cv2.cvtColor(image, cv2.COLOR_BGR2RGB)) print("Face landmarks detected:", results.multi_face_landmarks is not None)执行python face_test.py,输出Face landmarks detected: True就是安装全部成功;False只是照片里没找到人脸,换张再跑。
上面这张是项目里自带的人脸检测结果图:白色方框和 5 个白点是模型找到的脸部框与关键点位置,0.93 是置信度。
🔧 高频报错速查
按真实出现频率排序,先对英文报错,再看原因。
1.ModuleNotFoundError: No module named 'mediapipe'大概率原因:你跑的 Python 和装包时的 Python 不是同一个——多半是忘了激活虚拟环境,或编辑器绑定了系统 Python。 一步解决:在激活的环境里装,再在该环境跑脚本:
source mp_env/bin/activate && pip install mediapipe完成后在终端里import mediapipe不再报错即可。
2.ERROR: Could not find a version that satisfies the requirement 'mediapipe'大概率原因:你的 Python 太老(3.9 以下)或太新(3.13+),这个版本没有对应安装包。 一步解决:换 3.9~3.12 重建环境,比如python3.11 -m venv mp_env。
3.ERROR: An error occurred during the fetch of repository 'local_execution_config_python'大概率原因:源码编译时,构建工具 Bazel 没找到它以为的 Python 路径。 一步解决:显式告诉它 Python 在哪:bazel build --action_env PYTHON_BIN_PATH=$(which python3) ...。
4.ImportError: DLL load failed(Windows)/undefined reference to 'cv::...'大概率原因:Windows 缺 VC 运行时;Linux 编译用户则是 OpenCV 库的链接配置不匹配。 一步解决:Windows 装 Visual C++ Redistributable;编译用户检查third_party/opencv_linux.BUILD里的链接配置。
🧩 可选支线:什么时候才需要源码编译
跑人脸、手部、姿态这类现成功能,pip 版完全够用,不用碰编译。三类人才需要源码编译:改内部 C++ 逻辑的、给项目贡献代码的、要在 ARM64 Linux 上跑的(官方没给 aarch64 的预编译包)。
编译依赖(Debian/Ubuntu 为例):
sudo apt install python3-dev python3-venv protobuf-compiler cmake这条装的是编译底座:Python 开发头文件和 protobuf 编译器,另外还需装好 Bazel 和 OpenCV。
克隆仓库再进目录编译:
git clone https://gitcode.com/GitHub_Trending/med/mediapipe cd mediapipepython3 setup.py install --link-opencv最后这条是编译入口,会自动调 Bazel 编译并装进当前 Python。
装、验、跑通检测,MediaPipe Python 安装就齐了。下一步看 Python 使用文档 和 官方安装文档。
【免费下载链接】mediapipeCross-platform, customizable ML solutions for live and streaming media.项目地址: https://gitcode.com/GitHub_Trending/med/mediapipe
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
