.视频压缩名字解释:
1、有损和无损压缩:在视频压缩中有损(Lossy )和无损(Lossless)的概念与静态图像中基本类似。无损压缩也即压缩前和解压缩后的数据完全一致。有损压缩意味着解压缩后的数据与压缩前的数据不一致。在压缩的过程中要丢失一些人眼和人耳所不敏感的图像或音频信息,而且丢失的信息不可恢复。丢失的数据率与压缩比有关,压缩比越小,丢失的数据越多,解压缩后的效果一般越差。此外,某些有损压缩算法采用多次重复压缩的方式,这样还会引起额外的数据丢失。
2 、帧内和帧间压缩:帧内(Intraframe)压缩也称为空间压缩(Spatial compression)。当压缩一帧图像时,仅考虑本帧的数据而不考虑相邻帧之间的冗余信息,这实际上与静态图像压缩类似。帧内压缩一般达不到很高的压缩。采用帧间(Interframe)压缩是基于许多视频或动画的连续前后两帧具有很大的相关性,或者说前后两帧信息变化很小的特点。也即连续的视频其相邻帧之间具有冗余信息,根据这一特性,压缩相邻帧之间的冗余量就可以进一步提高压缩量,减小压缩比。帧间压缩也称为时间压缩(Temporal compression),它通过比较时间轴上不同帧之间的数据进行压缩。帧间压缩一般是无损的。
3 对称和不对称编码:对称性(symmetric)是压缩编码的一个关键特征。对称意味着压缩和解压缩占用相同的计算处理能力和时间,对称算法适合于实时压缩和传送视频,如视频会议应用就以采用对称的压缩编码算法为好。不对称或非对称意味着压缩时需要花费大量的处理能力和时间,而解压缩时则能较好地实时回放,也即以不同的速度进行压缩和解压缩。一般地说,压缩一段视频的时间比回放(解压缩)该视频的时间要多得多。
4、 影响数字视频质量的因素:
在多媒体数字视频中有五个重要的技术参数将最终影响视频图像的质量,它们分别为帧速、分辨率、颜色数、压缩比和关键帧。
(1)帧速:常用的有25帧/秒(PAL)、30帧/秒(NTSC)。帧速越高,数据量越大,质量越好。
(2)分辨率:视频分辨率越大,数据量越大,质量越好。这里要注意区分视频分辨率和视频显示分辨率(显示的像素点数)。
(3)颜色数:指视频中最多能使用的颜色数。颜色位数越多,色彩越逼真,数据量也越大。
(4)压缩比:压缩比较小时对图像质量不会有太大影响,而超过一定倍数后,将会明显看出图像质量下降,而且压缩比越大在回放时花费在解压的时间越长。
(5)关键帧:视频数据具有很强的帧间相关性,动态视频压缩正是利用帧间相关性的特点,通过前后两个关键帧动态合成中间的视频帧。因此对于含有频繁运动的视频图像序列,关键帧数少就会出现图像不稳定的现象。
MPEG视频压缩编码后包括三种元素:I帧(I-frames)、P帧(P-frames)和B帧(B-frames)。在MPEG编码的过程中,部分视频帧序列压缩成为I帧;部分压缩成P帧;还有部分压缩成B帧。I帧法是帧内压缩法,也称为“关键帧”压缩法。I帧法是基于离散余弦变换DCT( Discrete Cosine Transform )的压缩技术,这种算法与JPEG压缩算法类似。采用I帧压缩可达到1/6的压缩比而无明显的压缩痕迹。
在保证图像质量的前提下实现高压缩的压缩算法,仅靠帧内压缩是不能实现的,MPEG采用了帧间和帧内相结合的压缩算法。 P帧法是一种前向预测算法,它考虑相邻帧之间的相同信息或数据,也即考虑运动的特性进行帧间压缩。P帧法是根据本帧与相邻的前一帧(I帧或P帧)的不同点来压缩本帧数据。采取P帧和I帧联合压缩的方法可达到更高的压缩且无明显的压缩痕迹。
然而,只有采用B帧压缩才能达到200:1的高压缩。B帧法是双向预测的帧间压缩算法。当把一帧压缩成B帧时,它根据相邻的前一帧、本帧以及后一帧数据的不同点来压缩本帧,也即仅记录本帧与前后帧的差值。B帧数据只有I帧数据的百分之十五、P帧数据的百分之五十以下。
MPEG标准采用类似4:2:2的采用格式,压缩后亮度信号的分辨率为352×240,两个色度信号分辨率均为176×120,这两种不同分辨率信息的帧率都是每秒30帧。其编码的基本方法是在单位时间内,首先采集并压缩第一帧的图像为I帧。然后对于其后的各帧,在对单帧图像进行有效压缩的基础上,只存储其相对于前后帧发生变化的部分。帧间压缩的过程中也常间隔采用帧内压缩法,由于帧内(关键帧)的压缩不基于前一帧,一般每隔15帧设一关键帧,这样可以减少相关前一帧压缩的误差积累。MPEG编码器首先要决定压缩当前帧为I帧或P帧或B帧,然后采用相应的算法对其进行压缩。一个视频序列经MPEG全编码压缩后可能的格式为:IBBPBBPBBPBBPBBIBBPBBPBBPBBPBBI......
压缩成B帧或P帧要比压缩成I帧需要多得多的计算处理时间。有的编码器不具备B帧甚至P帧的压缩功能,显然其压缩效果不会很好。
.视频压缩技术
一、视频编码的基本原理:
视频图像数据有极强的相关性,也就是说有大量的冗余信息。其中冗余信息可分为空域冗余信息和时域冗余信息。压缩技术就是将数据中的冗余信息去掉(去除数据之间的相关性),压缩技术包含帧内图像数据压缩技术、帧间图像数据压缩技术和熵编码压缩技术。
去时域冗余信息
使用帧间编码技术可去除时域冗余信息,它包括以下三部分:
- 运动补偿
运动补偿是通过先前的局部图像来预测、补偿当前的局部图像,它是减少帧序列冗余信息的有效方法。
- 运动表示
不同区域的图像需要使用不同的运动矢量来描述运动信息。运动矢量通过熵编码进行压缩。
- 运动估计
运动估计是从视频序列中抽取运动信息的一整套技术。
注:通用的压缩标准都使用基于块的运动估计和运动补偿。
去空域冗余信息
主要使用帧间编码技术和熵编码技术:
- 变换编码
帧内图像和预测差分信号都有很高的空域冗余信息。变换编码将空域信号变换到另一正交矢量空间,使其相关性下降,数据冗余度减小。
- 量化编码
经过变换编码后,产生一批变换系数,对这些系数进行量化,使编码器的输出达到一定的位率。这一过程导致精度的降低。
- 熵编码
熵编码是无损编码。它对变换、量化后得到的系数和运动信息,进行进一步的压缩。
视频编码的基本框架(图)
国际音视频压缩标准发展历程
H.261标准是为ISDN设计,主要针对实时编码和解码设计,压缩和解压缩的信号延时不超过150ms,码率px64kbps(p=1~30)。
H.261标准主要采用运动补偿的帧间预测、DCT变换、自适应量化、熵编码等压缩技术。 只有I帧和P帧,没有B帧,运动估计精度只精确到像素级。支持两种图像扫描格式:QCIF和CIF。
H.263标准是甚低码率的图像编码国际标准,它一方面以H.261为基础,以混合编码为核心,其基本原理框图和H.261十分相似,原始数据和码流组织也相似;另一方面,H.263也吸收了MPEG等其它一些国际标准中有效、合理的部分,如:半像素精度的运动估计、PB帧预测等,使它性能优于H.261。
H.263使用的位率可小于64Kb/s,且传输比特率可不固定(变码率)。H.263支持多种分辨率: SQCIF(128x96)、 QCIF、CIF、4CIF、16CIF。
与H.261和H.263相关的国际标准
与H.261有关的国际标准
H.320:窄带可视电话系统和终端设备;
H.221:视听电信业务中64~1 920Kb/s信道的帧结构;
H.230:视听系统的帧同步控制和指示信号;
H.242:使用直到2Mb/s数字信道的视听终端的系统。
与H.263有关的国际标准
H.324:甚低码率多媒体通信终端设备;
H.223:甚低码率多媒体通信复合协议;
H.245:多媒体通信控制协议;
G.723.1.1:传输速率为5.3Kb/s和6.3Kb/s的语音编码器。
国际标准化组织于1986年成立了JPEG(Joint Photographic Expert Group)联合图片专家小组,主要致力于制定连续色调、多级灰度、静态图像的数字图像压缩编码标准。常用的基于离散余弦变换(DCT)的编码方法,是JPEG算法的核心内容。
MPEG-1标准用于数字存储体上活动图像及其伴音的编码,其数码率为1.5Mb/s。 MPEG-1的视频原理框图和H.261的相似。
MPEG-1视频压缩技术的特点:1. 随机存取;2. 快速正向/逆向搜索;3 .逆向重播;4. 视听同步;5. 容错性;6. 编/解码延迟。MPEG-1视频压缩策略:为了提高压缩比,帧内/帧间图像数据压缩技术必须同时使用。帧内压缩算法与JPEG压缩算法大致相同,采用基于DCT的变换编码技术,用以减少空域冗余信息。帧间压缩算法,采用预测法和插补法。预测误差可在通过DCT变换编码处理,进一步压缩。帧间编码技术可减少时间轴方向的冗余信息。
MPEG-2被称为“21世纪的电视标准”,它在MPEG-1的基础上作了许多重要的扩展和改进,但基本算法和MPEG-1相同。
MPEG-4标准并非是MPEG-2的替代品,它着眼于不同的应用领域。MPEG-4的制定初衷主要针对视频会议、可视电话超低比特率压缩(小于64Kb/s)的需求。在制定过程中,MPEG组织深深感受到人们对媒体信息,特别是对视频信息的需求由播放型转向基于内容的访问、检索和操作。
MPEG-4与前面提到的JPEG、MPEG-1/2有很大的不同,它为多媒体数据压缩编码提供了更为广阔的平台,它定义的是一种格式、一种框架,而不是具体算法,它希望建立一种更自由的通信与开发环境。于是MPEG-4新的目标就是定义为:支持多种多媒体的应用,特别是多媒体信息基于内容的检索和访问,可根据不同的应用需求,现场配置解码器。编码系统也是开放的,可随时加入新的有效的算法模块。应用范围包括实时视听通信、多媒体通信、远地监测/监视、VOD、家庭购物/娱乐等。
JVT:新一代的视频压缩标准
JVT是由ISO/IEC MPEG和ITU-T VCEG成立的联合视频工作组(Joint Video Team),致力于新一代数字视频压缩标准的制定。
JVT标准在ISO/IEC中的正式名称为:MPEG-4 AVC(part10)标准;在ITU-T中的名称:H.264(早期被称为H.26L)
H264/AVC
H264集中了以往标准的优点,并吸收了以往标准制定中积累的经验, 采用简洁设计,使它比MPEG4更容易推广。H.264创造性了多参考帧、多块类型、整数变换、帧内预测等新的压缩技术,使用了更精细的分象素运动矢量(1/4、1/8)和新一代的环路滤波器,使得压缩性能大大提高,系统更加完善。
H.264主要有以下几大优点:
- 高效压缩:与H.263+和MPEG4 SP相比,减小50%比特率
- 延时约束方面有很好的柔韧性
- 容错能力
- 编/解码的复杂性可伸缩性
- 解码全部细节:没有不匹配
- 高质量应用
- 网络友善
二、监控中的视频编码技术:
目前监控中主要采用MJPEG、MPEG1/2、MPEG4(SP/ASP)、H.264/AVC等几种视频编码技术。对于最终用户来言他最为关心的主要有:清晰度、存储量(带宽)、稳定性还有价格。采用不同的压缩技术,将很大程度影响以上几大要素。
MJPEG
MJPEG(Motion JPEG)压缩技术,主要是基于静态视频压缩发展起来的技术,它的主要特点是基本不考虑视频流中不同帧之间的变化,只单独对某一帧进行压缩。
MJPEG压缩技术可以获取清晰度很高的视频图像,可以动态调整帧率、分辨率。但由于没有考虑到帧间变化,造成大量冗余信息被重复存储,因此单帧视频的占用空间较大,目前流行的MJPEG技术最好的也只能做到3K字节/帧,通常要8~20K!
MPEG-1/2
MPEG-1标准主要针对SIF标准分辨率(NTSC制为352X240;PAL制为352X288)的图像进行压缩. 压缩位率主要目标为1.5Mb/s.较MJPEG技术,MPEG1在实时压缩、每帧数据量、处理速度上有显著的提高。但MPEG1也有较多不利地方:存储容量还是过大、清晰度不够高和网络传输困难。
MPEG-2 在MPEG-1基础上进行了扩充和提升,和MPEG-1向下兼容,主要针对存储媒体、数字电视、高清晰等应用领域,分辨率为:低(352x288),中(720x480),次高(1440x1080),高(1920x1080)。MPEG-2视频相对MPEG-1提升了分辨率,满足了用户高清晰的要求,但由于压缩性能没有多少提高,使得存储容量还是太大,也不适和网络传输。
MPEG-4
MPEG-4视频压缩算法相对于MPEG-1/2在低比特率压缩上有着显著提高,在CIF(352*288)或者更高清晰度(768*576)情况下的视频压缩,无论从清晰度还是从存储量上都比MPEG1具有更大的优势,也更适合网络传输。另外MPEG-4可以方便地动态调整帧率、比特率,以降低存储量。
MPEG-4由于系统设计过于复杂,使得MPEG-4难以完全实现并且兼容,很难在视频会议、可视电话等领域实现,这一点有点偏离原来地初衷。另外对于中国企业来说还要面临高昂的专利费问题,目前规定:
- 每台解码设备需要交给MPEG-LA 0.25美元
- 编码/解码设备还需要按时间交费(4美分/天=1.2美元/月 =14.4美元/年)
H.264/AVC
H.264集中了以往标准的优点,在许多领域都得到突破性进展,使得它获得比以往标准好得多整体性能:
- 和H.263+和MPEG-4 SP相比最多可节省50%的码率,使存储容量大大降低;
- H.264在不同分辨率、不同码率下都能提供较高的视频质量;
- 采用“网络友善”的结构和语法,使其更有利于网络传输。
H.264采用简洁设计,使它比MPEG4更容易推广,更容易在视频会议、视频电话中实现,更容易实现互连互通,可以简便地和G.729等低比特率语音压缩组成一个完整的系统。
MPEG LA吸收MPEG-4的高昂专利费而使它难以推广的教训,MPEG LA制定了以下低廉的H.264收费标准:H.264广播时基本不收费;产品中嵌入H.264编/解码器时,年产量10万台以下不收取费,超过10万台每台收取0.2美元,超过500万台每台收取0.1美元。低廉的专利费使得中国H.264监控产品更容易走向世界。
监控中视频编码分辨率的选择
目前监控行业中主要使用以下分辨率:SQCIF、QCIF、CIF、4CIF。
SQCIF和QCIF的优点是存储量低,可以在窄带中使用,使用这种分辨率的产品价格低廉;缺点是图像质量往往很差、不被用户所接受。
CIF是目前监控行业的主流分辨率,它的优点是存储量较低,能在普通宽带网络中传输,价格也相对低廉,它的图像质量较好,被大部分用户所接受。缺点是图像质量不能满足高清晰的要求。
4CIF是标清分辨率,它的优点是图像清晰。缺点是存储量高,网络传输带宽要求很高,价格也较高。
分辨率新的选择-528x384
2CIF(704x288)已被部分产品采用,用来解决CIF清晰度不够高和4CIF存储量高、价格高昂的缺点。但由于704x288只是水平分辨率的提升,图像质量提高不是特别明显。
经过测试,我们发现另外一种2CIF分辨率528x384,比704x288能更好解决CIF、4CIF的问题。特别是在512Kbps-1Mbps码率之间,能获得稳定的高质量图像,满足用户较高图像质量的要求。目前这一分辨率已被许多网络多媒体广播所采用,被广大用户所接受。比如杭州网通网上影院是采用512x384分辨率,在768k下能稳定地获得近似DVD的图像质量。
监控中实现视频编码的最佳方式
目前视频编码正处于一个技术日新月异的时期,视频编码的压缩性能在不断得到提升。
在监控中主要使用ASCI和DSP两种方案。由于ASIC芯片的设计、生产周期过长,使它已跟不上视频编码的发展速度。而DSP芯片,由于它的通用设计,使它能实现各种视频编码算法,并且可以及时更新视频编码器,紧跟视频编码的发展速度。另外使用DSP芯片可以比ASIC更灵活的配置编码器,使编码器达到最佳性能。
海康威视产品目前达到的技术水准
海康威视产品采用最先进的H.264视频压缩算法和高性能的DSP处理器。
强大的H.264视频压缩引擎使产品获得极高的压缩比、高质量的图像质量和良好的网络传输性能。高性能的DSP处理器能灵活的配置视频编/解码器:动态设置分辨率、帧率、码率、图像质量等;可以双码流输出,达到本地存储和网络传输分别处理的功能。
使用TM130X DSP的产品,单个芯片能实时压缩一路以下分辨率的视频:SQCIF、QCIF、CIF、2CIF(PAL:704x288或528x384)。
使用DM642 DSP的产品,单个芯片能实时压缩4路以下分辨率的视频:SQCIF、QCIF、CIF、2CIF(PAL:704x288或528x384)。单个芯片能实时压缩2路4CIF视频。
电视节目制作数字网络化已成为大家关心的热点,其中重要的技术之一是数字视频压缩。运动图像专家组(MPEG)是ISO/IEC的一个工作组,负责开发运动图像、声频及其混合信息的压缩、解压缩、处理和编码表示方面的国际标准。MPEG已经制定了MPEG-1、MPEG-2和MPEG-4标准。MPEG-1和MPEG-2已广泛应用在多媒体工业,例如数字电视、CD、视频点播、归档、因特网上的音乐等等。MPEG-4主要用于64 kb/s以下的低速率音视频编码,以使用于窄带多媒体通信等领域。MPEG目前正在制定MPEG-7和MPEG-21。但M-JPEG、MPEG-2和DV三大压缩技术已占据着当今视频压缩技术的主要地位,呈现互不替代,激烈竞争,共同发展的状态。
M-JPEG和DV均采用帧内压缩方式,压缩效率要比MPEG-2低。在低码率的时候,MPEG-2可以提供比M-JPEG高的压缩比而保持较好的图像质量;在要求高图像质量的时候(比如节目编辑和后期制作),MPEG-2与M-JPEG、DV的输出码率差别要小得多。电视台业务的多样性要求压缩标准能提供多种码率。可变码率(VBR)特性对电视台有效利用资源非常重要。MPEG-2可以通过改变GOP结构和DCT及霍夫曼编码的参数来调整输出码率;M-JPEG可以通过改变DCT及霍夫曼编码参数调节压缩比;DV格式因其应用特点,没有提供VBR。M-JPEG发展较早,在非线性视频编辑方面应用多年,软、硬件技术成熟,成本低廉,以目前硬件平台而言,平均比MPEG-2平台便宜5000美元左右。目前,M-JPEG、DV和MPEG-2三个标准各有长处,设备都获得了广泛使用。日本和北美大多用DV格式进行后期制作;EBU在1999年的D84、D85技术声明中推荐电视台在演播室使用50 Mb/s的纯I帧4:2:2P MPEG-2;而中国在广泛使用M-JPEG的同时热烈讨论MPEG-2 IBP格式的编辑。
下面针对现今在电视台数字化网络中主要应用的两种视频压缩技术,即M-JPEG和MPEG-2做一下对比。最后对MPEG-7作简单概述。
M-JPEG是针对活动图像而优化的JPEG压缩而称。而JPEG是针对一帧图像DCT变换来对图像数据进行压缩,通过对电视数字信号(4:2:2数据)的每一帧进行JPEG压缩。由于电视编辑、特技制作均需要以帧为基本单位,所以对以帧为单元进行压缩(帧内压缩)的M-JPEG格式被成功地用于数字视频系统,特别是数字非线性节目编辑系统。目前我国非线性编辑系统大都采用4:1 M-JPEG压缩,被认为是可以接受的广播级水平。当PAL制4:2:2数字信号采用4:1压缩时,其数据率是5 MB/s(40M b/s), 每小时视频节目占用18 GB存储空间。由于M-JPEG是帧内压缩方式,可以提供精确到帧的随机存取访问,不附带任何的访问延迟,能够实现精确到帧的节目编辑。 所谓MPEG-2压缩是根据运动图像相邻帧之间有一定的相似性原则,通过运动预测,参考前一帧图像与这一帧图像的相似情况,去掉与前一帧相似的冗余数据,而只记录这一帧与上一帧不同的数据,从而大大提高了视频数据的压缩效率,这种压缩方法也称为帧相关压缩。因为采用运动预测帧相关的压缩方式,针对视频压缩有很好的效果,在获得广播级数字视频质量的前提下,可以实现20:1的压缩效率,数据率可降至1 MB/s(8M b/s),一小时视频节目占用3.6 GB空间。数据存储空间利用率高,网络传输效率是M-JPEG系统的5倍以上。这给基于MPEG-2压缩视频的存储、传输、编辑、播出带来极大的好处,在存储方面可以大大节约存储体成本,并能引入各种类型的存储介质,如硬盘、光盘、数据磁带以及存储器芯片等。
但由于MPEG-2格式只有一个完整的帧,即I帧,所以在电视需要帧精确地进行剪接时会带来一定的困难,需要硬件板卡或软件系统的支持。MPEG-2在压缩方面有帧内压缩和帧间压缩两种方式,使用三种类型的图像,即I帧、P帧和B帧。I帧使用帧内压缩,不使用运动补偿,提供中等压缩比。由于I帧不依赖其它帧,所以是随机存取的入点,同时是解码的基准帧。P帧根据前面的I帧或P帧进行预测,使用运动补偿算法进行压缩,压缩比要比I帧高。P帧是对B帧和后继P帧进行解码的基准帧。它本身有误差,会造成误差传播。B帧是基于内插重建的帧,它基于前后两个IP帧或PP帧,不传播误差。它使用双向预测进行压缩,提供更高的压缩比。目前各硬件板卡厂商正在抓紧开发,以解决基于MPEG-2的IBP帧编辑,目前国内很多公司如奥维迅、索贝、大洋已经用软件解决了IBP帧精确编辑的问题,使MPEG-2格式应用到电视节目的制作、传输、存储、播出,构架全电视台的数字化网络系统成为可能。
1996年10月,运动图像专家组开始着手一项新的研究课题来解决多媒体内容描述的问题,即多媒体内容描述接口(简称MPEG-7)。MPEG-7将扩大现今在识别内容方面存在的能力限制,将包括更多的数据类型。MPEG-7的目标是支持多种音频和视觉的描述,包括自由文本、N维时空结构、统计信息、客观属性、主观属性、生产属性和组合信息。对于视觉信息,描述将包括颜色、视觉对象、纹理、草图、形状、体积、空间关系、运动及变形等。
MPEG-7的目标是根据信息的抽象层次,提供一种描述多媒体材料的方法以便表示不同层次上的用户对信息的需求。以视觉内容为例,较低抽象层将包括形状、尺寸、纹理、颜色、运动(轨道)和位置的描述。对于音频的较低抽象层包括音调、调式、音速、音速变化、音响空间位置。MPEG-7的目标是支持数据管理的灵活性、数据资源的全球化和互操作性。
对于未来的多媒体服务,必须将内容的表示和描述共同来考虑,也就是说,许多涉及内容表示的服务必须要首先处理内容描述。利用MPEG-7 描述可用的音视信息,大家就能快速找到我们想要的信息,可以更加自由的与多媒体内容交互及重新使用音视信息的内容,或以新的方式将这些内容的某些成分结合起来使用。
编解码技术在过去十年中不断改进。最新的编解码技术(H.264/AVC与VC-1)代表着第三代视频压缩技术。为具体应用选择正确的编解码器并优化其实时实施仍然是一项巨大的挑战,最佳的设计必须权衡压缩效率及可用的计算能力。 ……
视频压缩是所有令人振奋的、新型视频产品的重要动力。为具体应用选择正确的编解码器并优化其实时处理仍然是一项巨大的挑战。最佳的设计必须权衡压缩效率及可用的计算能力。此外,如何在计算能力有限的情况下获得最佳压缩效率也是一门大学问。
数字视频的主要挑战在于原始或未压缩的视频需要存储或传输大量数据。例如,标准清晰度的 NTSC 视频的数字化一般是每秒 30 帧速率,采用 4:2:2 YCrCb 及 720×480,其要求超过 165Mbps 的数据速率。保存 90 分钟的视频需要 110GB 空间,或者说超过标准 DVD-R 存储容量的 25 倍。即使是视频流应用中常用的低分辨率视频(如CIF:352×288 4:2:0、30 帧/秒)也需要超过 36.5Mbps 的数据速率,这是 ADSL 或 3G 无线等宽带网络速度的许多倍。目前的宽带网可提供 1~10Mbps 的持续传输能力,显然数字视频的存储或传输需要采用压缩技术。
视频压缩的目的是对数字视频进行编码——在保持视频质量的同时占用尽可能少的空间。编解码技术理论依据为信息理论的数学原理。不过,开发实用的编解码技术需要艺术性的精心考虑。
压缩权衡
在选择数字视频系统的编解码技术时需要考虑诸多因素。主要因素包括应用的视频质量要求、传输通道或存储介质所处的环境(速度、时延、错误特征)以及源内容的格式。同样重要的还有预期分辨率、目标比特率、色彩深度、每秒帧数以及内容和显示是逐行扫描还是隔行扫描。压缩通常需要在应用的视频质量要求与其他需求之间做出取舍。首先,用途是存储还是单播、多播、双向通信或广播?对于存储应用,到底有多少可用的存储容量以及存储时间需要多久?对于存储之外的应用,最高比特率是多少?对于双向视频通信,时延容差或容许的端到端系统延迟是多少?如果不是双向通信,内容需要在脱机状态提前完成编码还是需要实时编码?网络或存储介质的容错能力如何?根据基本目标应用,不同压缩标准以不同方式处理这些问题的权衡。
另一方面是需要权衡编解码实时处理的成本。如 H.264/AVC 或 WMV9/VC-1等能够实现较高压缩比的新算法需要更高的处理能力,这会影响编解码器件的成本、系统功耗以及系统内存。
……
标准对编解码技术的普及至关重要。出于规模经济原因,用户根据可承受的标准寻找相应产品。由于能够保障厂商之间的互操作性,业界乐意在标准方面进行投资。而由于自己的内容可以获得较长的生命周期及广泛的需求,内容提供商也对标准青睐有加。尽管几乎所有视频标准都是针对少数特定应用的,但是在能够适用的情况下,它们在其他应用中也能发挥优势。
为了实现更好的压缩及获得新的市场机遇,ITU与 MPEG 一直在不断发展压缩技术和开发新标准。中国最近开发了一种称为 AVS 的国家视频编码标准,我们在后面也会做一介绍。目前正在开发的标准包括 ITU/MPEG 联合可扩展视频编码 (Joint Scalable Video Coding)(对 H264/ AVC 的修订)和MPEG 多视角视频编码 (Multi-view Video Coding)。另外,为了满足新的应用需求,现有标准也在不断发展。例如,H.264 最近定义了一种称为高精度拓展 (Fidelity Range Extensions) 的新模式,以满足新的市场需求,如专业数字编辑、HD-DVD 与无损编码等。
…………视频压缩正在市场中催生数量日益增长的数字视频产品。采用数字视频压缩技术的终端设备范围广泛,从电池驱动的便携设备到高性能基础设备。
数字视频的最佳处理器解决方案取决于具体的目标应用。TI 拥有可支持多种标准并满足主要设计及系统约束需求的各种 DSP。TI的解决方案范围广泛,其中包括低功耗 C5000 DSP与移动OMAP 应用处理器、高性能C6000 DSP 与视频优化的高性能 DM64x 和 DM644x 数字媒体处理器。
德州仪器 (TI) 的DM 列处理器专门针对高端视频系统的需求而设计。该系列的最新处理器是功能强大的 DM6446[15],其采用了TI的达芬奇 (DaVinci)技术[16]。DM6446的双内核架构兼具DSP和RISC技术优势,集成了时钟频率达594MHz 的c64x+ DSP内核与ARM926EJ-S内核。新一代c64x+ DSP 是 TMS320C6000(tm) DSP 平台中性能最高的定 DSP,并建立在TI开发的第二代高性能高级VLIW架构的增强版之上。c64x+与前代C6000 DSP平台代码兼容。DM644x等可编程数字媒体处理器可以支持所有的现有业界标准以及采用单个可编程数字媒体处理器的专有视频格式。DM6446 还具有片上内存,包括一个2级高速缓存和众多具有视频专用功能的外设。DM6446 还包含一种视频/影像协处理器 (VICP),用于减轻相关算法(如:JPEG、H.264、MPEG4 与 VC-1)的 DSP 内核繁重的视频与影像处理负担,从而使更多的 DSP MIPS能够用于视频后处理或者其他并行运行等功能。
压缩标准规定需要的语法与可用的工具,不过许多算法结果取决于具体实施情况。主要变量包括:比特率控制算法、单通道与多通道编码、I/B/P 帧比率、运动搜索范围、运动搜索算法、以及选用的个别工具与模式。这种灵活性允许我们在计算负载和改进质量之间做出不同取舍。显然所有编码器都可以采用或高或低的频率实现不同的视频质量水平。
越来越多的视频压缩标准可以针对具体最终应用提供越来越高的压缩效率和越来越丰富的工具。另外,向网络化连接发展的趋势意味着许多产品越来越需要支持多种标准。多种标准和专有算法的流行也使我们难以选择单个标准,尤其是在硬件决策经常超前于产品部署的情况下。不仅如此,每个视频编码算法都提供丰富的工具与功能选择,以平衡压缩效率的复杂性。工具和功能的选择是与特定应用和用例息息相关的重复过程。由于必须支持的编解码器数量的增多以及针对具体解决方案和应用而对编解码器进行优化的选择范围更为广泛,因此在数字视频系统中采用灵活的媒体处理器是大势所趋。DM6446等数字媒体处理器可充分满足性能处理需求同时架构灵活,从而能够快速把新标准实施推向市场,其中包括:H.264、AVS 与 WMV9。我们可以在标准定义阶段实施算法并且保持软件算法与工具的更新,从而紧随标准大大小小的修改并且满足应用不断变化的质量需求。
.视频压缩标准
一、 视频压缩标准介绍:
视频编码标准主要由ITU-T和ISO/IEC开发。前者已经发布了视频会议标准H.261、 H.262、H.263,并且准备进行远期编码标准H.263L的开发,以期望获得更大的编码效率。ISO/IEC的标准系列是大家熟悉的MPEG家族。包括:
(1)MPEG-1(1988~1992),可以提供最高达1.5Mbps的数字视频,只支持逐行扫描;
(2)MPEG-2(1990~1994),支持的带宽范围从2Mbps到超过20Mbps,MPEG-2后向兼容MPEG-1,但增加了对隔行扫描的支持,并有更大的伸缩性和灵活性;
(3)MPEG-4(1994~1998),支持逐行扫描和隔行扫描,是基于视频对象的编码标准,通过对象识别提供了空间的可伸缩性;
(4)MPEG-7(1996~2000),是多媒体内容描述接口,与前述标准集中在音频/视频内容的编码和表示不同,它集中在对多媒体内容的描述。
除了上述通用标准外,还存在很多专用格式,比较流行的有:C-Cube的M-JPEG、Intel的IVI(tm)(Indeo Video Interactive)、Apple的QuickTime(tm)、Microsoft的 Media Player(tm)和RealNetworks的RealPlayer(tm)。
二 数字视频传输 :
根据承载网络的变化和视频服务的区别,可以将数字视频的传输分为四类:数字电视、宽带视频通信、Internet视频流通信、蜂窝移动视频通信。
虽然这四种通信体系下对视频通信的协议和服务有不同的要求,但对于实时应用下述几点是必须满足的:(1)传输必须限制在一定时限内完成;(2)必须对端到端的抖动建议限制;(3)必须有相应的同步机制;(4)在分组网络中应当有较高的优先级。
1 数字电视广播
欧洲走在了全球DVB开发最前面,将其采纳为数字电视DTV的标准;在美国,ATSC采用了HDTV;在亚太地区,日本采用了基于DVB和ATSC的ISDB-T,澳大利亚采用了DVB,韩国则采用了ATSC标准,我国也在制定数字电视的标准,并进行了现场试验。下面我们以欧洲的DTV标准为主分别介绍DTV系统规范和传输技术。
a.DTV系统规范
根据传输系统的不同,DTV系统分为三类:陆基系统 DTV-T、卫星系统 DTV-S、有线系统 DTV-C。这三类DTV系统虽然各有不同,但也有公共的特性,MPEG-2视频和音频编码系统是所有DTV系统的基础。系统采用MPEG-2将数据压缩并组装成分组,称为净荷。对净荷采用Reed-Solomon前向纠错编码,降低信号传输中引入的误码。
卫星系统采用单载波信号,采用外部编码的同时,内部加入了打孔卷积编码,从而又增加了一层误码纠错能力,根据带宽的变化和采用的特定设备,编码数据是可调整的,信号采用QPSK方式调制。
陆基系统联合使用码正交频分复用 COFDM或者QPSK或QAM进行射频调制,采用了和卫星系统相似的打孔卷积编码。
有线系统采用了QAM调制方案,不需要附加的内部编码来降低误码,系统优化采用64-QAM。
b. DTV系统传输结构
DTV系统广播和接收的基本结构由三个子系统构成:
(1)信源编码和压缩子系统,通过ADC接受模拟视频和音频信号并将其转换成数字比特流,然后通过MPEG-2进行压缩,并加入控制和辅助数据;
(2)服务复用和传递子系统,复用将视频和音频及辅助数据流联合构成长188字节的分组,并加上标记,分组构成单个数据流,采用MPEG-2传递系统语法控制这些复用任务;
(3)传输子系统,包括对复用数据流的信道编码和调制。
2 宽带视频通信
这里讨论的宽带视频通信主要是指基于宽带核心网络和宽带接入技术的MPEG-2视频通信。为了满足实时视频通信对带宽的需求,核心网络通常采用宽带光纤网络,可以是ATM或者基于MPLS的宽带IP与ATM的结合,最后一公里的宽带接入的方法有光纤到户、光纤到楼双绞线到户及ADSL,最近也提出了宽带无线接入技术。通常,来自多个链路的数据业务在数字用户线路接入复用器(DSLAM)汇总。DSLAM将ATM业务路由到家中的ADSL接收器单元,同时,滤掉低频段的旧电话业务POTS 。在MPEG-2视频的情形下,ATM边界设备减轻信元的时延抖动的能力至关重要。ATM必须应付数据传输的需要并提供管理每个视频流的功能,特别要满足按序提取视频分组的要求。为了补偿网络传输延时,ATM网络边界设备必须精心设计以处理MPEG交换和抖动管理。本地MPEG-2视频流通过数字视频广播异步串行接口传输。ATM边界设备将MPEG-2多节目传输流(MPTS)或单节目传输流(SPTS)拆解到节目层并最终到分组标记(PID)层。在PID层,不同的节目流可以重新排序并复用进另外的MPTS。在ATM边界接收端,另外的边界设备管理ATM信元流,并重构SPTS或MPTS。本地的服务分布网络负责在本地的UTP网络分发视频内容。功能强大的MPEG-2压缩算法结合智能的ATM边界设备允许最后接入利用DSL技术作为视频分发的接入机制。(未完待续)
3、相关信息:
1.前言
数字视频产品需求近些年出现猛增。主流应用包括视频通信、安全监控与工业自动化,而最热门的要算娱乐应用,如 DVD、HDTV、卫星电视、高清 (HD) 机顶盒、因特网视频流、数码相机与 HD 摄像机、视频光盘库 (video jukebox)、高端显示器(LCD、等离子显示器、DLP)以及个人摄像机等。众多精彩的新应用目前也处于设计或前期部署中,例如针对家庭与手持设备及地面/卫星标准(DVB-T、DVB-H、DMB)的高清 DVD(蓝光/HD-DVD)和数字视频广播、高清视频电话、数码相机以及 IP 机顶盒。由于手持终端计算能力的提高以及电池技术与高速无线连接的发展,最终产品的移动性与集成性也在不断提高。
视频压缩是所有令人振奋的、新型视频产品的重要动力。压缩-解压(编解码)算法可以实现数字视频的存储与传输。典型的编解码器要么采用行业标准,如 MPEG2、MPEG4、H.264/AVC 与 AVS,要么采用专有算法,如 On2、Real Video、Nancy与Windows Media Video (WMV) 等。WMV 是个例外——它最初是微软公司的专有算法,而现在则以 VC-1 的新名称在业界实现了标准化。编解码技术在过去十年中不断改进。最新的编解码技术(H.264/AVC 与 VC-1)代表着第三代视频压缩技术。这两种编解码技术利用如可编程 DSP 与ASIC 等低成本 IC 的处理能力,都能够达到极高的压缩比。不过,为具体应用选择正确的编解码器并优化其实时处理仍然是一项巨大的挑战。最佳的设计必须权衡压缩效率及可用的计算能力。此外,如何在计算能力有限的情况下获得最佳压缩效率也是一门大学问。
在本文中,我们首先概述视频编码的主要概念,同时介绍传统压缩标准。然后我们重点介绍其中包括 H.264/AVC、WMV9/VC-1与AVS 等在内的最新编解码技术的功能,此外,还将深入探讨压缩能力与复杂性之间的权衡。最后,讨论市场中可能会影响主流视频编解码器未来的实时处理与主要趋势。
数字视频的主要挑战在于原始或未压缩的视频需要存储或传输大量数据。例如,标准清晰度的 NTSC 视频的数字化一般是每秒 30 帧速率,采用 4:2:2 YcrCb 及 720(480,其要求超过 165Mbps 的数据速率。保存 90 分钟的视频需要 110GB 空间,或者说超过标准 DVD-R 存储容量的 25 倍。即使是视频流应用中常用的低分辨率视频(如:CIF:352x288 4:2:0、30 帧/秒)也需要超过 36.5Mbps 的数据速率,这是 ADSL 或 3G 无线等宽带网络速度的许多倍。目前的宽带网可提供 1~10Mbps 的持续传输能力。显然数字视频的存储或传输需要采用压缩技术。
视频压缩的目的是对数字视频进行编码——在保持视频质量的同时占用尽可能少的空间。编解码技术理论依据为信息理论的数学原理。不过,开发实用的编解码技术需要艺术性的精心考虑。
4. 压缩权衡
在选择数字视频系统的编解码技术时需要考虑诸多因素。主要因素包括应用的视频质量要求、传输通道或存储介质所处的环境(速度、时延、错误特征)以及源内容的格式。同样重要的还有预期分辨率、目标比特率、色彩深度、每秒帧数以及内容和显示是逐行扫描还是隔行扫描。压缩通常需要在应用的视频质量要求与其他需求之间做出取舍。首先,用途是存储还是单播、多播、双向通信或广播?对于存储应用,到底有多少可用的存储容量以及存储时间需要多久?对于存储之外的应用,最高比特率是多少?对于双向视频通信,时延容差或容许的端到端系统延迟是多少?如果不是双向通信,内容需要在脱机状态提前完成编码还是需要实时编码?网络或存储介质的容错能力如何?根据基本目标应用,不同压缩标准以不同方式处理这些问题的权衡。
另一方面是需要权衡编解码实时处理的成本。如 H.264/AVC 或 WMV9/VC-1等能够实现较高压缩比的新算法需要更高的处理能力,这会影响编解码器件的成本、系统功耗以及系统内存。
5. 标准化机构
在视频编解码技术定义方面有两大标准机构。国际电信联盟 (ITU) 致力于电信应用,已经开发了用于低比特率视频电话的 H.26x 标准,其中包括 H.261、H.262、H.263 与 H.264;国际标准化组织 (ISO) 主要针对消费类应用,已经针对运动图像压缩定义了 MPEG 标准。MPEG 标准包括 MPEG1、MPEG2 与 MPEG4。图 1 说明了视频编解码标准的发展历程。
MPEG 与 ISO 根据基本目标应用往往做出稍有不同的取舍。有时它们也会开展合作,如:联合视频小组 (JVT),该小组定义了 H.264 编解码技术,这种技术在 MPEG 系列中又被称为 MPEG4-Part 10 或 MPEG4 高级视频编解码 (AVC)。我们在本文中将这种联合标准称为 H.264/AVC。同样,H.262 对应 MPEG2,而 H.263 基本规范类 (Baseline Profile) 技术在原理方面与 MPEG4 简单类 (Simple Profile) 编解码技术存在较多重复。
标准对编解码技术的普及至关重要。出于规模经济原因,用户根据可承受的标准寻找相应产品。由于能够保障厂商之间的互操作性,业界乐意在标准方面进行投资。而由于自己的内容可以获得较长的生命周期及广泛的需求,内容提供商也对标准青睐有加。尽管几乎所有视频标准都是针对少数特定应用的,但是在能够适用的情况下,它们在其他应用中也能发挥优势。
图1:ITU 与 MPEG 标准的发展历程 [10]
为了实现更好的压缩及获得新的市场机遇,ITU 与 MPEG 一直在不断发展压缩技术和开发新标准。中国最近开发了一种称为 AVS 的国家视频编码标准,我们在后面也会做一介绍。目前正在开发的标准包括 ITU/MPEG 联合可扩展视频编码 (Joint Scalable Video Coding)(对 H264/ AVC 的修订)和MPEG 多视角视频编码 (Multi-view Video Coding)。另外,为了满足新的应用需求,现有标准也在不断发展。例如,H.264 最近定义了一种称为高精度拓展 (Fidelity Range Extensions) 的新模式,以满足新的市场需求,如专业数字编辑、HD-DVD 与无损编码等。
除了 ITU 与 ISO 开发的行业标准以外,还出现了几种专用于因特网流媒体应用、广受欢迎的专有解决方案,其中包括 Real Networks Real Video (RV10)、Microsoft Windows Media Video 9 (WMV9) 系列、ON2 VP6 以及 Nancy。由于这些格式在内容中得到了广泛应用,因此专有编解码技术可以成为业界标准。2003 年 9 月,微软公司向电影与电视工程师学会 (SMPTE) 提议在该机构的支持下实现 WMV9 位流与语法的标准化。该提议得到了采纳,现在 WMV9 已经被 SMPTE 作为 VC-1 实现标准化。
6. 视频编码原理
我们感兴趣的所有视频标准都采用基于模块的处理方式。每个宏模块一般包含 4 个 8(8 的光度块和 2 个 8(8 的色度块(4:2:0 色度格式)。视频编码基于运动补偿预测(MC),变换与量化及熵编码。图 2 说明的是一种典型的、基于运动补偿的视频编解码技术。在运动补偿中,通过预测与最新编码的("参考")视频帧处于同一区域的视频帧中各宏模块的像素来实现压缩。例如,背景区域通常在各帧之间保持不变,因此不需要在每个帧中重新传输。运动估计 (ME) 是确定当前帧——即与它最相似的参考帧的 16(16 区域中每个 MB 的过程。ME 通常是视频压缩中最消耗性能的功能。有关当前帧中各模块最相似区域相对位置的信息("运动矢量")被发送至解码器。
MC 之后的残差部分分为 8(8 的模块,各模块综合利用变换编码、量化编码与可变长度编码技术进行编码。变换编码(如:离散余弦变换或 DCT)利用残差信号中的空间冗余。量化编码可以消除感知冗余 (perceptual redundancy) 并且降低编码残差信号所需要的数据量。可变长度编码利用残差系数的统计性质。通过 MC 进行的冗余消除过程在解码器中以相反过程进行,来自参考帧的预测数据与编码后的残差数据结合在一起产生对原始视频帧的再现。
图 2:标准运动补偿视频编码
在视频编解码器中,单个帧可以采用三个模式中的一个进行编码 —— 即 I、P 或 B 帧模式(见图 3)。几个称为 Intra (I) 的帧单独编码,无需参考任何其他帧(无运动补偿)。某些帧可以利用 MC 编码,以前一个帧为参考(前向预测)。这些帧称为预测帧 (P)。
B 帧或双向预测帧通过之前的帧以及当前帧的后续帧进行预测。B 帧的优势是能够匹配堵塞在采用前向预测的上一帧中的背景区域。双向预测通过平衡前向及后向预测可以降低噪声。在编码器中采用这种功能会要求更多处理量,因为必须同时针对前向及后向预测执行 ME,而这会明显使运动估计计算需求加倍。为了保存两个参考帧,编码器与解码器都需要更多内存。B 帧工具需要更复杂的数据流,因为相对采集及显示顺序而言,帧不按顺序解码。这个特点会增加时延,因此不适合实时性较高的应用。B 帧不用于预测,因此可以针对某些应用进行取舍。例如,在低帧速应用中可以跳过它们而不会影响随后 I 与 P 帧的解码。
图3:I、P 与 B 帧间预测图示
7. 传统视频编码标准
H.261
ITU 编制的 H.261[2] 标准是第一个主流视频压缩标准。它主要针对双工视频会议应用,是为支持 40kpbs~2Mbps 的 ISDN 网络而设计的。H.261 支持 352(288 (CIF) 及 176(144 (QCIF) 分辨率,色度分辨率二次采样为 4:2:0。由于可视电话需要同步实时编解码,因此复杂性设计得较低。由于主要用于对延迟敏感的双向视频,因此 H.261 仅允许采用 I 与 P 帧,而不允许 B 帧。
H.261 采用基于块的 DCT 进行残差信号的变换编码。DCT 把像素的每个 8(8 块映射到频域,产生 64 个频率成分(第一个系数称为 DC,其他的称为 AC)。为了量化 DCT 系数,H.261 在所有 AC 系数中采用固定的线性量化。量化后的系数进行行程编码,其可以按非零系数描述量化的频率,后面跟随一串零系数,在最后一个非零值之后以块代码结束。最后,可变长度编码 (Huffman) 将运行级别对 (run-level pair) 转换成可变长度编码 (VLC),其比特长度已针对典型概率分布进行过优化。
基于标准块的编码最终产生模块化视频。H.261 标准利用环路滤波避免这种现象。在模块边缘采用的简单 2D FIR 滤波器用于平滑参考帧中的量化效应。必须同时在编码器及解码器中精确地对每个比特应用上述滤波。
MPEG-1
MPEG-1[3] 是 ISO 开发的第一个视频压缩算法。主要应用是数字媒体上动态图像与音频的存储与检索,如速率为 1.15Mbps、采用 SIF 分辨率(352(240 - 29.97fps 或者 352(288 - 25 fps)的VCD。MPEG-1 与 H.261 相似,不过编码器一般需要更高的性能,以便支持电影内容的较高运动性而不是典型的可视电话功能。
与 H.261 相比,MPEG1 允许采用 B 帧。另外它还采用自适应感知量化,也就是说,对每个频段采用单独的量化比例因子(或等步长),以便优化人们的视觉感受。MPEG-1 仅支持逐行视频,因此新标准——MPEG2 已经开始做出努力,同时支持分辨率及比特率更高的逐行与隔行视频。
MPEG-2/H.262
MPEG-2[4] 专门针对数字电视而开发,很快成为了迄今最成功的视频压缩标准。MPEG-2 既能够满足标准逐行视频的需求(其中视频序列由一系列按一定时间间隔采集的帧构成),又能够满足电视领域常用的隔行视频的需求。隔行视频交替采集及显示图像中两组交替的像素(每组称为一个场)。这种方式尤其适合电视显示器的物理特性。MPEG2 支持标准的电视分辨率,其中包括:针对美国和日本采用的 NTSC 制式隔行 720(480 分辨率,每秒 60 场,以及欧洲和其他国家采用的PAL 制式的 720(576 分辨率,每秒 50 场。
MPEG-2 建立在 MPEG-1 基础之上,并具备扩展功能,能支持隔行视频及更宽的运动补偿范围。由于高分辨率视频是非常重要的应用,因此 MPEG-2 支持的搜索范围远远大于 MPEG-1。与之前的标准相比,它显著提高了运动估计的性能要求,并充分利用更宽搜索范围与更高分辨率优势的编码器需要比 H.261 和 MPEG-1 高得多的处理能力。MPEG2 中的隔行编码工具包含优化运动补偿的能力,同时支持基于场和基于帧的预测,而且同时支持基于场和基于帧的 DCT/IDCT。MPEG-2 在 30:1 左右的压缩比时运行良好。MPEG-2 在 4-8Mbps 时达到的质量适合消费类视频应用,因此它很快在许多应用中得到普及,如:数字卫星电视、数字有线电视、DVD 以及后来的高清电视等。
另外,MPEG-2 增加了分级视频编码工具,以支持多层视频编码,即:时域分级、空域分级、SNR 分级以及数据分割。尽管 MPEG-2 中针对分级视频应用定义了相关类别 (profile),不过支持单层编码的主类 (Main Profile) 是当今大众市场中得到广泛应用的唯一 MPEG-2 类。MPEG-2 通常称为 MPEG-2 主类。
MPEG-2 解码最初对于通用处理器及 DSP 具有很高的处理要求。优化的固定功能 MPEG-2 解码器开发已问世,由于使用量较高,成本已逐渐降低。MPEG2 证明低成本芯片解决方案的供应是视频编解码标准成功和普及的关键。
H.263
H.263[5] 在 H.261 之后得到开发,主要是为了以更低的比特率实现更高的质量。其主要目标之一是基于普通 28.8Kbps 电话调制解调器的视频。目标分辨率是 SQCIF (128(96)~CIF (352(288)。其基本原理与 H.261 大同小异。
H.263 的运动矢量在两个方向上允许是 1/2 的倍数(“半像素”),参考图像以数字方式内插到更高的分辨率。这种方法可以提高 MC 精度及压缩比。MV 可采用更大的范围。为不同方案提供许多新的选项,包括:
* 4 个运动矢量——每个块采用一个运动矢量,而非整个 MB 采用单个运动矢量。
* 3D VLC:Huffman 编码——将块结束 (EOB) 指示符与每个运行级别对结合在一起。这种功能主要用于低比特率,这时大多时候只有一、两个编码系数。
尽管存在这些功能,但是仍然很难在普通电话线上实现理想的视频质量,而且目前基于标准调制解调器的可视电话仍然是一个难题。不过,由于 H.263 一般情况下可提供优于 H.261 的效率,它成为了电视会议首选的算法,但是,为了兼容旧系统,仍然需要支持 H.261。H.263 逐渐发展成为了 H.263+,其增加了可选的附件,为提高压缩并实现分组网的鲁棒性提供支持。H.263 及其附件构成了 MPEG-4 中许多编码工具的核心。
MPEG-4
MPEG-4[6] 由 ISO 提出,以延续 MPEG-2 的成功。一些早期的目标包括:提高容错能力以支持无线网、对低比特率应用进行更好的支持、实现各种新工具以支持图形对象及视频之间的融合。大部分图形功能并未在产品中受到重视,相关实施主要集中在改善低比特率压缩及提高容错性上。.
MPEG-4 简化类 (SP) 以H.263为基础,为改善压缩增加了新的工具,包括:
* 无限制的运动矢量:支持对象部分超出帧边界时的预测。
* 可变块大小运动补偿:可以在 16(16 或 8(8 粒度下进行运动补偿。
* 上下文自适应帧内 DCT DC/AC 预测:可以通过当前块的左右相邻块预测 DC/AC DCT 系数。
* 扩展量化 AC 系数的动态范围,支持高清视频:从 H.263 的 [-127:127] 到 [-2047, 2047]。
增加了容错功能,以支持丢包情况下的恢复,包括:
* 片断重同步 (Slice Resynchronization):在图像内建立片断 (slice),以便在出现错误后更快速的进行重新同步。与 MPEG-2 数据包大小不同,MPEG4 数据包大小与用于描述 MB 的比特数量脱离了联系。因此,不管每个 MB 的信息量多少,都可以在位流中按相同间隔进行重新同步。
* 数据分割:这种模式允许利用唯一的运动边界标记将视频数据包中的数据分割成运动部分和 DCT 数据部分。这样就可以实现对运动矢量数据更严格的检查。如果出现错误,我们可以更清楚地了解错误之处,从而避免在发现错误情况下抛弃所有运动数据。
* 可逆 VLC:VLC 编码表允许后向及前向解码。在遇到错误时,可以在下一个slice进行同步,或者开始编码并且返回到出现错误之处。
* 新预测 (NEWPRED):主要用于在实时应用中实现快速错误恢复,这些应用中的解码器在出现丢包情况下采用逆向通道向解码器请求补充信息。
MPEG-4 高级简化类 (ASP) 以简化类为基础,增加了与 MPEG-2 类似的 B 帧及隔行工具(用于Level 4 及以上级别)。另外它还增加了四分之一像素运动补偿及用于全局运动补偿的选项。MPEG-4 高级简化类比简化类的处理性能要求更高,而且复杂性与编码效率都高于 MPEG-2。
MPEG-4 最初用于因特网数据流,例如,已经被 Apple 的 QuickTime 播放器采用。MPEG-4 简化类目前在移动数据流中得到广泛应用。MPEG-4 ASP 是已经流行的专有 DivX 编解码器的基石。
工具与压缩增益
当我们查看 H.261、MPEG1、MPEG2 与 H.263 视频编解码技术中引入的功能时,明显可以发现几种基本技巧提供了大部分压缩增益。图 4 说明这些技巧及其相关效果。与 4 个运动矢量以及四分之一像素运动补偿等工具相比,运动补偿(整数像素与半像素)的效果显然更为突出。
图 4:基本技巧的效果:1) 无 MC;2) 增加 Skip 模式构成 CR 编码器;3) 仅允许零 MV;4) 允许整数像素 MC;5) 允许半像素 MC;6) 允许 4-MV;7) 允许四分之一像素MC。如欲了解有关详细说明,敬请参见 [7]。
7. H.264/ MPEG4-AVC
视频编码技术在过去几年最重要的发展之一是由 ITU 和 ISO/IEC 的联合视频小组 (JVT) 开发了 H.264/MPEG-4 AVC[8] 标准。在发展过程中,业界为这种新标准取了许多不同的名称。ITU 在 1997 年开始利用重要的新编码工具处理 H.26L(长期),结果令人鼓舞,于是 ISO 决定联手 ITU 组建 JVT 并采用一个通用的标准。因此,大家有时会听到有人将这项标准称为 JVT,尽管它并非正式名称。ITU 在 2003 年 5 月批准了新的 H.264 标准。ISO 在 2003 年 10 月以 MPEG-4 Part 10、高级视频编码或 AVC 的名称批准了该标准。
H.264/AVC 在压缩效率方面取得了巨大突破,一般情况下达到 MPEG-2 及 MPEG-4 简化类压缩效率的大约 2 倍。在 JVT 进行的正式测试中 [9],H.264 在 85 个测试案例中有 78% 的案例实现 1.5 倍以上的编码效率提高,77% 的案例中达到 2 倍以上,部分案例甚至高达 4 倍。H.264 实现的改进创造了新的市场机遇,如:
* 600Kbps 的 VHS 品质视频。可以通过 ADSL 线路实现视频点播。
* 高清晰电影无需新的激光头即可适应普通 DVD。
H.264 标准化时支持三个类别:基本类、主类及扩展类。后来一项称为高保真范围扩展 (FRExt) 的修订引入了称为高级类的 4 个附加类。在初期主要是基本类和主类引起了大家的兴趣。基本类降低了计算及系统内存需求,而且针对低时延进行了优化。由于 B 帧的内在时延以及 CABAC 的计算复杂性,因此它不包括这两者。基本类非常适合可视电话应用以及其他需要低成本实时编码的应用。
主类提供的压缩效率最高,但其要求的处理能力也比基本类高许多,因此使其难以用于低成本实时编码和低时延应用。广播与内容存储应用对主类最感兴趣,它们是为了尽可能以最低的比特率获得最高的视频质量。
尽管 H.264 采用与旧标准相同的主要编码功能,不过它还具有许多与旧标准不同的新功能,它们一起实现了编码效率的提高。图 5 的编码器框图总结了其主要差别,概述如下:
帧内预测与编码:H.264 采用空域帧内预测技术来预测相邻块邻近像素的 Intra-MB 中的像素。它对预测残差信号和预测模式进行编码,而不是编码块中的实际像素。这样可以显著提高帧内编码效率。
帧间预测与编码:H.264 中的帧间编码采用了旧标准的主要功能,同时也增加了灵活性及可操作性,包括适用于多种功能的几种块大小选项,如:运动补偿、四分之一像素运动补偿、多参考帧、通用 (generalized) 双向预测和自适应环路去块。
可变矢量块大小:允许采用不同块大小执行运动补偿。可以为小至 4(4 的块传输单个运动矢量,因此在双向预测情况下可以为单个 MB 传输多达 32 个运动矢量。另外还支持 16(8、8(16、8(8、8(4 和 4(8 的块大小。降低块大小可以提高运动细节的处理能力,因而提高主观质量感受,包括消除较大的块化失真。
四分之一像素运动估计:通过允许半像素和四分之一像素运动矢量分辨率可以改善运动补偿。
多参考帧预测:16 个不同的参考帧可以用于帧间编码,从而可以改善视频质量的主观感受并提高编码效率。提供多个参考帧还有助于提高 H.264 位流的容错能力。值得注意的是,这种特性会增加编码器与解码器的内存需求,因为必须在内存中保存多个参考帧。
几种视频压缩标准简介
MJPEG
MJPEG 是指 Motion JPEG,即动态JPEG,按照25帧/秒速度使用JPEG 算法压缩视频信号,完成动态视频的压缩。是由JPEG专家组制订的,其图像格式是对每一帧进行压缩,通常可达到6:1的压缩率,但这个比率相对来说仍然不足。就像每一帧都是独立的图像一样。MJPEG图象流的单元就是一帧一帧的JPEG画片。因为每帧都可任意存取,所以MJPEG常被用于视频编辑系统。动态JPEG能产生高质量、全屏、全运动的视频,但是,它需要依赖附加的硬件。而且,由于MJPEG不是一个标准化的格式,各厂家都有自己版本的MJPEG,双方的文件无法互相识别。
MJPEG的优点是画质还比较清晰,缺点是压缩率低,占用带宽很大。一般单路占用带宽2M左右。
H.263
H.263 视频编码标准是专为中高质量运动图像压缩所设计的低码率图像压缩标准。H.263 采用运动视频编码中常见的编码方法,将编码过程分为帧内编码和帧间编码两个部分。埃帧内用改进的DCT 变换并量化,在帧间采用1/2 象素运动矢量预测补偿技术,使运动补偿更加精确,量化后适用改进的变长编码表(VLC)地量化数据进行熵编码,得到最终的编码系数。
H.263标准压缩率较高,CIF格式全实时模式下单路占用带宽一般在几百左右,具体占用带宽视画面运动量多少而不同。缺点是画质相对差一些,占用带宽随画面运动的复杂度而大幅变化。
VCD标准。
制定于1992年,为工业级标准而设计,可适用于不同带宽的设备,如CD-ROM,Video-CD、CD-i。它用于传输1.5Mbps数据传输率的数字存储媒体运动图像及其伴音的编码,经过MPEG-1标准压缩后,视频数据压缩率为1/100~1/200,影视图像的分辩率为360×240×30(NTSC制)或360×288×25(PAL制),它的质量要比家用录像系统(VHS-Video Home System)的质量略高。音频压缩率为1/6.5,声音接近于CD-DA的质量。MPEG-1允许超过70分钟的高质量的视频和音频存储在一张CD-ROM盘上。VCD采用的就是MPEG-1的标准,该标准是一个面向家庭电视质量级的视频、音频压缩标准。MPEG-1的编码速率最高可达4-5Mbits/sec,但随着速率的提高,其解码后的图象质量有所降低。MPEG-1也被用于数字电话网络上的视频传输,如非对称数字用户线路(ADSL),视频点播(VOD),以及教育网络等。同时,MPEG-1也可被用做记录媒体或是在INTERNET上传输音频。MPEG1标准占用的网络带宽在1.5M左右。
DVD标准。
制定于1994年,设计目标是高级工业标准的图象质量以及更高的传输率,主要针对高清晰度电视(HDTV)的需要,传输速率在3-10Mbits/sec间,与MPEG-1兼容,适用于1.5~60Mbps甚至更高的编码范围。分辩率为720×480×30(NTSC制)或720×576×25(PAL制)。影视图像的质量是广播级的质量,声音也是接近于CD-DA的质量。MPEG-2是家用视频制式(VHS)录像带分辩率的两倍。MPEG-2的音频编码可提供左右中及两个环绕声道,以及一个加重低音声道,和多达7个伴音声道(DVD可有8种语言配音的原因)。由于MPEG-2在设计时的巧妙处理,使得大多数MPEG-2解码器也可播放MPEG-1格式的数据,如VCD。除了做为DVD的指定标准外,MPEG-2还可用于为广播,有线电视网,电缆网络以及多级多点的直播 (Direct Broadcast Satellite) 提供广播级的数字视频。MPEG-2的另一特点是,其可提供一个较广的范围改变压缩比,以适应不同画面质量,存储容量,以及带宽的要求。对于最终用户来说,由于现存电视机分辨率限制,MPEG-2所带来的高清晰度画面质量(如DVD画面)在电视上效果并不明显,到是其音频特性(如加重低音,多伴音声道等)更引人注目。
MPEG-2的画质质量最好,但同时占用带宽也非常大,在4M~15M之间,不太适于远程传输。
MPEG-4
如果说,MPEG-1“文件小,但质量差”;而MPEG-2则“质量好,但更占空间”的话,那么MPEG-4则很好的结合了前两者的优点。它于1998年10月定案,在1999年1月成为一个国际性标准,随后为扩展用途又进行了第二版的开发,于1999年底结束。MPEG-4是超低码率运动图像和语言的压缩标准,它不仅是针对一定比特率下的视频、音频编码,更加注重多媒体系统的交互性和灵活性。MPEG-4标准主要应用于视像电话(Video Phone),视像电子邮件(Video Email)和电子新闻(Electronic News)等,其传输速率要求较低,在4800-64Kbits/sec之间,分辨率为176X144。MPEG-4利用很窄的带宽,通过帧重建技术,压缩和传输数据,以求以最少的数据获得最佳的图象质量。与MPEG-1和MPEG-2相比,MPEG-4为多媒体数据压缩提供了一个更为广阔的平台。它更多定义的是一种格式、一种架构,而不是具体的算法。它可以将各种各样的多媒体技术充分用进来,包括压缩本身的一些工具、算法,也包括图像合成、语音合成等技术。 MPEG-4的特点是其更适于交互AV服务以及远程监控。MPEG-4是第一个使你由被动变为主动(不再只是观看,允许你加入其中,即有交互性)的动态图象标准;它的另一个特点是其综合性;从根源上说,MPEG-4试图将自然物体与人造物体相溶合(视觉效果意义上的)。MPEG-4的设计目标还有更广的适应性和可扩展性。
MPEG4标准的占用带宽可调,占用带宽与图像的清晰度成正比。以目前的技术,一般占用带宽大致在几百K左右。