我目前在将光栅转换为阵列时遇到一些问题。最后,我想把一个光栅从一个整数转换成一个float32,这样我就可以运行一个gdal_calc,但是我不能正确地改变类型来实现这个目的。在
所以,如果有人能提供任何帮助,我将不胜感激。这是我的剧本,很短。在
import gdal
import numpy as np
import math
import osgeo
import os
import scipy
# Open Rasters
hvRaster = gdal.Open("C:\\Users\\moses\\Desktop\\Calc_Test\\IMG-HV-ALOS2110871010-160611-HBQR1.5RUA.img")
vhRaster = gdal.Open("C:\\Users\\moses\\Desktop\\Calc_Test\\IMG-VH-ALOS2110871010-160611-HBQR1.5RUA.img")
# Get Raster Band
hvRasterBand = hvRaster.GetRasterBand(1)
vhRasterBand = vhRaster.GetRasterBand(1)
# Convert Raster to Array
hvArray = np.array(hvRaster.GetRasterBand(1).ReadAsArray())
vhArray = np.array(vhRaster.GetRasterBand(1).ReadAsArray())
print hvArray
print vhArray
提前谢谢你
摩西
方法ReadAsArray()将创建一个努比·恩达雷使用光栅数据集的数据类型。您的目标是将整数数据类型转换为float32。最简单的方法是对ndarray使用astype()方法。在
相关问题 更多 >
编程相关推荐