在本篇笔记中,我们将一起探讨在使用深度学习模型进行图像处理时遇到的一个常见问题,以及如何解决这种问题。本案例中,笔者在测试自己训练的深度学习模型时遇到了一个令人费解的错误:尽管图片文件明显存在于指定路径,程序却报错显示找不到该文件。
问题诊断
错误现象
该错误为AssertionError: Image Not Found,后面跟随着没有找到的图片路径,如下图所示:
错误排查
- 路径确认:首先笔者第一时间就是排查路径错误,去查看该图片是否存在该错误中展示的路径中。但是意外的是,该图片确实存在该路径下,但自己的代码却怎么都找不到该图片文件。
- 文件属性检查:接着笔者又检查了该文件的属性和权限设置,发现也没有问题。
那么如果图片文件确实存在与相关的路径中,且其类型和权限都没有问题,那问题究竟出在哪呢?
根本原因
通过一番努力的搜索和修改,终于该问题的关键:文件后缀与实际文件格式不符导致程序无法正确读取。意为虽然图片的后缀是.jpg而且其属性界面也是显示的是jpg文件,但是如果用代码实际上测试一下,会发现该图片的类型其实是GIF。
用于测试的代码为:
from PIL import Image
filename = r"F:/BaiduNetdiskDownload/yolov5/data/images/000120.jpg"
img = Image. open