VS Code中的Jupyter Notebook出现ModuleNotFoundError

0 投票
2 回答
51 浏览
提问于 2025-04-14 17:07
import os 
import cv2
import cvzone
from cvzone.PoseModule import PoseDetector  # error

Traceback (most recent call last)
~\AppData\Local\Temp\ipykernel_28992\1329371883.py in <module>
      2 import cv2
      3 import cvzone
----> 4 from cvzone.PoseModule import PoseDetector

c:\clothchangr\venv\lib\site-packages\cvzone\PoseModule.py in <module>
      7 
      8 import cv2
----> 9 import mediapipe as mp
     10 
     11 

ModuleNotFoundError: No module named 'mediapipe'

在终端中安装了 opencv-pythoncvzone 这两个模块之后,

在使用 ipykernel 的虚拟环境(python 3.7.8)时,

在代码的第4行仍然出现错误。

2 个回答

0
pip install mediapipe

在终端里运行它,和你安装 opencv-pythoncvzone 的方式一样。这会安装缺失的 mediapipe 库。

发生了什么,为什么会这样呢?cvzone 这个包使用了 Mediapipe 库,但没有明确列出它是一个依赖项。所以当你运行 pip install cvzone 时,它没有为你安装 mediapipe 包,这就是为什么你会看到 ModuleImportError 的原因。

我想 cvzone 的作者是认为你已经安装了 mediapipe。你并不是 一个人 :)


如果你在运行 pip install 后仍然遇到 ModuleImportError,请检查你在安装 mediapipe 时是否使用了正确的 pip。你可以用 pip -V 来查看:如果输出的 "from" 部分不是像 from c:\clothchangr\venv\... 这样的,那么说明你 没有正确激活虚拟环境

0

这意味着你的系统里没有安装 mediapipe 这个库,而 cvzone.PoseModule 是依赖于这个库的。在你安装了 cvzone 之后,还需要安装 mediapipe 库。

pip install cvzone

然后:

pip install mediapipe

这样你就可以成功导入这些模块了。

撰写回答