APP下载

基于LBP的红外弱小目标检测系统设计

2016-08-31蒋怡亮孙宁翟尚礼

单片机与嵌入式系统应用 2016年4期
关键词:弱小算子灰度

蒋怡亮,孙宁,翟尚礼

(中国电子科技集团公司 第二十八研究所,南京 210007)



基于LBP的红外弱小目标检测系统设计

蒋怡亮,孙宁,翟尚礼

(中国电子科技集团公司 第二十八研究所,南京 210007)

分析了一种基于局部二元模式(LBP)算子的红外弱小目标检测方法,并根据实际应用背景设计实现了一种红外弱小目标检测系统。介绍了该系统的总体结构以及程序模块的设计方法。试验对比表明,该方法在保证LBP算法实时性的前提下可节约大量硬件资源。

红外弱小目标;局部二元模式;目标检测; FPGA

引 言

随着红外传感器性能和图像处理能力的提高,红外探测系统已经成为现代军用防御网络的重要组成部分。在现代战争中,及时发现威胁目标可以有效提高作战单位的生存和反击能力。然而,远距离目标在红外焦平面上只占几个像素,其亮度常低于背景中云团等干扰物。因此,有效抑制复杂背景是研制红外探测系统的关键。

目前红外弱小目标检测的典型方法有很多,比如基于数学形态学图像检测、多向梯度检测、小波分解以及匹配滤波等。但其中大多数算法存在对椒盐噪声和高亮背景边缘敏感,以及运算量过大等不足,很难应用于实际红外探测系统[1-3]。

本文采用了一种基于局部二元模式算子(LBP)的红外弱小目标检测算法[4],设计了一种红外弱小目标实时检测系统,并对其程序模块结构进行设计优化,使其能在单片现场可编程门阵列(FPGA EP2S60F672)上运行。最后将未经优化的LBP算子目标检测系统与采用本文方法优化的系统进行对比,证明了本文方法在硬件资源占用方面的优越性。

1 算法基础

LBP算子是一种对灰度图像中局部领域的纹理信息进行度量和提取的算子,基本LBP算子是一个固定的3×3区域,对应图像上相邻3×3共9个像素点。根据顺时针方向依次将8个灰度值与中心灰度值相比较,大于等于中心值的表示为1,反之表示为0,所得的8位二进制数作为该矩形块的LBP编码值,如图1所示。因此,LBP算子实质上是局部灰度对比及其二值化的过程,通过这个过程LBP算子完成了对凸点、凹点或边缘等局部纹理的描述。

图1 LBP算子编码示意图

假设红外弱小目标为1个小于3×3像素的亮斑,如果将其定义为上述LBP算子的中心区域,则LBP算子扩展为9×9像素区域。改进的LBP算子采用局部信噪比(SNR)作为每个3×3区域的局部标准值,局部信噪比可表示为:

(1)

其中ut为目标3×3区域灰度均值,ub为领域3×3区域灰度均值,δ为目标和某一方向背景两个3×3区域的灰度标准差。编码时,将8个目标领域的局部信噪比与预设阈值比较,则得到8个方向背景的二进制特征值,其中阈值根据检测性能指标进行预设。当8个特征值都为0,即编码值为0000 0000时,中间的3×3区域即为目标。

2 系统设计

2.1工程改进

实际工程实现时,考虑到LBP算子的场景适应性和检测稳定性,系统增加了如下2项功能。

(1) 多尺度LBP算子

如前所述,LBP算子假设红外弱小目标为一个小于3×3 像素的非均匀亮斑,在有利于红外观测的天气条件下,采用该假设合适。但当空气湿度大、能见度低以及背景温差小时,弱小目标在红外焦平面上初现时迅速扩散为尺寸稍大、中心灰度等级低且边缘模糊的不均匀亮斑。不同窗口大小提取的特征描述局部纹理的能力不同,为了改善LBP算子无法适应图像多尺度下纹理特征的问题,应使用多尺度的LBP算子[5]。因此,系统设计时采用了连续可调的LBP算子尺度以适应实际情况。

(2) 自适应区域阈值划分

图2 硬件结构

实际红外场景中,常遇到部分背景区域比较复杂的情况。如背景物体细微纹理对阳光的反射,经红外传感器成像后与弱小目标特征相似,目标淹没在其中,肉眼无法辨识。LBP对细节纹理描述能力较强,上述复杂背景常造成大量虚警,影响后续数据处理速度和能力。采用自适应区域阈值划分,即建立前3帧画面区域目标数量的数理统计列表,自动调节目标领域的局部SNR阈值。对于检测点过多的区域,还可以在LBP编码前将目标区域均值乘以相应比例系数,改善复杂区域对检测系统处理能力的影响。

2.2硬件组成

通过分析算法流程可知,设LBP算子尺度为n时,需要在每个像素周期完成9次n×n范围的取均值、标准差、阈值划分运算。算法的运算量大但结构简单,适合并行处理,因此本文设计了以FPGA为核心处理器的红外弱小目标检测系统,其硬件结构如图2所示。

图 2中,红外弱小目标系统采用标准32位PCI板卡形式,使用桥接芯片PCI9054作为上位机PCI模块。红外PAL制模拟图像通过A/D芯片SAA7111采样,转换为标准BT.656码流输入FPGA。该数字视频码流经过LBP算法模块,形成64位点迹信息(帧号+本帧点迹个数+点迹行数+点迹列数)压入FIFO中,FIFO存储深度为2 KB,当存储深度超过1 KB时即向PCI桥发送中断信号,上位机接收到中断信号后从固定偏移地址(80H)读取1 KB点迹信息;另外,2个存储深度为8 KB双口RAM经过乒乓操作,以配合PCI9054中DMA控制器的时序,将叠加过点迹的原始视频通过DMA方式传送给上位机,DMA传输的偏移地址为8000H~9FFFH。上位机通过PCI桥将LBP算子尺寸以及区域阈值等初始化信息和控制信号发送给FPGA,实现双向通信。

为了独立使用,红外弱小目标系统还预留了显示接口、串口和网口等。显示方面,数字视频码流与前一帧的点迹通过视频叠加方式形成输出视频,通过SA7121转换为标准PAL制红外图像输出给监视器;系统也支持VGA显示,但由于VGA视频分辨率远高于PAL制模拟视频,需用一片DDR2 SDRAM进行缓存放大。网口和串口通信方面,使用Altera公司开源的Nios-II软核将点迹信息传送给上位机,并接收上位机初始化和控制信号。

接口芯片SAA7111、SAA7121、ADV7123和VSC8641的初始化配置均由I2C控制模块负责。

2.3FPGA模块设计

FPGA强大实时的运算能力归功于其可并行处理的运算方式,然而采用这种方式往往会占用大量硬件资源,实际运行情况与设计的计算结构关系密切。为了在确保LBP算子的实时性前提下节约硬件资源,本文设计了以下方法。

(1) 灰度自适应快速扫描

对于目标检测,传统的方法是采用目标提取算子逐像素扫描输入图像,存在计算开销大以及容易对同一目标重复告警的问题。针对以上情况,本文采用了一种灰度自适应快速扫描机制,具体为:计算3n×3n矩阵块Bi,j的最大值(i,j为Bi,j中心像素的坐标),然后以最大值为中心, 重新构造3n×3n 矩阵块,最后采用LBP算子提取Bi~,j~的编码值进行目标检测。将Bi,j的中心位置i,j向右平移3n个像素得到下1个矩阵块。若扫描完一个3n行的数据区,则从i=i +3n, j=1开始扫描下一个3n行数据区,直到完成整幅图像的扫描。

(2) 块运算

LBP算子包括n×n区域取均值、标准差、阈值划分等基本运算单元,基于LBP算子的多尺度要求,各计算单元的计算量随尺度变化而不同。传统的串行处理器只需要对图像数据逐像素判断,再决定其是否参与运算即可。采取这种方式必然引起大量运算延时,以每个运算单元最大延时7个时钟周期计算,延时量为n×n×7个时钟周期,无法体现FPGA并行处理的优势。但如果将这种串行处理方式改为并行同时判断,则引入了n×n次选择运算和最大7个系统周期延时,作为算法大量重复使用的基本运算单元,将造成整个系统硬件资源的浪费。

图4 LBP算子串行复用结构

根据LBP算子的特点,本文采用了块运算的方式,对于处于同一运算块的像素数据,统一计算和判断。这样,只需要增加(n-2)个选择运算和最大7个时钟周期延时,即可完成LBP算子基本运算单元的计算,兼顾了资源和运算延时,图3给出了n=7时的LBP算子块运算结构图。

图3 n为7时LBP算子块运算结构

(3) 串行复用

FPGA作为并行运算能力强大的处理器,其流水线式的并行运算延时只会使运算结果相对于输入视频产生ns级的滞后。但基于LBP算子的块运算结构,其基本运算单元均需完成最大尺寸的运算。在1次扫描过程中,需要进行9次n×n区域取均值、标准差、阈值划分等运算,本文将最大尺寸设为7,虽比直接进行并行运算结构更优化,但运算量仍然巨大,对FPGA硬件资源要求较高。因此,在保证数据流实时传输、无阻塞以及不丢失的情况下,结合LBP算子特点,合理设计基本运算单元串行复用的结构,可极大节约硬件资源。

由LBP检测系统的灰度自适应快速扫描机制,对于帧频为25 Hz、分辨率为640×480的8位红外图像,尺度n=3时整图的扫描次数最多,运算量最大,每行图像最多完成72次基本运算单元计算。标准PAL制红外图像行周期为64 μs,理论上在576 μs内处理9行图像即可保证运算的实时性,但由于标准PAL制红外图像行周期中存在大量消影期,因此会延长处理等待时间。为了减少运算等待时间,在运算之前使用2块5 760字节双端口RAM进行乒乓缓存,缓存后的图像行同步信号由系统时钟计数生成,将消影期缩短到不超过10 μs。最后使用时间片轮转法,在486 μs内串行复用72次LBP基本运算单元,即运行1次LBP基本运算单元时间周期不高于6.5 μs,就可以保证算法符合实际要求,其结构如图 4所示。

分析LBP算子运算单元结构可知,每个LBP算子运算周期最多消耗63个时钟周期进行运算,因此,只要时钟周期不高于100 ns,即时钟频率高于10 MHz,即可在保证实时性的同时节约71个基本运算单元的硬件资源消耗。

3 综合结果

系统使用Altera公司的Quartus11.0软件,采用可综合的VHDL语言对图像融合算法中各模块进行描述。整个系统在1片FPGA(EP2S60F672)上完成了分辨率为640×480的8位红外弱小目标检测,表1给出了

Infrared Dim Target Detection System Based on LBP

Jiang Yiliang,Sun Ning,Zhai Shangli

(China Electronic Technology Group Corporation 28th Institute,Nanjing 210007,China)

An infrared dim target detection method based on local binary pattern(LBP) operator is analyzed,and an infrared dim target detection system is designed according to the practical application background.The overall structure of the system and the design method of the program module are introduced.The experiment results show that the proposed method can save large number of hardware resources in the premise of ensuring the real-time performance of LBP algorithm.

infrared dim target;local binary pattern;target detection;FPGA

TN216

A

猜你喜欢

弱小算子灰度
与由分数阶Laplace算子生成的热半群相关的微分变换算子的有界性
采用改进导重法的拓扑结构灰度单元过滤技术
拟微分算子在Hp(ω)上的有界性
Heisenberg群上与Schrödinger算子相关的Riesz变换在Hardy空间上的有界性
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
强大与弱小
各向异性次Laplace算子和拟p-次Laplace算子的Picone恒等式及其应用
对人世的告白(组诗)
基于最大加权投影求解的彩色图像灰度化对比度保留算法
柴的嘲笑