FPGA红外图像处理系统硬件平台设计

2019-04-08 02:59
实验室研究与探索 2019年1期
关键词:直方图图像处理红外

韩 团 军

(陕西理工大学 物理与电信工程学院, 陕西 汉中 723000)

0 引 言

随着红外图像处理技术和焦平面阵列技术的不断发展,红外图像处理系统在军事成像、安防工程和工业监测中的应用越来越广泛,红外图像中常含有大量的椒盐噪声,且图像对比度较低,使得视觉效果较差。同时红外图像处理系统对算法的实时处理要求较高,一般图像处理算法运算量较大[1-4]。这样就要求处理芯片有很高的处理速度和较大的数据吞吐量。传统的硬件平台采用DSP对红外图像进行处理,其处理复杂算法的速度较慢,无法满足图像处理实时性要求,限制了对红外图像算法的广发应用。为了提高红外图像的质量和增强系统处理图像的实时性,结合已有的红外图像实时处理算法,本文提出了一种基于FPGA的红外图像处理系统硬件平台设计过程,通过该系统可以消除红外图像的非均匀性,同时可以对红外图像进行增强,对椒盐噪声进行的滤除。通过硬件测试,系统能够实时处理红外图像的各种算法,且效果较好。该系统具备设计灵活、移植性方便、消耗资源较少,具有一定的工程开发和应用价值[5-7]。

1 系统的总体设计

整个系统硬件平台主要实现了对红外探头采集的红外图像进行了非均匀性校正,为了便于后面的处理,对含有噪声图像进行平滑滤波去噪处理,针对图像对比度不高的问题,对除噪后的图像进行了直方图均衡处理来提高图像的对比度。处理完成后的图像由PAL模拟视频直接显示。各处理模块是在同一块FPGA上实现。整个系统硬件框图如图1所示。

图1 系统的硬件框图

2 系统的重要模块及FPGA设计

2.1 非均匀性一点校正算法的FPGA实现

非均匀性一点温度定标算法的实现需要先用温度的均匀辐射黑体辐照探测器,得到此时每个探测元的响应输出,并求出其平均值。于是对于每个探测元有:

将D存储起来,并在正常景物下对每个探测元输出响应进行实时减法校正,即可消除这种偏差。从算法上不难看出,一点定标法实质上是对焦平面的非均匀噪声中的加性噪声作了很好的补偿,

A=Y2-D

其中:A为一点校正后响应;Y2为输出响应。

在具体实现时,先用温度均匀的辐射黑体辐照探测器,通过编写代码获取偏差值,然后将其保存在FPGA的双端口RAM中。实际处理时,选取整个图像中的160×120像素的范围进行一点校正。在程序设计时列计数器pixelcount和行计数器linecount_in伴随着6.75MHz像素时钟递增。当pixelcount=80, linecount_in=60时,RAM写使能信号有效,RAM地址回到0。当80

图2 偏差从RAM读出进程代码片段

2.2 快速中值滤波算法的FPGA实现

快速中值滤波算法是将一个含有N×N像素的二维阵列,对其先执行一次行排序运算,然后执行一次列排序运算,完成后对对角线上的像素得到中值输出。设计硬件实现了一个3×3窗口的快速中值滤波算法结构,如图3所示,这样设计的滤波比传统线性滤波和均值滤波运算量有很大减少。列排序运算需要9次比较运算,行排序也同样需要9次比较运算,最后将对角线上的3个像素值进行比较后取中值,需要3次比较运算。因此快速中值算法对一组9个像素取中值运算一共需要进行21次比较运算,和传统的滤波算法执行36次运算次数相比较可以看出,快速中值滤波算法可以大大降低运算次数。运算量减少对硬件实现上可以节省芯片的内部资源,同时可以提高硬件对图像的处理速度。系统利用移位寄存器宏模块设计了一个深度为158的FIFO,使用嵌入式存储器来实现移位寄存器块,它能节省逻辑单元LE和布线资源,提供了更加有效的实现方法。由于Quartus II软件中的altshift_taps 宏模块没有正好等于158的FIFO,可以选用移位寄存器实现FIFO的功能。1个w×m×n移位寄存器,由输入数据宽度w,抽头长度m和抽头数n来决定,移位寄存器的抽头长度m最大值是256,当需要更大容量的移位寄存器块可以级联。由于w没有正好14位,可以选16位移位寄存器。运用图中的移位寄存器组成一个深度为158的FIFO,抽头数n都为1。最终完成了一个如图3所示中值滤波结构,利用3×3窗口在FPGA 进行了有效设计[8-10]。通过对设计进行编译可以看出,快速中值滤波算法要比传统中值滤波算法节省大量的硬件资源。编译后对3×3模板进行了仿真,结果见图4,表1为两种算法对逻辑资源的利用率。

图3 3×3中值滤波结构

图4 3×3模板时序仿真结果

表1 传统中值滤波算法和快速中值滤波算法使用资源比较

2.3 直方图均衡化算法的FPGA实现

系统对图像进行了噪声滤除后,图形质量变得更加清晰。但是红外图像还受到光照条件的影响,如果光照不均匀会严重影响视觉效果。直方图均衡就是对图像显示效果进行增强处理,设计中算法是利用灰度点通过概率计算实现图像有效增强。在设计中图像处理中所需的数据,是从FPGA中外围带有的SRAM中得到,得到的一维数组宽8位的数据,读取时钟f为50 MHz。通过改进传统增强算法在FPGA利用宏模块和逻辑锁定来实现,灰度级累加完成后结果存在list中。如果有像素数据从外部存储器输入到直方图均衡化模块,其像素数据就作为list的读地址,将其对应的读出的数据乘以L-1,再除以n,得到的就是均衡化后的像素数据[11-17]。设计中直方图均衡化模块在硬件平台的内部逻辑框图如图5所示。

2.4 PAL模拟视频接口的FPGA实现

系统对PAL制式正极性电视信号发生器进行了时序仿真和设计。输入像素时钟pixelclk为6.75 MHz,帧频25 Hz,帧周期40 MHz/s,场频50 Hz,场周期20 ms,行频15.625 Hz,行周期64 μs程序将1帧细分为1 250行,每场625行,行周期32 μs,如果将2行32 μs看做一行即就是PAL制视频标准。通过设计仿真可以得到复合同步信号仿真结果,复合同步信号由前均衡脉冲(5个凹槽)、后均衡脉冲(5个凹槽)和行同步脉冲组成 。复合同步信号仿真结果如图6所示。

图5 直方图均衡化模块内部逻辑框图

3 硬件实验结果

FPGA是本系统的核心部分,用来完成数据缓存、图像滤波以及图像增强等。为了便于系统的升级、扩展,在FPGA外部添加了FLASH和SRAM,以便于存储数据和运行程序,配置芯片用来存放芯片的配置信息,避免数据掉电后丢失,DA转换器主要是实现数字信号到模拟信号的转化,TFT显示屏PAL模拟视频接口与系统结合,完成红外图像的显示,电源和复位模块保证系统的正常工作,整个测试系统框图如图7所示。

图6 复合同步信号仿真图

图7 整个测试系统框图

系统选用的是Altera公司生产的CycloneIIIEP3C55F484C8型号的FPGA芯片对整个系统的每一个设计模块进行了硬件下载测试,系统的终端如图8所示。终端对系统模拟视频信号显示采用320×240 TFT真彩显示屏。该系统可以对外场采集或模拟生成的红外图像进行预处理。在一点校正前的图像中存在固定溢出的像素点,一般表现为离散的最亮点或最暗点,通过一点校正后图像,离散的最亮点或最暗点被去除,证明所设计的一点校正算法有良好的处理效果,处理前后的对比结果如图9所示。

图8 测试终端

图9 一点校正前后图像在终端对比显示

将一幅未经处理的原始红外图像加入了孤立的噪声点,输入给FPGA中值滤波器得到滤波后的图像。试验结果可以看出,原始图像中孤立的噪声点得到了有效的滤除,对含有噪声的图像采用中值滤波算法的硬件下载显示结果如图10所示。可以看出,整个系统对噪声滤处较好。同时对一幅亮度较低的红外图像进行直方图均衡化,可以看出处理后的图像亮度、对比度明显提升,图像细节得到了很好的体现,增强处理结果如图11所示。

图10 中值滤波前后图像在终端的对比显示

图11 直方图均衡化前后图像在终端对比显示

4 结 语

本文实现了一种基于FPGA红外图像处理系统硬件平台,解决了红外图像由于在处理过程中图像的分辨率低、图像对比度不高、噪声较大而且具有非均匀性以及图像是灰度图像等缺陷。利用模块化设计方法,通过一块CycloneIIIEP3C55F484c8芯片为核心处理器,对整个系统的各个模块进行了硬件下载测试。处理前后图像对比可以看出,整个系统完成了红外图形的各种算法处理,结果较好,验证了设计正确性。整个系统平台在红外图像处理方面具有一定的应用价值。

猜你喜欢
直方图图像处理红外
符合差分隐私的流数据统计直方图发布
网红外卖
人工智能辅助冠状动脉CTA图像处理和诊断的研究进展
闪亮的中国红外『芯』
基于FPGA的直方图均衡图像增强算法设计及实现
基于ARM嵌入式的关于图像处理的交通信号灯识别
8路红外遥控电路
TS系列红外传感器在嵌入式控制系统中的应用
用直方图控制画面影调
基于图像处理的机器人精确抓取的设计与实现