《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 一种基于光谱角原理的多光谱遥感图像云检测算法
一种基于光谱角原理的多光谱遥感图像云检测算法
2017年微型机与应用第6期
孙舜蓉
工业和信息化部电信设备认证中心,北京 100088
摘要: 为了满足遥感卫星实时云检测要求,提出了一种基于光谱角的云检测算法。首先在多光谱谱段构成的欧式空间中构造参考云矢量;然后计算图像中各像元矢量与参考云矢量的光谱角,对光谱角进行高斯滤波生成云掩膜;最后计算得到图像中云量百分比。利用该算法对156景人工标注过的LandSat7有云图像进行云检测,结果表明本文算法云检测整体精度能到达83.6%,平均执行速度为360 ms。本文算法原理简单,执行速度快,检测效果好,具有星上实时应用潜力。
Abstract:
Key words :

  孙舜蓉

  (工业和信息化部电信设备认证中心,北京 100088)

        摘要:为了满足遥感卫星实时云检测要求,提出了一种基于光谱角的云检测算法。首先在多光谱谱段构成的欧式空间中构造参考云矢量;然后计算图像中各像元矢量与参考云矢量的光谱角,对光谱角进行高斯滤波生成云掩膜;最后计算得到图像中云量百分比。利用该算法对156景人工标注过的LandSat7有云图像进行云检测,结果表明本文算法云检测整体精度能到达83.6%,平均执行速度为360 ms。本文算法原理简单,执行速度快,检测效果好,具有星上实时应用潜力。

  关键词云污染多光谱遥感;光谱角;云检测

  中图分类号:P407.8文献标识码:ADOI: 10.19358/j.issn.1674-7720.2017.06.006

  引用格式:孙舜蓉. 一种基于光谱角原理的多光谱遥感图像云检测算法[J].微型机与应用,2017,36(6):16-18,21.

  0引言

  未来的遥感卫星将向着更高空间分辨率、更高时间分辨率、更高光谱分辨率以及更高辐射分辨率的方向发展,这将导致图像数据量的成倍增长,给星上硬件资源带来巨大压力。中国科学院地理空间数据云系统[1]对2014年1月1日到2015年1月1日的Landsat 7 ETM+ 湖北省的135景图像进行云量统计,结果见表1所示。若定义云量小于5%的图像为干净图像,则该比例仅为20%,即80%的图像都或多或少地被云图污染。云量在80%以上的图像55景,占总图像的40.78%,这部分图像属于云图严重污染图像,基本上没有应用价值,因此可以不需要从卫星下传到地面。同样的结论可以从CNES(法国空间研究中心)对SPOT5图像的统计中得到。地面神经网络分类器对SPOT5图像分类结果表明80%以上为“有云”。

006.jpg

  除气象卫星外,云图在高分辨率遥感图像中有害无益,一是污染图像,对地物识别造成困难;二是占用了大量宝贵的运算和存储资源;三是占用有限的传输带宽。这三方面使得相机有效成像时间缩短,极大地限制了卫星的成像能力。因此,开发星上实时高效的云检测算法势在必行。星上可根据云量的检测结果对原始图像进行针对性的处理,可以有效改善卫星成像效率,然而星上云检测远不如地面云检测成熟。

  云检测算法在文献[2]、[3]中得到很好的归纳总结。总之,现有算法具有以下特点:

  (1)云判算法多为地面应用,发展比较成熟,但星上实时云判研究较少。

  (2)单谱段云图检测基于图像阈值、图像纹理进行云判别。由于云千变万化,云检测分类器往往难以区分与云具有相似纹理的冰雪下垫面。

  (3)云检测算法针对特定的传感器进行量身定制,还没有一种云检测算法能适应所有类型的传感器。

  (4)地面算法较为复杂,不适合直接移植到星上应用,基于光谱和纹理的分类思想具有借鉴意义。

  本文在分析云和典型地物的光谱反射率特性的基础上,给出利用光谱角进行云检测的算法原理和步骤,然后对比自动云覆盖评估算法,给出云检测结果以及代码执行效率,最后给出分析结论。

1算法原理及实现流程

  不同地物由于物理特征的不同,各自具有独特的光谱反射特性。图1为云和典型地物的光谱反射率曲线。由图1可见,在0.4μm ~0.9μm可见光区域,云具有相对高的反射率,但是比冰雪低;在1.4μm以上的短波红外谱段,云的反射率比冰雪、土壤和植被的反射率都高。多光谱探测器的光谱响应在其谱段范围内响应是近似线性的,那么,典型地物反射率曲线等价于探测器对地物的光谱响应曲线,也就是说地物反射率越高,表现为图像的量化值越大。而且,谱段越多,光谱分辨率越高,描绘的光谱曲线越完整,利用发射率信息对地物的区分度就越高。本文提出一种利用光谱矢量表征地物,进而利用光谱矢量与标准地物参考矢量之间的相似性,即光谱角的大小和矢量长度来对地物进行分类的方法,原理描述如下。

001.jpg

  对于具有n个谱段的多光谱图像,图像像元可用n维矢量来表示,例如图2中的Pi。假设Pr为某地物参考矢量,若Pi与Pr的指向相近,且长度也相近,则可以认为Pi与Pr相似。Pi的长度可以通过对Pi的求模操作即|Pi|来得到,而Pi与Pr间的光谱角可用如下数学表达式得到:

  αi=arccos(Pi·Pr/|Pi|·|Pr|)(1)

  式中:αi为图像像元矢量与参考像元矢量之间的夹角,即光谱角,代表了光谱响应的相似性,其变化范围是[0,π/2]。Pi·Pr为矢量点乘操作,|Pi|表示Pi的长度,|Pr|表示Pr的长度。光谱角度越小,同时矢量长度越接近,则被估计像元的光谱响应与参考像元的光谱响应就越相似,参考物与被估计像元为同一类型的概率就越高。如图2所示,假设图像有3个谱段,分别用i,j,k表示,αi就是像元Pi与参考像元Pr之间的光谱角。

  

002.jpg

  基于光谱角的云检测流程如图3所示。

 

003.jpg

  基于以上分析,提出基于光谱角的云检测算法如下:

  (1)计算遥感图像某像元Pi与云参考像元Pr的之间的光谱角,见式(1)。

  (2)为了利用矢量的长度信息,构造一个包含像元Pi矢量与云参考像元Pr矢量长度的高斯滤波器,对αi进行滤波,即乘以一个高斯权重系数GsCoef,该权重系数由式(2)得到,范围是(0,1 ]。高斯系数的作用是给那些矢量长度与参考像元矢量长度接近的像元赋予较大的权重,直观解释就是矢量长度相近的像元更有可能是同一类地物。滤波结果为Cgsi,其范围是(0,1]。

  GsCoef=e-((|Pi|-|Pr|)2/(0.35·|Pr|2))(2)

  Cgsi=GsCoef*(π-αi)/π(3)

  (3)取适当的阈值对Cgsi进行二值化,即当minThreshold<Cgsi<=maxThreshold时,该像元Ci为云,否则非云。其中minThreshold为最小阈值,maxThreshold最大阈值。

  if (Cgsi>minThreshold && Cgsi<=maxThreshold)

  Ci=1;//该像元判断为云

  else

  Ci=0;//该像元判断为非云

  (4)重复步骤(1)~(3),依次完成所有像元检测,生成云掩膜。统计云像元所占比例,为后续处理做好准备。

2实验结果

  为了便于比较,本文利用开源遥感图像处理软件Grass7.0提供的自动云评估ACCA算法C++代码,与文中的光谱角云检测算法C++代码,从整体检测精度(Cloud Overall Accuracy, COA)以及执行速度上进行比较。计算平台为:Lenovo Windows 7 64 bit PC; Intel Core i52520 @2.5 GHz CPU; 4.00 GB RAM。

  从美国地质调查局网站得到156景经过人工标注的Landsat7图像,作为本文云检测精度评价的标准图像。此156景数据分布在9个不同的纬度区域,对不同地域的云分布有一定统计意义,同时它们是文献[3]中所采用的212幅人工标注图像的子集。在这156景8 bit量化的遥感图像中,图像专业分析人员利用Photoshop中的图像套索工具一点点地分离云和非云像元。

  综合考虑检测精度和运算速度,本文取Landsat7中的Band1(450~515 nm),Band3(630~690 nm),Band4(750~900 nm),Band5(1 550~1 750 nm)作为试验对象,利用这四个谱段构造光谱角进行云检测。同时,为了更好地模拟在轨实时处理过程,利用从原始图像截取的1 024像元×1 024像元大小的含不同云量的图像进行试验。云参考矢量Pr取(225,215,182,168),minThreshold取0.6,maxThreshold取1,比较结果如图4~6所示。

  

004.jpg

  对于参考图像,ACCA算法耗时较长,平均耗时为2 299.6 ms。耗时曲线中显示对不同的图像,耗时相差较大,这是因为ACCA算法针对不同的地物采用不同的算法分支,而某些分支中包含有循环处理。SA执行速度很快,平均耗时仅为361.1 ms。

005.jpg

  图7是带云的原始图像,图8是人工标注的云图像,图中,云标注为全白,非云地物为全黑。典型的ACCA云检测结果如图9所示,SA检测结果如图10所示。整体检测精度分布如表2所示,可知ACCA的整体检测精度达到89.05%,高于SA算法的83.6%。对检测误差较大的图像进行分析发现,高纬度地区覆盖的冰和雪常被误检为云,因为冰雪反射率与云接近,且具有较高亮度;对薄云的漏检在两种算法中均存在,SA算法相对较严重。

007.jpg

3结论

  分析可知,SA的检测精度略低于ACCA,但是仍然高于83%。最为关键的是,SA算法执行时间仅为ACCA算法执行时间的1/6,这在实时图像处理中尤为重要。对于高纬度地区SA算法的过检问题,可以针对高纬度地区的冰雪特点,适当调高阈值,提高检测精度。在轨应用时,一些实际问题例如图像的辐射校正、几何校正、图像匹配等问题需要加以考虑。

  参考文献

  [1] 侯舒维, 孙文方, 郑小松. 遥感图像云检测方法综述[J]. 空间电子技术, 2014, 11(3).6877.

  [2] TAPAKIS R, CHARALAMBIDES A G. Equipment and methodologies for cloud detection and classification: a review[J]. Solar Energy, 2013,95(5): 392430.


此内容为AET网站原创,未经授权禁止转载。