LibTIFF で 10,12 ビット RGB TIFF ファイルを書き込もうとしています。
ピクセル データはunsigned short
バッファ (16 ビット)にローカルに保存されます。
1) TIFFTAG_BITSPERSAMPLE
10 または 12 に設定すると、バッファーから十分なビットが読み取られず、出力が正しくありません。(コンポーネントごとに16ビットではなく10ビットまたは12ビットを読み取っているだけであり、これが問題であることを理解しています)
2) 実際には 12-R、12-G、12-B になるように、ビットをバッファーに詰めてみました。この場合、ファイルは正しく書き込まれていると思いますが、この画像を正しく表示できるビューアーは見つかりませんでした。
3) TIFFTAG_BITSPERSAMPLE
16 に設定すると、ビューアーは TIFF 画像を表示できますが、元の画像が 10 ビットなのか 12 ビットなのか (後で LibTIFF で読みたい場合) がわからないという問題があります。また、視聴者はダイナミック レンジが 10 ビットや 12 ビットではなく 16 ビットであることを期待しているため、これも見栄えが悪くなります。
4) 最も厄介な点は、ヘッダーがどのように見えるかを確認するための 10、12、または 14 ビットの TIFF 画像が Web 上で見つからなかったことです。
最後に、10 ビットまたは 12 ビットの画像データを TIFF ファイルに書き込む適切な方法は何ですか?????