Python中如何修复'openCV has no attribute VideoCapture'报错
解决方案
报错核心原因:opencv-python安装后官方的导入模块名为cv2,你的代码中错误使用opencv作为模块名调用,才会触发属性不存在的报错。
按照以下步骤操作即可解决:
- 修改项目代码内所有导入语句,将
import opencv替换为import cv2 - 同步修改所有调用逻辑:
原代码cap = opencv.VideoCapture(0)修改为cap = cv2.VideoCapture(0)
原验证代码print(opencv.__version__)修改为print(cv2.__version__)
如果完成上述修改后问题仍然存在,按以下顺序排查:
- 确认当前运行代码的Python环境对应pip已正确安装opencv包:在终端执行
pip show opencv-python,确认返回信息中版本为4.5.3.56,且安装路径和你当前使用的Python解释器路径匹配 - 检查项目根目录以及脚本所在目录下是否存在名为
cv2.py、opencv.py的自定义文件,若存在需要对文件重命名,避免和官方库重名导致导入错误 - 排除多环境冲突:若设备上存在多个Python版本,使用代码运行的解释器对应绝对路径的pip重新安装,例如Windows环境Python3.8默认路径下执行
C:\Users\你的用户名\AppData\Local\Programs\Python\Python38\Scripts\pip.exe install opencv-python==4.5.3.56
内容的提问来源于stack exchange,提问作者Ryan Kopp
相关产品推荐
相关产品推荐

