张建军,史廷彦,杨丽春
(1.解放军91404部队,河北 秦皇岛 066001;2.江苏自动化研究所,江苏 连云港 222061)
随着航天技术、传感器技术、计算机技术及其相关学科的迅猛发展,卫星成像侦察技术飞速进步,其无论在光谱分辨率、空间分辨率、时间分辨率等方面都取得了巨大的进步,已经形成高光谱、高空间分辨率、全天时、全天候、实时/准实时的对地观测能力。尤其自法国SPOT-1号卫星以后,基于传输型高空间分辨率卫星遥感图像的应用已引起了各国的普遍关注。1999年美国的IKONS图像卫星系统已经能够达到lm的地面分辨率,到2005年为止,美国的KH-12相机地面分辨率已经达到0.1m。
面对高分辨侦察卫星所获得的海量图像数据,依靠判读员的人工判读工作量大,重复性高,并且判读的结果依赖于判读员的训练素质及其现场状态。因此,如何从海量数据中自动地检测出舰船目标是一个亟需解决的问题。当前,主要有两类传感器应用于舰船目标的检测:合成孔径雷达(SAR)和可见光学遥感图像。SAR受天气、气候影响较小,可以昼夜进行侦察和监视,因此,获得了比较广泛的研究。Inggs[1]等在1999年研究基于SAR图像的舰船目标检测和分类,其中分类采用神经网络的方法;Tello[2]在2004年研究基于小波分析的SAR图像舰船目标检测,对复杂海域背景下的小目标检测获得了较好的效果。
但是相比较SAR图像处理,光学遥感图像的处理技术研究较少。在国内,文献[3]首先计算局部特征方差图像,在局部特征方差图像的基础上通过Contrast box滤波自适应确定目标检测阈值。文献[4]对稀疏分布的舰船目标进行分块处理,并对可能存在目标的区域进行目标检测及聚合。在国外,Burgess1993年利用SPOT卫星数据对更小的舰船进行检测和识别;Corbane[5]在2008年研究了基于遗传算法和神经网络的舰船目标检测和分类技术。
在目标检测及图像分割中,阈值法是最常用的方法之一。但对大幅度的遥感图像,利用单一的阈值法很难获得满意的效果,滑窗恒虚警法对每个像素确定一个检测阈值,能获得较好的效果,但计算量太大,而且恒虚警法仅仅考虑的是单个像素及其邻域的灰度信息,没有考虑目标的信息。因此,如果能对每个目标区间,根据目标的先验特征如面积、周长等自适应的选择最优阈值,不仅可以提高检测精度,也会大大提高检测效率。
检测后的图像,仍存在虚假目标,因此需要对检测的区域进行鉴别,以剔除虚假目标。基于目标特征的鉴别是一种有效的鉴别方法,但由于目标特征较多,可能使得提取的特征较多,因此,计算量大,有些特征的区分性较差,可能导致鉴别率的下降。本文研究了一种在图像特征中增加一个噪声特征,并利用递归神经网络进行训练;对训练的神经网络,计算每个特征信噪比并进行特征选择。
本文针对高分辨率光学遥感图像的面目标的检测,研究了一种根据目标的属性,对每个可能的目标区域,自适应的快速选择检测阈值。针对检测的虚假目标,研究了基于递归神经网络及信噪比的特征选择及鉴别方法。实验证明,该方法从检测精度、效率都能获得较满意的结果。
对遥感图像,目标的检测主要是基于阈值的检测方法,根据确定阈值方法的不同,有恒虚警法(CFAR)[6-8]、迭代法、最大类间方差法、熵方法等。其中,恒虚警法是遥感图像中研究最多的检测方法之一。它是根据经典的统计检测理论,在给定的虚警概率条件下,根据目标所处周围背景杂波的统计特性自适应求取检测阈值,然后将待检测像素和自适应阈值进行比较,判断其是否为目标点。
其中,PFA为虚警率,p(x)为杂波的概率分布。
上述检测方法,都是根据某种原则确定阈值,再根据阈值确定每个像素是否为目标点,然后将所有的目标像素点聚类成目标区域,如图1所示。在检测的同时,没有考虑到检测目标的特征,只是在检测完成后,鉴别区域是目标还是虚警。这类方法是选择某种统计意义上的最优阈值,但检测结果不一定是最优结果。
对海上舰船目标特别是军事目标,其长、宽、面积等是在一定的范围之内(表1),这与杂波、岛屿等虚警目标具有较大区别。因此,如果能够根据目标的先验知识,对每个区域初始的检测结果进行调整,并选择检测结果最符合目标性质的阈值作为检测阈值,是一种行之有效的方法,也是本文的研究内容。
图1 传统目标检测方法
表1 几种军事目标的几何特征
本文的舰船目标检测流程如图2所示。在检测时将目标的属性信息考虑在内,即根据目标的特征信息,来确定最优的检测阈值。与传统的基于像素的检测方法相比,该方法是一种闭环的目标检测方法,通过检测的结果来调整检测的阈值,该方法计算的阈值并不一定是统计意义上最优,但是能获得更理想的检测结果。
图2 舰船目标检测流程
如图2所示,该方法是遍历每个可能的阈值,对每个阈值下的检测结果进行分析,并选择最优的检测结果,因此,对灰度值为(0~255)的图像,遍历每个阈值则需要对图像检测255次,计算量太大。为了快速的分析不同阈值下的检测结果,采用了基于连通树的方法。
在图像中,连通区域(Connected Components)是灰度大于一个给定阈值,并且满足一定的连通性质(如四连通或八连通)的所有像素点的集合。根据连通区域的内在联系,将各个连通区域可以组成一个树状结构,该树称为连通树(Components Tree),连通树被广泛应用在多种图像处理技术,如:图像滤波、图像分割等领域[9-11]。
定义集合V到D的映射函数为F(V,D),对任一映射f∈F,(V,E,F)称为权重图,对V中的任意一点p,f(p)称为点p的权。
对f∈F下的连通区域定义为c,定义h(c)=min{f(x)|x∈c},则在映射f下的任一连通区域可以表示为[k,c],c表示连通区域,k=h(c),称连通区域[k,c]的高度为 k。若两个连通区域[k1,c]∈C(f),[k2,c]∈C(f),则k1=k2。同时,对C(f)下的不同连通区域是由不相交的点集组成。
[k1,c1],[k2,c2]是 C(f)的两个连通区域,如果 c1⊂ c2,并且没有[k3,c3]满足 c1⊂ c3⊂ c2,则认为[k2,c2]是[k1,c1]的父节点,[k1,c1]是[k2,c2]的子节点。根据这种父子关系,C(f)形成一个连通区域树。C(f)中的元素称为节点,没有子节点的称为叶子,没有父节点的节点称为根节点。
文献[8]介绍了不同的组件树创建方法,且统计了不同算法的时间复杂度,最快的算法时间复杂度为O(nln(n)),(n为图像中像素的个数)。这些方法随着图像像素的增加,复杂度大大增加。
图3 连通树的生成
基于此,在 Union-find[12]的基础上,Najman 等[13]于2006年提出了基于图论的连通树快速创建方法。U-nion-find是一种简单有效区域查找合并方法,该算法对任意的数据,其复杂度为O(m×α(m)),其中,函数α(m)随变量的增速非常慢,α(1080)≈4。
1)排序
在区域树的生成过程中,是按照像素灰度的高低进行处理的,因此,需要将图像按像素灰度进行排序,其准则为:将像素按灰度的降序排列,若灰度相同,则按照从上到下,从左到右的顺序排列。为了降低复杂度,采用快速排序的BinSort算法,将图像序列中的像素按灰度值粗分到不同的箱中,在每个箱中再自动排序,最后将每个箱按灰度大小进行连接。
2)节点查找合并
假定当前已处理了灰度大于m的所有像素,并且已经建立了所有灰度大于m的节点和局部连通树,则对于灰度等于m的像素x,可以找到它当前所属的节点。设点x的灰度为gx,对x的四连通(或8连通)邻域y,则假设y已经处理过(gy≥m,或gy=gx,且y排序在x的前面),若y的节点和x所属的节点相同,则不需处理,若不相同,则有两种可能:1)m的灰度和n的灰度相同,则在这种情况下,m和n应该属于同一个节点,因此将m所属的节点和n所属的节点进行合并;2)n的灰度大于m的灰度,则在这种情况下,n所在的节点成为m所属节点的子节点。
如图3(a)为一原始数据,共包含5个灰度。图3(b)为生成的连通树,共包含9个节点,其中,3个节点为叶子节点。节点的表示方法为:节点号(节点表示的像素,面积。
根据上述算法进行图像连通树的创建,其中主要的节点数据结构如下:
基于特征的舰船目标检测流程共包括四个部分:海陆分割、连通树的创建、连通节点的选择、基于节点的分割图像映射,如图4所示。
节点
{
节点前指针;
节点后指针;
节点信息
父节点指针;
子节点列表指针;
}
图4 舰船目标检测流程图
海上目标的检测问题,首要解决的就是海陆分离,去除陆地干扰,只对海域数据应用检测算法,这样既可以加快检测速度,也可以避免出现陆地虚警目标。光学遥感图像中,陆地和海域的差异主要体现在两个区域像素的灰度值上,陆地区域虽然没有海域均匀,区域中像素灰度有亮有暗,但整个区域总体比海域区域亮,即陆地区域中的绝大部分灰度值比海域区域大,因此可以利用阈值方法实现海陆的初始分割。
首先利用OSTU法将海陆分离后,陆地区域会形成一个大的连通区域,但其中会有很多“小孔”的区域,检测后,需要对这些“小孔”进行填充。一般来说,若某区域属于陆地,则对某一大小的窗口,属于陆地的像素点会占较大的比例;相反,如果属于海洋区域,则属于海域的像素点会占较大的比例。本文统计一定大小的窗口中海陆像素的个数,若陆地点大于一定的阈值,则认为该区域属于陆地,所有的点都标记为陆地,反之都标记为海域。
对海陆分隔后的图像,采用上文的方法建立连通树。在连通树中,每个节点可以计算出其不同的属性,如该连通区域的周长、面积、连通区域内的灰度差,体积等。
面积为连通节点的像素点个数;灰度差和体积如式(2)、式(3)。
对不同的应用场景,所选择的节点属性各不相同,在舰船目标检测中,本文感兴趣的是舰船目标,相对其它目标来说,舰船目标的面积在一定范围内(分辨率不同阈值不同),相较于海洋背景,舰船目标相对较亮,因此采用面积和区域的最小灰度可以较好地区分舰船目标和其它目标。本文即采用这两类属性信息来筛选合适的节点。
由连通树的创建过程可知,每个节点的属性有以下关系:
其中,c表示某节点,c->parent表示c节点的父节点,c->area表示c节点区域的面积,c->mingray表示c节点的最小灰度。从上式可以看出,从叶子节点到根节点其面积是递增的,最小灰度是递减的。
1)面积较小区域节点的删除
对一些面积比较小的目标,则认为该节点表示的是杂波区域,需要将这些较小的连通区域删除掉。由于其叶子节点到根节点的连通区域面积是线性增加的,因此,按照灰度的高低顺序依次来查找每个节点,若该节点的面积小于设定的阈值,则将该节点删除,并将该节点从其父节点的子节点链表中删除。
2)面积较大区域节点的标定
定义以下性质:
其中,T为舰船目标面积的上界,c为节点,c->area表示节点的面积。
由于较大区域(大于当前最大舰船目标的面积)是真实目标的父节点,因此,不能将这些节点删除,只能用变量来标定这些节点。在本文中,每个节点设定一个标识信息active,若active=0,则表示感兴趣目标区域所在的节点,active=1则认为不是,初始时每个节点的active=0。从连通树的叶子节点开始判断,当前的节点为p,若其面积小于阈值T,则继续判断其父节点q;若其面积大于阈值T,则通过递归的方法,对其所有的父节点active都设为1。
3)基于灰度的节点筛选
对舰船目标来说,其灰度相较海洋背景更亮,因此,若该区域像素的灰度值较低,则认为该区域不是舰船目标,对节点c来说,其中像素的灰度都大于一个灰度值t,因此,只需要判断每个节点的最小灰度t是否满足条件:
由于从叶子节点到根节点,c->mingray是递减的,因此,对当前的节点p,若p->mingray大于T1,则继续判断其父节点;若p->mingray小于T1,则通过递归的方法,对其所有的父节点active都设为1。
通过上述选择,则对于目标区域,其c->active=0,非目标区域,其c->active=1。
经过上述步骤处理,若节点c->active=0,则表示该区域为目标区域,若等于1,则为非目标区域。因此,从连通树的叶子节点开始判断,若c->active=0,从表示该节点的像素x开始,将和x连通的,且灰度大于或等于x灰度的像素标记为目标像素。
基于连通树的目标检测,相当于对每个区域选择一个最优阈值,即各个区域的检测阈值是不相同的,每个节点的最低灰度值即为该区域的最优阈值。
在光学遥感图像的舰船目标检测中,可能存在岛屿、云等虚假目标,因此需要进一步的剔除虚假目标,即目标鉴别。目标鉴别可以认为是两类模式识别问题,即区分目标和非目标。在图像模式识别中,多采用基于特征的识别方法,目标的特征包括统计特征、几何特征、纹理特征等。在模式识别领域,太多的特征可能会降低分类性能,一方面,由于训练样本集包含的训练样本较少,另一方面,各个特征之间可能存在的相关性,这都会导致识别效率的下降。同时,太多的特征也导致计算量的增加,导致“维数灾难”。因此,在模式识别前,都需要对提取的特征进行选择,以选择区分性最好的特征。
特征选择的方法较多,如PCA方法、Fisher方法、遗传算法等。其中,PCA、Fisher方法是对原始特征空间进行变换,变换后的维数变少,是原始特征空间的一种组合变换,因此变换后的特征已不具有实际的物理意义。而遗传算法是在原始的特征空间中选择一个最优子空间,每个特征还保存原来的物理特征,该方法是近年研究较多的特征选择方法。但是,基于遗传算法的特征选择只能选择一个子空间,而不能判别在该子集中,哪个特征的区分性更好。
本文研究基于RNN网络的特征选择方法,其原理是:利用训练集训练RNN网络,对训练好的RNN网络,根据输入层到隐藏层的权重的和Mi来表示该特征的重要程度:
即在模式识别中,某一特征贡献越大,则其越重要,其Mi值越高。为了衡量该特征的贡献程度,引入了信号处理中信噪比的概念,即在原特征空间中增加一个均匀分布的噪声特征N,由于噪声对分类的贡献最小,因此MN小,通过和噪声进行比较来衡量每个特征的贡献程度。如式(11),信噪比定义为
因此,通过信噪比可以定量的进行特征的选择,即定义一信噪比阈值T,若特征的信噪比大于该阈值,则选择该特征,否则不选择。
本文选择的特征如表2所示。
表2 提取的目标特征
在计算纹理特征时,首先生成目标区域在0°、45°、90°、135°、180°、225°、270°、315°、360°八个方向上的灰度共生矩阵,然后计算每个方向上的灰度共生矩阵的角二阶距、对比度、相关性、灰度共生矩阵,因此统计的纹理特征具有旋转不变性。然后对每个特征计算八个方向上的均值和标准差(共8维),以此作为纹理特征。对每个目标,其特征向量共为28维。
设计的RNN网络在特征提取阶段,其输入层为29,隐藏层为14,输出层为1。在识别阶段,输入层根据特征选择的个数来确定,隐藏层设为5,输出层为1。
在进行光学图像特征选择时,共选择了15个目标区域和15个非目标区域作为样本集合,如图5所示。
图5 图像样本集
在实验中,随机选择20个目标作为训练样本,10个作为测试样本。首先对训练样本分别进行归一化处理,使得其值归一化为(-1,1)之间(噪声特征也进行归一化处理),然后利用训练样本对RNN网络进行训练,对训练好的RNN网络,再利用测试样本进行测试。
实验共进行了2组(每组训练样本和测试样本不同),在每组中,共进行了3次实验,图6为统计的每个特征值的信噪比结果。
图6 特征信噪比统计
信噪比统计如图6所示,阈值设为5,共有5个特征:灰度均值、矩特征(M5)、矩特征(M2)、圆形度、纹理对比度的方差。
利用测试样本,特征选择前和选择后的识别结果如图7所示,选择前的总是别率为96%,特征选择后,其识别率为100%。
此外,也利用SAR图像进行了实验,共包含30个目标区域和15个非目标区域,其SNR结果和识别率如图8和9所示。其选取的特征为:目标的复杂度、目标的圆形度、目标的标准差、纹理特征(相关性均值)、纹理特征(相关性方差)。由图9所示,其识别率由65%提高到100%,因此识别结果有较大的提高。
图7 识别结果
图8 SAR目标特征信噪比统计
图9 SAR目标分类统计结果
由图7和图9可知,基于RNN网络的信噪比进行特征的选择,其识别率都有一定程度的提高,因此该方法是一种有效的特征选择方法。同时,基于RNN网络信噪比的特征选择方法,通过计算每个特征的信噪比,可以度量每个特征的对识别贡献的大小,即信噪比越高,则贡献程度越大。
由上文可知,对光学遥感图像,选择的特征为:灰度均值、矩特征(M5)、矩特征(M2)、圆形度、纹理对比度的方差。因此,在目标鉴别时,就选择候选目标区域的这5个特征。首先提取训练样本集合的特征,并进行归一化处理,利用训练样本集特征训练RNN网络,其输入层为5,隐藏层为5,输出层为1。对目标,其目标值为1,对非目标,其目标值为 -1。训练次数为2000次。
对检测的候选目标区域,提取上述5个特征,然后利用训练好的RNN网络进行识别,若目标值大于0,则认为是目标区域,否则为非目标区域。
图10 舰船目标检测结果
图10(a)为一港口的遥感图像,图像大小为1500×1500像素,包括大小船只大约80艘。图10(b)为本文的海陆分割结果,图10(c)为本文的检测结果,可以看出,基于连通树的检测方法较准确地检测出舰船目标。从效率上分析,本文的检测时间为2.4s,基于滑窗的恒虚警法检测时间为120s,因此本文方法的检测效率大大高于恒虚警法。同时,恒虚警法需要设置杂波模型、滑窗大小、虚警率等参数,且每个参数都对检测结果有较大的影响。本文的方法只需设置目标面积的上下限、灰度下限三个参数,而这些参数根据目标的大小和图像分辨率很容易定量地确定。
针对光学遥感图像的舰船目标检测,本文研究了基于检测目标的面积等性质,自适应的快速选择检测阈值的方法;同时研究了基于RNN神经网络以及信噪比的特征选择方法,通过引入噪声特征来进行特征选择,实验表明该方法是一种有效的特征选择方法。实验结果表明,本文方法能有效地检测目标。
[1]Inggs,Robinson.Ship Target Recognition Using Low Resolution Radar and Neural Network[J].IEEE Transactions,1999,volume35,386-393.
[2]M Tello,A Novel Algorithm for Ship Detection in SAR Imagery Based on the Wavelet Transform[J],IEEE Geoscience and Remote Sensing Letters,2005,2:201-205.
[3]赵英海吴秀清,等.可见光遥感图像中舰船目标检测方法[J].光电工程,2008,35(8):102-106.
[4]高立宁,毕福昆,等.一种光学遥感图像海面舰船检测算法[J].清华大学学报(自然科学版),2011,51(1):105-110.
[5]C Corbane,Marre F,Using SPOT-5 HRG Data in Panchromatic Mode for Operational Detection of Small Ships in Tropical Area[J].Sensors,2008(8):2959-2973.
[6]匡纲要,高贵,蒋咏梅,等.合成孔径雷达目标检测理论、算法及应用[M].长沙:国防科技大学出版社,2007.
[7]杨丽春,常清,史廷彦.一种有效的红外弱小目标DBT算法研究[J].指挥控制与仿真,2011,33(3):43-45.
[8]种劲松,欧阳越,朱慧敏,等.合成孔径雷达图像海洋目标检测[M].北京:海洋出版社,2006.
[9]J.Mattes,J.Demongeot.Efficient Algorithms to Implement the Confinement Tree[J].Springer,2000:392-405.
[10]R.Jones.Component Trees for Image Filtering and Segmentation[J].In NSIP'97,1997.
[11]Jones,R.Connected Filtering and Segmentation Using Component Trees[J].Computer Vision and Image Understanding,75:215-228.
[12]R.E.Tarjan.Efficiency of a Good but not Linear Set U-nion Algorithm[J].Journal of the ACM,1975,22:215-225.
[13]L.Najman,M.Couprie.Building the Component Tree in Quasi-linear Time[J].IEEE,2006,Transactions on Image Processing,15:3531-3539.