Я использую Python 2.6.5 (32bit) с Numpy 1.3 и Gdal 1.9.1, установленными в Windows 7 64bit. Я пытаюсь прочитать набор растровых данных Imagine (.img) объемом 800 МБ в массив 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, чтобы попытаться определить, где он выходит из строя. Из того, что я могу сказать (все еще не получая никаких сообщений об ошибках), это терпит неудачу на строке 22 gdal_array.py.
_mod = imp.load_module('_gdal_array', fp, pathname, description)
Когда я перехожу к строке кода выше, это приводит меня в модуль init .py numpy. Когда я достигну конца NumPy. __ init __ .py модуль, он возвращается к приведенной выше строке кода. Затем, когда я нажимаю кнопку перехода на шаг, который должен привести меня к следующей строке в gdal_array.py, сценарий просто завершается без сообщений об ошибках или чего-либо еще.
ОБНОВЛЕНИЕ № 2:
Я удалил GDAL 1.9.1 и установил GDAL 1.6.1 из Python Cheeseshop и бинарников Windows OSGeo. Все еще была та же проблема.