运用numpy叠加数据层——结合GDAL实现ENVI中的Layer Stacking功能

0 配置及环境

  • 系统: win7 ×64
  • python: 3.6.4 ×64
  • 包: numpy、GDAL(安装方法可查看GDAL的安装

1 载入数据并劈开

利用GDAL读取栅格数据(遥感数据.tif):

image = gdal.Open(tifpath) # 读取整个遥感影像,多行多列多层
band = image.GetRasterBand(n)  # 得到第n层的数据
band_array = band.ReadAsArray(0,0,lie,hang)  # 转化为数组形式

2 叠加数据图层

nir、red 、blue为植被标准假彩色合成,能够目视植被的长势状态,为此我们需要读取并叠加这三个图层:

layer3 = np.array((nir, red, blue))  # nir是第一层, red是第二层,blue是第三层
run.tif_write(out_path, layer3, p, g)  # 输出即可

run.tif_write是我自己写的输出遥感图像的包,具体请查阅GDAL的使用

猜你喜欢

转载自blog.csdn.net/qq_40260867/article/details/95171100
今日推荐