如何将3通道图像写入tiff文件?

时间:2017-09-08 16:10:02

标签: python numpy tiff

我没有找到任何关于如何使用tifffile制作3通道图像的明确解释。我试过(所有值都介于0和1之间)

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)) )

但我得到的是3个灰度图像,一个在另一个上面,代表值R,G,B。 (http://imgur.com/gallery/ssMD3

我的目标是获得类似RGB的图像,但浮点精度为tiff

1 个答案:

答案 0 :(得分:0)

我通过电子邮件发送了Tifffile.py的开发人员Christoph Gohlke,并发表了他的回答

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

出于某种原因,它没有使用(n,n,3)形状完美地工作(3,n,n)形状的numpy阵列。 注意:RGB值是[0,65535]范围内的整数,因此它仍然会失去很多浮点精度。

相关问题