波段运算是把单个或者多个波段图像对应像素通过相关的运算过程得到新的像素值的过程。
波段运算操作函数和运算符包括:
基本运算:加(+)、减(-)、乘(×)、除(÷)
波段运算功能可作用于单个或者两个栅格图像,输入数据必须满足以下条件:
(1) 输入数据必须为单波段图像;
(2) 输入数据必须具有相同的空间分辨率;
(3) 输入数据的空间范围必须有交集。
主要步骤:
1.读取预处理后的影像:
ENVI_OPEN_FILE,input,r_fid=fid
ENVI_FILE_QUERY,fid,dims=dims
2.设定运算规则(以高分数据为例,提取水体):
t_fid=[fid,fid]
pos=[1,3]
exp='(float(b1)-float(b3))/(float(b1)+float(b3))'
3.输出结果:
ENVI_DOIT,'math_doit',fid=t_fid,exp=exp,pos=pos,out_name=out_name1,dims=dims,r_fid=r_fid
4.效果: