APP下载

中尺度涡特征提取算法及可视化研究①

2019-01-07刘缵然李海涛

计算机系统应用 2018年12期
关键词:定标圆弧预处理

葛 艳,刘缵然,李海涛

(青岛科技大学 信息科学技术学院,青岛 266061)

海洋中尺度涡是世界各大海洋中存在的一种普遍 的海洋现象,通常在数十至数百公里范围,中尺度涡旋一般是由于平均流的不稳定性、海面风的强迫作用或是海底地形变化等原因产生的,这些旋涡所含的能量比海洋中其他类型运动的能量都大,它不仅会直接影响海洋结构的温盐结构和流速分布,而且会输送动量和热量,从而对海洋上层水域的物理性质产生强烈影响[1].因此,用特征可视化的手段,观察和检测这类复杂流场中的特征结构具有重大意义和科学价值.海洋遥感的多时相、大面积观测等特点,为海洋中尺度涡观测提供了前所未有的现场资料[2].

近年来,很多国内外学者在利用遥感图像对中尺度涡数据信息反演的研究中,取得了很多进展,但也存在着不足.应用广泛的基于遥感数据的中尺度涡提取方法主要有:基于洋面高度信息的旋涡提取[3]、基于温度场信息的旋涡提取[4]、基于卫星跟踪浮标的漩涡提取[5]、基于卫星图像特征信息的漩涡提取[6]等.这些方法虽都进行了实验论证,但尚存在一定的不足,总结起来,现有方法的缺陷主要包括:计算量大、处理效率低、成本昂贵、有限的适用性、不能进行直观的可视化显示等.

针对上述问题,本文利用遥感图像数据,研究了基于连通区域提取的中尺度涡自动检测算法,并在此基础上对从数据的输入、数据处理、结果的可视化显示等自动可视化过程进行了研究.本文基于Matlab图像处理技术,采用Matlab语言对遥感数据进行处理,实现中尺度涡检测算法.将检测算法生成DLL文件和C#语言进行混合编程,实现结果可视化显示.此处理过程中不需人工干预,可实现遥感数据的高效处理,并满足中尺度涡自动检测的要求,为中尺度涡信息反演奠定了基础.

1 数据预处理

本文以2016年12月份高分三号卫星L1B级和L2级的HH与DH极化图像进行中尺度涡检测,由于遥感图像在获取过程中受地球表面曲率、探测器运动中的抖动等因素影响,遥感图像数据存在几何畸变[7];另外,影像存在辐射不均匀、坏线等辐射问题[8].因此在中尺度涡检测之前,需要对遥感图像数据进行预处理,包括辐射定标、图像压缩、边缘检测等.在消除几何畸变和辐射问题的同时获取后向散射系数.

1.1 辐射定标

辐射定标是将传感器记录的无量纲的DN值(Digital Number:遥感影像像元亮度值,记录地物的灰度值)转换成具有实际物理意义的量,在此指计算成后向散射系数.主要是通过以下公式对图像进行定标:

其中,PI=I2+Q2,对应有源定标器或角反射器在SAR复图像的功率,I和Q分别对应复图像的实部和虚部.PN为回波噪声功率,Gimg2为噪声的成像处理增益,σC为点目标RCS.以上参数可从产品元数据XML文件中获取,产品元数据包括产品信息参数、雷达系数参数、平台参数、SAR处理参数等.

辐射定标的目的就是尽可能消除因传感器自身条件、太阳位置和角度条件及某些不可避免的噪声,从而为遥感图像后续的中尺度涡解译、检测、识别等工作打下基础.辐射定标处理完成后,原始图像和辐射定标后的图像对比如下图1所示.图像经过辐射定标处理后,消除了部分噪声对图像的影响,不仅提高了图像的原始精度,而且大大缩短了计算时间和计算复杂度.

图1 辐射定标

图像预处理过程中,运用Matlab自带库函数,结合辐射定标公式,处理后的结果图像可在界面控件上的相应位置进行可视化显示.图像预处理后可在经纬度地图上显示,通过目视,可以观察到中尺度涡的区域.

1.2 图像压缩

图像压缩是将原本行列数较多的图像压缩为行列数较少的图像,以提升后面图像纹理的计算速度.具体的压缩过程如下:

(1)以5000为行列数的标准,取行数和列数除以5000的最小整数值为该图像的压缩系数.

(2)当该系数为n并大于等于2时,则进行n×n的模板的均值计算,并将均值放入相应的行列数当中.

(3)若该行列数能整除n,则将余下的行列进行n×m(m<n)均值计算.

如图2、图3和图4所示,图像压缩前大小为22687×13302,压缩后为 7563×4434,压缩后的图像大大提升了后续的处理速度.

图2 压缩前图像数据

图3 压缩后图像数据

图4 图像压缩前后信息对比

1.3 边缘检测

在二维空间下,Canny检测算子和其它几种经典的检测算子比较具有抗噪声能力强,检测定位精度高等优势,可以更方便地对后续进行处理,故本文在对图像边缘检测处理过程中,选取具有双阈值的Canny算子对图像进行边缘检测,边缘信息检测也相对理想.效果图如图5所示.

图5 Canny 边缘检测效果图

2 中尺度涡检测方法

2.1 中尺度涡检测原理

中尺度涡检测是指对海洋中的尺度涡进行地理位置、特征半径以及区域面积的估计.本文中尺度涡检测的原理是根据旋涡形成时旋涡区域和非旋涡区域的反射率存在差异进行检测的[9],利用海洋遥感图像的地理位置数据映射到1°×1°经纬度矩阵中,根据海洋中尺度涡成像的特点,基于边缘检测,运用连通区域提取技术,综合利用涡旋的形状、尺度等判据,检测图像中的旋涡闭合等值线以及提取旋涡的特征参数.

2.2 中尺度涡检测算法流程

本文设计的中尺度涡自动检测算法,主要分为三个步骤:首先对遥感图像数据预处理,包括辐射定标、图像压缩、图像边缘检测;然后对图像进行连通区域提取,计算其特征参数;最后对这些连通区域判别检测,判断中尺度涡圆弧,拟合中尺度涡.算法实现流程如图6所示.

图6 中尺度涡检测算法流程图

2.2.1 连通区域提取

中尺度涡检测算法中重点部分是对图像进行连通区域提取和检测图像中的近似中尺度涡圆弧.在对图像预处理的基础上进行连通区域提取[10,11],本文运用八邻域标记算法对图像进行标记,如图7所示,在图像中最小的单位是像素,每个像素周围有8个邻接像素,运用直接扫描标记算法把连续区域作同一个区域进行标记[12,13].

图7 八邻域

算法.连通区域提取(1)将遥感图像的二值图像映射到算法矩阵中,按照由左到右、从上至下的顺序依次循环遍历图像中的每一个点(i,j),逐像素进行扫描,若此点的八邻域中最左 (i–1,j),左上 (i–1,j–1),最上 (i,j–1),上右(i+1,j–1)方向上没有其他点,则将此点作为一个新的连通区域的起始点;(2)若此点 (i,j)八邻域中最左 (i–1,j),左上 (i–1,j–1),最上 (i,j–1),上右(i+1,j–1)方向上有其他点,则将此点归并为以上四点中的连通区域上;

(3)在一次遍历结束后,一条连通区域按照扫描顺序被赋予唯一的自然数;(4)继续扫描其他点,循环扫描结束后图像中的连通区域将被连续的自然数所标记,最大的自然数即为图像中的连通区域条数.

通过以上步骤,每一个连通区域都有唯一的一个值相对应,对图形处理起来也简单的多.连通区域提取后效果图如图8所示.

图8 连通区域提取后效果图

2.2.2 中尺度涡圆弧检测

在对图像进行连通区域提取的基础上检测出符合组成中尺度涡特征的圆弧,才能为后续的中尺度涡拟合提供依据.本文分析了中尺度涡的特性,确定了几组阈值.其中两个重要的判据就是中尺度涡圆弧的经度和纬度,映射在计算机中可以被量化为长度和宽度.基于连通区域提取的中尺度涡圆弧检测的具体步骤如下:

(1)循环遍历每一条连通区域.为防止图像边界影响检测的准确性,首先对边界噪声线进行判断与剔除.将长度或宽度大于整幅图像长度或宽度二分之一的连通区域舍去,并将此连通区域所在点的值赋为0;同时,将连通区域的总条数减1.

(2)循环遍历剩下的连通区域.对每条连通区域进行处理,选取其中长度和宽度分别符合设定阈值范围的圆弧;长度和宽度两个限制条件同时满足时,同时也说明此条圆弧具有一定的弧度.

(3)寻找每条符合中尺度涡圆弧的特征点,对中尺度涡进行拟合.

2.2.3 中尺度涡拟合

在中尺度涡圆弧检测的基础上,首先对每条符合中尺度涡圆弧的连通区域寻找特征点,然后根据特征点拟合中尺度涡.本文通过三点定圆原理,即不在同一条直线上的任意三个点唯一确定一个圆原理.接下来的任务就是寻找三个特征点,若将检测的圆弧映射到直角坐标系中.通过分析总结容易想到,每条圆弧的特征点无非就是X轴方向上的最小值点(A点)和最大值点(B点),以及Y轴方向上的最小值点(C点)和最大值点(D点)四点.从四点中寻找更具特征性的三点,步骤如下:

(1)固定X轴方向上的最小值点(A点)和最大值点(B点),若Y轴方向上的最小值点(C点)的横坐标距离A点的横坐标或者距离B点的横坐标小于设定的阈值,则将C点舍去,选取ABD三点进行中尺度涡拟合.

(2)若Y轴方向上的最小值点(C点)的横坐标距离A点的横坐标或者距离B点的横坐标不小于设定的阈值,则选取ABC三点进行中尺度涡拟合.

在对图像的处理过程中,是将图像空间上的信息映射到参数空间上,因此根据映射关系,对图像矩阵的操作可以间接计算实际的特征信息.按照遥感图像的实际宽度和图像的矩阵宽度之间的比例计算近似半径,按照圆面积计算公式可以得到近似中尺度涡的面积等信息.将地图插件引入,可将图像对应在相应的经纬度位置上,拟合后图像如图9所示.

图9 中尺度涡拟合效果图

2.3 中尺度涡检测方法的应用

根据中尺度涡检测业务化的需求,中尺度涡检测方法的应用需要进行以下几个方面的工作:预处理数据的读取、中尺度涡检测算法的实现、可视化显示中尺度涡检测影像.本方法基于检测效率、准确性和可视化的考虑,同时Matlab拥有成熟的图像处理技术和在科学计算方面有着无与伦比的优势,故采用Matlab语言和C#语言混合编程,在此过程中,Matlab和C#负责的工作如下:

(1)Matlab负责检测方法过程中各个步骤的算法实现,同时封装生成C#程序可调用的DLL文件.

(2)C#负责输入数据路径、调用 DLL 文件,在PictureBox控件中可视化显示每个步骤的图像信息,在TextBox控件中显示中尺度涡检测的特征参数.

本文检测方法的应用采用瀑布模型开发,自顶向下、逐步求精的结构化设计方法,上一步骤的处理结果作为下一步骤的输入数据进行输入,方法应用流程图如图10所示.

图10 中尺度涡检测方法应用流程图

3 检测结果

为了检测本文方法的有效性,分别选取了高分三号卫星L1B级和L2级的遥感图像进行检测测试.根据上述检测方法,本文对预处理后的图像分别进行连通区域提取、中尺度涡圆弧检测和中尺度涡拟合操作,并在C#相应的PictureBox控件中显示处理后的图像,如图11所示.其他检测结果图像如图12、图13、图14所示,左边为预处理后的影像图,右边为检测后的图像,通过目视解译,将检测后的结果图像和预处理后的影像图对比发现,中尺度涡检测准确,基本说明该方法在海洋遥感图像中尺度涡可视化检测过程中效果理想.

图11 应用系统上显示处理后的图像

图12 中尺度涡检测实例 1

图13 中尺度涡检测实例 2

4 结论

本文基于连通区域提取技术对海洋中尺度涡检测,结合Matlab语言和C#语言混合编程开发并实现的应用方法.从实验结果看到可以较准确的从遥感图像中检测出中尺度涡,且检测结果可视化显示效果理想.本文提出的基于连通区域提取的中尺度涡检测方法具有以下优点:

图14 中尺度涡检测实例 3

(1)该方法对中尺度涡检测较为准确,达到了海洋遥感图像中尺度涡检测的业务化要求.

(2)Matlab语言和 C#语言混合编程,使用Matlab语言库函数中自带的图像处理技术,

实现了遥感数据的高效处理,过程中不需人工干预,节省了大量时间,而且最终的中尺度涡检测结果可视化显示效果良好.

(3)该方法实现了中尺度涡检测的自动化与可视化,证明了Matlab语言和C#语言混合编程进行业务化中尺度涡检测的可行性.

另外,本文存在着一些不足.一方面,在检测中尺度涡圆弧时,定义的阈值参数已基本满足目前的图像检测,但为继续提高准确度,需要更多的数据进行验证;另一方面,本文算法对存在明显中尺度涡的遥感图像检测较为准确,对处于不成熟或不明显中尺度涡的遥感图像,该算法还有待进一步探讨.

猜你喜欢

定标圆弧预处理
KR预处理工艺参数对脱硫剂分散行为的影响
近红外定标法分析黏/锦/氨三组分纤维含量
求解奇异线性系统的右预处理MINRES 方法
浅析圆弧段高大模板支撑体系设计与应用
我国为世界大豆精准选种“定标”
污泥预处理及其在硅酸盐制品中的运用
离心泵双圆弧圆柱形叶片的几何方程
半圆与半圆弧
基于子空间正交的阵列干涉SAR系统相位中心位置定标方法
如何让学生更好地掌握圆弧连接的画法