VS Code中的Jupyter Notebook出现ModuleNotFoundError
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-python
和 cvzone
这两个模块之后,
在使用 ipykernel 的虚拟环境(python 3.7.8)时,
在代码的第4行仍然出现错误。
2 个回答
0
pip install mediapipe
在终端里运行它,和你安装 opencv-python
和 cvzone
的方式一样。这会安装缺失的 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
这样你就可以成功导入这些模块了。