我使用PIL.Image库打开一个tif文件并将其转换为numpy数组:
PIL.ImageFile.LOAD_TRUNCATED_IMAGES = True # because my tif file is big
im = PIL.Image.open('1.tif')
arr = numpy.asarray(im)
我发现了奇怪的结果,所以我做了以下测试:
im1 = PIL.ImageFile.fromarray(arr,"CMYK") # tif file is CMYK value
im1.save('new.tif')
事实证明,新的tif文件看起来不像原始的tif文件。假设1.tif看起来像A,那么new.tif看起来像几个A平铺在一起,每个A都较小,但总大小是相同的。我不知道我做错了什么。
更新: 在x和y方向上,图像重复4次,因此一起是16次。但新tif的总大小保持不变。有什么想法吗?