ENVI5.3 SP1中新增了云/云影自动检测工具"Calculate Cloud Mask Using Fmask Algorithm",使用Fmask算法自动从多光谱数据中检测云区域,检测到云区域生成云+云影的掩膜文件后,可以在后续的数据处理中使用来剔除这些无效区域,而且该文件的反掩膜文件对一些处理也有用处,比如有些用户感兴趣的是云的信息,那么可以在分类时输入反掩膜文件,分析时免去非云区域的干扰。
ENVI工具箱中的"Calculate Cloud Mask Using Fmask Algorithm"使用Fmask3.2算法,相应的API是"ENVICalculateCloudMaskUsingFmaskTask" 。该工具可以对Landsat4-5 TM、Landsat7 ETM+、Landsat8 OLI/TIRS和NPP CIIRS M-Band(后续会增加Sentinel-2传感器),该工具的输入文件是:
- 多光谱数据定标为大气表观反射率(TOA)
- 热红外数据定标为亮度温度(单位为开尔文)
- 卷云波段定标为大气表观反射率TOA(只针对Landsat8传感器)
下图是Landsat7 ETM+多光谱数据用通用定标工具定标为大气表观反射率数据:
图 Landsat7 ETM+大气表观反射率数据
下图是用上面的数据使用"Calculate Cloud Mask Using Fmask Algorithm"得到的结果,蓝绿色的是云掩膜的区域(默认的掩膜区域是黑色,用户可以手动修改)。
图 云检测工具输出的文件
输出的文件中,在元数据中会增加云量百分比信息,可以在View Metadata中查看到:
图 头文件中的云量信息
云检测工具得到的结果可以进一步的使用,比如用于分类,云和云影的像元就不会参与分类,不会对结果造成影响。在分类结果中,云和阴影的像元被标识为 "Masked Pixels" ,显示为深灰色,如下图所示的分类结果:
图 土地利用分类结果
下面是使用两景NNP VIIRS中分辨率M-Band数据的镶嵌结果,对2015年10月3日的飓风帕特丽夏在墨西哥海岸登陆进行监测:
图 NOAA提供的NPP VIIRS M-Band数据
对该数据进行云检测得到云掩膜文件,使用Bandmath工具得到反掩膜文件,表达式:B1 LT 1,这样得到的有效范围就是云的区域,如下图所示,白色区域是云覆盖的区域:
图 云掩膜文件的反掩膜文件
在接下来的非监督分类中,运用该反掩膜文件,对云进行分类,分类结果如下图所示:
图 对云覆盖范围进行非监督分类结果
分类结果展示了不同类型的云,能反应台风过境的情况。