我有一个GeoTIFF
,我需要得到每个像素的值。在
我这样做:
import gdal
from gdalconst import *
im = gdal.Open("test.tif", GA_ReadOnly)
band = im.GetRasterBand(1)
bandtype = gdal.GetDataTypeName(band.DataType)
scanline = band.ReadRaster( 0, 0, band.XSize, 1,band.XSize, 1, band.DataType)
扫描线包含无法解释的值:
^{pr2}$我需要把这些数据转换成可读的值。在
换句话说,我需要获取图像的值,以便计算值大于指定阈值的像素数。在
请改用ReadAsArray。在
参考网站:link
从gdaltutorial“注意,返回的扫描线是string类型,包含xsize*4字节的原始二进制浮点数据。可以使用标准库中的struct模块将其转换为Python值:“
或者,根据您最终要对数据做什么,您可以将其作为数组读入(这为使用numpy进行计算打开了大门)。在
^{pr2}$相关问题 更多 >
编程相关推荐