我正在将Python 2.6.5(32bit)与Numpy 1.3和Gdal 1.9.1安装在Windows 7 64bit上。我试图将800 MB想象(.img)栅格数据集读取到Numpy数组中,以执行某些栅格代数操作,但是一旦运行以下代码,Python.exe就会崩溃。
from osgeo import gdal
g = gdal.Open(r'path\to\dataset', gdal.GA_Readonly)
b = g.GetRasterBand(1)
data = b.ReadAsArray()
Python.exe在b.ReadAsArray()
调用时崩溃。我在Google上进行了一些搜索,发现了Gdal 1.6上的文章,其中提到了Windows 7 64bit的该问题,但他们还提到当时该问题已在最新的开发版本中修复。
其他人遇到过这个问题吗?任何解决方法?
更新:
我决定在PyDev中调试代码,以尝试确定失败的地方。据我所知(仍然没有收到任何错误消息),它在gdal_array.py的第22行上失败了。
_mod = imp.load_module('_gdal_array', fp, pathname, description)
当我进入上面的代码行时,它带我进入numpy 的init .py模块。当我到达numpy的结尾时。__ init __ .py模块,它跳回到上面的代码行。然后,当我按下“进入”按钮时,应该将我带到gdal_array.py中的下一行,该脚本只是终止而没有任何错误消息或任何内容。
更新#2:
我从Python Cheeseshop和OSGeo的Windows Binaries中卸载了GDAL 1.9.1,并安装了GDAL 1.6.1。仍然有同样的问题。