基于FPGA的高速图像处理系统的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于FPGA的高速图像处理系统的设计
摘要: 在本文中,设计了一个高速图像处理系统,是为了解决这样的问题,如出现在车载计算机图像处理中的低系统集成,低速的处理过程。通过配置Nios II软核CPU和一些基于主要硬件FPGA的图像预处理,处理和显示的功能模块和设计的系统软件,使得该系统实现了图像的采集,记忆和重叠功能。由于采用可编程芯片和并行处理技术,该系统集成度高,好维修,图像处理速度快、实时性强。
关键词:图像处理,FPGA,Nios II CPU。
I.介绍
近年来,车载计算机中存在的主要问题集中在两个方面。首先,在使用低功率损耗的PowerPC CPU的状态下,对于图像的采集和显示,一个集成板是必需的。其次,随着视频图像和红外热像仪的广泛使用,还有电子一体化的发展,应该设计出一个高速的图像处理系统。
为了解决这两个主要的问题,作者设计了一个基于FPGA的高速图像处理系统用来识别重叠的多通道图像信息。功能模块,比如图像采集,处理和显示,都可以在一个单一的FPGA芯片上实现,它减少了外围电路,提高整个系统的性能。因为并行处理技术,处理速度和实时性都大大的提高。
II.图像处理算法分析
A.基于双线性插值的图像放大
基于像素的放大倍率的方法原理简单、快速,但它只是复制原始像素的邻域。随着放大系数增大,图像会出现明显的块锯齿,不能保留原始图像的边缘信息。这个问题是可以通过双线性插值来解决。双线性插值可以消除锯齿,保留原始图像的边缘信息和获得更好的视觉效果。
图1.原始图像(略)
图2.放大图像(略)
图1是原始图像,其中f ij,f i,j+1,f i+1,j,f i+1,j+1是相邻的像素块。图2是在水平方向上放大K倍,在垂直方向放大L倍的图像。f ij,f i,j+1,f i+1,j,f i+1,j+1在放大图像中只改变位置但像素值保持不变。因此,我们可以得到以下方程:
在放大的图像中,我们定义保留原始图像信息的数据作为初始数据,它的坐标值是原始图像的整数,还从原始图像的数据中定义需要插值运算的数据,这些插值数据的坐标值不是原始图像的整数倍数。在进行插值,在初始位置的像素值数据保持不变,其他像素值通过插值算法计算。
具体算法如下。设置放大图像中的像素位置为(x,y),在放大的图像和原始图像中坐标有以下关系:
其中,x,y是放大的图像坐标;i,j是原始图像的坐标;K是
横向放大倍数和L是垂直的放大倍数;0<u<1 ,0<V<1。
通过双线性插值我们可以计算出放大图像中的像素值
公式(3)表明当像素点位于初始数据的位置时,像素值仅通过一
次插值就可以计算出来,例如F(ki,l(j+v)),F(k(i+1),l(j+v)),当像素点位于插值数据的位置就需要三次插值。
公式(3)也表明,这些算式符合乘加模式而且很容易在FPGA芯片上实现。结果是,该方法不仅保证了图像的放大效应也保证实时性的要求。
B.多通道图像重叠[4]
1.Alpha通道
α-通道是Alpha通道的缩写形式,除了基本的颜色通道,它决定了每个像素的透明度。用每个通道的色值乘以它的α值用来确定它对像素的贡献。
Alpha通道使用不同的灰度级表示其透明的大小。α值的变化从0到1,当α-通道有8位二进制数据的宽度时,它有256个层次的透明度。白色的(α= 1,对应于255)是不透明的,黑色的(α= 0,对应于0)是完全透明的,黑与白之间的灰度值表示部分透明。
2.多通道图像重叠
结合性:图像叠加处理符合结合性:
根据结合公式演绎多通道图像重叠的。
设置为α1为前景I1的α值,而i1为I1的前景颜色。设置α2作为前景I2的α值和i2为前景I2的颜色。b表明背景的颜色,它的α值是1 。
对于(重叠的I1,B),色值由颜色i1在某像素点的采样值覆盖。因为α1是I1的透明度,背景B中的像素的透明度为1~α1和色值(1 ~α1)b.全彩色的i1,b值是两个部分的总和:
然后计算一个重叠的值(I1重叠B),我们得到i2,1,b的色值:
对于重叠的I1 ,I2,设置α为重叠的图像的α值,而i作为其色值,那么重叠的B(I1 重叠I2)的色值将是αi+(1–α),立足于结合性我们有以下的公式:
由于背景是随机的,两层图像的重叠公式可以由公式(7)得到。
该集成α-通道值是:
在公式(8)里,把每个通道的色值乘以它的α值的结果称为预乘颜色。I= αi,I2 =α2i2,I1 =α1i1,公式(8)的缩写形式是:
用重叠公式与预乘颜色表示不仅使表达更加简单而且使颜色的集
成和综合的α-通道值具有相同的表达形式。当第三层I3和I2,I1重叠,其重叠公式可以从两层重叠公式推导出来。
设置I3 为第三层图像的预乘颜色而α3为其α-通道值,然后第三层图像的重叠的预乘颜色是:
该集成α-通道值是:
同样,n层图像的重叠的综合预乘颜色和集成α-通道值是:
III.系统的总体设计
该系统由Nios II软核CPU,图像预处理模块,图像显示模块,图像处理模块和通用外围接口组成。图3显示的是系统的总体结构。
图3.系统总体结构(略)
该系统集成了Altera开发的软核CPU,和作者自界定的SDRAM 控制器,通用输入/输出接口和图像的预处理,处理和显示模块。每个模块靠Avalon总线连接和由Nios II CPU协调运行。
除了视频解码芯片,视频DAC芯片,存储器和键盘,该系统的其它部分都集成在FPGA芯片。系统的工作过程如下。来自摄像机的模拟视频信号通过解配置在I2C总线上的视频解码芯片解码,然后传输给图像预处理模块。图像预处理模块对视频数据进行格式和去交错,然后将它存储到SDRAM。有几个DMA通道这是在图像处理模块中定义的。每个通道的图像在图像重叠模块中重叠。显示控制器生成的扫描时间信号并通过DAC芯片将其由数字图像转换成模拟信号。所有的功能模块