图像自适应分段线性拉伸算法的FPGA设计
0 引言
由于红外图像的成像机理以及红外成像自身的原因;红外图像有对比度低、图像较模糊、噪声大等特点。因此抑止噪声,提高图像信噪比,以及调整红外图像对比度,以利于后续图像分析、目标识别或跟踪,必须对红外图像进行增强处理。另外,在其他场合,若采用人机交互方式,则必须对原始图像进行预处理,改善图像视觉效果,使其更适合人机进一步的分析和处理。
图像增强从作用域出发,分为空间域增强和频率域增强两种。频率域是一种间接增强的方法,由于存在域之间的变换和反变换,计算复杂,难以满足实时性要求。自适应分段线性拉伸算法是一种空间域图像增强方法,直接对图像像素灰度进行操作,由于运算过程简单、实现方便,目前的图像增强预处理电路大多选用这种算法。硬件实现上,最初是采用单片DSP芯片实现,其原理为:图像数据实时的传输给DSP,DSP接收完1块数据后,再对整块数据进行增强处理,这样势必会造成时间的延迟,不能满足精确制导武器系统实时性的要求。后来硬件结构发展为采取DSP,FPGA芯片相结合的方式。这样,有效结合了DSP的运算能力强与FPGA逻辑和存储资源丰富的优点;不足之处在于,DSP与FPGA之间的通信给设计工作增加了额外负担。与DSP相比,FPGA结构上的优势使得其更适合完成并行处理、及结构性强和高速的运算。本文基于这种算法理论基础,使用xilinx公司规模较大的XC4VLXl5系列FPGA,实现了红外图像的实时处理。
1 自适应线性分段线性灰度级拉伸算法
图像灰度线性拉伸算法表达式为:
式中:i是图像数据行号;j是图像数据列号;Y(i,J)是拉伸后输出图像灰度值;X(i,j)是输入原始图像灰度值,为14 b二进制数;Xmin是输入图像数据的最小灰度值;Xmax是输入图像数据的最大灰度值;Zmax表明输出图像的最大灰度值,设计中拉伸后的图像灰度值用8 b二进制数表示,故Zmax=255。
首先对红外图像做灰度直方图统计,低信噪比条件下,选取压缩因子为5%,将盲元和噪声的影响降到最低。分别搜索5%最大灰度值中的最小值作为Xmax,5%最小灰度值里的最大值作为Xmin。拉伸转换时,将大于Xmax的像素灰度置为Zmax,小于Xmin的像素灰度置为O。此算法将线性拉伸区间自适应地分为[O,Xmin),[Xmin,Xmax]和(Xmax,255]三个部分。其中,[O,Xmin)和(Xmax,255]两个灰度区间的像素灰度分别被压缩为O和255。若图像中目标较小,且目标正好位于两个被压缩的区间内,就有可能被抑制。为避免这种情况发生,可视情况适当调整压缩因子5%的大小。
相关文章
- 2022-09-20一种智能液位检测仪的设计
- 2022-08-07基于可重构设计的测控站监控系统研究与实现
- 2023-09-16关于悬臂梁振动特性的损伤灵敏度的研究
- 2023-06-04670T/H过热器母材探伤专用探头的制作
- 2022-08-30环形光源在干涉仪系统中的应用
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。