尽管几年前学过python(2.7),我才开始再次使用它。 我正在使用python 3.4.4并尝试使用GDAL包将栅格作为数组读取。 我按照这里列出的步骤: https://sandbox.idre.ucla.edu/sandbox/tutorials/installing-gdal-for-windows 除了Python 3.4并从这里使用GDAL二进制文件:http://www.gisinternals.com/release.php
在测试基本功能时,我尝试读取如图所示的tiff文件
client.messages.page({ pageSize: 10 }, function pageReceived(page) {
page.instances.forEach(function(message) {
console.log(message);
});
if (page.nextPage) {
page.nextPage().then(pageReceived);
}
})
当我使用" rasArray = np.array(src_ds.ReadAsArray())"运行最后一个块时我收到以下错误代码:
import gdal as gdal
import numpy as np
import ogr
import osr
import os
import sys
e=('error has occurred')
# this allows GDAL to throw Python Exceptions
gdal.UseExceptions()
# open dataset
test = ('LE70130312004049EDC01_sr_adjacent_cloud_qa.tif')
print("file exists")
# getting metadata
gtif = gdal.Open(test)
print (gtif.GetMetadata())
print("metadata printed")
try:
src_ds = gdal.Open(test)
print("gdal.open success")
except (RuntimeError):
print ('Unable to open INPUT.tif')
print(e)
try:
srcband = src_ds.GetRasterBand(1)
print("get raster band 1 success")
except (RuntimeError):
# for example, try GetRasterBand(10)
print ('Band ( %i ) not found') % band_num
print (e)
try:
rasArray=np.array(src_ds.ReadAsArray())
print("read as array")
except (RuntimeError):
print (e)
我是如何安装GDAL或Python的? 我应该切换到Python 2.7吗? 我已经看到很多关于"没有名为"的模块的问题,但是没有多少涉及GDAL问题。
更新: 我只是从我下载的msi重新安装GDAL,它会自动修复它。谁会知道这很容易。谢谢!
答案 0 :(得分:0)
我也遇到了这个问题,这是我解决的方法:
pip3 uninstall gdal
pip3 install numpy
pip3 install gdal
我正在使用MAC OS BTW