rawpy
でPythonでraw DNGピクチャを処理しようとすると、奇妙な結果に終わります。私のカメラは14ビットの原画像を生成しつつDNG rawピクチャが16ビットの深さでインポートされましたが、予期しないplt.show()結果
import rawpy
import imageio
from matplotlib import pyplot as plt
path = '/home/stefan/AIJ/RAW.DNG'
with rawpy.imread(path) as raw:
rgb = raw.postprocess()
plt.imshow(rgb)
plt.show()
結果は、8ビット値を持つRGB画像アレイです。私は同じファイルをインポートすることが可能であるが、16ビットで出力していることを理解一部googleingから
:rgb
アレイを可視化
は、期待される結果を与えます。
私は後処理機能で、次のパラメータを使用:
rgb = raw.postprocess(output_bps=16,demosaic_algorithm=None,output_color = rawpy.ColorSpace.Adobe)
は今rgb
配列は、16ビットの値が含まれていますが、次のように結果を可視化:
誰かがどのように教えてもらえ私は最初の結果と似ていますが、16ビットの値を扱うような視覚化を得ることができましたか?
私のカメラは16ビットではなく14ビットイメージを生成していますが、パラメータoutput_bps
を14に変更すると、視覚化の結果はさらに悪化します。
ありがとうございます!
要望に応じて、PENTAX K-5の生の画像を追加しますが、それは18MBで、フォーラムには2MBの制限があります(ファイルを渡す別の方法かもしれません)。
生ファイルは共有できますか?通常のカメラでは、デモザイク処理を必要としないDNGを出力する可能性は低いです...または通常のカメラではありませんか? –
なぜデモザイク処理を適用しない場合、ColorSpace.Adobe? – Piglet
これは私が自発的に自分自身に尋ねたことですが、この写真はデモザイクする必要がありますか?しかしoutput_bps = 8ビットのために出力は大丈夫です、私は考慮しませんでした。 – noste99