摘要:
介绍了一种实时视频信号处理渠道的规划,该体系接纳低帧率数字YCbCr视频信号,运用一片DDR2 SDRAM存储器作为帧缓存,对接纳的视频信号进行格局转化、帧率进步、图画扩展、色空间转化,使输入的视频信号能够在VGA显现器上实时显现;并研讨了一体化摄像机光学镜头中变倍电机和聚集电机的操控原理,完结了步进电机初始方位检测、图画变倍时变倍电机与聚集电机的合作驱动,为了习惯不同物距变倍盯梢,完结了灰度差分主动聚集算法,实时核算当时帧图画的聚集点评函数值,选用爬山查找战略完结对聚集电机的操控,使当时图画的聚集函数值最大,完结图画的主动聚集。整个规划选用VHDL言语完结,在Xilinx XUPV5-LX110T FPGA开发板上验证。运用该渠道还可完结图画的紧缩编码、解码、本地存储及以太网传输等功用。
要害词:视频处理;DDR2 SDRAM;帧率进步;主动聚集;FPGA;一体化摄像机
1. 导言
跟着半导体技能的开展,图画传感器的分辩率有了很大进步,但因为处理数据量巨大,图画传感器输出高分辩率图画时帧率一般较低,其输出图画不能直接在VGA显现器上显现。为了使高分辩率图画传感器收集的图画在VGA显现器上实时显现,需求对其输出的图画进行帧率进步、色空间转化等后端处理。现在,市场上常用的视频处理芯片有PixelWorks公司的PW1226、Tvia公司的TrueView5725、Averlogic公司的AL250、威斯达公司的WSC2000等。选用上述视频处理芯片可完结视频图画的帧率进步、图画增强等功用,但因为其功用固定,不能适用于一些特别运用场合,如图画存储、主动聚集等。
一体化摄像机指内置光学镜头,具有变倍、主动聚集功用的摄像机,其结构细巧、运用方便、监控规模广,已广泛运用在教育视频展台、视频监控等范畴。变焦操控可完结图画的变倍、主动聚集,是一体化摄像机中的要害技能之一。步进电机可将电脉冲信号转化成角位移,每接纳一个脉冲信号就可驱动步进电机滚动一个固定视点,完结物体的精确定位,经过操控脉冲的频率可操控电机滚动的速度,步进电机已广泛运用于高精度操控体系中。一体化摄像机光学镜头中包括变倍步进电机与聚集步进电机,变倍电机滚动时,为使图画聚集明晰,聚集电机也应随之滚动,详细滚动步数与物距有关,详细参数可由镜头生产厂家供给的变焦盯梢曲线取得。为了习惯不同物距的明晰成像,变倍盯梢完毕后,还应进行主动聚集,以显现明晰的图画。
图画聚集程度与其高频重量有关,图画聚集时,其包括的高频重量最大,图画最明晰,一般选用聚集点评函数来描绘图画的明晰程度。常用的聚集点评函数首要有:高频重量法、滑润法、阈值积分法、灰度差分法、拉普拉斯像能函数等。为了进步聚集速度,本项目选用灰度差分法实时核算每场图画的聚集函数值,判别当时图画的明晰与否,选用爬山查找战略,完结图画的快速主动聚集。快速主动聚集的完结与变倍盯梢曲线的精度、主动聚集算法的好坏、查找战略、电机驱动速度等要素有关。
因为FPGA 器材的可并行处理才能及其可重复在体系编程的灵活性,其运用越来越广泛。一起跟着微处理器、专用逻辑器材、以及DSP算法以IP Core的办法嵌入到FPGA中,FPGA可完结的功用越来越强,FPGA在现代电子体系规划中正发挥着越来越重要的作用。本项目规划的实时视频信号处理渠道运用XUPV5-LX110T FPGA开发板,并克己了视频图画收集板,选用22倍一体化光学镜头,运用FPGA开发板上的一片DDR2存储器作为帧缓存,已完结的图画的帧率进步、图画扩展,并完结灰度差分主动聚集算法,实时核算当时图画的高频重量,运用爬山查找战略操控聚集步进电机的滚动,完结图画的主动聚集,在该开发渠道上还可完结视频图画的紧缩编码、解紧缩、本地存储、网络传输等功用。
2.规划性能指标
该渠道可将CMOS五颜六色图画传感器输出的分辩率为736*576、帧率为12Hz的8位YCbCr视频信号扩展到分辩率为1024*768、帧率为60Hz的24位RGB信号,经过Xilinx XUP Virtex-5LX110T开发板上的DVI转化器(CHRONTEL CH7301),可经过DVI接口在显现器上直接显现,或经过DVI-VGA转接口在VGA接口的显现器上显现。一起,完结了图画的变倍盯梢、主动聚集功用,详细性能指标如下:
(1)输入视频图画分辩率736*576、帧率12Hz、8位YCbCr视频信号;
(2)输出图画分辩率1024*768、帧率60Hz,以DVI或VGA接口输出;
(3)具有是非/五颜六色转化、图画冻住、OSD等功用;
(4)16倍光学变倍;
(5)变倍扩展后具有主动聚集功用,主动聚集执行时刻在2秒以内;
(6)支撑输入图画的紧缩编码、解码、本地硬盘存储及以太网传输。
3. 体系计划
体系结构如图1所示。
图画传感器输出分辩率为736*576、帧率为12Hz的8位YCbCr视频信号,并输入到FPGA,FPGA运用外部一片DDR2存储器内的两个Bank空间作为帧缓存,选用乒乓存储机制将输入的视频帧率由12Hz进步到60Hz,将视频信号由YCbCr空间转化到RGB色空间,分辩率由736*576扩展到1024*768,并发生1024*768@60Hz的行场时序扫描信号,FPGA输出的数字视频信号经D/A转化后,输出到VGA接口,然后图画传感器收集的图画可在VGA显现器上实时显现。
FPGA输出变倍电机和聚集电机驱动信号,并经H桥驱动电路扩展后输出到光学镜头,一起,光学镜头将变倍电机和聚集电机的方位检测信号反应输出到FPGA,用以检测当时电机方位。
体系上电后,FPGA判别光学镜头回来的变倍电机方位检测信号和聚集电机回来的检测信号,若检测信号为低电平则驱动电机向挨近图画传感器方向滚动,直至检测信号为高电平,在电平跳变处中止,同理,若检测信号为高电平,则驱动电机向远离传感器方向滚动,直至检测信号为低电平,在电平跳变处中止,以上则完结对电机的初始化。初始化完毕后,则驱动电机滚动到一固定扩展倍数方位。电机变倍时,变倍电机滚动必定步数,一起驱动聚集电机滚动对应步数,详细步数可依据变倍盯梢曲线取得,变倍完毕后,FPGA从输入的视频信号中提取亮度Y信号,选用灰度差分聚集算法,实时核算当时帧图画的高频重量,图画彻底聚集时,图画聚集点评函数值最大。运用爬山查找战略,操控聚集电机的滚动,使当时图画的聚集函数值最大,即当时图画最明晰,然后完结了图画的主动聚集,然后可确保每次变倍完毕后得到明晰的图画。
该视频信号处理渠道可对输入的视频图画进行紧缩编码(H.264、AVS等算法),经过硬盘操控器模块完结紧缩图画的本地存储,并经过内部以太网操控器模块将紧缩后的数据输出到FPGA开发板上的以太网物理层芯片,然后经过RJ45网络接口进行以太网传输,还可经过以太网接纳紧缩的视频数据流,进行解码,并经过后端处理在本地播放。
4. 体系规划
本项目选用现代EDA规划常用的“自顶向下”的规划办法,进行功用区分并按模块化规划准则,FPGA内部功用模块如图2所示。
数字视频信号输入到FPGA后,首要进入前端处理模块,前端处理模块首要完结了对外部光学电机的操控,该模块对输入的视频信号进行格局转化并提取亮度Y信号,依据亮度Y信号完结了灰度差分主动聚集算法,并完结了步进电机初始方位检测、图画变倍时变倍电机与聚集电机的合作驱动,为了习惯不同物距变倍盯梢,运用灰度差分主动聚集算法取得的当时帧图画的聚集点评函数值,选用爬山查找战略完结对聚集电机的操控,使当时图画的聚集函数值最大,完结图画的主动聚集。
图画处理模块可完结图画的紧缩编码(可完结H.264、AVS等紧缩算法)、本地硬盘存储,并经过以太网操控器完结紧缩图画的网络传输,该模块还可经过以太网接纳紧缩视频流,进行解码,并经过后端处理模块进行图画显现。
后端处理模块接纳前端处理模块输入的视频信号,或接纳图画处理模块解码的视频信号,首要完结了图画的帧率进步、图画扩展、色空间转化,使输入的低帧率YCbCr视频信号在DVI接口显现器或VGA显现器上实时显现。下面详细介绍各模块的功用及完结办法。
-
前端处理模块
该模块接纳输入的YCbCr格局8位数字视频信号,进行格局转化,转化成16位YCbCr(4:2:2)格局,依据亮度Y信号,选用灰度差分算法核算当时帧图画的高频重量。
该模块输出变倍电机和聚集电机的驱动信号,经H桥驱动扩展电路后输出到光学镜头,一起,光学镜头将变倍电机和聚集电机的方位检测信号反应输出到该模块,用以检测当时电机方位。
体系作业时,首要判别光学镜头回来的变倍电机方位检测信号和聚集电机回来的检测信号,若检测信号为低电平则驱动电机向挨近图画传感器方向滚动,直至检测信号为高电平,在电平跳变处中止,同理,若检测信号为高电平,则驱动电机向远离传感器方向滚动,直至检测信号为低电平,在电平跳变处中止,以上则完结对电机的初始化。初始化完毕后,则驱动电机滚动到一固定扩展倍数方位。电机变倍时,变倍电机滚动必定步数,一起驱动聚集电机滚动对应步数,详细步数可依据变倍盯梢曲线取得,变倍完毕后,该模块核算当时场图画的高频重量,判别当时图画的明晰度,并选用爬山查找战略驱动聚集电机,以完结图画的主动聚集,然后可确保每次变倍完毕后得到明晰的图画。
前端处理模块可分为以下功用子模块:格局转化、电机初始化、变倍盯梢、查找、主动聚集算法、体系操控、电机驱动等,如图3所示,下面将详细介绍各模块的完结办法。
-
格局转化
该模块功用是将输入的8位视频信号转化成16位YCbCr(4:2:2)格局视频信号。完结办法如下:在输入视频信号的行同步信号有用时,在榜首个像素时钟同步下,将榜首个8位数据写入8位寄存器1,第二个像素时钟同步下,将第二个8位数据写入8位寄存器3,一起将寄存器1的数据输出到8位寄存器2,第三个像素时钟同步下,将第三个8位输入数据写入寄存器1,一起,将寄存器2、寄存器3的数据写入到16位寄存器4,一向按此规矩进行写入,则寄存器4输出16位YCbCr(4:2:2)格局数据,输出速率为原像素时钟的2分频。其内部寄存器格局如图4所示。
(2) 步进电机初始化
该模块功用是完结电机初始方位的判别,并驱动电机滚动到某一固定方位。
因为每次体系掉电时,步进电机的中止方位不固定,所以每次体系作业时,首要要进行步进电机方位的判别并驱动步进电机转到某一固定方位,如一倍扩展方位。步进电机顶用电机方位检测器来判别电机的方位,方位检测器电路如图5所示。其作业原理为,当电机驱动的检测器运动到发光二极管与光敏三极管之间时,阻挠二极管宣布的光线,则三极管处于截止状况,输出信号为高电平;当检测器脱离中心方位时,发光二极管使三极管导通,则输出信号为低电平。因为二极管和三极管方位固定,所以输出信号电平跳变方位是固定的。
图5 电机方位检测电路
体系上电后,依据电机方位检测器回来的状况信号判别当时电机的运动方位,若回来低电平则驱动电机向图画传感器方向移动,直至检测信号为高电平,在检测信号跳变时,中止电机滚动;若检测信号为高电平,则驱动电机向远离传感器方向移动,直至检测信号为低电平,在检测信号跳变时,中止电机滚动,因为检测信号跳变方位是固定的,所以体系上电后可驱动电机滚动到预设置的固定方位。
(3) 变倍盯梢
(4) 主动聚集算法
一般选用聚集点评函数来描绘图画的明晰程度,常用的聚集点评函数有:高频重量法、滑润法、阈值积分法、灰度差分法、拉普拉斯像能函数等。灰度差分法运用图画的相邻像素灰度值差的绝对值之和作为聚集点评函数,灰度差分算法完结简略,因为没有杂乱的运算,易于在FPGA上完结,算法公式描绘为:
该算法完结时,缓存四行数据,完结内部功用模块如图6所示。
图6 主动聚集算法完结内部模块
读写操控模块操控四个行缓存中数据的读写,每场图画榜首行数据写入到行缓存1,第二行数据写入到行缓存2,第三行数据写入到行缓存3,第四行数据写入到行缓存4,一起,将行缓存1、2、3中数据读出到算法完结模块,第五行数据写入到行缓存1,一起,将行缓存2、3、4中数据读出到算法完结模块,按此读写规矩进行直至一场图画完毕。算法完结模块接纳从行缓存中读出的数据,并将每个行缓存读出的数据赋值给内部相连的三个寄存器,则第二行中心寄存器对应算法中的像素,依据聚集点评函数值公式即可求出当时场的聚集函数值,并将当时场图画的聚集函数值与前一场图画的聚集函数值相比较,如当时场图画的聚集函数值大于前一场图画聚集函数值,则输出比较信号为高电平,标明当时场比前一场图画明晰,反之输出低电平,标明当时场图画比前一场图画含糊。
(5) 查找
该模块依据主动聚集算法模块输出的相邻两场图画聚集函数值的比较成果,来操控聚集电机的滚动方向,当输出图画的聚集函数值最大时中止滚动,则完结图画的主动聚集。
该模块详细完结进程为,变倍完毕后,在图画场同步信号的消隐期间,使聚集电机朝预界说的固定方向滚动一步,鄙人一场图画场同步的下降沿收集主动聚集算法模块输出的聚集函数值比较成果信号,若该信号为高电平,则标明当时图画比前一场图画明晰,则电机滚动方向正确,持续向该方向滚动一步,同理,鄙人一场图画的场同步下降沿收集聚集函数值比较成果信号,若为高电平,则持续向该方向滚动,若为低电平,则向相反方向滚动一步后中止电机滚动,则主动聚集完毕;若榜初次收集的聚集函数值比较成果信号为低电平,则标明初次设定的滚动方向过错,则向相反方向滚动两步后,鄙人一场图画的场同步下降沿判别聚集函数值比较成果信号,若为高电平,则持续沿该方向滚动,若为低电平,则向相反方向滚动一步后中止电机滚动,则主动聚集完毕。
(6) 体系操控
该模块首要对初始化模块、变倍盯梢模块、查找模块输出的变倍电机和聚集电机的驱动信号(包括滚动方向、步数)进行挑选输出,体系上电后,首要是初始化模块发生的驱动信号有用,初始化完毕后,其它模块才可正常作业,图画变倍时,变倍盯梢模块输出的电机驱动信号有用,变倍完毕后,查找模块发生的电机驱动信号有用。
(7)电机驱动模块
本项目选用的光学镜头具有变倍和聚集两个步进电机,光学变焦22倍,步距角18°,每步位移量0.02mm,转速600~800pps,选用2-2相驱动励磁办法,驱动脉冲改变如表1所示。
表1 步进电机驱动脉冲
1 |
2 |
3 |
4 |
|
A+ |
H |
H |
L |
L |
A- |
L |
L |
H |
H |
B+ |
L |
H |
H |
L |
B- |
H |
L |
L |
H |
若驱动脉冲按1à2à3à4方向循环宣布,则步进电机带动的镜片朝挨近图画传感器方向移动,反之朝远离图画传感器方向移动,然后可经过发生不同的驱动脉冲操控电机的滚动步数及滚动方向。
该模块依据体系操控模块输出的电机驱动信号(转向,步长)来发生对应的A+、A-、B+、B-电机驱动脉冲。该模块内部为模值为4的计数器,输入转向操控信号为高电平时,该计数器加法计数,转向为低电平时,计数器减法计数,依据输入的步长操控输出驱动脉冲的持续时刻长度,计数器值对应不同的驱动脉冲信号,则可发生不同方向、不同步长的电机驱动脉冲。
-
图画处理模块
图画处理模块可完结图画的紧缩编码、解码、本地存储及以太网传输。其内部功用模块如图7所示。
-
后端处理模块
后端处理模块首要完结了图画的帧率进步、图画扩展。其内部结构如图8所示。
该模块接纳16位的YCbCr(4:2:2)格局视频信号,并输入到输入缓冲,输入缓冲写满一行、即736*16数据后,触发主操控器读取,主操控器将从输入缓冲中接连读取一行数据并输出到DDR操控器模块,因为DDR存储器为双沿触发,所以主操控器模块将接纳的16位数据转化成32位宽。DDR操控器别离在260MHz时钟上升沿、下降沿将数据写入到DDR存储器的Bank0中,并从Bank1中每次接连读取一行图画数据,即736个数据,输出到输出缓冲中。当一帧图画都写入到Bank0中,则下一帧图画数据写入到Bank1中,并从Bank0中读取数据,一向按此规矩进行读写切换。一起,时序发生器模块发生1024*768@60Hz的行场扫描信号,内行场信号都有用时,在输出像素时钟同步下,从输出缓冲中读取视频数据,因为写入输入缓冲中的数据速率较低,在写满一帧图画的时刻内可从DDR中读出5帧,则输出图画的帧率可由12Hz进步至60Hz。色空间转化模块将16位的YCbCr(4:2:2)格局视频信号转化成24位的RGB信号,并经过图画扩展模块将分辩率由736*576扩展到1024*768。
-
输入缓冲模块
该模块内部包括一个异步先进先出(FIFO),宽度为16位,深度为2048,接纳格局转化模块输出的16位图画数据,写入速率为原视频输入像素时钟的2分频,当写满一行图画数据(736*16)时,触发主操控器发生读使能信号,在520MHz主时钟同步下,接连读取736个数据。
-
主操控器模块
该模块为视频处理的首要操控模块,接纳输入缓冲模块宣布的读触发信号,发生输入缓冲的读使能信号,从输入缓冲中读取数据,并转化成32数据宽度,转化办法与格局转化模块原理相同,转化后的32位宽数据写入到DDR操控器模块。该模块一起接纳输出缓冲模块宣布的写触发信号,并向DDR操控器模块宣布读恳求信号,接纳DDR操控器模块输出的32位宽的数据信息,并将32位宽数据转化成16位宽,写入到输出缓冲,每次接连写入数据个数为736。
当从输入缓冲模块接纳完一帧数据,并写入到DDR存储器Bank0空间后,第二帧数据将写入到Bank1空间,一起从Bank0中读取数据,写满一帧数据后,进行读写切换,因为写满一帧的时刻为输入图画的场周期,即83ms,读取一帧的时刻为输出视频的场频,即16.67ms,则在写满一帧数据的时刻内,可接连循环读出5帧数据,进步了帧率。
-
DDR操控器模块
该模块作业时,首要对DDR2存储器进行初始化,设置爆发长度为4。因为选用的DDR2存储器的行宽度为13位,所以设置刷新周期为64ms/213,即7.8125us。
该模块首要功用是接纳主操控器模块宣布的写指令、写地址、32位宽的写入数据,将数据写入到对应存储单元,因为DDR存储器为双沿触发,在内部260MHz时钟的上升沿和下降沿别离将低16位和高16位数据写入到DDR2存储器,一起接纳主操控器模块发生的读指令、读地址,并读取对应存储单元的数据,输出到主操控器模块。
-
时序发生器模块
该模块首要功用是依据VESA规范,发生1024*768@60Hz的行场扫描信号,并内行场信号都有用时,发生输出缓冲的读使能信号。
-
输出缓冲模块
该模块内部包括一个异步先进先出(FIFO),写时钟为520MHz的体系主时钟,写入数据来自主操控器模块从DDR操控器中读出的视频数据,每次接连写入一行数据,即736个数据,读时钟为时序发生器模块生成的输出像素时钟,读使能为时序发生器模块输出的读使能信号。
体系作业时,主操控器模块首要向输出缓冲中写入一行数据,在读使能信号有用时读取FIFO中的数据,当快读空时,触发主操控器模块从DDR存储器中再读取一行数据并写入到输出缓冲中,因为输出缓冲的读使能信号是输出时序信号的行场同步信号都有用时生成的,行同步信号有消隐时刻,所以输出缓冲模块不会呈现读空现象。
-
色空间转化模块
该模块将输出缓冲模块输出的16位YCbCr(4:2:2)格局视频信号转化成RGB空间(8:8:8)格局。首要将16位YCbCr(4:2:2)格局信号选用挨近插值算法生成24位YCbCr(4:4:4)格局视频信号。依据CCIR-601规范,数字YCbCr色空间到RGB色空间转化的公式为:
其间,Y的取值规模是(16,240),Cb、Cr的取值规模是(16,235)。
该转化公式完结时,因为含有小数乘法,可将小数乘以211,取整进行乘法运算,将运算成果右移11位,可近似求得小数的乘法运算。
该模块生成的RGB视频信号经外部D/A转化后,可直接输出到VGA接口,则图画传感器收集的图画可在VGA显现器上实时显现。
-
图画扩展模块
该模块完结图画的分辩率由736*576扩展到1024*768。
本项目选用一种特定份额的图画扩展算法。特定份额的图画扩展算法的起点是运用给定的扩展份额寻觅一个简略、易于完结且具有较高精度的核函数。其基本原理是,挑选两个互质的整数q和p,使其比值q/p与给定的扩展份额尽可能挨近。所以扩展算法简化为:运用原始图画的p个离散值求得接连核函数模型参数,并用采样率q对接连核函数模型从头采样,得到扩展后的q个像素值。在水平缓笔直方向上重复循环若干次可得到整幅图画的缩放成果。
将水平缓笔直扩展份额别离记为SC_X和SC_Y,则有:
SC_X = 1024/736 ≈ 1.3913
SC_Y = 768/576 ≈ 1.3333
因4/3 ≈1.3333与SC_Y近似,IZAS算法的列处理进程挑选将3行原始图画滤波插值扩展为4行,即选取笔直扩展份额。SC_Y0 = 4/3
7/5 = 1.4与SC_X挨近,IZAS算法的行处理进程挑选将5列原始图画滤波插值扩展为7列,即选取水平扩展份额,SC_X0 = 7/5
笔直方向扩展将3个原始像素扩展生成4个新像素,其核函数公式:
f0 = g0
f1 = 1/4 g0+3/4 g1
f2 = 2/4 g1+2/4 g2
f3 = 3/4 g2+1/4 g3
其间g标明原始输入像素数据,f标明扩展处理后输出的像素数据。
水平方向扩展将5个原始像素扩展生成7个新像素,其核函数公式:
f0 = g0
f1 = 2/7 g0+5/7 g1
f2 = 4/7 g1+3/7 g2
f3 = 6/7 g2+1/7 g3
f4 = 1/7 g2+6/7 g3
f5 = 3/7 g3+4/7 g4
f6 = 6/7 g4+1/7 g5
插值模块的完结需求必定的行缓存,来缓存三行数据,然后可依据插值算法来完结。规划中运用FPGA内部的块RAM存储器(Block RAM)来作为行缓存。
该模块内部功用模块如图9所示,数据传输操控模块操控对输入缓冲数据的更新和读取,并且在系数定标器模块挑选相应的插值系数送给插值模块进行插值核算。本项目选用的IZAS扩展算法核算每一个方针图画像素值需求原始图画相邻3行像素,因而输入缓冲模块选用3个双口SRAM来完结。可将原始图画的相邻3行像素写入双口SRAM中,核算出运用这三行数据能插值出的一切方针像素,然后更新较早写入双口SRAM对应的一行像素数据再进行插值核算。系数定标器模块含有从分辩率736*576扩展到分辩率1024*768所对应的插值系数。
图9 图画扩展模块内部结构图
数据存取操控处理由数据传输操控模块合作系数定标器模块和输入缓冲来完结。操控模块挑选当时行数据存入哪一个双口SRAM并发生读写地址。例如水平方向要进行2倍扩展时要读取2个原始像素,核算出4个插值像素,而在进行7/5倍扩展时要读取5个原始像素,核算出7个插值像素。因而在进行2倍扩展时接连读取缓冲里边的2个原始像素后要中止2个像素周期再读取新的原始像素,而进行7/5倍扩展时接连读取缓冲里边的5个原始像素后要中止2个像素周期再读取新的原始像素。
当一帧中的榜首行图画数据到来时,数据传输操控模块先将此行数据写入SRAM1中,不读取别的两个SRAM,第二行数据到来时操控模块将此行数据写入SRAM2中,第三行数据到来时操控模块将此行数据写入SRAM3中,当第四行数据到来时将此行数据写入SRAM1中,当第五行数据到来时,将此行数据写入SRAM2中如此重复完结数据的缓冲。别的因为图画在笔直方向也要进行4/3倍的扩展,即把三行数据核算出四行,所以每缓冲三行后要中止一行缓冲。
图10 插值算法模块内部寄存器
插值模块内部对R、G、B信号各有1组9个8位的寄存器,如图10所示。这9个寄存器分红a,b,c三组,别离接纳来自3个双口SRAM(SRAMi,i = 1,2,3)的输出数据。在输入时钟的同步下,寄存器a1在接纳到SRAM1输出的数据之前,先完结寄存器ai 给ai+1的数据赋值操作,别的2组寄存器顺次类推。
当输入到SRAM1和SARM2的数据别离满1行时,寄存器组a和b开端接纳数据并进行插值滤波,一起输出扩展后的数据。SRAM3一起缓冲下一行数据,缓冲完毕后新的一行数据开端往SRAM1中缓冲,如此替换循环。依据上述公式滤波R、G、B三个通道之一的插值核算的成果,以寄存器组a为例阐明如下:
fR0 =a1
fR1 =5/7 a2+2/7 a1
fR2 =4/7 a2+3/7 a1
fR3 =6/7 a2+1/7 a1
fR4 =1/7 a3+6/7 a2
fR5 =3/7 a2+4/7 a1
fR6 =2/7 a2+5/7 a1
为进步核算精确度,可将系数扩展210倍后与像素数据进行乘法运算,然后将乘积进行右移10位操作。
图画行数由576扩展到768时,扩展份额系数可选为4/3,则依据上述公式,用X[n]标明原始行相素数据,用Y[n]标明列扩展后走的数据,则扩展行的核算公式描绘为:
Y[0]=X[0];
Y[1]=0.25*X[0]+0.75*X[1];
Y[2]=0.75*X[1]+0.25*X[2];
Y[3]=X[2];
在FPGA内部完结上述算法,将X[n]右移2位得到0.25*X[n],将X[n]右移1位与X[n]右移2位相加得到0.75*X[n]。这样经过移位相加求和替代了乘法器,节省了体系资源并避免了浮点核算带来的舍入差错。
5.体系完结的要害规划
1. 完结了对DDR2存储器的操控,运用一片DDR2中的两个BANK空间作为帧缓存完结图画的帧率进步,将帧率由12Hz进步到60Hz。
2. 选用给定份额的图画扩展算法将图画分辩率由736*576扩展到1024*768,完结了图画的实时扩展。
3. 完结了灰度差分聚集算法,实时核算当时帧图画的聚集点评函数值,选用爬山查找战略完结对聚集电机的操控,完结图画的主动聚集。
4. 完结了对光学电机中变倍和聚集电机的驱动操控,完结了图画的变倍盯梢功用。
5. 建立了视频信号从输入,校对,处理,格局改换,输出,显现的完好渠道,在此渠道上能够进一步开发各种图画处理运用(如编解码、剖析、辨认、盯梢等算法)体系。
6.评测与定论
本项目规划的实时视频信号处理渠道完结了输入图画的格局转化、帧率进步、色空间转化等功用,并从输入图画的亮度信息中核算当时图画的高频重量,选用爬山查找战略,完结了图画的主动聚集,因为对整帧图画核算高频重量,该算法得到的聚集函数值较好的反映图画的离焦极性,可习惯不同的环境,因为FPGA的并行处理才能,本项目规划的变焦操控体系可一起操控变倍电机和聚集电机,极大进步了变倍盯梢速度。
运用渠道中的图画处理部分可完结图画的紧缩编码、解码、本地硬盘存储、网络传输等功用,该渠道可运用于高分辩率一体化网络摄像机、视频编解码芯片的研制。该渠道中前端处理和后端处理模块已在Xilinx XUPV5-LX110T FPGA开发板上验证,并取得了满足的作用。
附录1 图画收集板原理图
1. 图画传感器原理图
附图1
2. H桥驱动电路
附图2
3. 图画收集板与XUPV5-LX110T FPGA开发板接口
附图3
附录2 项目中运用的光学电机
附图4
附录3 图画收集板外观图
附图5
附录4 图画收集板与XUPV5-LX110T FPGA开发板衔接外观图
附图6