我使用Piexif读取和写入JPEG的EXIF数据,并更改了它的EXIF,这似乎效果很好。但问题在于当我读取和写入JPEG时,即使我不更改字节,它也会以不同的像素保存图片和读取的图片。我需要它完全相同的像素。我知道这是因为JPEG是一种有损格式,但我找到的唯一解决方法是将其保存为PNG,然后使用Mac预览导出为JPEG,这并不好,因为我有数百张图片。
def adjust_img(path):
img = PIL.Image.open(path)
exif_dict = piexif.load(img.info['exif'])
new_exif = adjust_exif(exif_dict)
exif_bytes = piexif.dump(new_exif)
pc = path.split('/')
stem = '/'.join(pc[:-1])
img.save('%s/_%s' % (stem,pc[-1]), "JPEG", exif=exif_bytes, quality=95, optimize=False)
如何保留图片并仅更改exif信息?
exiftool
。通过homebrew
安装,命令为brew install exiftool
。 - Mark Setchell