'libpng error: Read Error' by using open cv imread

'libpng error: Read Error' by using open cv imread

我目前使用的是 Anaconda 4.3.27、Python 3.6.2 和 OpenCV 3.3.0

当我尝试时

img1 = cv2.imread('D:\ImagesD-Matplotlib.png')
img2 = cv2.imread('D:\Images\mainsvmimage.png')

我收到 libpng error: Read Error 并出现一个弹出窗口,表明 Python 已停止工作。我已经尝试用“\\”和“/”替换“\”,但在这些情况下也会出现相同的错误。当我尝试读取 jpg 而不是 png 时,我没有收到错误消息。有人知道这里可能有什么问题吗?

提前致谢!

编辑:

也cv2.imwrite报错:

libpng error: Write Error

尝试添加 cv2.imread ( https://docs.opencv.org/2.4/modules/highgui/doc/reading_and_writing_images_and_video.html )

所需的标志(灰度,...)

并使用 r 作为路径

 img2 = cv2.imread(r"D:\Images\mainsvmimage.png",0)

0 将图像加载为灰度)

OpenCV Python not opening images with imread()

如果这仍然无法正常工作,请使用另一张图片进行测试,因为图片可能存在问题 header cf. libpng error: Read Error or with your libpng version, cf. Libpng conflict on OpenCV?

使用 Matplotlib 和 Latex 的 Anaconda 遇到了同样的问题。解决方案是更新 libpng。 https://github.com/ContinuumIO/anaconda-issues/issues/6271

我的目录中有损坏的图像,删除这些图像解决了错误。