bigcat88/pillow_heif

Python library for working with HEIF images and plugin for Pillow.

解决的问题

HEIF/HEIC是一种现代图像格式,比JPEG更高效地存储照片,但Python流行的Pillow图像库并不原生支持它。本项目补充了这一缺失的支持,让Python开发者可以直接通过Pillow熟悉的API读写HEIF图像。

工作原理

它是libheif(用于HEIF/HEIC图像的C库)的Python绑定,并注册为Pillow插件。一旦调用register_heif_opener(),所有Pillow的打开/保存操作都能处理.heic文件。它可以解码和编码8位、10位和12位图像,处理元数据(EXIF、XMP、IPTC),支持每个文件中的多个图像、缩略图、平铺(网格)编码和深度图像。它还允许直接访问原始解码数据并转换为NumPy数组。

适用人群

处理HEIF图像的Python开发者,尤其是需要在自动化工作流、Web应用或图像处理管道中处理现代设备(如iPhone)照片的人。也适用于任何想使用Pillow在HEIF和其他格式之间转换的人。

亮点

  • 以每通道8位、10位和12位解码和编码HEIC文件。
  • 支持读写EXIF、XMP和IPTC元数据。
  • 处理一个文件中的多个图像,包括指定的主图像。
  • 添加或删除缩略图,并支持像Apple设备那样的网格(平铺)编码。
  • 可以读取深度图像(用于人像效果)和辅助图像(测试版)。
  • 一行注册即可让任何Pillow代码立即支持HEIF。
  • 提供macOS、Windows、Linux等的预构建wheel。

相关

  • 项目
  • 项目
  • 项目
  • 项目