OpenCV 2.4.12中不兼容的错误

时间:2015-12-13 03:41:37

标签: python opencv libpng

我已经安装了OpenCV,详细信息如下:

  

brew info opencv homebrew / science / opencv:stable 2.4.12(瓶装),

     

HEAD开源计算机视觉库http://opencv.org/   /usr/local/Cellar/opencv/2.4.12(225个文件,36M)

然后,我运行Python来导入cv库并获取ImportError

  

ImportError:dlopen(./ cv2.so,2):未加载库:   /usr/local/lib/libpng16.16.dylib参考自:   /usr/local/Cellar/opencv/2.4.12/lib/libopencv_highgui.2.4.dylib
  原因:库版本不兼容:libopencv_highgui.2.4.dylib   需要版本35.0.0或更高版本,但libpng16.16.dylib提供   版本34.0.0

我找到了一些相关问题,并按照建议重新安装libpng以获取最新版本。不幸的是,它仍然不起作用..

以下是libnpg的详细信息:

  

brew info libpng libpng:stable 1.6.19(装瓶),HEAD Library for   操纵PNG图像http://www.libpng.org/pub/png/libpng.html

     

/usr/local/Cellar/libpng/1.6.19(17档,1.2M)

1 个答案:

答案 0 :(得分:1)

我终于解决了这个问题!

导入cv,cv2模块时,目录中的“libpng16.16.dylib”会加载:/usr/local/lib/libpng16.16.dylib。

即使我将libpng的版本更新为最新版本,新版本的“libpng16.16.dylib”仍然存储在:/usr/local/Cellar/libpng/1.6.19但不是/ usr / local / LIB / libpng16.16.dylib。

因此,我将最新版本的“libpng16.16.dylib”复制到目录:/usr/local/lib/libpng16.16.dylib,它就解决了!

我不确定这是最合适的解决方案,但至少它是有效的。