运行MediaPipe示例代码报错:No module named 'mediapipe.tasks'求助
问题
运行从MediaPipe官网复制的demo.py代码时,出现以下错误:
Traceback (most recent call last): File "demo.py", line 3, in <module> from mediapipe.tasks import python ModuleNotFoundError: No module named 'mediapipe.tasks'
当前已安装MediaPipe 0.8.9.1版本,尝试安装0.10.0版本失败:
ERROR: Could not find a version that satisfies the requirement mediapipe==0.10.0 (from versions: 0.8.9.1) ERROR: No matching distribution found for mediapipe==0.10.0
执行pip install --upgrade mediapipe时,系统提示已是最新版本:
Requirement already up-to-date: mediapipe in /home/pcai/.local/lib/python3.8/site-packages (0.8.9.1) Requirement already satisfied, skipping upgrade: matplotlib in /usr/lib/python3/dist-packages (from mediapipe) (3.1.2) Requirement already satisfied, skipping upgrade: numpy in /home/pcai/.local/lib/python3.8/site-packages (from mediapipe) (1.19.3) Requirement already satisfied, skipping upgrade: protobuf>=3.11.4 in /home/pcai/.local/lib/python3.8/site-packages (from mediapipe) (3.20.1) Requirement already satisfied, skipping upgrade: opencv-contrib-python in /home/pcai/.local/lib/python3.8/site-packages (from mediapipe) (4.8.0.74) Requirement already satisfied, skipping upgrade: absl-py in /home/pcai/.local/lib/python3.8/site-packages (from mediapipe) (1.4.0) Requirement already satisfied, skipping upgrade: attrs>=19.1.0 in /home/pcai/.local/lib/python3.8/site-packages (from mediapipe) (23.1.0)
环境:Python 3.8、pip 20.0.2
解答
错误原因
mediapipe.tasks模块是MediaPipe 0.10.0及以上版本才新增的模块,你当前安装的0.8.9.1版本确实没有这个模块,错误由版本问题直接导致。
解决步骤
- 升级pip版本
你的pip版本(20.0.2)过于老旧,可能无法识别新版本MediaPipe的包索引。先执行升级:
pip install --upgrade pip
- 重新尝试安装指定版本或最新版本
升级pip后,先查看当前可用的MediaPipe版本:
pip install mediapipe==
执行后会列出所有可安装的版本,选择包含0.10.0或更高的版本进行安装,例如:
pip install mediapipe==0.10.0
如果仍找不到0.10.0,直接安装最新兼容版本:
pip install --upgrade mediapipe
- 若仍无法安装(平台兼容性问题)
如果你的系统架构(如某些Linux小众架构)没有预编译的0.10.0版本包,可以尝试从源码编译安装MediaPipe,或者更换到官方支持的架构/系统环境。
内容的提问来源于stack exchange,提问作者how2051
相关产品推荐
相关产品推荐

