0

我有一个二进制黑白图像作为.tif文件。我这样做

image = imageio.imread(path)
print ' Min and max ', image.min(), image.max(), image.shape, type(image[0,0])
imageio.imsave(path, image)

哪个打印

Min and max  0 255 (1024, 1024) <type 'numpy.uint8'>

然而,在我运行之后,黑色和白色的颜色已经反转了。到底是怎么回事?

当我尝试这个命令时

identify -verbose 6hr-001-DIC.tif

在预处理的图像上,我看到

tiff:photometric: min-is-white

但是在我运行 python 代码之后,它显示 tiff:photometric: min-is-black

那么我该如何解决这个问题,即确保它不会被改变?

4

1 回答 1

3

正如@Mark Stechell 指出的那样,您需要使用photometric元数据字段。首先确保您已安装tifffile。为了演示,我使用的是灰度大理石图像。现在代码:

import imageio

image = imageio.imread('gmarbles.tif')
print(' Min and max ', image.min(), image.max(), image.shape, type(image[0, 0]))

image.meta['photometric'] = 'miniswhite'
imageio.imsave('white.tif', image)

白色图像

或替代设置为'minisblack'

黑色图像

于 2018-08-21T01:07:51.483 回答