使用过Landsat-7 ETM+影像数据的童鞋,大家是否由于影像的数据条带丢失所困扰呢?数据条带丢失也就是咱们一般说的坏条带问题,遇到这种数据很让人头疼。算法
图:原始影像函数
坏条带的由来:2003年5月31日,Landsat-7ETM+机载扫描行校订器(SLC) 故障,致使此后获取的影像出现了数据条带丢失,严重影响了Landsat ETM遥感影像的使用。此后Landsat 7 ETM SLC-on是指2003.5.31日Landsat 7SLC故障以前的数据产品,Landsat 7 ETMSLC-OFF则是故障以后的数据产品。测试
坏条带的修复:部分学者开展了条带受损修复研究,一些遥感图像处理软件能够实现条带修复,如ENVI已有相应插件,利用掩膜经过插值方法修补缺失的条带。spa
今天主要向你们介绍利用ArcGIS的栅格函数实现Landsat-7 ETM+的条带修复。插件
条带修复实现步骤blog
(1) 加载影像数据:经过catalog窗口实现影像加载get
展开栅格产品 图标,将多光谱(下图红框中的数据)影像拖拽至影像视窗。产品
图:栅格产品显示影像数据io
(2) 进入影像属性窗口:展开栅格函数处理链图像处理
Table Of Contents——>Layers图层——>右键影像——>Properties——>Functions选项,打开影像属性窗口函数选项。
图:栅格函数面板
(3) 插入Mask Function:设置影像条带为无效值
进行以下参数设置:
图:MaskFunction函数设置
这里有几个参数须要注意一下:
NoData Interpretation:NoData值的设置
下拉框里有“Any”和“All”两个选项,默认选项是“Any”,这也是首选项。若是选择了“All”,那就意味着一景影像的全部波段的Nodata值都位于相同的像元,作掩膜运算时只会把具备这些特性的像元设置为0值。而“Any”,则会把全部波段上的Nodata值都设置为0值。很明显,前者的要求比较苛刻,可能会遗漏一些零值的设置,因此一般此处设为“Any”。
NoDataValues:无效值的设置
NoData设置为0。
(4) 插入statistics Function:利用领域统计计算,去除无效值
参数设置以下:
图:统计参数设置
这里有两个参数注意一下:
Type:领域统计方法
默认类型是“Mean”,一般此种方法能获得较理想的结果。可根据影像具体状况进行设置。
Neighborhood Settings:领域行列数设置
根据条带的行列数进行该参数的设置,该值无上限。但须要注意的是,若是数值偏大,统计值计算的速度会变慢,而且参与统计的行列数过多,可能会致使影像变得模糊起来
Fill NoData pixel values only,当进行坏线去除时,这个参数须要选中,表示只进行无效值的填充。
图:最终结果
图:细节图
经过以上几步,便可实现影像坏线去除。利用ArcGIS实时处理技术,能够瞬时获得处理后的影像,若是对结果不满意,能够适当的进行参数修改。
整个坏线去除的思路为:设置坏线处的无效值为0值,利用Mask Function进行掩膜运算;对于0值的区域,利用领域统计算法去除这些无效值。
想动手试试整个坏线去除流程吗?若是你手中有这类数据不妨动手一试。这里也提供了一景坏的比较严重的测试数据连接: http://pan.baidu.com/s/1kp0L5 密码: pi35 还等什么,快点行动吧~