📜  使用 pil 加载图像元数据 - Python (1)

📅  最后修改于: 2023-12-03 15:22:15.565000             🧑  作者: Mango

使用 PIL 加载图像元数据 - Python

Python Imaging Library(PIL)是 Python 程序员常用的图像处理库,可以方便地对图像进行加载、处理和保存。除了上述功能,PIL 还提供了读取和处理图像元数据(metadata)的能力。

图像元数据是与图像相关的附加信息,例如拍摄日期、拍摄设备、旋转信息等等。在这篇文章中,我们将学习如何使用 PIL 加载和访问图像元数据。

安装 PIL

在开始之前,我们需要先安装 PIL。可以使用 pip 命令进行安装:

pip install pillow
加载图像数据

在 PIL 中,可以使用 Image 模块中的 open 方法来加载图像文件,例如:

from PIL import Image

image = Image.open('example.jpg')
访问图像元数据

PIL 中的 Image 对象提供了 getexif 方法来获取图像元数据,它返回一个包含元数据信息的 Python 字典。

exif_data = image.getexif()

返回的字典中的键值是元数据标识符,标识符代表不同的元数据信息,例如:

  • 274:方向
  • 271:创建软件
  • 306:日期时间

通过这些键值,我们可以访问我们感兴趣的元数据信息。例如,我们可以获取图像拍摄日期:

exif_date = exif_data.get(306)
显示图像元数据

除了访问图像元数据,我们还可以将元数据信息打印出来或使用其他方式显示。以下代码将以键值对形式打印出图像元数据:

for tag, value in exif_data.items():
    print(tag, value)

输出结果如下:

271 u'Adobe Photoshop CS4 Macintosh'
274 6
531 u'"SD1100 IS" Ver1.00'
282 (300, 300)
306 u'2014:08:19 16:57:35'
36867 u'2014:08:19'
36868 u'16:57:35'
37380 (0, 1)
37381 (0, 100)
37383 0
37384 (50, 100)
37385 (0, 1)

如上所述,PIL 提供了很多方法来加载和处理图像元数据。这些方法为我们提供了方便和灵活性,使我们可以轻松地访问和管理图像元数据。