Explorar el Código

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 hace 3 años
padre
commit
e899d6e8fb
No se encontró ninguna clave conocida en la base de datos para esta firma ID de clave GPG: 4AEE18F83AFDEB23
Se han modificado 1 ficheros con 1 adiciones y 1 borrados
  1. +1
    -1
      utils/datasets.py

+ 1
- 1
utils/datasets.py Ver fichero

@@ -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

Cargando…
Cancelar
Guardar