联特微监控
新闻中心
产品中心
当前位置:首页>>新闻中心>>视频编码技术

视频编码技术

时间:2008-7-3    来源:联特微 

    多年来,图像和视频编码技术经历了一系列变革,从第一代典型的基于像素编码器到第二代基于分割、分形、模型等编码器。但第二代视频编码器中仍有许多编码技术还有待于进一步的研究和探索。本文主要从编码器的结构原理来探讨视频编码技术,希望读者朋友能有所收获。
文/深圳市朗驰欣创科技有限公司

    随着信息网络化的不断发展,以多媒体和网络为基础的数字化监控技术已经深入到人们的工作、学习和生活中。监控技术朝着网络化、数字化不断发展,而监控信息的一个主要特征就是多媒体技术的广泛应用。多媒体包括文字、声音、图像、图形等,具有信息量大、表达能力强等特点,因此它代替单一的信息模式已经成为不可阻挡的趋势。作为多媒体信息中最重要的成分,数字视频所提供的视频信息具备直观性、确切性、高效性、广泛性等一系列的优点,但是视频信息具有信息量过大的问题。因此必须解决视频压缩的效率和视频压缩解码的质量问题,这两者是相互矛盾的。

    众所周知,常用的MPEG/H系列压缩是一种带预测性的压缩格式,与原始图像有一定程度的差异。虽然压缩比很高,图像清晰度也有一定保证,但因过多引入预测,则无法与真实图像完全一一对应,显然达不到作为证据的要求。目前,MPEG压缩技术录制的图像在欧美国家尚不能作为可靠的法庭证据。反之,M-JPEG采用静态图像压缩格式,追求质量,但压缩比太小,不能满足当前网络环境的要求。

视频编码技术的发展
    自1948年提出电视信号数字化以来,图像编码压缩技术已有50多年的历史,其主要思路就是从图像信息中去除去冗余。通常这些冗余可以分类为:空间冗余、时间冗余、信息量冗余、结构冗余、知识冗余、统计冗余等。统计冗余与图像及图像序列电平的近似程度有关;空间冗余与同一帧图像亮度和色度值的近似程度有关;时间冗余则与连续帧间的近似程度有关。

    多年来,图像和视频编码技术经历了一系列变革。从第一代典型的基于像素编码器,到第二代基于分割、分形、模型等编码器。ITU和ISO都发布了关于静态图像和视频的编码算法,来均衡压缩效率和重构信息质量。其中,第一代视频编码技术仅考虑图像及图像序列中的空间冗余、时间冗余和信息熵冗余,其编码方法主要以像素或像素块作为编码实体,没有或较少考虑人类视觉系统,使在低码率时不能提供良好的视觉质量。第二代视频编码技术在八十年代初开始产生,它是建立在图像分析和合成、计算机图形学、计算机视觉等基础上,是基于内容的视频压缩技术,相比第一代视频编码技术的基础上,进一步考虑到了视觉数据中的结构冗余、知识冗余和视觉冗余,从而获得了更高的压缩效率。但同时,第二代视频编码中仍有许多编码技术还有待于进一步的研究和探索。

现行国际视频编码标准
    近年来,视频编码技术得到了迅速发展和广泛应用,并且日臻成熟,其标志是多个关于视频编码的国际标准的制定。其可分为两大系列:即国际标准化组织(ISO)和国际电工委员会(IEC)的运动图像专家组MPEG(Motion Picture Expert Group)关于活动图像的编码标准MPEG系列,以及国际电信联盟(ITU)的视频编码专家组VCEG(Video Coding Expert Group)制定的视频编码标准H.26X系列。

MPEG4/H.264/AVC标准
    MPEG4/H.264/AVC是一种有损压缩,以处理后的图像无限接近和还原真实图像为目标。MPEG4/H.264/AVC对编解码器如何实现并没有明确规定,而是规定编码视频比特流的句法和该比特流的解码方法。这种技术,使得各个厂商的视频编码器和视频解码器在此框架下应能够互通,在实现上具有较大灵活性,而且有利于相互竞争。

    从图1和图2可以看出,MPEG4/H.264/AVC和以前标准(如H.261、H.263、MPEG-1、MPEG-4)的编解码器功能块组成并没有什么区别,仍是变换和预测相结合的混合编码法,不同点在于各功能块的细节。

    由图1可见,输入的帧或场Fn以宏块为单位被编码器处理。首先,判定帧是否按帧内还是帧间预测编码方式进行预测。如果采用帧间预测,其预测值PRED(图中用P表示)由当前序列中已编码并解码重建和滤波的图像作为参考图像(如图1中的F'n-1),经运动补偿(MC)得到。为了提高预测精度,从而提高压缩比,实际的参考图像可在过去或未来(指显示次序上)的重建帧中进行选择。参考图像选择的准确与否,很大程度决定了真实图像与呈现图像之间的差值大小。

    预测值PRED和当前块的相应值相减后,产生一个残差块Dn,经块变换、量化后产生一组量化后的变换系数X,再经熵编码,与解码所需的一些信息(如预测模式量化参数、运动矢量等)一起组成一个压缩后的码流,经NAL(网络自适应层)供传输和存储用。

    正如上述,为了提供进一步预测用的参考图像,编码器必须有重建图像的功能。因此必须使残差图像经反量化、反变换后得到的Dn'与预测值P相加,得到uFn'(未经滤波的帧)。为了去除编码解码环路中产生的噪声,提高参考帧的图像质量和压缩图像性能,设置了一个环路滤波器,滤波后的输出重建图像Fn'可用作参考图像。在这一步骤中,重建图像是通过预测值来实现的,虽然从算法上降低了失误性,却进一步加大了人为改变原始图像的因素。

    由图1可知,编码器的NAL输出一个压缩比特流。该比特流在图2中经熵解码得到量化后的一组变换系数X,再经反量化、反变换,得到残差Dn'。 Dn'和该解码器产生的PRED(与编码器产生的PRED相同)相加后,得到uFu',经滤波后,最后得Fn',Fn'即最后的解码输出图像。

JPEG标准
    1991年3月ISO/IEC正式通过了静止图像压缩编码标准,称为JPEG建议。JPEG标准分为基本系统、扩展系统和信息保持系统三个部分。基本系统提供对顺序扫描静止图像的高效有损编码,输入图像精度为8bit/像素。
(1)图3为JPEG基本系统的编解码器方框图,输入的彩色图像为Y、U、V三个分量,JPEG对他们分别进行编码。
(2)编码时,先将一帧图像分为互不重叠的8×8像素块,接着对各块进行DCT变换,然后对各变换系数进行线性量化。
量化步长Q应结合人眼视觉敏感性,亮度和色差信号的量化步长矩阵见表1和表2。
量化后系数为:
反量化后DCT系数为:
(3)熵编码,一般采用哈夫曼(VLC)编码。AC系数量化后为少数稀疏的值,大部分为零,采用锯齿形(Zig-Zag)扫描,然后以游程编码表示方式进行变长的哈夫曼编码。
(4)数据交换格式

熵编码后得到变长度的码流。为便于数据的交换,JPEG规定了统一的压缩后数据交换格式,如图4所示。
第一行:SOI表示图像数据开始;EOI为一帧图像结束,各占两个字节。
第二行:表/杂项中放置量化表、哈夫曼表;帧首包括编码方法、取样精度、量化系数、源图像行数、每行取样数等;DNL重新定义帧内的行数。
第三行:扫描首说明扫描起始信息、分量图像号码、参数、熵编码表选择(ECS);RST为重新开始标志。
第四行:为熵编码区,MCV为最小编码单元,包括4个亮度块,1个Cr块和1个Cb块。 熵编码是无损压缩编码方式,它生成的码流可以经解码无失真地恢复出原数据。熵编码是建立在随机过程的统计特性的基础上的。

上述可见,JPEG标准的编码方式,是一种以DCT(Discrete Cosine Transform)为基础的压缩方法的压缩格式,也称为基线顺序编解码(Baseline Sequential Codec)方法,通过各种算式来降低图像数据量。缺点在于压缩量有限。这种方法的优点是先进、有效、简单、易于交流,因此应用广泛。

M-JPEG标准
    MJPEG全名为“Motion”JPEG,Motion JPEG技术是将来自摄像机的模拟视频信号“翻译”成视频流,并存储在硬盘上。典型的应用如数字视频记录器等。MJPEG不像MPEG,不使用帧间编码,因此用一个非线性编辑器就很容易编辑。MJPEG的压缩算法与MPEG一脉相承,功能很强大,能发送高质图片,生成完全动画视频等。但相应地,MJPEG对带宽的要求也很高,相当于T-1,MJPEG信息是存储在数字媒体中的庞然大物,需要大量的存储空间以满足如今多数用户的需求。因此从另一个角度说,在某些条件下,MJPEG也许是效率最低的编码/解码器之一。

兼顾码率控制与图像真实
    视频是利用人的视觉获取的信息,它具有直观性的特点,不易和其他信息相混淆,保证了信息的准确性。同时,由于视觉,可以并行地观察图像,因而获取信息的效率比音频高得多。

    与此同时,视频信号具有显著的高带宽特性。视频信息的表示形式是视频电信号,通过网络传送至终端用户,并在屏幕上显示。视频信号所包含的信息量大,其内容可以是活动的,也可以是静止的;可以是彩色的,也可以是黑白的;有时变化多、细节多,有时十分平坦。一般而言,视频信号信息量大,传输网络所需要的带宽较宽。例如,一路监控视频信号,由于其活动内容较少,所需带宽较窄,但要达到良好质量,不压缩约需若干Mbps,压缩后需要300~400Kbps。可见,视频信息虽然具有直观性、确定性、高效性等优越性能,但要传送却需要较高的网络带宽。这就是为获得视频信息所需付出的代价。

    如上所述,视频信号由于信息量大,传输网络带宽要求较高,就像一辆庞大的货车只有在宽阔的马路上才能行驶一样,必须将视频信号在传送前先进行压缩编码,然后在网络上进行传送,以便节省传送带宽和存储空间。

    一旦采用MPEG4/H.26X系列的压缩方式,势必引起呈现图像跟真实图像之间的预测差,虽然呈现的图像是尽可能地对真实图像进行还原,毕竟不是完全真实的图像。若采用M-JPEG的压缩方式,虽然图像质量得到了保证,但压缩比过小,无法在现实网络中使用,而无意义。

    而JPEG压缩虽是有损压缩,但它利用的是人视觉系统的特性,使用量化和无损压缩编码相结合,来去掉视觉的冗余信息和数据本身的冗余信息。JPEG算法压缩编码大致分成三个步骤:
1、使用正向离散余弦变换(forward discrete cosine transform,FDCT)把空间域表示的图像变换成频率域表示的图像。
2、使用加权函数对DCT系数进行量化,这个加权函数对于人的视觉系统是最佳的。
3、使用霍夫曼可变字长编码器对量化系数进行编码。

结语
    因此,要使获取高质量的视频信息,在前端实现JPEG抓拍更有优势。即图像采用MPEG/H系列的压缩格式压缩后予以传输、观看、存储,但有移动触发、视频遮挡触发等规则性报警行为,以及人为认定报警信息发生时,瞬时即进行前端JPEG格式高清晰度抓拍,间隔极短,能作为有效的证据,这样兼顾了MPEG/H和M-JPEG两系列的优势。