Python中的图像处理 - 无需将整个图像加载到内存中

时间:2014-02-26 02:58:36

标签: python image-processing memory-management numpy scipy

我正在寻找一个python库,它允许我从TIF图像中检索图像数据,而无需将整个图像加载到内存中。

我曾尝试使用numpy.memmap,但我在查找文件中的图像数据时遇到了困难。任何意见将是有益的。谢谢。

1 个答案:

答案 0 :(得分:0)

我有两条建议:

  1. 以图块的形式将图像数据读入Python:

    with open('path/to/image-data.tif', 'rb') as tif:
        while True:
            chunk = tif.read(4096)
            if not chunk:
                break
    
  2. 考虑使用 NumExpr 进行处理:https://github.com/pydata/numexpr

  3. ......在内部,NumExpr采用自己的矢量化虚拟机,该虚拟机是根据分块读取策略设计的,以便有效地在内存中的最佳大小的数据块上运行。如果调整得当,它可以轻松击败天真的NumPy操作。

    希望这有帮助,祝你好运