【AttributeError: module ‘cv2‘ has no attribute ‘saliency‘】

AttributeError: module ‘cv2’ has no attribute ‘saliency’

问题解析

  • 已经成功安装cv2且import cv2成功的情况下(如下图黄色框所示),在运行时报如下所示错误:
    • AttributeError: module 'cv2' has no attribute 'saliency'
  • 这个错误通常是由于安装的OpenCV版本不包含saliency模块导致的。saliency模块是OpenCV的一个扩展模块,用于显著性检测
    在这里插入图片描述

解决方法

1.确保你安装的是包含saliency模块的OpenCV版本。你可以通过运行以下代码来检查OpenCV版本和可用的模块:

 import cv2
 print(cv2.__version__)
 print(dir(cv2))

2.确保输出中包含saliency模块。如果你安装的是通过pip或conda安装的OpenCV版本,并且没有包含saliency模块,可以尝试3和4中的方法重新安装OpenCV,并确保选择一个包含saliency模块的版本。

3.使用pip命令重新安装

pip uninstall opencv-python
pip install opencv-contrib-python -i https://pypi.doubanio.com/simple/

4.使用conda命令重新安装

conda uninstall opencv
conda install -c conda-forge opencv

5.如果以上方法仍然无法解决问题,可能是因为你的OpenCV版本不包含saliency模块。可以使用以下两条命令中的任意一条安装pySaliencyMap(平替)。

   pip install pySaliencyMap
   pip install pySaliencyMap2

猜你喜欢

转载自blog.csdn.net/crist_meng/article/details/131573573