首先,我很抱歉,因为我不知道这个问题是否属于这里。我正在为自定义数据集使用YOLOv5,并且遇到了错误Memory Error Corrupt JPEG data: 2 extraneous bytes before marker 0xd9
图像显示错误。

造成此错误的原因可能是因为某些png文件可能在重定向时被更改为jpg。这个链接是这样说的。
因此,是否有办法找到真正的文件格式的图像。我有很多图像,所以手动检查每个图像不是个好主意。谢谢。
或者,您可以通过其他方法帮助我,以便删除此错误,并且我可以使用YOLOv5成功地训练数据集。
发布于 2022-08-09 19:48:36
您可以使用glob找到具有特定文件扩展名的图像。即
glob.glob('*.jpg')或者使用列表比较:
jpg_files = [file for file in all_files_list if file.endswith('.jpg')]all_files_list是一个包含所有文件名的列表。
另一种选择是:
jpg_files = list(filter(lambda x: x.endswith('.jpg'), os.listdir(r'/your/desired/directory')))然后可以使用OpenCV加载文件并以所需的格式存储它们。
https://stackoverflow.com/questions/73285785
复制相似问题