背景
Python で HDR, RAW 画像処理したい
rawpy
基本となる RAW 処理ライブラリ. Windows も対応(prebuilt で pip で入る)
colour-hdri
color-science https://github.com/colour-science 謹製
RAW の読み書きには rawpy を使っている.
colour パッケージにも注目です!
また, color-nuke に, 各種カラーチャートのデータ(EXR 形式)
imageio
いろいろ読めます.
OpenEXR も対応していました(FreeImage 経由).
pip だと prebuilt が入る? ようなのでコンパイル不要かもしれません
(上記リンク先の prebuilt バイナリは 6 年前と古い)
EXR
OpenEXR パッケージがあるようです.
pyexr のほうが楽かも?
ただ, どちらもソースからビルドからになり面倒です.
imageio でもいいかもですが, TinyEXR を利用いただいている PyEXR
を少し改変して, cibuildwheel で Windows, macOS, Linux の prebuilt binary wheel を作りました.
cibuildwheel で python bwheel(C++ モジュール含む) を CI で一括ビルドし PyPI へアップロードするメモ: https://qiita.com/syoyo/items/97f35b4d5c40761cc314
コンパイルせずに pip インストールできます!
(python2.7 は対応していません.)
保存する.
32bit float で保存したい場合は tifffile https://pypi.org/project/tifffile/ がいいでしょうか.
rawpy でもいけるかもしれません.
画像処理する
numpy 2D array(float32)にして numpy やらで処理するのが手っ取り早いでしょうか.
tone map する
T.B.W.(colour-science
package にあるかな?)
画像にゼブラとかだす
ハイライトが飛んでいるところなどで, ゼブラ(縞模様)パターンを出したいですよね.
手っ取り早くやる方法はなさそうです. ゼブラパターンの画像を作って合成とかでしょうか.
T.B.W.
まとめ
Happy HDR/RAW image loading & editing!