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のopen/save操作がすべて.heicファイルで動作します。8ビット、10ビット、12ビットの画像をデコードおよびエンコードでき、メタデータ(EXIF、XMP、IPTC)を処理し、1ファイル内の複数画像、サムネイル、タイル(グリッド)エンコーディング、デプス画像をサポートします。また、デコードされた生データへの直接アクセスやNumPy配列への変換も可能です。

対象者

HEIF画像を扱うPython開発者、特に最新のデバイス(例:iPhone)の写真を自動化ワークフロー、Webアプリ、画像処理パイプラインで処理する必要がある人に最適です。また、Pillowを使ってHEIFと他のフォーマット間で変換したい人にも役立ちます。

主な機能

  • チャンネルあたり8ビット、10ビット、12ビットでHEICファイルをデコードおよびエンコードします。
  • EXIF、XMP、IPTCメタデータの読み書きをサポートします。
  • 指定されたプライマリ画像を含む、1ファイル内の複数画像を処理します。
  • サムネイルを追加または削除し、Appleデバイスのようなグリッド(タイル)エンコーディングをサポートします。
  • デプス画像(ポートレート効果用)や補助画像(ベータ版)を読み取ることができます。
  • 1行の登録で、あらゆるPillowコードが即座にHEIF対応になります。
  • macOS、Windows、Linuxなど向けのプリビルドホイールが利用可能です。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト