新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于NiosII的视频采集与DVI成像研究及实现

基于NiosII的视频采集与DVI成像研究及实现

作者: 时间:2010-05-31 来源:网络 收藏

  3.2 图像剪裁处理

  PAL-D制式视频在ITU-RBT.656标准下,输出像素面为720×576大小,而本设计中要求输出大小为640×480像素面,所以必须使得行720像素变为640个,采用每9个像素丢弃1个像素,因为Y/Cb/Cr是交替输出的,即Cb-Y-Cr-Y传输,每个像素都有亮度数据Y,但是色度Cr和Cb是交替的。如果第1个像素是Cb和Y数据,则第8个像素即为Cr和Y数据,第9个像素为Cb和Y数据,现在丢弃第9个像素数据,先把第10个素的Cr数据和第11个像素的Cb交换,这样就保持了Cb和Cr的交替。视频中采取每6行可视像素丢弃1行,对于576行可视像素,实际丢弃96行,即变为实际可显示480行。

  3.3 图像交织与存储处理

  视频信号采集控制处理后产生行、场、帧、视频有效标志及每场视频行数、每行像素点数。本设计利用这些信号组合作为存储地址控制字写入SSRAM,每2个DATACLK为1个像素数据,4个DATACLK为2个像素数据32 bit,控制每4个DATACLK写入一次32 bit数据。

  每场视频可视行为288行,占用2进制位9 bit,奇偶场标志1 bit,每行像素有640个,存入SSRAM时按照每2个像素写入一次,故每行像素为360个写入次,设计为9 bit,总共为19 bit,正好占用完19 bit地址线。

  奇偶场标志就是上述EAV/SAV状态字中的F,电视视频中,首先传输的是偶数场,此时A9=0;其次传输的是奇数场,此时A9=1。帧控制位frame定义为1 bit,当完成一帧的传输后就使frame=frame+1,这样帧控制位就是0-1-0-1-0-1序列,完成一帧传输就翻转一次。帧控制位用来切换存储体,当帧控制位切换在第一片SSRAM上时,偶数场先存入到SSRAM中,然后奇数场数据嵌入到SSRAM中。

  4 图像处理和编码显示

  视频采集的图像已经交替存入SSRAM中,当一帧存储完毕,该存储体就可以进行处理上传。图像处理包括Y/Cb/Cr 4:2:2格式转化为Y/Cb/Cr 4:4:4,Y/Cb/Cr转化为RGB格式,可实时RGB像素处理,像素处理后按照行、场同步信号依次送入芯片。

  4.1 YCrCb转RGB处理

  首先处理的是Y/Cb/Cr 4:2:2格式转化为Y/Cb/Cr 4:4:4格式,就是对每个像素扩展其色度数据,使得每个像素为24 bit。其中8 bit为亮度数据,8 bit为Cr数据,8 bit为Cb数据。

  由YCrCb数据转换为RGB数据可按照下式:

  R=1.164×(Y-16)+1.596×(Cr-128)

  G=1.164×(Y-16)-0.813×(Cr-128)-0.392×(Cb-128)(1)

  B=1.164×(Y-16)+2.017×(Cb-128)

  实际上片内不能进行小数运算,因此把需要运算的数左移9 bit,且运用片内的乘法器宏单元完成。则式(1)变为式(2):

  R=596×Y+817×Cr-114 131

  G=596×Y-416×Cr-200×Cb+69 370(2)

  B=596×Y+1 033×Cb-141 787

  这样得到的RGB信号只需要右移9 bit就可以得到正确的8 bit数据位宽度的RGB信号,对RGB像素的处理受核控制,挂接在核上的Avalon从设备有3 bit控制信号,其值从0~7,分别对应灰度处理、像素水平线性放大插值处理、水平缩小处理、原三彩色输出和无定义。

  若进行灰度处理,则按照下式计算:

  Y=0.299×R+0.587×G+0.114×B(3)

  在计算时也需要先左移9 bit,采用3路乘法MULT_

  ADD宏单元计算,计算结果右移9 bit。如果进行水平像素放大,则采取线性插值法,其他图像处理按照相应算法进行。



关键词: FPGA NiosII DVI 图像采集

评论


相关推荐

技术专区

关闭