2017-09-08 25 views
1

私はtifffileで3チャンネル画像を作る方法の明確な説明は見つかりません。私は3チャンネル画像をTIFFファイルに書き込む方法は?

image = [(0.5,0.2145,0), (1,0.214568,0.324586).... ] 
side = int(len(image)**(1/2)) 
R,G,B = zip(*image) 
R = np.array(R).reshape((side,side)) 
G = np.array(G).reshape((side,side)) 
B = np.array(B).reshape((side,side)) 

tiff.imsave("./TIFFs/%s_%s"%(data_class,data_id)+'.tiff', np.concatenate((R,G,B))) 

(すべての値は、0と1の間である)が、私は何を取得する3枚のグレースケール画像の値R、G、Bを代表する他の上に一つで試みました。 (http://imgur.com/gallery/ssMD3

私の目標は、画像のようにRGBを取得することですが、TIFF

の浮動小数点精度
+0

TIFFはPlanarConfiguration = 1( "chunky")ではなくPlanarConfiguration = 2( "planar")で保存されているようです。技術的な説明については、TIFF 6.0の仕様、38ページを参照してください。https://www.itu.int/ituditud/it-t/com16/tiff-fx/docs/tiff6.pdf TIFFライブラリがわかりません使用しています - おそらく、PlanarConfigurationを変更するオプションがあります。 – SBS

答えて

0

私はクリストフゴールケ、Tifffile.pyの開発者や相続人彼の答えを電子メールで送信して

E.g. tifffile.imsave('rgb.tif', numpy.zeros((256, 256, 3), 'uint16')) 

なんらかの理由で、(n、n、3)の形を完全に(3、n、n)形のnumpy配列で代用しても機能しませんでした。 注:RGB値は[0,65535]の範囲の整数なので、浮動小数点精度はかなり低下します。

関連する問題