Google Colab无法使用OpenCV Contrib的dnn_superres问题咨询
解决Colab环境OpenCV Contrib模块加载失败问题
报错核心原因:Colab默认预装的基础版OpenCV不包含dnn_superres等扩展模块,即使手动安装过opencv-contrib-python,只要内核仍加载预装的旧版本、或是两个包版本不匹配,就会触发属性不存在的错误。
具体操作步骤
- 第一步:卸载Colab预装的所有OpenCV相关包,清除残留版本
执行代码:!pip uninstall -y opencv-python opencv-contrib-python opencv-python-headless opencv-contrib-python-headless - 第二步:安装匹配版本的OpenCV Contrib包
执行代码:!pip install opencv-contrib-python==4.8.0.76
这里指定固定版本是为了避免不同版本间的兼容问题,你也可以去掉版本号安装最新正式版。 - 第三步:重启运行时生效
点击Colab顶部菜单栏的「代码执行程序」→「重新启动代码执行程序」,这一步必须执行,否则内核仍加载旧版本,修改不会生效 - 第四步:验证模块是否正常加载
执行以下代码测试:import cv2 # 打印当前OpenCV版本确认是否为你安装的版本 print("当前OpenCV版本:", cv2.__version__) # 测试目标方法 sr = cv2.dnn_superres.DnnSuperResImpl_create() print("dnn_superres模块加载成功")
注意事项
- 不要同时安装基础版
opencv-python和扩展版opencv-contrib-python,两者版本不一致会直接导致扩展模块加载失败 - 每次新建Colab notebook、或是重置运行时后都需要重复上述操作,因为Colab的运行时环境每次重启都会恢复默认配置
内容的提问来源于stack exchange,提问作者Gaelix98
相关产品推荐
相关产品推荐

