简介:为了提高红外成像系统图像放大算法的资源利用率和实时性。在此基于传统线性插值算法,充分考虑红外探测器信号的输出方式,并根据红外成像平台的结构特点。提出了一种适用于FPGA的改进型线性插值算法,该算法基于并行流水线方式实现,充分发挥了FPGA的高速并行处理能力。该算法已应用于工程实践中,经过大量的实验和实际应用,稳定可靠,成像质量较好。与以往传统的实现方法相比,图像质量没有变化,实时性得到了很大的提高,资源占用少,具有很大的创新性和实用性。
关键词:红外成像系统;图像放大;插值;FPGA
红外成像技术是目前非常有用的新型高科技,具有极强抗干扰能力,属于被动式观测装备,隐蔽性很强。长波红外可不受烟雾等的影响,分辨率高。另外,红外成像不受地面和海面的多径效应影响,具有多目标全景观察、追踪及识别能力,具有很广阔的应用前景和价值。
本文采用的红外系统为凯迈广微160×120系列,由于原始图像大小为160×120,在某些应用场合其分辨率很难满足需要,必须对图像进行放大。
图像放大是一种常用的数字图像处理技术,在日常社会生活的许多领域有着广泛的应用,因此数字图像的放大是图像处理的基本操作之一。数字图像放大多用软件来实现。但随着现场可编程门阵列技术的突飞猛进,FPGA也逐渐进入数字信号处理领域,尤其在实时图像处理方面FPGA无可比拟的并行处理能力,所以国内外愈来愈多的实时处理应用都转向了FPGA平台。本文正是介绍了一种基于FPGA的固定倍率红外图像放大模块。
1 图像放大算法
目前图像放大处理通常都采用软件方法来实现,虽然其算法种类多样,且图像放大后的质量也比较高,但是,由于其运算时间往往较长,因此在某些实时性要求较高的数字图像处理场合不宜采用软件方法而适合采用硬件方法。硬件方法实现图像放大,其处理速度可大大提高,不过,采用硬件实现时,由于资源非常有限,许多处理算法因过于复杂而无法通过硬件实现。目前在进行硬件图像处理过程中,通常采用插值算法,利用图像的像素点间存在着的相关性进行插值而实现图像的放大。常用的差值算法包括最近邻域插值法(Nearest Neighbor Interpolation),双线性插值法(Linear Interpolation),双三次插值法(Bieubie interpolation)。
1.1 最近邻域插值法
从计算量的角度来说,最近邻插值是最简单的插值。在这种算法下,每个插值输出像素的值就是在输入图像中与其最临近采样点的值。算法的数字表示为:
f(x)-f(xk),1/2(xk-1+xk)<x<1/2(xk+xk+1)
1.2 双线性插值法
双线性插值法的输出像素时它在图像中2×2邻域采样点的平均值,它根据某个像素周围4个像素(m,n),(m+l,n),(m,n+1),(m+1,n+1)的灰度值在水平和垂直2个方向对其插值。
设m<i<m+1,n<j<n+l,a=i-m,b=j-n,i’和j’是要插值的点的坐标,则双线性插值的公式为:
把按照上式计算出来的值赋予图像的几何变换对应于处的像素,即可实现双线性插值。
1.3 双三次插值法
双三次插值的插值核为三次函数,其插值邻域的大小为4×4。它的插值效果比较好但相应计算量也大。
[1] [2] [3] 下一页