我遇到了这个错误(-215:断言失败)!函数'resize'中的ssize.empty()在open中

2024-06-09 14:05:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试将Keras的图像分类器应用到我的项目中,但在这条路上我遇到了麻烦。虽然之前,我可以用相同的代码使用OpenCV来读取和训练图像,但是在切换到新的一批图像后,它被错误捕获。所以我推测我的文件类型有问题:

这是从得到错误的批处理中得到的:

traf.204.jpg: JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, baseline, precision 8, 480x294, frames 1

这来自未被错误捕获的批:

bear.290.jpg: JPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, baseline, precision 8, 224x224, frames 3

但文件类型似乎完全相同(除了分辨率)。请帮助我解决这个问题,我还是python上的opencv和keras新手。


Tags: 图像imagedata错误segmentdensitylengthstandard
2条回答

谢谢各位,我想起来了,我应该添加一个try/exception,这样我的代码就可以绕过“丑陋”的图像:

    try:
    path=os.path.join(mypath,n)
        img=cv2.imread(path, cv2.IMREAD_GRAYSCALE)
        img=cv2.resize(img, (img_rows,img_cols))

    except Exception as e:
        print(str(e))

resize()是应该捕获错误的地方,因为它无法调整“损坏”图像的大小。

只需输入精确的图像格式。jpg而不是.jpeg

相关问题 更多 >