创建一个多帧.tif文件

时间:2013-10-23 14:29:10

标签: python python-imaging-library tiff

我有像素数据,我想用它来创建一个有多个帧的新.tif图像。我该怎么做呢?我试过python PIL但是我发现它只支持多帧读取而不是写入。请参阅下文,了解我的尝试无效。

new_Image = Image.new("I;16", (num_pixels,num_rows))

for frame in range((len(final_rows)/num_rows)):
    pixels = new_Image.load()
    for row in range(num_rows):
        row_pixel = final_rows[row].getPixels()
        for pixel in range(num_pixels):
            pixels[pixel,row] = row_pixel[pixel]
    print frame
    new_Image.seek(frame)

1 个答案:

答案 0 :(得分:7)

例如,使用numpy和scikit-imageFreeImage插件:

import numpy as np
from skimage.io._plugins import freeimage_plugin as fi
image = np.zeros((32, 256, 256), 'uint16')
fi.write_multipage(image, 'multipage.tif')

使用numpy和tifffile.py

保存未压缩
import numpy as np
from tifffile import imsave
image = np.zeros((32, 256, 256), 'uint16')
imsave('multipage.tif', image)

这假设所有页面都具有相同的数据形状和类型,并且不需要写入其他标记。