基于岸线特征点合并的极化SAR图像小型港口检测
刘春, 殷君君, 杨健     
清华大学 电子工程系, 北京 100084
摘要:为了对极化合成孔径雷达(polSAR)图像中小型港口目标进行自动检测, 在分析小型港口特性的基础上, 提出了一种基于岸线特征点合并的检测方法。首先, 使用极化SAR图像水平集分割算法实现精确的海岸线提取, 并通过数字曲线分裂归并算法提取海岸线轮廓特征点; 然后针对小型港口轮廓特征点比非港口区域轮廓的密集的特性, 提出了一种岸线特征点合并算法实现港口检测。分别用RADARSAT-2系统获取的新加坡和湛江海岸区域极化SAR数据对提出方法进行了试验。实验结果表明, 该方法能够正确地检测沿岸小型港口。
关键词合成孔径雷达    港口检测    极化    水平集分割    特征点合并    
Small harbor detection in polarimetric SAR images based on coastline feature point merging
LIU Chun, YIN Junjun, YANG Jian     
Department of Electronic Engineering, Tsinghua University, Beijing 100084, China
Abstract: A method was developed to automatic detect small harbors in polarimetric synthetic aperture radar (polSAR) images using coastline feature point merging based on analyses of structural characteristics of harbors. The coastline is accurately extracted by level set segmentation algorithm of polSAR with the coastline feature points then detected with a split and merge algorithm for digital curves. Then, the algorithm takes advantage of the characteristic that feature points along small harbor contour are denser than those along other coastline contours using a merging algorithm to detect the small harbors. The detection scheme was tested using polarimetric SAR images acquired by RADARSAT-2 over Singapore and the Zhanjiang area of China. The results show that almost all the harbors along the coastline are correctly detected by this method.
Key words: synthetic aperture radar    harbor detection    polarization    level set segmentation    point merge    

从合成孔径雷达(SAR)图像中自动检测作为交通运输枢纽之一的港口目标具有重要实用意义。港口是突堤码头、防波堤和港区水域等若干基本目标的复杂组合。港口几何结构复杂,形状多样,缺乏稳定的几何特征,从受乘性噪声影响的SAR图像中检测港口具有一定的难度。

在精确地海陆分割和提取海岸线基础上,现有的港口检测方法都通过提取港区岸线轮廓特有的几何结构特征来实现检测,主要包括:利用突堤和防波堤突出海面特性,扫描沿岸突堤和防波堤来检测港口[1];利用港区码头凹凸性,提取岸线角点和直线特征来检测港口[2];利用港口轮廓封闭性高特性,基于岸线特征点封闭性度量实现港口检测[3, 4]。在港口模型已知条件下,文[4]和[5]分别利用港口封闭性度量矩阵特征谱和港口图像不变矩特征与模板图像匹配来实现港口检测。

基于突堤扫描的方法在沿岸轮廓复杂的情况下,会将沿岸突出陆地区域错误判断为突堤,且突堤长宽比和面积大小等阈值难以确定。基于岸线角点检测和轮廓描述的方法仅仅适用港口轮廓凹凸有序情况。基于岸线封闭性特性的方法中度量港口轮廓线封闭性的始末特征点难以确定,且港口封闭性程度难以衡量。从形状多样的港口图像提取稳定和普适性的几何结构特征和特征度量难度巨大。而对大量港口图像的统计发现,小型港口所具有的稳定特征是其轮廓特征点比非港口区域的密集,基于此,本文提出一种适用于小型港口检测的岸线特征点合并方法。首先使用极化SAR图像水平集分割算法实现海陆精确分割,并采用数字曲线分裂合并算法[6]提取海岸线特征点,然后基于岸线特征点合并算法实现港口检测。该方法从港口轮廓至少包含一对距离较近特征点出发,有效避免直接基于点对点距离进行特征点合并而导致无法检测部分港口的问题,与现有港口检测方法相比无需复杂的轮廓几何特征描述和度量。

1 基于水平集的海陆分割算法

精确的海陆分割是实现港口轮廓特征提取的关键,基于阈值分割和边缘检测的传统海陆分割方法[7, 8]受制于SAR图像乘性相干斑噪声影响,难以检测出连续的海岸线,且需要大量特别的形态学处理、平滑和连通域连接等。水平集方法将图像轮廓隐式表示并定义轮廓曲线能量函数,通过迭代搜索寻找能量函数极值,实现分割的轮廓线连续且平滑。因此,本文采用基于极化SAR图像区域统计特性的水平集分割方法[9]实现精确的海陆分割。

对于两区域的图像分割,假设图像平面为Ω,给定的极化SAR图像表示为I,分割表示为S={Ω1/Ω2},海岸线被表示为闭合的分割曲线ΓΩ1Ω2分别表示由曲线Γ分割的陆地区域和海面区域。若Ω1Ω2相互独立,区域条件概率函数为 f(IiΩi),则在曲线长度规则化限制下,曲线能量函数定义为

$\begin{array}{l} \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;E\left( {\Gamma ,\left\{ {{\Omega _1},{\Omega _2}} \right\}} \right) = \\ \nu \left| \Gamma \right| - \int\limits_{{\Omega _1}} {\ln f\left( {x|{\Omega _1}} \right){\rm{d}}x - } \int\limits_{{\Omega _2}} {\ln f\left( {x|{\Omega _2}} \right){\rm{d}}x.} \end{array} $ (1)

其中ν为参数值。

最佳分割的轮廓曲线为满足曲线能量函数最小的分割线:

$\hat \Gamma = \mathop {\min }\limits_\Gamma E\left( {\Gamma ,\left\{ {{\Omega _1},{\Omega _2}} \right\}} \right). $ (2)

水平集方法将曲线Γ隐式表示为一系列曲线构成水平集函数Φ(c(t),t),零水平集对应曲线 Γ(t)={c(t)|Φ(c(t),t)=0},并由曲线能量定义得到水平集泛函的能量定义:

$\begin{array}{l} \;\;\;E\left( \Phi \right) = \nu \int\limits_\Omega {\left| {\nabla H\left( \Phi \right)} \right|} {\rm{d}}x - \\ \;\;\;\int\limits_\Omega {\left( {H\left( \Phi \right)\ln \left( {f\left( {x|{\Omega _1}} \right)} \right) + } \right.} \\ \left. {\left( {1 - H\left( \Phi \right)} \right)\ln f\left( {x|{\Omega _2}} \right)} \right){\rm{d}}x. \end{array} $ (3)

其中H(Φ)为阶跃函数,如果Φ≥0则 H(Φ)=1,如果Φ < 0则H(Φ)=0。 Ω1对应Φ≥0,Ω2对应Φ < 0。通过变分法沿水平集能量函数负梯度方向逐次逼近,求解满足能量最小的零水平集函数。

$\frac{{\partial \Phi }}{{\partial t}} = - \delta \left( \Phi \right)\left( {\nu \kappa + \ln \frac{{f\left( {x|{\Omega _2}} \right)}}{{f\left( {x|{\Omega _1}} \right)}}} \right). $ (4)

其中:δ(Φ)为冲激函数,κ=div(∇Φ/|∇Φ|)为曲线曲率,div(·)表示散度。

对于多视极化SAR图像,散射矩阵服从复Wishart分布,对于海面和陆地同质区域,若区域相干矩阵均值为Σ,视数为L,则其相干矩阵C~W(Σ,L,p)。

$\begin{array}{*{20}{c}} {f\left( {C|\Sigma ,L,p} \right) = }\\ {\frac{{{L^{pL}}{{\left( {\left| C \right|} \right)}^{L - p}}\exp \left( { - L{\rm{tr}}\left( {{\Sigma ^{ - 1}}C} \right)} \right)}}{{K\left( {L,p} \right){{\left( {\left| \Sigma \right|} \right)}^L}}}.} \end{array} $ (5)

其中:p为极化通道数目,tr(·)表示矩阵的迹,$K\left( {L,p} \right) = {\pi ^{\frac{{p\left( {p - 1} \right)}}{2}}}G\left( L \right)G\left( {L - 1} \right) \cdots G\left( {L - p + 1} \right)$,G(·)为Gamma函数。

则对应的水平集演进方程为

$\begin{array}{*{20}{c}} {\frac{{\partial \Phi }}{{\partial t}} = - \delta \left( \Phi \right) \cdot }\\ {\left( {\nu \kappa + L\left( {\ln \left| {{\Sigma _1}} \right| + {\rm{tr}}\left( {{\Sigma _1}^{ - 1}C} \right)} \right) - } \right.}\\ {\left. {L\left( {\ln \left| {{\Sigma _2}} \right| + {\rm{tr}}\left( {{\Sigma _2}^{ - 1}C} \right)} \right)} \right).} \end{array} $ (6)

其中Σ1Σ2分别为似然估计得到的海面和陆地区域的相干矩阵,为各区域相干矩阵的平均值。

在设定的初始化曲线和参数值下,利用式(6)迭代搜索可实现水平集分割算法[9]。在实现水平集算法后,通过海面和陆地区域小面积区域剔除即可得到精确的海陆分割结果,由两区域的平均散射功率大小可判断出两区域的类别。一般而言,海面区域的散射功率小。

2 基于岸线特征点合并的港口检测算法

小型港口轮廓在海岸线呈突出或凹陷部分,其稳定而显著的特征是轮廓线上角点和特征点。为实现小型港口检测,首先需检测海岸线上角点和特征点。在使用水平集算法获得海陆分割二值图后,通过二值图边缘跟踪算法[10]可得到海岸线的有序点表示。而实现平面数字曲线特征点检测的方法包括角点检测方法[11, 12]和曲线分裂归并D-P (Douglas-Peucker)算法[6]。考虑到部分港口轮廓的关键特征点并非角点,本文采用D-P算法实现海岸线的特征点提取。

若海岸线的有序点集合为{Oi,i=1,2,…,M},D-P算法首先将起始点O1和终止点OM标记为特征点,分别计算Oi各点距直连线段O1OM的距离,将离直线O1OM距离最远的点Ok标记为特征点,并根据OkO1OM分裂为O1OkOkOM这2段;然后按相同的方式分别分裂O1OkOkOM,并标记出相应的特征点。设定距离容限ε,D-P算法递归迭代进行直至各分裂小段上点离对应的直线段距离都小于ε为止。

海岸线上小型港口轮廓的特征点比非港口区域轮廓的密集,实现港口检测的快速有效的方法是进行岸线特征点的合并,实现点合并后,由各个集合特征点数目可检测出港口位置。若海岸线的特征点有序集合为{Pi,i=1,2,…,n},特征点对距离矩阵为A=[aij]n×naij为特征点ij之间的距离。在设定的距离阈值ηT下,基于点对点距离的特征点合并算法依次合并aij < ηT的点。具体算法描述如下:

步骤1 初始化,设置已合并点集P(0)={U1(0),U2(0),…,Up0(0)}为为∅,未合并点集Q(0)={V1(0),V2(0),…,Vq0(0)}为{P1,P2,…,Pn},已合并集合数目为0,置k=1;

步骤2 从未完成合并点集Q(k)中取出V1(k)送入点集SkQ(k)={V2(k),V3(k)…,Vqk(k)},置i=2;

步骤3Q(k)中的点Vi(k),计算Vi(k)与点集Sk的距离dtemp。若dtemp < ηT,则Sk=SkVi(k)Q(k)=Q(k)/Vi(k),置Vi(k)Sk中各点距离为0,并重置集合S1,S2,…,Sk-1Q(k)中各点与Sk的距离;否则,i值加1,继续执行步骤3,直至i>qk

步骤4 P(k)=S1,S2,…,Sk,若Q(k)≠∅,则k值加1,跳至步骤2;否则输出P(k),结束点集合并。

其中Ui(k),i=1,2,…,pkVi(k),i=1,2,…,qk分别表示第k次迭代P(k)Q(k)中的点,pkqk分别为P(k)Q(k)中的点数目。

点对点的特征点合并算法在港口特征点距离偏大情况下无法实现港口检测。图1a为港口区域对应极化SAR数据Span图像;图1b为海陆分割的结果,其中*号标记的点为海岸线特征点,框选区域为某港口区域。从框选区域中的特征点可以发现,点A与点D距离dAD很小,但点A与点B距离dAB偏大,实现特征点距离合并算法时dAB会超过距离阈值,从而将港口轮廓合并为多个小区域,若港口仅仅包含一个长条形的突堤,合并的小区域会因为特征点过少(少于3个)而漏检。

图 1 点对点的特征点合并算法

图1可知,一般实际的小型港口轮廓至少存在一对距离较近的特征点,特别对于仅仅包含一个长条形突堤的港口图像,其起始特征点和终止特征点的距离等于长条形突堤的宽度。也就是说对于港口轮廓的特征点合并,若2个特征点距离过小,则以这2个特征点为起始点和终止点的轮廓线上的所有特征点应为同一个港口区域的特征点。基于此思想,本文提出一种适用于港口检测的特征点合并算法。若海岸线的特征点有序集合为{Pi,i=1,2,…,n},在设定的距离阈值ηT下,具体算法描述如下:

步骤1 设置已合并点集P(0)={U1(0),U2(0),…,U(0)p0}为∅,未合并点集Q(0)={V1(0),V2(0),…,V(0)q0}为P1,P2,…,Pn,已合并集合数目为0,置k=1;

步骤2 从未完成合并点集Q(k)中取出V1(k)送入SkQ(k)=V2(k),V3(k)…,Vqk(k),置i=2;

步骤3Q(k)中的点Vj(k),ijqk,分别计算Vj(k)与点集Sk的距离dtempj,找出满足dtempj < ηT的最大jImax,并将所有ijImax的点Vj(k)合并入Sk中,即Sk=SkVi(k),Vi+1(k),…,VImax(k)Q(k)=Q(k)/{Vi(k),Vi+1(k),…,VImax(k)},置{Vi(k),Vi+1(k),…,V(kImax)}与Sk中各点距离为0,重置集合S1,S2,…,Sk-1Q(k)各点与Sk的距离;置i=Imax+1,若iqk,继续执行步骤3;

步骤4 P(k)=S1,S2,…,Sk,若Q(k)≠∅,则k值加1,跳至步骤2;否则输出P(k),结束点集合并。

部分图像海岸线轮廓为闭合曲线,若轮廓起始特征点和终止特征点距离小于ηT,直接按照以上算法进行点集合并会将所有特征点合并为一个港口区域。图2a为海陆二值图,黑色部分为陆地区域,白色部分为海面区域,*号标记为特征点。图2b为其海岸线右上角区域局部放大图,其中点A和B分别为起始和终止特征点。因此修改本文算法步骤3,对Q(k)中的点V(k)ji≤j≤qk,计算Vj(k)Sk的距离dj,设置距离上限dupper,若某dj>dupper,则认为后续特征点与当前合并集合距离过大,不可能属于同一港口区域,直接跳出步骤3结束Sk的合并。

图 2 闭合海岸轮廓线起始与终止特征点距离过近情况

此外对于闭合海岸线轮廓,在按顺序实现特征点合并情况下,若起始点集S1与终止点集Sk距离小于ηT,则认为SkS1为同一区域,将Sk合并至S1中。

在特征点合并后,根据经验规则,特征点集合中点的数目大于3个则可判为港口区域。对于人工港口,可通过合并特征点集合对应区域人工建筑散射成分或强度进行区分。

3 实验结果

使用2013年1月19日拍摄的新加坡部分海岸区域和2012年3月23日拍摄的湛江部分海岸区域Radarsat2极化SAR图像进行仿真实验,图像分辨率为4.73m×4.80m,大小分别为1 700×1 200和1 000×1 000像素。

进行海陆分割时,曲线规则化参数设置为0.2,迭代次数设置为100,小面积剔除阈值为水域总面积的0.1%。根据图像分辨率和实际港口区域大小,D-P算法误差容限设为10个像素单位,距离合并算法门限设定为30个像素单位,上限设为150个像素单位。图3为新加坡地区港口检测结果,其中图3a为极化SAR图像对应Span(功率)图像;图3b为使用水平集算法海陆分割二值图,其中*号标记的点为由分裂归并算法提取的海岸线特征点;图3c为采用本文提出算法对港口区域的检测结果,图3d为通过Google地球获得的光学图像。

图 3 新加坡部分海岸区域港口检测结果

图3检测结果和光学图像对比可知,图像中的3个港口区域都实现了正确检测。但图3c左下角区域4被错误检测为港口区域,通过光学图像发现,导致错误检测的原因是该区域轮廓与实际天然港口轮廓基本相似,若仅仅基于轮廓几何特征进行港口检测将无法区分该区域是否为港口。

图4为湛江地区港口检测结果,其中图4a为极化SAR图像对应Span图像;图4b为使用水平集算法海陆分割二值图(仅保留最大海域海岸线),其中*号标记的点为由分裂归并算法提取的海岸线特征点;图4c为采用本文提出算法对港口区域的检测结果,图4d为通过Google地球获得的光学图像。

图 4 湛江部分海岸区域港口检测结果

图4检测结果和光学图像对比发现,算法实现了沿岸17个港口中16个港口的正确检测,漏检港口数为1个(图4c框选区域5),错误检测港口数目为3个(图4c框选区域1、7和12),总体检测率为94.1%,虚警率为15.5%。 通过观察对比SAR图像和光学图像,漏检的原因主要是对应港口过小,使用D-P算法近似表示海岸线时忽略了该区域的特征点。而错误检测一方面是由沿岸的一些类似港口的建筑所致,如图4c框选区域1;另一方面是由沿岸一些天然内陷和凸起的区域所致,如图4c框选区域12。

4 结 论

本文提出了一种海岸线特征点合并算法,并将其用于小型港口的检测。针对传统海陆分割方法难以检测出连续海岸线的问题,使用极化SAR图像水平集分割算法实现连续、光滑而精确的海岸线提取。利用小型港口轮廓区域特征点比非港口区域的密集的特性,在使用数字曲线分裂归并算法实现海岸线特征点提取的基础上,通过合并近距离特征点及对应的轮廓段实现港口区域的确定。相比传统的基于轮廓凹凸性描述和基于封闭性度量方法,本文方法不需要启发式的阈值设定和复杂的轮廓特征提取和描述,简单快速且鲁棒性好。

参考文献
[1] 陈琪. SAR图像港口目标提取方法研究 [D].长沙:国防科学技术大学, 2011.CHEN Qi. Harbor extraction from SAR imagery [D]. Changsha: NUDT, 2011. (in Chinese)
[2] 李艳,彭嘉雄.港口目标特征提取与识别 [J].华中科技大学学报:自然科学版, 2001, 29(6): 9-11.LI Yan, PENG Jiaxiong. Feature extraction of the harbor target and its recognition [J]. Journal of Huazhong University of Science and Technology, 2001, 29(6): 9-11. (in Chinese)
[3] 陈琪,陆军,赵凌君,等.基于特征的 SAR遥感图像港口检测方法 [J].电子与信息学报, 2010, 32(6): 2873-2878.CHEN Qi, LU Jun, ZHAO Lingjun, et al. Harbor detection method of SAR remote sensing images based on feature [J]. Journal of Electronics & information technology, 2010, 32(6): 2873-2878. (in Chinese)
[4] 张志龙,张焱,沈振康.基于特征谱的高分辨率遥感图像港口识别方法 [J].电子学报, 2010, 38(9): 2184-2188.ZHANG Zhilong, ZHANG Yan, SHEN Zhenkang. Port recognition in high resolution remote sensing images based on feature spectrum [J]. Chinese Journal of Electronics, 2010, 38(9): 2184-2188. (in Chinese)
[5] 邢坤,付宜利.基于内港区域的港口目标识别 [J].电子与信息学报, 2009, 31(6): 1275-1278.XING Kun, FU Yili. Harbor target recognition based on inside region [J]. Journal of Electronics & information technology, 2009, 31(6): 1275-1278. (in Chinese)
[6] Douglas D H, Peucker T K. Algorithms for the reduction of the number of points required to represent a digitized line or its caricature [J]. Cartographica: The International Journal for Geographic Information and Geovisualization, 1973, 10(2): 112-122.
[7] Mason D C, Davenport I J. Accurate and efficient determination of the shoreline in ERS-1 SAR images [J]. IEEE Transactions on Geoscience and Remote Sensing, 1996, 34(5): 1243-1253.
[8] Niedermeier A, Romaneessen E, Lehner S. Detection of coastlines in SAR images using wavelet methods [J]. IEEE Transactions on Geoscience and Remote Sensing, 2000, 38(5): 2270-2281.
[9] Ben Ayed I, Mitiche A, Belhadj Z. Polarimetric image segmentation via maximum-likelihood approximation and efficient multiphase level-sets [J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2006, 28(9): 1493-1500.
[10] Sonka M, Hlavac V, Boyle R. Image processing, analysis, and machine vision [M]. Toronto, Canada: Cengage Learning, 2014.
[11] Rosenfeld A, Johnston E. Angle detection on digital curves [J]. IEEE Transactions on Computers, 1973, 100(9): 875-878.
[12] Rosenfeld A, Weszka J S. An improved method of angle detection on digital curves [J]. IEEE Transactions on Computers, 1975, 24(9): 940-941.