登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

图像处理 视频分析 机器视觉 模式识别

方向比努力更重要

 
 
 

日志

 
 
关于我

河北软件开发项目,电子警察卡口项目,公安天网项目,媒体流处理,数字图像处理。媒体服务器 RTSP、图像处理、车牌识别……DCT变换,H.264压缩

DV压缩原理深度分析   

2010-04-29 14:39:02|  分类: ____多媒体 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

经常听到朋友这样说,"DV格式的摄录一体机和录像机使用DV作为记录格式,那DVCPRO 50/Digital-S等50Mbps的格式使用了什么记录格式呢,究竟有什么分别呢?"带着这样的问题,我写作了本文,希望能对有同样疑问的朋友有所帮助。 众所周知,DVCAM以及DVCPRO都是基于DV的。一个记录格式是由几部分组成的,例如磁带的规格、磁记录的规格、视频信号的处理以及音频信号的处理等。不容否认的是,磁带的设计、磁记录的方式以及数据冗余度的处理都必然会对数据的记录和读取造成一定的影像,但这些并不是影像图像质量的主要因素,真正对视频信号的质量起决定性作用的是压缩。所以,我们不妨把主要精力集中到这里。 首先,我们应该了解到DV是一种分量信号记录格式,所谓分量实际是指Y/R-Y/B-Y三个分量,即亮度与两个色差。而国际电信联盟的数字电视演播室标准ITU-R BT.601建议,对于长宽比为4:3的电视信号,以13.5MHz的频率对分量信号进行PCM编码(限于篇幅关系,601建议中的细节部分从略)。DV正是采用了这种方法,对于525/60和625/50两种系统来说,其中亮度信号都是以13.5MHz进行取样,也就是说每个有效行中都取720个亮度信号样本。但对色差信号的处理方式对两种系统就有些不同了。在525/60系统中,对每个色差信号(Cr/Cb)都以3.375MHz的频率取样,即每行传送360个色差样值,每个分量各半,这就是通常所说的4:1:1取样结构;在625/50系统中,则采用了另一种方式,即对色差信号以6.75MHz的频率取样,但每一行只传送两种色差信号之中的一种(360个样值),两种色差信号每行交替传送,这就是4:2:0取样结构。但在两种系统中,Cr和Cb取样的起点和Y是相同的。 取样后的视频信号以5:1的比例被压缩,从而形成25Mb/s的码流。这种帧内压缩采用了离散余弦变换(Discrete Cosine Transform)和可变长编码(Variable Length Coding)。为了在25Mb/s的码流基础上实现优越的图像质量,DV压缩在编码前还采用了一种打乱顺序的技术,对于任何形式的图像,这种技术都可以最大的效率进行压缩,并保持恒定的图像质量。下图为简化的视频处理框图。 从图中可以看到,视频处理的第一个步骤是Blocking。在DV格式中,取样以后的视频数据是以所谓的宏块(macro block)为基础的。Blocking就是准备这些宏块单元的过程。首先,水平和垂直方向上的空白区域的数据被删除,然后,图像区域被分成8乘8点的块,为稍后进行的DCT做准备。对于625/50系统,一个宏块由四个上下左右相邻的亮度块和两个色度块构成;而对于525/60系统,宏块则是由水平方向相邻的两个亮度块和两个色度块所组成的。换句话说,无论对于哪种系统,宏块的大小都必须满足构成最小的8乘8的色度块,如下图所示。 27个相邻的宏块组成一个所谓的超块(Super Block)。引进超块,是为了平均图像细节以达到更好的压缩效果。在625/50系统中,一帧图像由12条磁迹组成,从一帧图像的顶部开始,每1/12帧的数据用一条磁迹记录在磁带上。超块的大小与这种屏幕到磁迹的数据分配有关系。 以625/50系统为例,每帧在垂直方向上有576个有效行,按照以上原则,一个超块的高度为576÷12=48,因为一个宏块的高度为16,所以每个超块的高度是宏块的3倍。又因为最终要在逻辑上达到5:1的压缩比,所以超块的宽度为整个图像的1/5。还以625/50系统为例,如上所述,一个宏块的宽度为16点,所以整个图像在水平方向上由45个宏块组成,因此一个超块的宽度为宏块的9倍。 在DV格式中,压缩是基于来自五个不同超块的五个宏块进行的,这五个宏块组成了所谓的视频段。首先,选择5个超块,然后来自每个超块内部同一位置的宏块被结合在一起,便形成了视频段,这个过程就是交错(Shuffling)。 交错技术的使用可以大大增强压缩的效率。这是因为在大多数图像中,细节的量并不连续,一些地方信息较多,而另一些地方信息则较少。另一个很重要的问题是,图像的中心不应有过度的压缩,因为重要的内容常出现在这里。如果交错过程不在压缩之前进行的话,要压缩的信息量就会因图像区域(或宏块)而异.因为压缩是以固定码率进行的,所以压缩后的图像的不同区域(宏块)看起来会不同。通过采用交错技术,每帧图像的信息都被平均了,并在图像内部保持一致。 在blocking和shuffling两个过程之后,每个8乘8的块都被送入到DCT编码器。DCT编码器将8乘8的基带块从时间域变换到频率域。这种变换的结果得到了8乘8的DCT块,其中的系数代表了块内不同频率分量的能量。在一个DCT块内,左上角的一个系数称为直流(DC)系数,其他的都称为交流(AC)系数。距离直流系数越远的系数代表的频率越高。在DC系数右边的系数比其左边的系数代表的水平频率要高;同样,在DC系数下边的系数比其上边的系数代表的垂直频率要高,在对角线方向上,距离右下角越近的系数,它所代表的水平和垂直频率也越高。 除了极其复杂的图像,大多数视频图像都的主要内容都在低频区,而高频区所含的内容极少。也就是说,在DCT块内,距离直流系数较近的系数比右下角的系数的值要大。 由于使用了帧内压缩,DV格式在处理帧内的图像运动时有两种方式,8-8和2-4-8方式。当检测到帧内无运动或奇数场与偶数场的变化很小时,就选用8-8模式,反之则选用2-4-8方式。这种模式的选择是很重要的,无论图像是运动的还是静止的,这样做都可以保持良好的图像质量。 下一步将要进行的就是量化。在这个过程中,为了限制视频段内的数据量,每一个交流系数都会被一个特定的数字分开,这个数字取决于量化器,即一个8行8列的表,表中的系数都是不小于1的数字。在量化过程中,直流系数不会被量化,因为它包含了主要的图像内容。限于篇幅,这部分内容从略。但需要注意的是,使用量化过程可以使经VLC后的码率接近于DV格式的25Mb/s。 接下来要进行的是可变长编码(VLC),真正的压缩就是在这一过程进行的。VLC变换可以将量化后定长的交流系数变换为可变长度的码字。量化器输出的直流系数后面紧接着的是交流系数,这个方法叫做Z型扫描(zigzag scan),交流系数是按频率输出的。不过,直流系数与交流系数是单独编码的。Z型扫描使输出的交流系数形成一长串,而大在多数情况下接近量化块左下角的交流系数都是0,这样就形成了一长串0。VLC将交流系数中0串中的每一个0系数至下一个非0系数都进行编码。每个代表串的码字由0串的长度和下一个非0系数的大小共同决定。这个过程称作改善的二维霍夫曼编码(modified 2-dimensional Huffman coding)。有关Z型扫描、码字长度和Huffman编码,请看以下三张图。 Z型扫描和VLC编码后的压缩数据流的长度(码率)因每个量化的DCT块而不同。这是因为每个原始的DCT块都有着不同的内容。也就是说,每个宏块压缩后的码率不同。正如前面所述,25Mbps的固定码率是在视频段级形成的,而不是在DCT块或宏块级。换句话说,通过在压缩流中合理地安排数据,就可以实现固定的25Mb/s输出。这个过程就称作成帧(framing)。 在成帧过程后进行的是de-shuffling过程,宏块流被重新分配到它们的原始位置。在记录到磁带之前,压缩的宏块流按照一定顺序被读到一个存储器里,形成所谓的成品块(product block)。每个成品块分别包含了一条磁迹上的数据。 对于视频数据来说,在成品块内占77列,135行,每一个宏块内的压缩数据流(77字节)存储在一行里,因为一条磁迹内含有135个宏块,所以共有135行。块内其余部分存有视频辅助数据(Video auxiliary data)、同步信号、ID数据等。每行都以同步信号开始,因此即使发生大量突发性错误,也可以较好地校正同步。 好了,到这里DV格式中对视频信号的处理基本上就结束了。下面我们再来看看相对简单一点的音频部分。音频信号被记录在两个块内,这两个块相互独立,但处理过程相同。在625/50系统中,6个音频字节分别记录在6条磁迹上,如图。 每个音频字节在成品块内占77列,9行,每行的长度与视频块相同。选择同样的同步块长度是为了简化处理电路。因为人耳对音频的错误比较敏感,所以在产品块中加入误码矫正数据之前,音频取样的顺序在音频块内就被打乱了。 每个音频块内都定义有音频的编码模式,主要区别是取样频率、量化位数和通道数的不同。通常,有两种模式可供选择。 值得注意的是,48K模式采用的是16位线性PCM编码,而32K模式采用的是12位非线性PCM编码,量化过程稍有不同,这里不再赘述。 以上,我们简单了解了DV格式中最重要的视频和音频信号处理两部分。从中,不难看出,为了在25Mbps的速率下实现较好的图像质量,DV采用了许多独到的技术。这大概也是世界上众多的家用电器制造商共同选择DV的原因之一吧?那么,我们不禁会问,DVCAM和DVCPRO这两个格式又和DV有什么不同呢?这个问题很有意思。其实,它们都是基于DV的,在视音频信号处理上几乎没有区别,只不过DVCPRO对于625/50和525/60采用一致的4:1:1取样结构。有人又会问,那这两种取样结构对图像质量会有何影响呢?这个问题也比较有意思,因为4:2:0实际上是在垂直方向上牺牲了彩色清晰度,而4:1:1则是在水平方向上牺牲了彩色清晰度。某些迹象表明,前者在显示方面有一定优势,因为人眼对水平方向上的细节更敏感一些,而后者呢,在多代复制性能上表现更加突出一些,两者各有利弊,所以我们不能仅从一方面来评出孰优孰劣。我认为,这两者倒是有一些共性,就是磁带厚度和磁迹宽度都比DV大,这也许是考虑到专业用户更多的编辑需要吧。 现在,我们就不难了解到,DVCPRO 50和Digital-S这两种50Mbps的记录格式,其实采用的也都是帧内DV压缩,只不过它们的取样结构符合ITU-R BT.601标准,而且压缩比在3.3:1左右,属于浅压缩范畴。这样做换来的是图像清晰度,尤其是彩色清晰度的提高,和多代复制能力的增强等等。但我们也不必惊惶,目前的DV设备普遍采用了IEEE 1394接口,复制是无损的,而且DV的性价比还是很高的。至于MPEG IMX,它采用的是一种纯I帧的MPEG压缩算法,虽然从整体上看,它和前面提到的两种格式都属于50Mbps级别,而且压缩比也是相同的,更是同属帧内压缩,但MPEG的压缩算法与DV采用的是不同的,主要区别在于量化矩阵的选择等方面。总之,它们二者各有千秋。

  评论这张
 
阅读(3073)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018