光谱包络线消除法主要实现操作 高光谱 矿山地质环境遥感 水文地质
分享到    浏览:196

光谱包络线消除法主要实现操作

包络线消除法主要实现步骤如下:

第一步,从光谱数据中求出所有的极大值点,把这些极大值点及光谱曲线的第一个点和最后一个点都加人一个数组m中。

第二步,求数组m中反射率值最大的点,将这些点加入包络线数组p中。

第三步,以最大值点作为包络线的一个端点,计算该点波长增加的方向各个极大值连线的斜率,以斜率最大点作为包络线的下一个端点,再以此点为起点循环,直到最后一点,并把符合条件的极大值点都加入数组p中。

第四步,以最大值点作为包络线的一个端点,向波长减少的方向进行类似计算,以斜率最小点为包络线的下一个端点,再以此点为起点循环,直到曲线上的开始点,并把符合条件的极大值点都加入数组n中。

第五步,对数组p按波长x值从小到大进行排序,第一个点p1和第二个点P2连接。判断是否有光谱反射率在该直线上方,如果没有就循环到下一个点,如果有,就求出在它们直线上方反射率最大的点pk,连接光谱曲线上的第点出与p1pk,再进行循环判断,直到求出所有点的连线位于光谱曲线的上方;符合条件的点都放入数组n中。

第六步,将数组n中的所有点按大小排序,然后用直线内插法获取包络线曲线。