当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于FPGA的高清视频采集与显示系统设计

高清视频采集与显示系统设计

近年来,高清网络摄像机席卷视频监控市场,传统的模拟摄像机也在寻找新的出路提升图像质量,采用非压缩方案的高清模拟摄像机成为首选。一般来说,非压缩方案的硬件平台有DSP或ASIC或FPGA。本文介绍了一种基于FPGA的视频采集与显示系统的设计。系统以FPGA为核心,配合高分辨率CCD图像传感器、ADC模数转换、视频编码器等,实现了高清视频实时采集与显示。详细阐述了色彩插值与色彩空间转换算法和BURST传输的FPGA硬件实现。

本文介绍了一种基于FPGA的视频采集与显示系统的设计。系统以FPGA为核心,配合高分辨率CCD图像传感器、ADC模数转换、视频编码器等,实现了高清视频实时采集与显示。详细阐述了色彩插值与色彩空间转换算法和BURST传输的FPGA硬件实现。测试表明,该系统运行良好,能够满足高清视频实时监控要求。

近年来,高清网络摄像机席卷视频监控市场,传统的模拟摄像机也在寻找新的出路提升图像质量,采用非压缩方案的高清模拟摄像机成为首选。一般来说,非压缩方案的硬件平台有DSP或ASIC或FPGA。它们各有优缺点,FPGA是现场可编程门阵列,兼顾了实时性与灵活性,而且还可以内嵌CPU,因此适合用来做图像处理。FPGA的最大缺点是功耗太大,但本文设计的不是便携式消费电子,功耗问题可以不考虑。

本文在数据传输方式上进行了创新,一般的视频采集与显示方案均需要使用2个DMA通道和2片SDRAM做缓存,本文采用自行编写的BURST模块传输,仅需要一片SDRAM,节省硬件开销的同时降低了PCB板的复杂度。

系统总体设计

FPGA是整个系统的核心,本文采用的FPGA是Cyclone系列的EP3C16,它内部集成了15408个逻辑单元,56个18×18乘法器,4个锁相环,CCD是SONY的ICX274,其有效分辨率是1600×1200,像素时钟是36MHz,并且逐行扫描。SDRAM是Micron的MT48LC2M32B2,容量是2M×32bit,完全满足本设计的需要。

首先ADC驱动CCD,CCD输出模拟视频,经过ADC转换成数字图像数据,然后通过FPGA内部的BURST传输写到SDRAM,在SDRAM内部开辟三段数据空间。其中code区域存放NIOS软件代码,bufferA和bufferB作为图像数据缓存,当图像数据写入bufferA时,可以读bufferB用于显示,当一帧数据采集完后,切换BURST传输地址,写入bufferB,此时读bufferA用于显示,这样数据可以不间断地采集和显示,这就是所谓乒乓操作。FPGA输出的视频数据经过编码器编码后形成串行码流,即SDI数据,然后经过同轴电缆线传输到具有SDI接口的显示器显示。其中,FLASH用来保存NIOS软件和FPGA硬件配置信息。

在FPGA内部实现的模块中,VIDEOIP是根据AVALON总线规范编写的用户自定义模块,其余的模块均是ALTERA提供的标准模块,只需要在SoPCBuilder中调用即可,因此本系统的设计主要是VIDEOIP的设计。

硬件模块设计

硬件模块也就是VIDEOIP模块,主要由色彩插值、色彩空间转换、FIFO三部分构成。基于成本与工程复杂度的考虑,本系统为单CCD系统,在CCD表面覆盖一层色彩滤波阵列(CFA),该滤波阵列采用Bayer格式,每个像素点只有一个颜色通道,为了实现彩色显示,每个像素点必须要有RGB3个通道,要通过色彩插值才能获得其余两个通道。本文处理的视频数据都是YCbCr格式,因此还需要经过色彩空间转换将RGB格式转换成YCbCr格式。由于NIOS处理器的位宽是32bit,而YCbCr(4:2:2)是16bit,所以YCbCr必须经过FIFO,当FIFO半满时,通过BURST传输写数据到SDRAM。值得注意的是:写入FIFO之前,YCbCr的格式是4:4:4,为了方便显示,必须转换成4:2:2,本设计采取了最简单的处理方式,就是Cb和Cr间隔采样。实验表明,这种处理不影响显示效果。

[!--empirenews.page--]

色彩差值算法

考虑到本文设计的系统主要用于视频监控,因此采用最简单的插值算法,即双线性正交法。该算法的原理是在每个像素的领域取8个像素构成3×3阵列,该阵列中心的像素为待插值像素,其中一个色彩通道直接使用该像素的数据,另外两个色彩通道通过计算领域的2个或4个像素的平均值获得。不同位置的像素四周情况不同,根据待插值像素所处位置总结出4种情况(设待插值像素坐标为(X,Y))。

  (a)R(X,Y)=[R(X,Y-1)+R(X,Y+1)]/2;

  G(X,Y)=G(X,Y);

  B(X,Y)=[B(X-1,Y)+B(X+1,Y)]/2;

  (b)R(X,Y)=[R(X-1,Y-1)+R(X+1,Y-1)+R(X-1,

  Y+1)+R(X+1,Y+1)]/4;

  G(X,Y)=[G(X-1,Y)+G(X,Y-1)+G(X+1,Y)+

  G(X,Y+1)]/4;

  B(X,Y)=B(X,Y);

  (c)R(X,Y)=R(X,Y);

  G(X,Y)=[G(X-1,Y)+G(X,Y-1)+G(X+1,Y)+

  G(X,Y+1)]/4;

  B(X,Y)=[B(X-1,Y-1)+B(X+1,Y-1)+

  B(X-1,Y+1)+B(X+1,Y+1)]/4;

  (d)R(X,Y)=[R(X-1,Y)+R(X+1,Y)]/2;

  G(X,Y)=G(X,Y);

  B(X,Y)=[B(X,Y-1)+B(X,Y+1)]/2

由于要形成3×3阵列,因此FPGA硬件实现时,为色彩插值模块,采用3个双口RAM分别保存3行数据,其中A、B、C、D、E、F表示寄存器,CCD的数据是在行场同步控制下从左到右、从上到下输出,在行场同步下先把第一行数据写到RAM1,写完第一行再切换到第二行,写完第二行再写第三行,第三行写完第3个数据即可读出RAM和各寄存器的数据做色彩插值,当第三行写完以后,第四行数据再写到RAM1,以此类推,一直循环直到一帧数据处理结束。值得注意的是:3×3阵列各行的数据是循环切换的,当RAM1保存的是3×3阵列的第一行数据时,3×3阵列第一行数据从左到右依次为B、A、RAM1,第二行数据从左到右依次D、C、RAM2,第三行数据从左到右依次为F、E、RAM3;当RAM2保存第一行数据时,第一行是D、C、RAM2,以后各行循环切换,不再赘述。

3×3阵列的数据进入多路选择器,根据当前的位置以及所需的颜色通道选出4个像素进行相加求和运算。4个像素的获得方法是:当是1个像素时,复制3次;得到4个像素,当是2个像素求平均时,每个像素各复制1次;当是4个像素求平均时,不用复制。

本文采用的CCD为SONY的ICX274,其有效分辨率为1600×1200,而用于显示的分辨率为1280×720(720P),因此需要截取1600×1200为1282×722进行插值,增加两行两列是为了做边界处理。

色彩空间转换

本文采用的转换关系如下:

Y=0.257×R+0.504×G+0.098×B+16

Cb=-0.148×R-0.291×G+0.439×B+128

Cr=0.439×R-0.368×G-0.071×B+128

在FPGA实现时,以上转换关系要调用乘加单元。其中为了保持数据的稳定,增加处理速度,增加了三级流水线,由于系数为小数,因此先左移8位,取整数后分别与R、G、B相乘,再右移8位输出,最后与整数相加输出YCbCr格式数据。

突发传输模块

经过上述两步处理以后的视频数据即可用于显示,本文采用突发传输方案。视频数据首先经过FIFO缓冲,然后经过突发传输写到SDRAM,数据从SDRAM读出也是采用突发传输,读出的数据再经过另外的FIFO缓冲以后即可用于显示。突发(BURST)传输一次进行多个数据单元的传输,而不仅仅是把每个数据单元作为一次单独的传输。这样便提高了从端口的数据吞吐量,在主端口一次处理多个数据单元时,可以达到极高的效率。要使用突发传输就必须严格按照突发传输的规范设计AVALON总线接口。限于篇幅,本文不再详述AVALON总线接口。

测试结果

本系统使用了48%的逻辑单元和40%的存储器,还有剩余的资源可以给系统增加更多的功能。该系统运行良好。本文设计的基于FPGA的高清视频处理系统,能在FPGA硬件设备中高速、高质量地对CCD传感器采集的Bayer图像进行色彩插值和色彩空间转换,经过SDI编码后能够实时显示。在本设计的基础上可以增加更多的功能以改变图像质量,例如3A算法(自动曝光,自动白平衡,自动聚焦)。


 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭