以下代码会将错误信息输出到终端,但不会停止执行:
这是有问题的测试图像(是的,它是空白的): 一些Google搜索显示,Anaconda软件包中的libpng曾经存在一个错误,可能会导致此问题,并建议更新它。我已经这样做了,但没有效果,为了保险起见,我还回到我的计算机上确保最新版本的libpng已安装。仍然没有变化。
除此之外,我尝试了许多不同的代码变化和操作条件,但仍然没有变化。具体来说,我尝试过:
- 将图像更改为
顺便说一句,我已经断断续续地使用OpenCV两年多了,几乎没有问题,现在我无法让这么简单/愚蠢的东西工作,这让我很难受。我即将开始深入研究libpng文档,但我非常感谢您提供的任何意见或想法。
libpng error: IEND: CRC error
。import numpy as np
import cv2
import os
# image is stored in the same location as the python file
dir_path = os.path.dirname(os.path.realpath(__file__))
path = dir_path+'/test.png'
# img always gets set as a NoneType
img = cv2.imread(path)
这是有问题的测试图像(是的,它是空白的): 一些Google搜索显示,Anaconda软件包中的libpng曾经存在一个错误,可能会导致此问题,并建议更新它。我已经这样做了,但没有效果,为了保险起见,我还回到我的计算机上确保最新版本的libpng已安装。仍然没有变化。
除此之外,我尝试了许多不同的代码变化和操作条件,但仍然没有变化。具体来说,我尝试过:
- 将图像更改为
.jpg
。错误不会弹出,显然是因为它不再使用libpng,但图像仍然返回为NoneType。
- 传递额外的标志,如cv2.IMREAD_GRAYSCALE
- 在虚拟环境中安装opencv(版本3.4.4.19和3.4.5.20),并运行numpy。
- 在我的Windows笔记本电脑(Anaconda 3.6.5)上使用WSL和Raspberry Pi(3.5.3)运行它。顺便说一句,我已经断断续续地使用OpenCV两年多了,几乎没有问题,现在我无法让这么简单/愚蠢的东西工作,这让我很难受。我即将开始深入研究libpng文档,但我非常感谢您提供的任何意见或想法。