新一代的 压缩规格 WMV-9与H.264之压缩效能远高于DVD-Video规格所用之 MPEG -2规格。WMV-9 视频 编码技术具有优于H.264等级规格之压缩编码效能,却没有H.264之高运算复杂性,目前已在PC平台广泛使用。视频压缩标准之趋势已进入以H.264与WMV-9为主流之时代,本文将针对MPEG-2、H.264与WMV-9之技术效能差异进行比较。
现在是一个资讯爆炸的时代,因为科技日新月异,通讯越来越发达,透过视频与声音的传递使人与人间的距离越来越近,声音与视频将穿透每一个人之生活圈。但声音与视频的数据量相当庞大,比如说标准NTSC视频解析度为720×480、24bits真彩色16777216色之画面所占之存储容量为:
720×480×24×8=8294400 Bits="1013" KBytes
如果按目前视频播放的标准,每秒播放30个画面的计算,每秒钟所播放的数据为:1013K×30×8=242.4Mbps。面对如此庞大的数据量之储存与传输问题,压缩的技术就显得相当的重要了,各种压缩技术就由此发展出来。
图1 视频压缩标准之演变
各种影音光碟之物理容量皆有其上限,例如单面单层之DVD容量为4.7GB,单面单层之CD-ROM容量为650MB;只有透过视频压缩技术才能将视频数据量降低,才有办法使有限之碟片容量容纳135分钟之影片数据。因此,DVD与VCD采用了MPEG1&2压缩标准做为其视频数据之储存格式。本文将就各种视频压缩技术之压缩原理与效能做一简单介绍。
影音光碟规格与视频压缩规格之演变
过去十余年间,如图1所示,有微软、ITU与ISO/MPEG-Committee等两个国际组织推出不同之视频压缩标准。ITU先后制定了H.261、H.263与H.263++等规格,ISO/MPEG-Committee也曾推出MPEG-1/4等技术,1994年ITU与ISO/MPEG-Committee合作推出MPEG-2/H.262规格,成为DVD影音光碟与ATSC广播系统所采用之压缩标准。2002年,ITU与ISO/MPEG-Committee再度合作推出H.264/MPEG-4-Part10规格,其压缩效能可达MPEG-2之三倍,是目前学界与工业界竞相研究使用之先进影音压缩标准。在ITU与ISO/MPEG-Committee推出H.264/MPEG-4-Part10规格时,微软也将其所研发之WMV-9压缩技术搭配Window Media player播放软件,在个人电脑平台大量使用。
在1993年MPEG-1规格制定完成时,使用MPEG-1压缩标准之VCD影音光碟规格也同时推出;1994年MPEG-2压缩标准推出,1996年使用MPEG-2压缩标准之DVD-Video规格诞生,而延用至今。2002年H.264与WMV-9压缩规格推出后,FVD-Video、HD-DVD-Video与BD-Video等高画质影音光碟规格相继采用此两种压缩标准。由此可见,视频压缩标准与影音光碟规格之发展有高度之相关;今日之趋势已进入以H.264与WMV-9为主流之时代;本文接着也将针对MPEG-2、H.264与WMV-9之技术效能差异进行比较。
MPEG-2、WMV-9与H.264压缩规格所使用之基本技术比较
视频压缩方法是用于去除空间轴与时间轴上的多余资讯,以达成数据量缩减之目的。不同的压缩规格,使用不同的技术以去除多余资讯,而MPEG-2、WMV-9与H.264等规格之差异在于使用不同之基本压缩技术。兹就不同压缩规格所使用之基本压缩技术比较如表1所示。
www.55dianzi.com
运动估测技术之比较
运动估测技术上之主要差异有下列两点:
(1) 运算方块大小之不同;
(2) 运动向量之精度差异。
在 MPEG -2之 视频 压缩规格 中,运动估测所用之运算方块大小是固定的16×16像素,而运动向量之最大精度达1/2像素。在WMV-9之视频压缩规格中,其运动向量之最大精度由1/2像素提升至1/4像素,其运动估测所用之运算方块大小之选择可为16×16像素或8×8像素。H.264规格再将运动向量之最大精度提升至1/8像素,且运动估测所用之运算方块大小可 为16×16、8×16、16×8、8×8、8×4、4×8与4×4等七种模式。高精度之运动向量与多选择性之运动估测运算方块尺寸可使压缩效能提高,但也增加了编码过程之运算量。WMV-9与H.264规格之压缩效能可达MPEG-2之三倍,但其解码运算量也达MPEG-2之三至五倍。主要的差异皆来自运动估测方法之不同。
编码方法的比较
视频压缩规格皆使用可变长度编码(Variable length Coding)方法对各种数值做编码,所谓可变长度编码就是将不同的符号(symbol)以不同长度之Binary code作代表。如图2所示之DCT系数,在一个数之后跟随几个零,构成一组(Run,Level),即以不同的VLC码对应之,称为2D-VLC。而其中的Run是指在每个非零系数之前的连续的个数,Level指的是该非零系数的位阶值(及大小值),最后还会跟着一个位元用以编码该非零系数的符号,最后再以查表的方式将符号(symbol)转换成二进制码(Binary Codes)。
MPEG-2规格即使用图2之2D-VLC编码技巧。在WMV-9的VLC编码规格中舍去图2中间之“End of BLOCk”编码,增设Last Flag将2D-VLC扩大成如图2最右边所示之3D-VLC。3D-VLC对每一个符号(symbol)编码出一组(Last,Run,Level),与2D-VLC最主要的差异就是多出了Last栏位,该栏位用一个位元来标示在该非零系数之后是否还有其他的非零系数(0代表后头还有非零系数,1代表之后没有其他的非零系数)。在H.264的编码方法上有两种编码方法供编码器做选择:可变长度编码(UVLC)及前文参考之适应性二进制算术编码(CABAC),其中UVLC对于发生机率比较高的符号以较短的码加以编码,这些码都是以查表的方式运作,所以在编码端及解码端的编码表要一致。
图2 可变长度编码示意图
而CABAC与UVLC最大的不同点,在于其编码方法是具有适应性(adaptive),所谓的适应性是指对于编码过程中各个符号(symbol)出现的机率会一直动态地去统计并更新,以图3来说明CABAC的运作流程:输入信号经过Context Modeling后会先产生内文(Context),之后将其二进制化,接下来就是整个算术编码的核心,Probability Estimation负责动态地去估算机率,此机率值将会是算术编码最重要的输入参数,有此机率值Coding Engine就会将所有的符号(symbol)加以编码。分析两者的优缺点,CABAC由于一直动态地计算更新符号出现的机率,可以将资讯作适应性的调整并达到最佳的数据压缩率,然而如此也付出了运算量增加的代价,及执行效率上不如UVLC来得快速的缺点。
www.55dianzi.com
空间轴编码方法的比较
在空间轴编码方面, MPEG -2、WMV-9与H.264皆使用频域之DCT系数编码,所不同者在于MPEG-2使用浮点运算之DCT转换,H.264与WMV-9使用整数点运算之DCT转换,MPEG-2之转换运算方块为8×8,而H.264/AVC则使用4×4的转换,用来消除区块边缘的ringing artifact以及discontinuity,但是影像中的趋势(trend)和结构(texture),尤其是周期性的结构(perioDIC texture)使用较大的BLOCk size会有较好的保存效果,因此在WMV-9允许多种的Block size可供选择(包含8×8、4×8、8×4、以及4×4的尺寸),其中针对Intra pICture的frame level是固定使用8×8的尺寸,而Inter picture则可以选择4×8、8×4或4×4的尺寸。另外,WMV-9可选择在不同的level(frame、macroblock、bolck)做标记,例如在frame-level中标记使用8×8的尺寸做转换后,在同一frame中就都使用同样的尺寸来做转换,而在macroblock及block level中也是一样的规则。此特点使在同样压缩比之下,WMV-9之解压缩 视频 画质优于H.264。
编码效能比较
在后述的实验结果中,分别将WMV-9、MPEG-2与H.264编码效果做比较,以说明其编码性能。
上一篇:如何提高视频输出的质量