Photoshop と16bit tiff 画像の取り扱い

16 bit tiff 画像を扱う場面に遭遇したのですが、普段使用しているツールが対応しておらず、編集に苦労したので個人的にメモ。

Photoshop は 16 bit 値を直接指定できない

32 bit モードであれば、専用のカラーピッカーで値を指定できるが、16 bit モード時は従来の 8 bit と同じカラーピッカーが起動するため 0-255 の階調までしか扱えない。白 (255, 255, 255) を指定して塗れば、16 bit の最大値扱いとなり編集できないことは無いが、16 bit の階調が使えないのであまり意味がない。

Photoshop の情報タブの値は 32768 まで

なぜか、Photoshop の情報タブで 16 bit 画像の最大値の色を取得すると、32768 が表示される。なぜ、65536 では無いのか疑問だったけど、ググったらディジタル・フロンティアさんが、答えとなるリンクを紹介していた。

徒然なるままに #2 [AfterEffects: 16bitモードでexrの範囲外の値を取ってくる方法]
https://dftalk.jp/?p=10207

Photoshop CS の情報パレットを 16bit 表示にする方法
http://kb2.adobe.com/jp/cps/224/224128.html

ただ、ミッドポイントが何かはわからない。

Python tifffile で 16bit int 操作

他に対応するツールを探すのが大変だったのと、16 bit でペイントしたかった訳ではなく、16 bit tiff に必要な情報さえ詰め込めれば良かったので、簡単に導入可能な Python の tifffile モジュールを使って直接ピクセルを計算した。

Anaconda の Python 3.6 で、pip install tifffile で導入。

tifffile であれば 16 bit tiff の read, wriet も問題なく扱えた。また、Photoshop で 35536 と表示されていた箇所も、きちんと 65536 の値が返ってきた。

コメントを残す

メールアドレスが公開されることはありません。