APP下载

基于改进型CFAR的SAR图像目标检测算法

2017-08-07许剑清李君宝马云彤

导航定位与授时 2017年4期
关键词:杂波阈值像素

许剑清,李君宝,马云彤,彭 宇

(哈尔滨工业大学 自动化测试与控制研究所,哈尔滨 150001)



基于改进型CFAR的SAR图像目标检测算法

许剑清,李君宝,马云彤,彭 宇

(哈尔滨工业大学 自动化测试与控制研究所,哈尔滨 150001)

针对传统的双参数恒虚警率(Constant False Alarm Rate, CFAR)算法存在的虚警率高、实现过程繁琐、算法执行效率低等问题,提出了一种改进型的CFAR检测算法。该算法根据SAR图像的统计直方图,对可疑的目标像素进行预筛选,再用2个滑动窗口对像素进行判别。改进型的CFAR检测算法简化了原检测算法的结构,降低了检测结果的虚警率,提高了算法的计算效率,并在国际公开的雷达数据集上进行软件与DSP硬件的应用验证,测试表明该算法的有效性。

合成孔径雷达;SAR图像;目标检测;恒虚警率; DSP

0 引言

合成孔径雷达(Synthetic Aperture Radar, SAR)是一种可以全天时全天候工作的高分辨率成像传感器,能够实时、长期地对陆地、海洋进行观测[1]。从获取到的雷达图片中首先进行目标检测,尤其是对感兴趣的海洋[2]、陆地、草坪等自然区域,检测感兴趣目标的存在对形势判断具有重要的意义。

针对SAR图像目标检测,目前存在的算法仍然以恒虚警率(Constant False Alarm Rate, CFAR)算法最为快速、准确[3]。其中包括MIT Lincoln实验室提出的背景杂波服从高斯分布的双参数CFAR算法。从此算法衍生出的背景杂波服从G0分布、K-分布、对数正态分布、韦布尔分布、瑞利分布等CFAR检测算法。由于传统双参数CFAR算法的实现步骤比较繁琐、检测率低,基于K-分布的CFAR算法有着完整的理论基础,不过针对背景局部变化复杂的自然场景适应能力较差。因此艾加秋等提出了改进的双参数CFAR检测算法[4-5],在实际应用中取得了很好的检测效果。

随着 SAR 雷达技术的发展,SAR 图像数据规模日趋庞大,需要依靠数据库系统对雷达数据进行编目、管理、发布。因此在实际工作中,迫切需要一款针对 SAR 图像管理、检索以及包含自动目标识别(Auto Target Recognition, ATR)、方位角估计等多功能 SAR 图像处理管理及发布一体化平台。本文结合实际需求,将已取得的算法研究成果集中开发为一款SAR图像自动目标检测模块,该模块作为SAR 图像处理管理及发布一体化平台的一个重要组成部分[6]。该平台的功能主要包括 SAR 目标检测、目标方位角估计、坐标估计、基于内容的SAR 图像检索、SAR图像滤波等。

随着SAR ATR系统的发展,实现SAR图像实时采集、处理、决策系统成为一个必然趋势。因此需要对SAR图像目标检测算法进行模块化的硬件实现,从而与其他功能模块共同协作,形成机动便携SAR ATR系统。DSP作为数字信号而设计的器件,其高速的数据运算能力使得对SAR图像进行实时处理成为可能。本文主要是结合艾加秋提出的改进型的双参数CFAR检测算法和高贵提出的智能型CFAR检测算法的优点,以TI公司TMS320C6748 为处理器验证该算法,并对其进行了硬件算法的优化,算法处理速度提升4倍。

1 SAR图像目标检测算法比较

合成孔径雷达的成像机理是利用发射波和反射波的幅度和相位信息进行成像。SAR图像目标检测的本质是根据目标和杂波的散射特性的不同所表现的特征差异来完成目标检测的。基于此形形色色的SAR图像目标检测算法可以归入如下几类。

(1)基于对比度的一类目标检测算法

由于合成孔径雷达对金属材料的车辆目标具有较强的雷达回波,在SAR图像上的表现为具有和周围环境相比较大的对比度,因此基于对比度进行目标检测算法的设计就成为一个选择。基于对比度的目标检测算法主要包括CFAR检测算法、广义似然比检验(GLRT)检测算法、能量环(PR)检测算法[7]等。

(2)基于图像的其他特征的一类目标检测算法

基于图像对比度的目标检测算法,是根据目标与背景杂波之间的电磁散射特性而设计的检测算法。而目标和背景杂波在图像上的特征,包括尺寸、纹理、形状等特征,可以利用这些特征来完成目标的检测。这类算法主要包括:基于目标聚类的检测算法[8]、基于扩展分形特征的目标检测算法(EF)[9]等。

(3)基于复图像特征的一类目标检测算法

前两类算法都是利用实的幅度图像检测目标的。事实上,目标和杂波在实图像上表现出的差异本质上是由两者的回波特性的不同造成的,而实图像中仅仅包含回波幅度信息,损失了可用于检测的回波相位信息。因此,从理论上来讲,通过对二维SAR回波特性和成像机理的深入研究发展更为精确的目标检测算法是可行的。该方面有代表性的研究包括:子孔径相关法[10]、相干空间滤波法[11]。

目标检测是实现SAR ATR 系统的第一步,该步骤的性能将直接影响到后续的处理过程,因此有必要对该环节算法执行的实用性进行分析和比较,主要的算法评价性能指标如表1所示。

表1 算法评价指标

SAR 图像地面车辆目标检测的直接应用是在大幅面的场中快速定位出感兴趣的目标。而面对这种海量的数据,如果应用基于SAR图像特征进行目标检测则需要对图像进行大量的数据处理,对于大幅的场景图像来说难以满足实用性的要求。而基于复图像特征的一类检测算法,利用发射波和回波数据的相位幅度相结合的信息进行处理,则涉及更大的计算量。并且这类算法的应用场景是对于低频的雷达信号而进行的,在高频的雷达信号中并不满足这类算法的散射特性前提,故此类算法也无法满足实用性的需求。

在SAR图像中车辆目标的主体部分一般由雷达回波强度较大的金属材料制成,而地面吸收电磁波能力强,雷达回波观测值强度低[12]。在该条件下,相较于其他两类算法,基于对比度的一类检测算法能够在地面背景中快捷、准确地检测车辆目标,因此该类检测器往往是车辆目标检测算法的核心。

2 双参数CFAR检测算法

2.1 传统CFAR算法原理

CFAR算法是像素级的目标检测算法,其原理如图1所示,设置3个滑动窗口:目标窗口T,保护窗口P,背景杂波窗口C。3个窗口同时在SAR原始图像上进行滑动,遍历整个图像[3]。

传统的双参数CFAR算法是基于背景杂波服从高斯分布的假设,它可以适应背景杂波变化。设高斯分布的概率密度函数为

(1)

式中,μc为杂波均值;σc为杂波的标准差,其分布函数为

(2)

(3)

设检测阈值为T,给定虚警率为pfa,则

(4)

由式(4)可以求出检测阈值T的表达式

T=σcΦ-1(1-pfa)+μc

(5)

假定目标窗口中某一像素的灰度值为It,则目标检测准则为

It>T

(6)

设杂波窗口中的像素的均值μc和统计方差σc,则由式(5) 、式(6)可得到

It-μc>t·σc

(7)

其中,t为标称化因子,通常为常数,决定虚警率。由于3个滑动窗口以一定的步长在图像上滑动,因此保护窗口并不能保证目标部分不会泄露到背景窗口中,所以通过计算背景窗口得到的背景杂波的均值和方差并不一定代表杂波实际的值。这样在检测过程中会出现虚警和漏检[13]。

2.2 改进型CFAR算法

本文提出的算法设置2个滑动窗口:1个目标窗口T,1个杂波窗口C,如图2所示。其中目标窗口设置为待检测目标大小的2倍,杂波窗口设置为目标窗口的2倍。将2个窗口以目标窗口大小为步长,在SAR图像上滑动检测,检测除去四周边缘以外的所有像素点。传统的CFAR算法并不能保证杂波窗口中的像素点全为背景像素,导致漏警和虚警,因而在用滑窗检测之前需要去除杂波窗口中的可疑目标像素,而对剩余的像素进行杂波统计,计算杂波的均值μc和统计方差σc。去除背景杂波中可能包含的目标像素,艾加秋等[3]用种子区域增长法和统计背景杂波窗口的所有像素的均值和方差,再用阈值对背景像素进行筛选两种方法。两种方法相对于传统的CFAR算法检测的准确率均有提升。其中第一种方法需要遍历每一个点进行判断,相对于第二种方法有着较大的计算量。但是第二种方法在每一次滑窗滑动时,需要对杂波窗口内的全部像素进行一次统计,再用阈值进行筛选。在本文中提出的改进算法利用一个全局阈值对全局图像进行筛选,大于阈值的像素标记为目标可疑像素,小于阈值的像素标记为杂波像素,构成一个SAR图像的全局索引矩阵。根据索引矩阵来剔除杂波。

由于人造的金属目标对于雷达波的后向散射系数远远超过地面目标,故在雷达图片中目标像素位于直方图的拖尾部分,因此,可以根据图像直方图自适应确定一个全局阈值Lg。设I为对应的像素强度值的随机变量,则在给定目标像素的置信度为1-φ的条件下,Lg由式(8)确定

(8)

其中,P代表概率值,φ∈[0,1]为经验值,其物理含义表明杂波像素在整个图像中所占的比例,也即图像中一个像素是目标像素的置信度。在大幅SAR图像中,φ的取值较大,接近于1。由此利用直方图统计就可以方便地得到全局阈值Lg。

故本文的检测算法的步骤[14]为:

1)根据输入的SAR图像求取全局阈值Lg;

2)对图像中的像素点进行遍历,根据全局阈值,进行预筛选,对大于全局阈值的像素取值为1,小于全局阈值的像素取值为0,求取得到索引矩阵;

3)根据目标大小设置目标窗口、背景窗口的尺寸,并设置好求取的虚警率;

4)根据索引矩阵对滑动窗口的杂波区域内的M个目标像素点进行剔除,并以剩下的N-M个像素利用高斯分布模型进行统计建模,求取局部阈值Lp;

5)将该目标区域内的像素与局部阈值进行比较,并二值化比较之后的像素;

6)判断是否处理完整个图像,若无则以目标区域的尺寸为步长,滑动目标滑窗与背景滑窗,回到步骤4),若是则继续;

7)对检测后的二值化像素进行目标图像聚类。

2.3 实验结果

本文选用Sandia实验室提供的原始SAR图像如图3所示,它的背景杂波服从高斯分布,对它分别利用本文提出的算法与艾加秋等[3]提出的改进型CFAR检测算法进行检测并做比较。图4所示为本文算法所检测的结果,设置虚警率相同均为pfa=10-8;为了评价检测的效果,定义了检测品质因子FoM[15], 其中,Ntest为检测出来的正确的目标个数,Nfa为虚警的目标个数,Nreal为实际目标的个数。检测的品质因子能够有效地反映检测算法的效果,品质因子越大表示其检测的效果越好,检测准确率越高,虚警率越低。

(9)

由于大幅场景的雷达图像获取成本昂贵,故为了进行研究实验,可利用仿真的雷达图像对算法进行验证。美国国防部高级研究计划局和空军实验室联合开展的MSTAR计划,公开了实测的SAR地面静止军用目标数据集和100幅自然场景下的SAR图片,利用自然场景和地面静止目标的SAR进行仿真合成可得到实验用的图片如图5所示。

对图5进行目标检测,则可以得到图6所示检测结果。

图5中包含9个目标,检测结果为11个目标,包含2个虚警,执行时间为1.54s。检测品质因子为0.82,大于传统算法的0.75。

为验证算法的有效性,对另外的10张图片进行测试,结果如表2所示。

表2 测试结果

表2为10张测试图片的检测结果,品质因子为0.82,大于传统的0.75,表明了该算法可以适应不同的场景下的目标检测,具有鲁棒性。在检测时间上,对Sandia实验室提供的372×348大小的图片进行处理,其运行时间为0.155s,运行时间满足实用性的要求。

3 改进型CFAR算法的软件应用验证

SAR图像处理管理及发布一体化平台,包含SAR成像定量处理与分析系统可用于机载、星载SAR传感器数据的定量分析处理,影像管理系统提供数据入库、数据浏览、数据查询检索、数据提取、数据库维护管理功能,管理和发布的影像共享与服务系统提供对SAR成像定量处理与分析平台生成和管理的数据产品进行网络发布和管理以及公告。目标检测软件模块是定量处理与分析系统的一个组成部分。SAR成像定量处理与分析系统的整体界面如图7所示。定量处理与分析操作的菜单栏如图8所示。该平台支持SAR图像的上传查询功能,故可以从数据库中载入所需处理的SAR图像,在定量处理与分析系统中对SAR图像进行目标检测。

该菜单栏显示了SAR图像定量分析系统的主要功能包含目标检测功能,还包含SAR图像的基础处理如图像拉伸、边缘检测、直方图统计,小波分析图像旋转等操作。

3.1 软件模块的封装

Java与Matlab可以通过JMatLink接口来建立二者之间的通信,这样Java可以方便地调用Matlab中成熟的算法处理函数库[16]。JMatLink是一个对java.lang.Thread的继承。它是一个类,其方法都是用C语言进行编写实现,最后以DLL库的形式供Java调用的native方法。

Java应用程序通过JMatLink来实现对Matlab引擎函数的调用,从而进行一些相关的数值计算与处理。图9所示为Java与Matlab之间的通信机制的原理。第一步是利用JavaJNI技术来对本地方法进行调用和定位;第二步把jni.h文件和JMatLink文件引入JMatLink中,对C/C++文件进行编译,生成动态链接库JMatLink.dll,与此同时Matlab.lib文件被导入,Matlab.lib文件中包含Matlab的引擎函数。当Java用户程序与Matlab进行通信时,首先JMatLink.dll被装载入内存,然后Java应用程序对内存中的JMatLink.dll的函数进行调用,实现JMatLink与Matlab引擎函数的通信,从而进一步对Matlab的库函数进行调用,这样间接实现了Java调用Matlab中的函数进行数据处理和计算。

上述原理解释了Java与Matlab两个异构对象的通信过程,参数传递是二者之间通信的形式。而参数传递的过程是通过JMatLink创建的engine完成的。首先创建对象,然后由engine执行其方法来实现对Matlab引擎函数的调用。首先建立一个引擎连接,然后engine以字符串的数据格式传递要执行的命令和数据到Matlab的工作空间。在该参数全部到达Matlab工作空间之后,Matlab开始正常地调用本身自带的库函数和数据包,对数据进行处理。数据处理完毕,Matlab再次通过引擎函数对结果进行传递,传给Java应用程序,应用程序在获取结果之后关闭Matlab引擎函数,从而完成了参数传递和调用的全部内容。

本文介绍了一种简单的Matlab与Java进行混合编程的方法,它是直接把Matlab代码编译打包为一个Java包,然后通过Java应用程序对Java包中的方法和类进行调用[26]。

1)输入命令deploytool,弹出Matlab Compiler面板,选择Library Compiler;

2)输入编译项目的名称及选择存储路径,并选择编译类型为Java Package;

3)选择添加类,输入类的名称,然后处理函数的m文件;

4)添加完成之后点击面板上的Package按键,对要打包的函数进行打包编译生成jar文件包。

打包编译完成之后在项目路径distrib目录下,存在一个jar文件,该文件便是Java调用的文件包。由此Matlab部分的工作就全部完成了。

Java对打包生成的jar文件中类和方法的调用过程如下:

1)把编译生成的jar文件导入Java的工程中,放在路径classpath下,使得函数包中的类在当前工程下是可调用的;

2)把Matlab编译生成的Java类文件和com.mathworks.toolbox.javabuilder.*导入Java类文件,该文件是用来调用Matlab算法的类文件,import com.mathworks.toolbox.javabuilder.*,import SARdetection_package.*;

3)最后对编译生成的jar文件中的类进行调用。

3.2 软件功能

本软件中支持SAR典型地面目标检测模块是其重要的运用,下面介绍该软件模块的使用方法:载入所需处理的SAR图像,在功能中选择目标检测,输入用户定义的参数,如图10所示。

该检测参数为SAR的分辨率以m为单位,决定了检测时的目标滑窗大小。需要用户进行定义,而后输出检测的结果如图11所示。

4 改进型CFAR算法的DSP应用验证

现代雷达图像处理系统的设计中,不仅要考虑运算量、运算速度、数据传输速度、体积的要求,还要考虑系统的标准化、通用性、模块化、可扩展性及其相关的技术。本文选用TMS320C6748作为SAR目标检测硬件模块的核心处理器,利用LCDK6748开发板对本文提出的改进型CFAR算法进行实现和优化。该硬件模块的主要处理流程如图12所示。

对图3中的SAR原始图像进行处理,得到如图13所示的处理结果。

处理结果为检测出16个目标,检测虚警3个,目标13个,FoM为0.81,大于传统的双参数CFAR检测算法的检测品质因子0.75[18]。处理该图片耗时2.53s,可以实现秒级别的大幅SAR图像目标的检测。

5 结论

本文针对目前广泛运用的CFAR检测算法进行研究,提出一种改进型的CFAR检测算法,该算法对于复杂的背景杂波具有较强的适应性,并且运行速度快。针对该算法开展的SAR图像自动目标检测模块在海量数据的辅助检测系统中是有效可行的。最后以DSP为处理平台,实现改进型的目标检测算法,并对算法进行优化后,执行效率提高,可实现秒级的SAR图像的检测。但是本文所采取的检测算法比较单一,可利用多种检测算法结合,实现信息融合,以提高检测算法的精度和鲁棒性。

[1] Cerutti-Maori D, Sikaneta I, Gierull C.Ship detection with spaceborne multi-channel SAR/GMTI radars[C]//European Conference on Synthetic Aperture Radar, 2012:400-403.

[2] Wang J, Sun L.Study on ship target detection and recognition in SAR imagery[C]//International Conference on Information Science and Engineering.IEEE, 2009:3154-3160.

[3] 艾加秋, 齐向阳, 禹卫东.改进的SAR图像双参数CFAR舰船检测算法[J].电子与信息学报, 2009, 31(12):2881-2885.

[4] 艾加秋, 齐向阳.一种基于局部K-分布的新的SAR图像舰船检测算法[J].中国科学院大学学报, 2010, 27(1):36-42.

[5] Xing X W, Ji K F, Zou H X, et al.A fast ship detection algorithm in SAR imagery for wide area ocean surveillance[C]//Proceedings of the IEEE National Radar Conference,2012:0570 - 0574..

[6] Oliver C, Quegan S.Understanding synthetic aperture radar images[M].Sci Tech Publishing, 2004.

[7] 高贵.SAR图像目标ROI自动获取技术研究[D].长沙:国防科学技术大学, 2007.

[8] 晋瑞锦, 周伟, 杨健.大场景下的极化SAR机场检测[J].清华大学学报:自然科学版, 2014(12):1588-1593.

[9] Kaplan L M.Improved SAR target detection via extended fractal features[J].IEEE Transactions on Aerospace & Electronic Systems, 2001, 37(2):436-451.

[10] Wang C, Zhong X, Zhou P, et al.Man-made target detection in SAR imagery[C]//Geoscience and Remote Sensing Symposium, 2005.IGARSS ’05.IEEE,2005:1721-1724.

[11] Jao J K, Lee C F, Ayasli S.Coherent spatial filtering for SAR detection of stationary targets[J].IEEE Transactions on Aerospace Electronic Systems, 1999, 35(2):614-626.

[12] 张军, 高贵, 周蝶飞,等.SAR图像机动目标检测的两种CFAR算法对比研究[J].信号处理, 2008, 24(1):78-82.

[13] 林旭, 洪峻, 孙显,等.一种基于自适应背景杂波模型的宽幅SAR图像CFAR舰船检测算法[J].遥感技术与应用, 2014, 29(1):75-81.

[14] 匡纲要, 计科峰, 粟毅,等.SAR图象自动目标识别研究[J].中国图象图形学报, 2003, 8(10):1115-1120.

[15] 何友.雷达目标检测与恒虚警处理[M].北京:清华大学出版社, 2011:56-70.

[16] 李文趋.Java与Matlab混合编程在图像处理中的应用[J].信息与电脑:理论版, 2009(10):69.

[17] 周小娟.Java-Matlab混合编程的研究[J].电子设计工程, 2013, 21(2):16-18.

[18] 汪炜.高分辨率SAR图像 海上舰船目标检测方法研究[D].上海交通大学, 2014.

SAR Image Target Detection Algorithm Based on Improved CFAR

XU Jian-qing ,LI Jun-bao,MA Yun-tong, PENG Yu

(Automatic Test and Control Institute, Harbin Institute of Technology, Harbin 150001, China)

The traditional CFAR algorithm has the disadvantages of high false alarm rate, low efficiency, cumbersome realization process, etc. In order to solve the above problems, an improved CFAR detection algorithm is proposed. According to the statistical histogram of the SAR images, the proposed algorithm can perform pre-screening for suspected target pixels. Then the detected pixels are distinguished by two sliding windows. The improved CFAR detection algorithm simplifies the structure of the traditional detection algorithm. At the same time, it reduces the false alarm rate and improves the efficiency of the algorithm. Experiments based on the international public radar data-sets for application verification are done on software and DSP platform respectively, which show effectiveness of the proposed algorithm.

Synthetic Aperture Radar(SAR);SAR image;Target detection;Constant False Alarm Rate(CFAR);DSP

2016-06-22;

2016-09-22

教育部新世纪人才计划(NCET-13-0168);国家自然基金(61371178);广西自动检测技术与仪器重点实验室基金(YQ16201)

许剑清(1994-),男,硕士,研究方向为图像处理及目标检测。E-mail:xujianqinghit@163.com

10.19306/j.cnki.2095-8110.2017.04.011

V448.2

A

2095-8110(2017)04-0074-08

猜你喜欢

杂波阈值像素
像素前线之“幻影”2000
土石坝坝体失稳破坏降水阈值的确定方法
基于小波变换阈值去噪算法的改进
一种改进的基于背景自适应的杂波图算法
采用红细胞沉降率和C-反应蛋白作为假体周围感染的阈值
一种自适应双参数杂波图检测方法
某雷达杂波数据分析及杂波图技术研究
“像素”仙人掌
高像素不是全部
辽宁强对流天气物理量阈值探索统计分析