Просмотр исходного кода

Fix for corrupt JPEGs auto-fix PR (#4560)

Auto-fix corrupt JPEGs PR introduced a bug whereby the f.seek() operation read all of the bytes in the image, resulting in the PIL image having nothing to read upon the .save() operation. 

Fix was to re-open the image using PIL before saving.
modifyDataloader
Glenn Jocher GitHub 3 лет назад
Родитель
Сommit
e899d6e8fb
Не найден GPG ключ соответствующий данной подписи Идентификатор GPG ключа: 4AEE18F83AFDEB23
1 измененных файлов: 1 добавлений и 1 удалений
  1. +1
    -1
      utils/datasets.py

+ 1
- 1
utils/datasets.py Просмотреть файл

@@ -873,7 +873,7 @@ def verify_image_label(args):
with open(im_file, 'rb') as f:
f.seek(-2, 2)
if f.read() != b'\xff\xd9': # corrupt JPEG
im.save(im_file, format='JPEG', subsampling=0, quality=100) # re-save image
Image.open(im_file).save(im_file, format='JPEG', subsampling=0, quality=100) # re-save image
msg = f'{prefix}WARNING: corrupt JPEG restored and saved {im_file}'

# verify labels

Загрузка…
Отмена
Сохранить