视频编码定义
所谓视频编码方式就是指通过特定的压缩技术,将某个视频格式的文件转换成另一种视频格式文件的方式。目前视频流传输中最为重要的编解码标准有国际电联的H.261、H.263,运动静止图像专家组的M-JPEG和国际标准化组织运动图像专家组的MPEG系列标准,此外在互联网上被广泛应用的还有Real-Networks的RealVideo、微软公司的WMT以及Apple公司的QuickTime等。
MPEG是活动图像专家组(Moving Picture Exports Group)的缩写,于1988年成立,是为数字视/音频制定压缩标准的专家组,目前已拥有300多名成员,包括IBM、SUN、BBC、NEC、INTEL、AT&T等世界知名公司。MPEG组织最初得到的授权是制定用于“活动图像”编码的各种标准,随后扩充为“及其伴随的音频”及其组合编码。后来针对不同的应用需求,解除了“用于数字存储媒体”的限制,成为现在制定“活动图像和音频编码”标准的组织。MPEG组织制定的各个标准都有不同的目标和应用,目前已提出MPEG-1、MPEG-2、MPEG-4、MPEG-7和MPEG-21标准。
视频编码原理
视频图像数据有极强的相关性,也就是说有大量的冗余信息。其中冗余信息可分为空域冗余信息和时域冗余信息。压缩技术就是将数据中的冗余信息去掉(去除数据之间的相关性),压缩技术包含帧内图像数据压缩技术、帧间图像数据压缩技术和熵编码压缩技术。
去时域冗余信息
使用帧间编码技术可去除时域冗余信息,它包括以下三部分:
- 运动补偿
运动补偿是通过先前的局部图像来预测、补偿当前的局部图像,它是减少帧序列冗余信息的有效方法。
- 运动表示
不同区域的图像需要使用不同的运动矢量来描述运动信息。运动矢量通过熵编码进行压缩。
- 运动估计
运动估计是从视频序列中抽取运动信息的一整套技术。
注:通用的压缩标准都使用基于块的运动估计和运动补偿。
去空域冗余信息
主要使用帧间编码技术和熵编码技术:
- 变换编码
帧内图像和预测差分信号都有很高的空域冗余信息。变换编码将空域信号变换到另一正交矢量空间,使其相关性下降,数据冗余度减小。
- 量化编码
经过变换编码后,产生一批变换系数,对这些系数进行量化,使编码器的输出达到一定的位率。这一过程导致精度的降低。
- 熵编码
熵编码是无损编码。它对变换、量化后得到的系数和运动信息,进行进一步的压缩。
视频编码框架
视频编码的基本框架(图)
国际音视频压缩标准发展历程:
H.261
H.261标准是为ISDN设计,主要针对实时编码和解码设计,压缩和解压缩的信号延时不超过150ms,码率px64kbps(p=1~30)。
H.261标准主要采用运动补偿的帧间预测、DCT变换、自适应量化、熵编码等压缩技术。 只有I帧和P帧,没有B帧,运动估计精度只精确到像素级。支持两种图像扫描格式:QCIF和CIF。
H.263
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的语音编码器。
JPEG
国际标准化组织于1986年成立了JPEG(Joint Photographic Expert Group)联合图片专家小组,主要致力于制定连续色调、多级灰度、静态图像的数字图像压缩编码标准。常用的基于离散余弦变换(DCT)的编码方法,是JPEG算法的核心内容。
MPEG-1/2
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-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视频。