gpt4 book ai didi

python - 在 Python 中调整图像大小而不会丢失 EXIF 数据

转载 作者:IT老高 更新时间:2023-10-28 22:22:05 31 4
gpt4 key购买 nike

我需要使用 Python 调整 jpg 图像的大小,而不会丢失原始图像的 EXIF 数据(关于拍摄日期、相机型号等的元数据)。所有关于 python 和图像的谷歌搜索都指向我目前正在使用的 PIL 库,但似乎无法保留元数据。我到目前为止的代码(使用 PIL)是这样的:

img = Image.open('foo.jpg')
width,height = 800,600
if img.size[0] < img.size[1]:
width,height = height,width

resized_img = img.resize((width, height), Image.ANTIALIAS) # best down-sizing filter
resized_img.save('foo-resized.jpg')

有什么想法吗?或者我可以使用的其他库?

最佳答案

实际上有一种非常简单的方法可以只使用 PIL 将 EXIF 数据从一张图片复制到另一张图片。虽然它不允许修改 exif 标签。

image = Image.open('test.jpg')
exif = image.info['exif']
# Your picture process here
image = image.rotate(90)
image.save('test_rotated.jpg', 'JPEG', exif=exif)

如您所见,save 函数可以使用 exif 参数,该参数允许在保存时将原始 exif 数据复制到新图像中。如果您只想这样做,您实际上不需要任何其他库。我似乎找不到有关保存选项的任何文档,我什至不知道这是否特定于 Pillow 或与 PIL 一起使用。 (如果有人有某种链接,如果他们在评论中发布,我会很高兴)

关于python - 在 Python 中调整图像大小而不会丢失 EXIF 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/400788/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com