我正在寻找一个Python库,可以让我从TIF图像中检索图像数据,而不必将整个图像加载到内存中。
我尝试使用numpy.memmap
,但是我在文件中定位图像数据时遇到了困难。任何建议都将有所帮助。谢谢。
我正在寻找一个Python库,可以让我从TIF图像中检索图像数据,而不必将整个图像加载到内存中。
我尝试使用numpy.memmap
,但是我在文件中定位图像数据时遇到了困难。任何建议都将有所帮助。谢谢。
我有两个建议给你:
分块读取图像数据到 Python 中:
with open('path/to/image-data.tif', 'rb') as tif:
while True:
chunk = tif.read(4096)
if not chunk:
break
考虑使用 NumExpr 进行处理:https://github.com/pydata/numexpr
在内部,NumExpr采用了自己的向量化虚拟机,该虚拟机是围绕分块读取策略设计的,以便有效地在内存中操作最佳大小的数据块。如果适当调整,它可以轻松击败天真的NumPy操作。
希望这有所帮助,祝好运
pyvips
- 它非常快速且对内存消耗很小。 - Mark Setchell