郝博雅,马传焱,杨丽博
(中国人民解放军32180部队,北京 100012)
近年来,遥感图像处理技术不断提高,基于无人机影像及遥感影像的目标检测技术在特定中发挥了越来越重要的作用。无人机载SAR目前实时成像分辨率可达0.1 m*0.1 m,实时成像幅宽已达10 km,数据量可达几十个G。在大范围的快速搜索目标过程中,检测目标不仅要求检测准确,同时要求虚警率尽可能低。很多目标在成像过程中受到各种因素影响(微波反射特性、频率、反射角和极化方式),不同目标在不同地形地貌形成不同纹理特征。因此,有效特征选取,尽可能去除虚警是SAR目标检测识别的关键环节[1]。
目前,国内外研究单位提出了很多关于目标检测的算法,例如:如共生矩阵[2-3]、蚁群算法[4]、小波变换的频域分量特征算法[5-7]、小波变换轮廓检测法[8]、边缘轮廓检测算法[9]、邻接区域灰度对比和级联目标检测算法[10-11]、深度神经网络模型[12-13]等,然而由于SAR图像中的目标具有多样性的特点,同时SAR图像远不如光学图像直观,同类型目标的不同SAR图像成像模式存在很大差异。因此本文提出的算法,充分考虑到侦察目标成像、微波反射特性等影响,提出了基于邻接区域灰度对比和级联目标检测算法。通过应用基于构造型神经网络的方法构建了去除虚警的模型,从而实现了更精确的目标检测。针对实拍无人机遥感SAR影像进行了检测试验,试验结果验证了本文方法的有效性。
目前,目标检测的特征选取通常基于知识算法和统计算法,这两种算法都可以得到较好的检测效果[14]。由于基于SAR图像的目标检测样本较少,目标散射和成像方式变化较大,基于知识算法,需要前期对图像进行很多处理,比较费时,工程应用较少。本文通过采用基于统计学习的算法。但是,很多传统的目标识别算法直接用于SAR图像目标存在着很多问题:① SAR图像分辨率较低,目标特征难以提取;② 很多算法(共生矩阵、边缘轮廓检测算法等)在实际应用存在相当大差距;③ 特征提取得到的向量往往维数很高,有些算法(如基于小波算法)在特征选取和目标检测都非常耗时。因此,本文提出基于邻接区域灰度对比和级联目标检测算法应用于SAR图像,明显提高了SAR图像目标检测效率。
通常,目标在SAR图像上形成块状区域,这些块区域比背景灰度更明亮一些。传统的块状目标多采用Hough、Radon变换分析线状目标,然后采用Gabor、矩不变特征、轮廓FFT变换、LBP(Local Binary Patter)、灰度和梯度信息构建目标分类。本文采用基于邻接区域灰度特征的弱分类器,然后级联为SAR图像块状目标的强分类器,通过区域明暗对比特征,结合Adaboost的方法进行目标检测。检测过程分为2步:
第1步:提取局部区域特征,具体方法为子窗口按照一定顺序在待检测区域内移位滑动,每到一个位置,就计算对应区域特征;
第2步:使用训练好的级联分类器筛选第1步提取的特征,并将通过所有强分类器筛选的特征判定为目标。
对应检测过程的特征构建和特征训练过程如下:
① 首先选取下面几类邻接明暗特征作为目标检测特征,如图1所示。白色区域的像素和减去黑色区域的像素和,得到的值为目标特征值,计算出特征值越大越好。例如,对多个矩形特征计算能够得出区分度更大的特征值,采用级联算法从多个弱分类器构建强分类器。
② 最初的弱分类器可能只是一个最基本的局部区域特征,判断输入图像是否为目标需要计算局部区域特征值,并将其与弱分类器的特征值比较[15]。弱分类器的数学表达式定义如下:
弱分类器h(x,f,p,θ)由子窗口图像x、特征f、指示不等号方向的p和阈值θ组成。训练时,将每一个特征在训练图像子窗口中进行滑动计算,获取各个位置的各类矩形特征[16]。值得说明的是,子窗口中不同位置的同一类型矩形特征,属于不同特征。
图1 直接邻接区域灰度对比特征
在邻接区域灰度特征获取的基础上,进一步确定一个满足条件的矩形是否为一个满足条件的弱分类器。弱分类器训练的过程大致为:对每个特征f,计算所有训练样本的特征值;将特征排序。
对排好序的每个元素:
① 计算全部正例的权重T+;
② 计算全部负例的权重T-;
③ 计算该元素前正例的权重和S+;
④ 计算该元素前负例的权重和S-;
⑤ 选取当前元素的特征值Fki和它前面的一个特征值Fki-1之间的数作为阈值,该阈值的分类误差为:
e=min(s++(T--S-),S-+(T+-s+)),
其中,每一个基于邻接区域灰度对比的级联强特征分类器构造如下:
针对SAR 图像,通过级联AdaBoost算法对弱分类器进行训练,从而实现强分类器的构造,其中的难点及关键在于弱分类器最优阈值的确定。选取一个最佳弱分类器就是选择那个对所有训练样本的分类误差在所有弱分类器中最低的,这样的一个筛选过程称为一次迭代。T次迭代之后,得到T个最佳弱分类器h1(x),…,ht(x),按下列方式组合为一个强分类器:
其中:
式中,εt=-Inht-1(x),αt为上一次迭代得到的第7个弱分类器的权器。那么,这个强分类器对待一幅待检测图像时,相当于让所有的弱分类器投票,再对投票结果按照弱分类器的错误率加权求和,将投票求和的结果与平均投票结果对比得到最终的结果[15]。
平均投票结果,是假设所有的弱分类器投“赞同”票和“反对”票的概率相同时的结果:
实验结果表明,T在不少于200时,针对SAR图像目标检测能得到较好的检测效果。
尽管强分类器可以较好地得到检测目标区域,然而由于同类型不同目标的SAR图像成像模式存在很大差异,以及SAR图像侦察目标成像存在微波反射特性等因素,SAR图像可能存在较多虚警。因此,采用基于球面构造神经网络方法[17-18]去除目标虚警。
球面构造神经网络模型分为2步。首先是神经元函数选取,与传统的神经网络的神经元不同,构造神经网络的神经元函数主要目标是为了将输入参数投影到一个球面上;其次在球面上构造神经网络模型,选取合适的球平面,将虚警和真实目标分别开。
构造神经网络的神经元直观表示如图2所示,将该神经元看成是1个有n个输入和1个输出的元件,表示为y=σ(W*x-b),其中σ为符号函数,W为神经网络初始权值矩阵,b为神经无偏置函数,σ(W*x-b)=0作为一个超平面P,把多维空间分为2个部分。当(W*x-b)>0时,表示点x落在超平面的正半空间内,此时σ(W*x-b)=1;当(W*x-b)<0时,表示点x落在P的负半空间内,此时σ(W*x-b)=-1。
构造神经元的功能,可看成是一个由超平面划分空间位置的识别器。设n维空间被划分为m个超平面,当m较大时,n维空间中m个超平面的相交情况非常复杂,很不直观,这时可限定输入向量的长度相等,即输入向量是限定在n维空间的某个球面上,当(W*x-b)>0时,就表示球面落在P的正半空间的部分,这个部分恰好是球面上的某个“球形领域”[19]。若取W的列向量长度与x等长,则这个“球形领域”的中心恰好是Wo,其半径r(b)是b的单调下降函数。若取σ′(x)=1(x>0),σ′(x)=0(其他情况),且取神经元的激励函数为:σ′(W*x-b),则一个神经元的功能函数正好是它所代表的球面上“球形领域”的特征函数。
图2 构造神经网络方法超平面模型
结合多层前馈网络,多层前向网络(作为联想记忆器或分类器)的综合和学习算法为:样本集K为:K={rt=(xt,yt),t=0,1,2,...,s}。所谓“记忆”,就是当输入为xi时网络的输出为yi,记住xi与yi之间的对应关系;或者当输入为xi+Δi时,其输出仍为yi(其中Δi是噪声或微扰)。两种功能的网络,就可以认为是一个“联想记忆器”。另一方面,若将“当输入为xi+Δi时,其输出仍为yi”理解为:输入落在xi的附近时,其输出应为yi,否则其输出就不为yi。若将“在xi附近”看作是xi的一个球形领域,那么,由神经元的几何意义可知:取以xi为中心,以Δi为半径“球形领域”。
按照多层前向神经网络作为“分类器”进行设计,相当于用若干“球形领域”将输入xi按其所属的类把它们划分开来。最简单的方法就是对每一类,用一组球形领域将属于该类的xi覆盖住,又不覆盖不属于该类的xi,于是不同类的输入被不同组的球形领域所覆盖。然后再将属于同组球领域对应的神经元的输出用或门集中起来,就完成虚警和目标的进一步分类,计算过程如下:
固定t,令P(t)={xi|i∈I(t)},对样本输入xi∈P(t),令:
第1步:按网络输出定义方案求各yt对应的领域集D(t),t=0,1,2,...,k-1(k为样本不同输出的个数);
第2步:按求最小覆盖的算法,从D(t)中求出P(t)的最小(或次小)覆盖D′(t)(t=0,1,2,...,k-1)。
针对神经网络容易陷入极小、泛化能力较弱的缺陷,结合最大似然函数分析参数的思路,进一步提高其泛化能力。设利用覆盖算法求得覆盖某一类样本的覆盖族为(C1,…,Cm),其对应的决策函数为y=σ(C1)+σ(C2)+…+σ(Cm)。利用核函数法变为y=f(C1)+f(C2)+…+f(Cm)。取f为高斯核函数,则
该算法结合神经网络进行多类分辨的优点,在支持向量机参数分析的基础上,避免了传统神经网络训练方法易陷入最小极值的缺陷。
因为SAR图像机场和车辆小目标存在着样本量小的问题。目前数据库中有10张航拍SAR图像机场图片和10张SAR图像车辆图片。因为弱分类器构建强分类器的过程中需要大量样本。因此实验初期,从2张含有机场的SAR图像中选出目标区域,分别在0.6~1.4尺度、-20°~20°、-20~20灰度范围内的灰度噪声,按照0.2的尺度跨度、5°、5灰度跨度产生扩展的图片,同时在选取目标时,人为地以目标为中心选取大小范围不同的20张目标图片,这样一张机场图像可以产生大于1.5万(9*9*9*20)张训练样本,部分垂直方向扩增的训练样本如图3所示。
图3 AR图像机场目标训练样本
针对机场图像,图片分辨率为5 m*5 m左右,图片均含有且只含有一个SAR图像目标。图像大小为1024*768。每张图像的检测时间为200~600 ms之间。检测开始时,设置检测窗口为样本大小,并指定每次移动的像素个数,然后按照向左向下的顺序遍历整个图像,标出可能的目标区域。遍历完后按照指定的倍数放大检测窗口,进行第2轮遍历;这样不停地放大检测窗口对检测图像进行遍历,直到检测窗口超过原图像的一半以后停止遍历。分类级联的过程很快,在目前主流台式机上(CPU 3.0G, RAM 4.0G),处理一幅图像大约100 ms一次遍历完成后,即可针对检测到的重叠目标区域进行合并等操作。
为了分析所选特征的优劣,实验中选取了54*14 子窗口里面的全部78 460个有效的邻接矩形特征对。图4(a)和图4(b)分别给出了2 706个目标样本和4 381个非目标样本的特征值平均数分布图。由图可知,SAR图像绝大部分的特征值平均值都是分布在0 前后的范围内。值得注意的是目标样本与非目标样本的分布曲线差别并不大,不过当特征值大于或者小于某个值后,分布曲线出现了一致性差别,即绝大部分特征不具备区分目标与非目标的能力,但也存在一些特征及相应的阈值,可以有效识别目标样本与非目标样本。
进一步测试水平型的邻接对比特征与SAR图像目标检测的分类效果对比,测评方法与上面一样,得到的分布如图5所示。本研究中SAR机场图像目标样本呈-20°~20°分布,水平型邻接对比特征的特征值分布在目标样本和非目标样本中差别较大,特别是0点位置,因此可以更好地实现目标分类。由上述分析,阈值q的含义就清晰可见了,而方向指示符p用以改变不等号的方向。一个弱学习器以稍低于50%的错误率来区分目标和非目标即满足要求,因此上面提到的在某个概率范围内准确地进行区分已经足够。分析可知,SAR机场目标检测过程中,水平型邻接的弱分类器,因为区分度更不对称,更容易级联为更好的强分类器。
图4 竖直方向邻接对比特征区分度分析
图5 水平方向邻接对比特征区分度分析
据此,适当选择阈值,找到所有错误率低于50%的矩形特征。经T轮训练,每次均选取该轮中的最佳弱分类器,最后将T个最佳弱分类器按照一定方法提升(Boosting)为强分类器。
初始目标检测结果和采用构造型神经网络方法去除虚警后得到的目标检测结果如表1所示。用2张SAR目标作为训练样本,另外8张SAR图像目标作为识别图片,可以看到采用区域灰度比较的级联特征检测以100%的准确率检测出机场,85.6%的准确率检测出车辆。但同时可以看到,8个机场目标中,出现了3个虚警;36个车辆目标中,出现了9个虚警。进一步采用构造型神经网络方法去除虚警,3个机场目标虚警都去除了;9个车辆虚警中,去了7个。车辆检测去除虚警前后如图6(a)和图6(b)所示。
表1 目标检测结果
图6 车辆检测及虚警去除示意图
可以看出,本文提出的基于邻接区域灰度对比和级联目标检测方法,结合球面构造神经网络模型虚警去除方法,对于检测SAR图像目标能够得到很好的检测效果。SAR图像上的大型目标(超过100 m*100 m),如果具有相似的灰度分布结构,如SAR图像目标中间呈现跑道特征等,1 m*1 m的分辨率条件下,在虚警率低于10%的条件下,可得到90%的检测率。
从论证过程可以看出,针对复杂战场环境下的SAR图像上小型目标(超过10 m*10 m),如大型车辆,在图像分辨率为0.3 m*0.3 m的分辨率条件下,本文提出的方法能选择到更准确的特征并提高检测率。
通过基于邻接区域灰度对比和级联目标检测算法和基于构造神经网络方法在实际无人机拍摄的遥感SAR影像中的综合应用,验证了该方法对遥感SAR影像进行目标检测的高效性,该方法有效降低了遥感SAR图像中目标检测的虚警率,进一步提升了遥感SAR图像中目标检测的检测率和检测精度,从而有效提升了无人机遥感SAR图像中目标检测的精确性。