【问题标题】:How to save image as binary compressed .tiff python?如何将图像保存为二进制压缩的 .tiff python?
【发布时间】:2018-12-11 18:03:16
【问题描述】:

是否有任何库可以将图像保存为二进制(每像素 1 位).tiff 压缩文件? opencv 和枕头不能这样做

【问题讨论】:

  • 您找到解决问题的方法了吗?
  • @beesleep 我还没找到解决办法

标签: python tiff


【解决方案1】:

事实上,我刚刚找到了一种使用 Pillow 的方法,但由于some bug 的原因,需要进行一些调整。

import numpy as np
from PIL import Image, TiffImagePlugin

filepath = '/some/file/path.tif'
# generate a 1bit image
ar = np.random.rand(50, 50) > 0.5
arr_2 = np.repeat(np.repeat(ar, 10, axis=0), 10, axis=1)

# save it t
size = mask.shape[::-1]
databytes = np.packbits(mask, axis=1)
mask = Image.frombytes(mode='1', size=size, data=databytes)
TiffImagePlugin.WRITE_LIBTIFF = True
mask.save(filepath, compression='packbits')
TiffImagePlugin.WRITE_LIBTIFF = False

【讨论】:

    【解决方案2】:

    您可以尝试使用 libtiff。

    使用pip install libtiff安装

    【讨论】:

    • 你能提供准确的保存方法吗? libtiff.save_image(fname, format='rle') 之类的东西 - 我不确定这个库是否可行
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-03
    • 1970-01-01
    • 1970-01-01
    • 2016-07-12
    • 2010-09-22
    相关资源
    最近更新 更多