Tôi đang sử dụng Python 2.6.5 (32 bit) với Numpy 1.3 và Gdal 1.9.1 được cài đặt trên Windows 7 64bit. Tôi đang cố gắng đọc bộ dữ liệu raster Tưởng tượng (.img) 800 MB vào một mảng Numpy để thực hiện một số đại số raster, nhưng ngay khi tôi chạy đoạn mã sau, Python.exe gặp sự cố.
from osgeo import gdal
g = gdal.Open(r'path\to\dataset', gdal.GA_Readonly)
b = g.GetRasterBand(1)
data = b.ReadAsArray()
Python.exe gặp sự cố trong b.ReadAsArray()
cuộc gọi. Tôi đã thực hiện một số tìm kiếm trên Google và tìm thấy các bài viết có niên đại từ Gdal 1.6 có đề cập đến vấn đề này với Windows 7 64bit, nhưng họ cũng đề cập rằng nó đã được sửa trong các phiên bản phát triển mới nhất tại thời điểm đó.
Có ai khác có vấn đề này? Bất kỳ cách giải quyết?
CẬP NHẬT:
Tôi quyết định gỡ lỗi mã trong PyDev để cố gắng xác định nơi nó bị lỗi. Từ những gì tôi có thể nói (vẫn không nhận được bất kỳ thông báo lỗi nào), nó không thành công trên dòng 22 của gdal_array.py.
_mod = imp.load_module('_gdal_array', fp, pathname, description)
Khi tôi bước vào dòng mã ở trên, nó đưa tôi vào mô-đun init .py của numpy. Khi tôi đạt đến cuối của numpy. __ init __ .py mô-đun, nó bước trở lại dòng mã trên. Sau đó, khi tôi nhấn nút bước vào, nút này sẽ đưa tôi đến dòng tiếp theo trong gdal_array.py, tập lệnh chỉ chấm dứt mà không có thông báo lỗi hoặc bất cứ điều gì.
CẬP NHẬT # 2:
Tôi đã gỡ cài đặt GDAL 1.9.1 và cài đặt GDAL 1.6.1 từ Python Cheeseshop và Windows Binaries của OSGeo. Vẫn có vấn đề tương tự.