H.265/HEVC:视频编码新标准及其扩展(txt+pdf+epub+mobi电子书下载)

作者:朱秀昌

出版社:电子工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

H.265/HEVC:视频编码新标准及其扩展

H.265/HEVC:视频编码新标准及其扩展试读:

前言

伴随着大数据的洪流和无处无时不在的移动通信发展,以及互联网、物联网的全面覆盖,一个以大数据、大流通为特征的信息时代已经开启。由于视频信息具有真实、具体、生动、全面、信息量大等特点,人们对各种视频信息的需求与日俱增,使得大数据中海量视频信息的占比已过半,因此,保证海量视频信息的高效、优质、标准化的压缩日显重要。

目前视频压缩编码技术面临着三方面的压力:一是由于视频分辨率迅速提高而引起的数据量激增,如第一代视频编码标准面对的基本上是352×288的CIF视频,第二代视频编码标准面对的主要是768×576的SDTV视频,如今第三代视频编码标准面对最低的也是1920×1080的HDTV视频,需压缩视频的数据量大约是以每代4倍的速度向上翻,而视频编码效率,每代大致翻一番,这里还未考虑超高清视频、3D 视频、多视点视频等数据量更大的情况。二是由于视频应用的迅速普及而引起的视频信息需求激增,现在各行各业都需要视频信息,几乎每个人都需要视频信息,移动视频还带来每时每刻和无处不在的视频需求,这些需求使得视频采集、传输、存储的数量不断增长。三是视频压缩标准化带来的压力,各方面的视频信息需要相互交流,需要有标准化的格式来保证各种类型的视频信息的畅通,这就要求制定统一的国际标准,并随着技术的发展而不断修订、扩展和换代。

尽管半导体芯片的密度不断提高,网络带宽也不断增加,可以减轻一部分对视频编码的压力,但是远远消解不了上述三方面给视频编码带来的压力。虽然目前已有一系列的国际视频编码标准,但其效率仍然远不能满足当前视频信息的应用需求。诚然,这些都是标准制定者面临的巨大压力,同时,这也理所当然地成为从事视频编码的工程技术人员不断研究新技术、制定新标准的强大驱动力。

为达到对视频数据的高效、标准化压缩的目的,从20世纪80年代末以来,国际电联(ITU)和国际标准化组织(ISO)先是分别、后是联手矢志不渝地进行视频编码国际标准的制定工作。迄今为止,已历经三代。第一代以 ITU-T 的 H.261、H.263建议和 ISO/IEC 的MPEG-1、MPEG-2标准为代表;第二代则是以两大组织联合制定的H.264/MPEG-4 AVC标准为代表;第三代也是以两大组织联合制定的并正在扩展中的HEVC标准为代表。

HEVC 即“高效视频编码”是该标准的俗称或统称,在 ITU-T 称其为H.265建议,在ISO/IEC 称其为23008-2标准。虽然名称各异,但其中的内容是一样的,现已更新为包括扩展部分的第3版。本书主要介绍新一代视频编码国际标准 HEVC 及其扩展中的主要压缩编码原理、高效编码工具、高层语法语义和主要技术规范。本书的要点和特点如下。

扼要介绍了和国际标准相关的视频编码原理,梳理了近30年来一系列视频编码的国际标准,简述了这些标准体系及发展历程演进。着重分析了HEVC第1版的关键编码工具,包括编码结构、帧内预测、帧间预测、变换和量化、熵编码、环路滤波、高层语法、并行处理等。在HEVC实现方面也给出了简单的说明和几个实例。针对HEVC第2版的扩展,介绍了在统一的多层编码概念、可分级视频编码、多视点和3D 视频编码方面的核心编码技术的要点。HEVC在总体上继承了H.264/AVC,但在各个方面都有新发展,使得总编码效率提高了一倍,在适当的章节与H.264/AVC标准进行了简单的对比,有助于加深对HEVC的理解。

本书以从事计算机技术、通信技术以及电视技术的工程技术人员、大专院校有关专业的高年级学生、研究生或教师为主要阅读对象。全书的内容可以划分为四个部分。

第一部分(第1、2章)。第1章介绍和视频编码有关的基本概念和相关技术,如视频的数字化,数字视频信号的统计特性,混合编码的框架和主要方法,图像质量的评价等。在此基础上,第2章介绍了ISO和ITU-T两大国际标准化组织的H.261/263和MPEG-1/2第一代标准、H.264/MPEG-4 AVC第二代标准,以及当前HEVC第三代视频编码国际标准的总体概况和标准化进程。

第二部分(第3~10章)。主要介绍了HEVC第1版(2013年3月)中重要编码工具的技术原理和技术要求。包括:第3章的视频编码结构,重点是四叉树图像的划分技术;第4章的帧内预测编码,重点是高达35种方向的帧内预测技术;第5章的帧间预测编码,重点是运动信息的高效Merge模式的生成技术;第6章的变换和量化,重点是多尺寸DCT、小尺寸DST和改进的量化、伸缩方式;第7章的熵编码,重点是高效的基于上下文的二进算术编码,尤其是它的常规模式、旁路模式和上下文模型更新技术;第8章的环路滤波,重点是简洁高效的去方块滤波和新增的样点自适应补偿技术;第9章的并行处理,重点是新增的基于片和基于波前并行处理技术;第10章的高层语法,重点是改进的NAL单元表示、新增的图像类型和参数集技术。

第三部分(第11、12章)。这两章是有关HEVC第2版(2014年10月)和第3版(2015年4月)中新编码扩展部分内容。其中第11章主要介绍了有关统一的多层编码概念和可分级视频编码的关键技术。第12章主要介绍了有关多视点视频编码和3D视频编码的关键技术。

第四部分(第13章)。简单介绍HEVC的参考软件(HM),编码复杂度比较,软硬件实现的设计考虑,给出了几个HEVC编解码实现的简例。

在本书的编写过程中,得到我们研究团队的多位教师和研究生的帮助和参与,引用了他人的研究报告、著作和论文,具体出处在书后的参考文献中一一列出。在此,对有助于本书编写的师生和参考文献的作者一并表示深切的谢意。对在本书选题、确定内容和编辑整理过程中付出辛勤劳动的董亚峰编辑表示由衷的感谢。

由于当今视频编码技术的飞速发展,同时受限于作者的学术水平,加上编写时间仓促,书中的错误和不足之处在所难免,真诚地欢迎广大读者予以批评指正。作者2015年10月于南京第1章视频编码基础

在信息化时代,视频技术和应用的发展,特别是高清(HD)、超高清(UHD)、3D和多视点(Multi-View)视频技术的兴起,海量的视频信息已如潮涌般深入到我们工作和生活的方方面面。据统计,视频流数据在2015年占到了整个互联网流量的90%左右,说夸张一点,整个互联网络差不多就是视频网了。尽管近年来网络带宽和传输能力增加迅速,但仍远不能满足海量视频数据的传输和存储要求。因此视频信息量的高效压缩过去是、现在是、在可预见的未来也必然是解决这一矛盾的重要技术措施之一。

本书通过对最新的视频编码国际标准High Efficiency Video Coding,HEVC,及其扩展的介绍,帮助读者了解和国际标准有关的视频编码的基本原理、主要规范和关键技术。视频编码(Video Coding)又称视频压缩(Video Compression)技术,属于数字视频信号处理的范畴,要想掌握视频编码的原理和技术,必须对数字视频处理方面的相关基本内容有一定的了解。本章将提供这方面的一些基本内容,包括视频信号的采集、显示和数字化,视频信号统计特性,图像质量评价方法,以及最基本的视频编码技术。1.1 数字视频信号

随着视频技术的发展,传统的模拟摄像机已经逐步被淘汰,可以直接获取数字图像的数字摄像机等已占据主流地位,大大方便了人们对视频信号的采集、处理、存储和传输。但数字视频设备的普及,并不表示视频的数字化不再重要,这是因为视频信号的“源”(来源)和“宿”(归宿)的形式都是连续的、模拟的,只是在中间的处理过程中采用了数字化的方法。所以,了解视频的数字化过程有助于对数字视频的采集和显示有深入的了解,从而有助于对数字视频信号的编码处理有深入的理解。1.1.1 视频信号的采集

摄像机是视频信号的主要来源,随着数字化的进程,数字摄像机已经成为主流的视频信号来源,它输出的是数字视频信号或压缩的数字视频信号,同时也可以输出模拟视频信号。数字摄像机和模拟摄像机的光学镜头和感光器件部分基本是一样的,两者的区别在光电转换后续的处理电路不同,下面进行简单介绍。

1.模拟摄像机

早期的光导管模拟摄像机已遭淘汰,现在常用的是电荷耦合器件(Charge Coupled Device,CCD)和互补氧化金属半导体(Complementary Metal-Oxide Semiconductor,CMOS)摄像机。

CCD摄像机内的核心部件是一种固态半导体面阵集成电路,即CCD感光芯片,它由若干行、若干列的离散感光单元排列而成传感阵列。摄像机所对准的场景的光线通过镜头聚焦投射到阵列上,每个感光单元由于光照的作用而产生与输入光强成正比的输出电荷。这些电荷通过适当的逻辑电路,按照逐单元、逐行的顺序,在一帧的时间内将整个阵列的所有单元的电压送出,经AD变换、信号处理和DA变换后形成标准的模拟视频信号输出。

CMOS 摄像机的传感器的工作过程和 CCD 类似,但集成度比较高,处理过程比较简单,因此采集速度可以做到每秒数百帧,功耗也比较小,耗电量大约为同类CCD的1/3。CMOS的不足之处在于传感噪声比CCD高,但这一差距正在逐步缩小,所以今天的便携式摄像设备几乎都使用CMOS传感器。

实际上,无论CCD还是CMOS本身都没有参与图像感应(光电转换),它们使用的是同一类“光电二极管”传感器(半导体PN结),能够转换光线的强弱为电压的高低,光线进入图像半导体越多,电子产生的电子也越多,从传感器输出的电压也越高。而CCD和CMOS主要作用是将图像半导体中出来的电信信号快速地储存、传输到信号处理部分。

感光平面阵列中每一行基元数(像素数)的多少和行数的多少,决定了所摄图像清晰度的高低。常用的CCD、CMOS摄像机的像素数在40~800万,如1080p视频(1920×1080)的像素数约为200万。

2.数字摄像机

数字视频信号有两种获得的途径,一种是直接的方式,另一种是间接的方式。所谓间接方式是指将模拟视频信号数字化以后产生数字视频。近年来随着电子领域数字化的进程,越来越多的直接输出数字视频信号的数字摄像机已成主流。这样的摄像机可以直接和计算机、数字图像设备相连接,而不需要经过A/D转换。

数字摄像机和模拟摄像机的构成中感光部分基本相同,不同的是数字摄像机增加了数字化信号处理部分。数字摄像机对经过CCD(或CMOS)光电转换得到的视频信号进行数字化,获得数字视频信号输出,或再经过数字信号处理、数据压缩,最终输出已压缩的数字视频信号。在这个意义上可以将数字摄像机称为“数字处理摄像机”。

现在大多数的数字摄像机都具备符合IEEE1394接口和HDMI接口规范的输出。IEEE1394俗称“火线”(Fire Wire)接口,HDMI(High Definition Multimedia Interface)是高清多媒体接口,包括了数字视频和音频数据。它们已普遍用于和 PC 机或其他设备相连,高速传送视音频信号。当然,这类摄像通常还带有普通模拟复合视频输出及S-Video分量视频输出。1.1.2 视频信号的数字化

通常意义下的图像是光强度的二维分布,是平面坐标(x,y)的函数f(x,y)。如果是一幅彩色图像,函数值还应反映出色彩变化,可用 f(x,y,λ)表示,其中λ为波长;如果是活动彩色图像,即视频图像,还应是时间t的函数,可表示为f(x,y,λ,t);当然,如果是立体视频图像,还应是空间深度z的函数,可表示为f(x,y,z,λ,t)。对常规图像来说,f()是一个连续、非负、有界函数,即0≤f(x,y,z,λ,t)<∞。

视频图像的连续性包含了三个方面的含义,即空间位置延续的连续性,每一个位置上光强度变化的连续性和时间方向变化的连续性。连续的视频图像无法用计算机等数字化设备进行处理、传输或存储,所以必须将连续(模拟)的视频信号转变为离散(数字)的视频信号,这个转变的过程称为视频信号的数字化,它一般包含三项操作:图像的采样、样值的量化和量化值的编码。

1.图像的采样

图像在空间上的离散化过程称为采样或取样(Sampling),被选取的点称为采样点或样点,也称为像素(Pixel)。在采样点上的函数值称为采样值或样值。采样实际上就是用空间有限采样点的值来代替连续坐标上的函数值。一幅图像应取多少样点才能够完全由这些样点来重建原图像呢?如果样点取得过多,增加了用于表示这些样点的信息量;如果样点取得过少,则有可能会丢失原图像所包含的信息。所以最少的样点数应该满足一定的约束条件:由这些样点,采用某种方法能够完全重建原图像。实际上,这就是二维采样定理的内容。采样定理和信号的频谱有关,下面从图像信号的频谱说起。(1)图像信号的频谱

定义二维图像信号f(x,y)的傅里叶(Fourier)变换和反变换分别为

其中,u、v是频率域坐标,F(u,v)称作f(x,y)的傅里叶变换或频谱,它表明了空间频率成分与二维图像信号之间的相互关系,其物理意义是f(x,y)可由频率域上的各谐波分量迭加得到。

实际的二维图像,其傅里叶变换一般是在频率域上是有界的,即信号频谱的有效成分总是落在一定的频率域范围之内。主要依据在于:图像中景物的复杂性具有一定的限度,其中大部分内容是变化不大的区域,完全像“雪花”点似的图像没有任何实际意义。另外,人眼对空间细节的分辨能力以及显示器的分辨能力都具有一定的限度。因而在频率域上观察,通常图像的频谱大多局限在一定的范围内,过高的频率分量没有太大的实际意义。(2)二维采样定理

图像采样要解决的问题是找出能从采样图像精确地恢复原图像所需要的水平和垂直方向采样点的最大间隔,这一问题由二维奈奎斯特(Nyguist)采样定理解决,它可看作一维采样定理的推广。

这里参照图1.1简述一下二维采样定理。图1.1(a)为原始的模拟图像f(x,y),其傅里叶频谱F(u,v)如图1.1(b)所示,它在水平mm方向的截止频率为u,在垂直方向的截止频率为v,则只要水平方0m0m向的空间采样频率u≥2u,垂直方向的空间采样频率 v≥2 v,即采mm样点之间的水平间隔Δx≤1/(2u),垂直间隔Δy≤1/(2 v),图像就有可能被精确地恢复。

对理想采样而言,在二维空间用冲激函数阵列s(x,y)作为采样函数,这些冲激水平方向之间的距离为Δ x,垂直方向之间的距离为Δy,s(x,y)可定义为

其中δ(x,y)为二维冲激函数,用理想冲激函数阵列对连续图像进行采样后的图像为p

在频域,采样图像的傅里叶频谱F(u,v)为

由此可见,采样后的频谱是原频谱F(u,v)在u、v平面内按Δu=1/Δx、Δv=1/Δy周期无限重复,如图1.1(c)所示。

因此,若原图像频谱是限带的,且Δ x、Δ y取得足够小,使Δ u≥mm2u,Δ v≥2v,则采样后频谱将不会重叠,通过低通滤波的方法就可以完全恢复原图像。图1.1 采样图像的频谱(3)由采样值恢复原图像

如图1.1(c)所示,在满足采样定理条件下,各周期延拓的频谱区域互不交叠,为了从二维采样恢复原图像,只要用一个中心位于原点的理想二维低通滤波器就可以完整地将频谱中的各个高次谐波滤除,由剩下的基频分量就可以恢复原始图像。理想低通滤波器的特性为r

显然,恢复图像的频谱F(u,v)应该等于采样图像的频谱pF(u,v)和低通滤波器H(u,v)的乘积,即r

可见,有了F(u,v)=F(u,v),即可通过傅里叶反变换完全恢复原图像f(x,y)。

2.样值的量化

经过采样的图像,只是在空间上被离散成像素(样点)的阵列,每个样点的灰度值还是一个有无穷多取值可能的连续变化量,必须将其转化为有限个离散值才能被赋予不同码字从而成为数字图像,这种转化称为量化(Quantization)。如果对每个样值进行独立处理,称为标量(Scalable)量化;如果对多个样值联合起来进行处理,则称为矢量(Vector)量化。这里主要讨论常见的标量量化,它包括两种方式:一种是将样本的连续灰度值范围进行等间隔分层的均匀量化,另一种是不等间隔分层的非均匀量化。

以均匀量化为例,将整个取样点的样值范围等分为若干部分(量化级),分界处称为判决电平,两个判决电平之间的所有灰度值用一个量化值(量化电平)来表示。量化既然是以有限个离散值来近似表示无限多个连续量,就一定会产生误差,这就是量化误差,由此所产生的失真即量化失真或量化噪声。

当量化级数少到一定程度时,量化值与连续值之间的差值(量化误差)变得很显著,引起严重的图像失真,尤其会在原先亮度值缓慢变化的区域引起生硬的“伪轮廓”失真。随着量化级数的增加,由量化引起的失真逐渐减少,但量化级数的增加意味表示图像信息的数据量增加。因此,量化的级数最终是一种在失真和数据量之间的折中,希望在量化噪声对图像质量的影响可忽略的前提下用最少的量化级数进行量化。

3.量化值的编码(1)PCM编码

经过采样,连续图像实现了空间的离散化,形成样点;经过量化,样点的连续灰度值实现了离散化,形成离散的样点值。对于这样的离散以后的有限的灰度量,就可以用二进制或多进制的数字来表示了,这种表示就是“编码”:用特定的符号来表示各样点的离散灰度值。最常见的编码方法是自然二进制编码,如十进制的0,1,2,3,…编码成二进制的000,001,010,011,…n

在量化中,通常量化级数K取为2的n次幂,即K=2,n为自然数。这样,每个量化区间的量化电平可采用 n 位(比特)自然二进制码表示,形成最通用的脉冲编码调制(Pulse Code Modulation,PCM)编码。对于均匀量化,由于是等间隔分层,量化分层越多,每一层的间隔(又称量化步长)越小,量化误差也越小,但编码时占用的比特8数就越多。例如采用8比特量化,将图像灰度等级均匀分为2=256层,顺序从0~255,样值落在哪个分层内,就用该分层的顺序号作为样值的量化值输出,这就是图像中最常用的 PCM 编码。例如输入某一图像样点灰度值=127.2,则量化为127,可用二进制码01111111来表示。(2)量化信噪比

在对采样值进行n 比特的线性PCM编码时,每个量化分层的间隔n(量化步长)的相对值为1/2,假定采样值在它的动态范围内的概率q是均匀分布,则可以证明,量化误差的均方值N(相当于功率)为pp

于是,参照信噪比的定义,将峰值信号功率 S(其相对值为1)q与量化均方噪声 N之比的对数定义为量化峰值信噪比(Peak Signal to Noise Ratio,PSNR),单位为dB,其表达式为

从表征线性PCM性能的基本公式(1.9)可以看出,每个采样的编码比特数n直接关系到数字化的图像质量,每增减1比特,就使量化信噪比增减约 6 dB。每个样点的比特数又称样点深度(Depth),对于一般的应用,如电视广播、视频通信等,采用的是8 bit量化,即这些图像的8bit 的样点深度已基本能满足要求。但对某些应用,如高质量的静止图像、遥感图像处理等,需要10bit或更高精度的比特深度。1.1.3 视频信号的显示

目前,常见的视频信号的显示设备基本上都是液晶显示器(Liquid Crystal Display,LCD)或发光二极管显示器(Light Emitting Diode,LED),如电视机的荧光屏、计算机的显示器、大屏幕投影显示器等。曾经普遍使用的CRT显示器由于大体积、高功耗、有辐射、分辨率低等原因,现在已经难觅其踪影了。十多年前和液晶显示器竞争的等离子显示器(Plasma Display Panel,PDP)近年来也因为高功耗和低分辨率而渐渐消失。

1.液晶显示器

液晶显示器(LCD)中的液晶,是一种在一定温度范围内呈现既不同于固态、液态,又不同于气态的特殊物质态,它既具有各向异性的晶体所特有的双折射性,又具有液体的流动性。在显示应用领域,液晶由于它的各向异性而具有电光效应,所以能够制成不同类型的显示器件。

例如,最基本的TN型(Twist Nematic)液晶显示,将涂有透明导电层的两片玻璃基板间夹上一层正介电异向性液晶,液晶分子沿玻璃表面平行排列,排列方向在上下玻璃之间连续扭转90°。然后上下各加一偏光片,底面加上反光片,就构成了TN型液晶显示器的主体。液晶层施加电压,达到一定电压值,对行和列进行选择,出现“显示”现象,所以行列数越多,显示分辨率越高。

在TN基础上改进的实用TFT(Thin Film Transistor)为薄膜晶体管有源矩阵液晶显示器件,在每个像素点上设计一个场效应开关管,这样就形成可真彩色、高分辨率的液晶显示器件。可实现从VGA(640×480)到HDTV(1320×1080),甚至更高分辨率的显示。LCD体积小、重量轻、低电压、功耗小、无软X射线,适合绝大部分应用场合。

2.发光二极管显示器

发光二极管(LED)显示器是一种通过控制半导体发光二极管的显示方式,用来显示文字、图形、图像、视频等多种信息的显示屏幕。最初,LED只是作为微型指示灯,在计算机、音响等设备中使用。随着大规模集成电路和计算机技术的不断进步,平板LED显示器近年来得到迅速地发展和广泛地应用。

严格地说,LCD与LED是两种不同的显示技术,LCD是由液态晶体组成的显示屏,而LED则是由发光二极管组成的显示屏。LCD的液晶面板本身并不发光,它只是控制透过它的透射光强度,因此,LCD的后面都必须有一块“背板”的发光源,背板的性能直接影响液晶显示的效果。目前绝大部分的电视LED显示屏并不是采用发光二极管来替代液晶,而只是用发光二极管背板来替代LCD中原来的冷阴极荧光灯背光板,做到既可节能又可降低显示器的厚度。这样的LED 显示屏虽然不是真正的由发光二极管独自显示图像,但与上述的 LCD 显示器相比,LED显示屏色彩鲜艳、亮度高、寿命长、体积小,功耗只有LCD的几分之一,刷新速率高,能提供宽达160°的视角,已成为具有绝对优势的新一代显示器,正广泛应用于不同的环境。

近来,出现了更先进的有机LED(Organic LED,OLED)显示屏,它的单个像元的反应速度是LCD液晶屏的1000倍,在强光下也具有足够的亮度,并且适应-40℃的低温。1.1.4 数字视频的格式

目前,在模拟视频数字化过程中,一般都是针对视频信号的1个亮度分量Y和2个色度(色差)分量R-Y、B-Y进行的,即分别对这3个分量进行采样、量化和编码,形成数字视频信号的3个相对应的分量。

1.ITU-R的视频采样格式(1)BT.601建议

为了在世界范围内建立统一的数字视频格式,便于不同电视制式视频之间的互通,国际电联无线电通信部门(International Telecommunications Union-Radio communications Sector,ITU-R)制定了演播室彩色电视信号数字编码的建议,即ITU-R BT.601-6标准“Studio encoding parameters of digital television for standard 4:3 and wide-screen 16:9 aspect ratios”。从1982年制定后其间经多次修改,最近的是2007版,其主要内容如表1.1所示。

BT.601建议采用了对亮度信号和两个色差信号分别编码的分量编码方式,对不同制式的亮度信号Y采用统一的13.5MHz采样频率。由于色差信号的带宽远比亮度信号的带宽窄,因而对色差信号B-Y(或U)和R-Y(或V)的采样频率较Y减半,为6.75MHz。每个数字有效行分别有720个亮度采样点和360×2个色差信号采样点。对每个分量的采样点都是均匀量化(8bit或10 bit深度)、PCM编码。这几个参数对525行、60场/秒和625行、50场/秒的制式都是相同的。表1.1 ITU-R BT.601-6 的主要参数(亮、色采样频率比为4:2:2)(2)采样分布格式

从表1.1中还可以看到,色度信号的采样率要比亮度信号的采样率低一倍,这样做是考虑到人的眼睛对色度信号的分辨率比亮度信号低。按照这种比例采样的数字视频格式常常又称4:2:2格式,可以简单理解为每一行里的Y、U、V的样点数之比为4:2:2。这些样点位置的几何分布如图1.2(b)所示。图中的水平虚线表示视频的扫描线,图1.2(a)、1.2(c)分别给出了4:4:4和4:2:0格式的样点位置示意图。

需要说明的是4:2:0格式虽然不在ITU-R BT.601标准中,但这种格式在实际应用中还是相当广泛的,为了和其他格式作对比,因此也将4:2:0格式放在这里。4:2:0格式中,色度分量比4:2:2格式降低一倍,而且在不同的应用中色度样点的位置还会稍有不同。图1.2 不同格式的样点位置示意

2.ITU-T的公共中间格式(CIF)

在一些互通要求比较高的场合,如实时视频会话,为了既可用625行的电视图像又可用525行的电视图像,ITU-T规定了一种公共中间格式(Common Intermediate Format,CIF)的视频标准,及相应的1/4CIF(QCIF,Quarter-CIF)格式和准 QCIF(SQICF,Sub-QCIF)格式等。它们的分辨率分别为352×288、176×144和128×96,采样格式皆为4:2:0,帧频为30帧/秒,见表1.2。在此基础上还定义了4CIF格式和16CIF格式,分辨率分别为704×576和1408×1152。表1.2 常见视频分辨率参数

3.数字视频的文件格式

目前的数字视频都是由音频流加视频流组成,所谓视频格式就是视频流(包括音频流等)数据的封装容器,例如rmvb、avi、MP4等,目前视频文件格式纷繁复杂,下面仅介绍几种常见的格式。(1)AVI(Audio Video Interleaved)格式,即音频视频交错格式,1992年由微软公司推出,可封装多种视频流和音频流。所谓“音频视频交错”,就是将视频和音频交织在一起进行同步播放。(2)MOV(MOVie digital video technology)格式,是由苹果(Apple)公司推出的一种视频文件格式,现在已被Apple Mac OS、微软Windows 在内的所有主流电脑平台支持。(3)RM/RMVB(Real Media /RM Variable Bit rate)格式,是由Real Networks公司开发的一种流式视频文件格式,此格式文件尺寸小,适合网络发布,因此得到迅速推广,网上直播大多采用这种格式。(4)MPEG格式,是ISO认可的媒体封装形式,普及范围广,其储存方式多样,可以适应不同的应用环境。如mpg、dat文件等。MPEG的控制功能丰富,可以控制有多个视频、音频、字幕。MP4是SONY公司的MPEG-4视频压缩标准的文件格式。(5)3GP 格式,是一种3G移动流媒体的视频编码格式,是MP4格式的一种简化版本。3GP具有较低的储存空间和频宽需求,便于手机使用。(6)DivX格式,是DivX公司在微软MPEG-4(v3)基础上衍生出的一种高效视频编码标准,其图像质量直逼DVD并且容量只有DVD的几分之一。(7)ASF(Advanced Streaming Format)格式,由微软公司推出。用户可以直接使用Windows自带的 MediaPlayer 对其进行播放。由于它使用了 MPEG-4的压缩算法,所以压缩率和图像的质量都很不错。(8)WMV(Windows Media Video)格式,是微软公司的一种可以直接在网上实时观看视频节目的文件压缩格式。1.1.5 高清和超高清视频

1.各类视频的分辨率

目前广泛使用的数字电视按分辨率可分为以下4类,如表1.2所示。(1)超高清晰度电视(Ultra High Definition TV,UHDTV),主要包括两种规格,一种是UHDTV,分辨率为3840×2160,采用16:9的宽高比;另一种是用于工业界的,分辨率为4096×2160,采用19:10的宽高比。两者都俗称4K视频,逐行扫描,50/60fps帧频。(2)高清晰度电视(High Definition TV,HDTV),常见的有3种分辨率:第一种是720p,分辨率为1280×720,逐行(Progressive)扫描;第二种是1080i,分辨率为1920×1080,隔行(Interlaced)扫描;第三种是1080p,分辨率为1920×1080,逐行扫描。全部采用16:9的宽高比,帧频为50/60fps。其中1920×1080p为高清通用图像格式(High Definition CIF,HDCIF),俗称2K视频,目前使用最为广泛。(3)数字电视(Digital TV,DTV),常见的有两种,第一种是低清晰度电视(Low Definition TV,LDTV),分辨率为340×255,采用4:3的宽高比。例如以前的VCD光盘视频。第二种是标准清晰度电视(Standard Definition TV,SDTV),分辨率为720×576,采用4:3的宽高比。例如以前的DVD光盘视频,电视台标准数字视频,4CIF格式的视频等。(4)ITU-T定义的公共中间格式(CIF)的视频。

2.隔行和逐行扫描

隔行扫描(Interleaved Scan),是一种较为落后的扫描方式,在早期的显示器中常用。隔行扫描就是将每一帧(Frame)图像分割为两场(Field),每一场包含了一帧中所有的奇数扫描行(Scan Line)或偶数扫描行,通常是先扫描奇数行得到第一场,然后扫描偶数行得到第二场,得到近似两倍于原来帧频的效果,减小了传输带宽。由于视觉暂留效应,人眼将会看到运动比较平滑的场景。当然,由于不是真正的两倍帧频,有时也不可避免地会出现闪烁,使得人眼容易疲劳,但这种扫描方式等好处是可以降低传输带宽和设备成本。

逐行扫描(Progressive Scan),是现在最为通行的扫描方式。逐行扫描从图像第一条扫描线一直连续扫描到最后一条,而非先扫奇数条再扫描偶数条。逐行扫描可以提高运动画面的连续感,消除因隔行扫描而产生的抖动、闪烁等现象,其代价就是传输带宽较高。1.2 视频信号的统计特性

尽管视频图像种类繁多,内容千变万化,数据量大得惊人,然而,大量的统计实验表明,图像数据本身存在一些内在联系和统计规律。例如,图像的同一行相邻像素之间,相邻行像素之间,以及相邻帧的对应像素之间往往存在很强的相关性,即通常人们所说的存在大量的“冗余”信息。建立在信息论基础上的图像编码方法就是利用图像信号这种固有的统计特性,通过去除这些冗余信息来对图像数据进行压缩处理的。1.2.1 图像的自相关函数

从信息论的角度出发,可以通过对图像信息的一阶熵和高阶熵的分析,来确定图像信源的统计特性。但图像熵值的计算十分困难,它要预先知道图像的概率分布等统计参数,因而在实践中用得较多的还是图像的相关函数,因为它可以直接反映任意图像像素之间的关联程度,可以在统计平均的意义上来计算它们之间的相似程度。

将数字图像f(i,j)的每个像素值看作一个随机变量,则图像就是这些随机变量的集合,实际上形成一个二维随机场,并假设其为平稳00随机场。现在考察图像内任意两点之间的相关性,设(i+i,j+j)和00(i,j)为N×N 数字图像f(i,j)中垂直相距为i、水平相距为j的任意两点,一般情况下,图像的灰度值为正实数,其归一化自相关函数可由下式表示:f

其中,E[]表示数学期望,m为图像灰度的平均值,为图像灰度的方差,可近似为

因此式(1.10)可以用下式近似计算,即f0

例如,由多幅实际图像统计所得行内自相关函数R(0,j),在像0素水平间隔 j为1~20个像素时,自相关函数基本上呈指数规律衰减,可用式(1.14)的指数模型来近似,表示像素之间的相关性随着行内两像素之间的距离增加而迅速减小。−α

式(1.14)中的参数ρ=e可通过对实际图像的统计获得。对于一般图像,ρ 的值在0.9~0.98,说明图像像素之间存在着很强的相关性。1.2.2 像素差值的自相关函数

1.空域像素的差值分布

可以推想,由于一幅图像内相邻像素值之间的相关性很强,相邻像素值之差的统计分布应该有相当一部分集中在零附近。图1.3是对多幅实际图像的水平方向相邻像素差值信号进行统计得到的概率密度分布示意图。大量的图像数据统计表明,对于灰度范围为0~255的常见图像,差值信号绝对值的80%~90%落在0~20的范围内。这一统计得出的结论在预测法图像压缩中是非常重要的依据。图1.3 图像差值信号的统计分布示意

图像的差值的概率密度p(d)常用拉普拉斯(Laplace)分布来近似:d

其中,d为相邻像素值之差,σ为其均方差(标准差)值。

2.时域像素的差值分布

上述对一幅(帧)图像内部相邻像素或其差值进行的统计分析,通常称为空域(帧内)统计特性。对视频图像来说,相邻帧对应位置像素之间的时间间隔很小,只有几十毫秒,图像在这段时间内发生变化的可能性不大,变化的程度往往较小。以最简单的帧间差值为例,如图1.4所示,第k帧的帧间差定义为图1.4 帧间差位置示意kk−1

其中,f(i,j)表示第k帧(i,j)处的一个像素,f (i,j)表示第kk−1帧和 f(i,j)处于同一位置的像素。一般认为,时域的差值信号的分布特性也和空域差值信号的分布特性类似,也服从拉普拉斯分布,仅具体的均值和方差有所差别。在视频图像中,除非景物有剧烈的活动,或整幅场景更换以外,相邻帧之间往往存在着很强的相关性。1.3 混合编码

视频编码或视频压缩就是利用图像统计特性,去除视频信号中存在的大量冗余信息的过程。目前这种基于统计的视频压缩常见有两类方法,一类方法是建立在图像的差值信号分布集中基础上便于压缩处理的预测编码,如帧内编码、帧间编码,多视点视频中的视点间预测编码等。另一类方法是建立在正交变换可以将分散分布的图像数据,在变换域集中分布的基础上便于压缩处理的变换编码,如离散余弦变换、离散正弦变换、哈达马变换等。将这两种方法结合起来使用,即形成了混合编码,可消除图像数据中不同类型的冗余信息,取得比单独使用一种方法更高的压缩率。为进一步提高压缩效率,在典型的混合编码系统中,往往还增加了针对视频图像中运动目标的运动估计和运动补偿处理。1.3.1 预测编码

预测编码(Prediction Coding)利用相邻像素的空间或时间相关性,用已传输的像素对当前正在编码的像素进行预测,然后对预测值与真实值的差——预测误差进行编码和传输。目前用得较多的是线性预测方法,即用已传像素的线性组合对正在编码的像素进行预测。

预测编码是图像压缩技术中研究得最早,且应用最广的一种方法,它的一个重要的特点是性能较好,算法简单,易于硬件实现。图1.5是一个空间预测编码的示意图,其中的处理单元主要包括线性预测器和量化器两部分。在这种编码方案中,编码输出的不是图像像素的样值f(m,n),而是该样值与预测值之间的差值,即预测误差e(m,n)。据图像信号的统计特性的分析,可以得到一组最佳的预测系数,使得预测误差的分布大部分集中在0附近,经非均匀量化,然后传输量化后的预测误差信号e'(m,n)。图1.5 预测编码原理框图

解码过程和预测编码相反,由解码器采用和编码器相同方法计算出的预测值加上由编码器传输来的预测误差信号e'(m,n),即可得到重建的图像f'(m,n),它和输入视频f(m,n)的误差是由量化操作造成的。预测编码中的量化器可以根据人眼的视觉特性来设计,采用较少的量化分层,而量化噪声又不被人眼所觉察。这样,图像数据得到了压缩,而图像的主观质量并没有明显下降。如果在编解码器取消量化和反量化单元,则可形成一个无失真预测系统,解码恢复的图像和原图象完全一致,即有 f'(m,n)=f(m,n)成立。但这种无失真系统的压缩效率要远低于有量化的有失真预测系统。1.3.2 变换编码

变换编码(Transform Coding)将空间域描述的图像,经过某种变换(如离散余弦变换、离散正弦变换、哈达玛变换等)形成变换域中的数据(系数),达到改变数据分布,减少有效数据量的目的。

在变换编码中,正交变换是一种最常见的数据处理手段,它把统计上彼此密切相关的像素值矩阵通过线性正交变换,变成统计上彼此较为独立、甚至完全独立的变换系数矩阵。信息论的研究表明,正交变换不改变信源的熵值,变换前后图像的信息量并无损失,完全可以通过反变换得到原来的图像值。但经过正交变换后,数据的分布发生了很大的改变,变换系数在变换域坐标系分布趋于集中,如集中于少数的直流或低频分量的坐标点。数据的集中分布为数据压缩创造了条件。比如,有利于通过量化操作去除大部分零或接近零的系数,保留少量有效系数;有利于对量化后的系数采用更加有效的表示方式,如“之”(Zig-zag)字形扫描、变长编码等,从而获得对图像信息量的有效压缩。

视频编码中最常见的正交变换是离散余弦变换(Discrete Cosine Transform,DCT),以N×N的二维图像f(x,y)为例,其二维DCT的正变换和反变换分别定义为:

从上面的定义可以看出,DCT本质上和傅里叶变换一样,可以反映信号的频域特性。傅里叶变换是复杂的复数运算,而DCT运算是一种相对简单的实数运算,而且正反变换基函数一样。从DCT的表达式还可以知道,二维DCT是一种可分离的变换,可以分别对两个变量进行一维DCT运算来方便地实现。

在目前常用的正交变换中,DCT 变换性能仅次于理论上最佳的可以完全除去相关的 K-L(Karhunen-Loeve)变换,所以DCT变换被认为是一种准最佳变换。DCT变换矩阵与图像内容无关,去相关性好,有快速算法(FDCT),实现方便;DCT的基函数是偶对称的数据序列,可减轻在图像的分块编码中块边界处的灰度值跳变和不连续现象。DCT这些优点,使得二维DCT变换在图像编码的应用中得到普遍的使用。在历年来颁布的一系列视频压缩编码的国际标准中,都把基于块的DCT作为其中的一个基本处理模块。

采用DCT变换的图像压缩编码基本框图如图1.6所示。编码器根据DCT系数集中在低频区域,越是高频区域系数值越小的特点,利用人眼的视觉特性,通过设置不同的视觉阈值的量化电平,将许多能量较小的高频系数量化为0,可以增加变换系数中0的个数,同时保留能量较大的系数分量。对量化后的系数还可以再进行变长编码从而获得进一步的压缩。在变换编码的解码端,其解码过程正好和编码过程相反,可以获得失真很小的解码图像。这里失真仍然是由量化器引起,因为正反变换、变长编解码都是无失真处理。图1.6 变换编码的基本框图1.3.3 运动估计和运动补偿

1.按运动特性分区

为了说明如何利用视频中的运动特性来进行压缩编码,首先来分析视频中如图1.7所示的一个简单的场景。在一个不十分复杂的背景前,有一个活动量不大的刚性物体,假定在第K帧中的物体相对于第K−1帧有一位移,则可以将整幅画面分为三个各具特点的区域。(1)背景区:指固定摄像机所摄取的运动物体后面的背景,一般它是静止的,若外界条件不变,则这两帧背景区的绝大部分数据相同。这意味着两帧背景区之间的帧间相关性极强。(2)运动物体区:若将物体运动近似看作简单的刚体平移,则第K帧与第K-1帧的运动物体区的数据也基本相同。假如能采用某种方法对运动物体的位移量进行“运动补偿”,那么两帧的运动物体区之间的相关性也是很强的。(3)暴露区:指物体运动后所暴露出的原来曾被遮盖的背景区域。如果有可能事先用存贮器将这些暴露区的数据暂时存贮,则经遮盖后再暴露出来的数据与原先存贮的数据应大致相同。

在理想的情况下,以上三类区域的帧间相关性都可以作为压缩编码的依据。当然,若是整个画面从一个场景切换为另一场景时,就谈不上帧间相关性的利用了。图1.7 图像按运动特性分区

2.减少帧间预测误差

在帧间预测编码中,为了达到较高的压缩比,最重要的就是要尽可能减少帧间预测误差。观察图1.7可以发现,在以上的帧间预测中,实际上仅在背景区进行预测时可以获得较小的帧间差。如果要对运动物体区域进行预测,首先就要估计出运动物体的位移,或运动矢量(Motion Vector,MV),这就是运动估计(Motion Estimation,ME)。然后再根据运动矢量找出物体在前一帧的区域位置,计算前后帧运动物体对应点之间的差值,这样求出的预测误差才比较小,这就是运动补偿(Motion Compensation,MC)。简而言之,通过运动估计和运动补偿,可以减少帧间预测误差,提高帧间预测编码的压缩效率。

从理论上讲,运动估计前必须将图像中运动的物体划分出来。由于实际的视频内容千差万别,把运动物体以整体形式划分出来是极其困难的,因此有必要采用一些简化模型,目前已得到广泛应用的就是基于图像分块的块匹配方法(Block Matching Arithmetic,BMA)。

3.块匹配运动估计原理

块匹配方法将图像分为若干不重叠、紧相邻的 N×N 像素的块(Block)或子块,尺寸 N通常取为4,8,16,32或更大,以块或子块作为运动估计和补偿的基本单元。块匹配算法就是判断某一子块是运动子块还是静止子块,运动子块的运动矢量又为何值。由于这种方法没有以运动物体作为运动估计的基本单位,因而不可避免地会产生估计误差,尤其是对那些既有运动物体又有静止背景的子块误差将更大,这就是块匹配算法的不足之处。但是,由于这种方法相对简单,因此它已成为现在应用最为广泛的运动估计算法。图1.8 块匹配运动估计示意

可以用图1.8来简要说明块匹配运动估计算法的原理。设A为当前帧中的一个待处理的子块,在前一帧中对应的位置为虚线块 A。在前一帧中以A为中心、上下左右各距d个像素的区域B(又称搜索窗)内寻找一个与A最相似的子块C,认为就是前一帧中的C移动到当前帧中的A的位置。那么,C与A的坐标偏移量即为所估计的运动矢量V。

上述过程实质上是一个求子块匹配的过程,通常采用均方误差(Mean Square Errors,MSE)或绝对误差和(Sum of Absolute Differences,SAD)作为匹配准则,匹配的过程就是求这些误差极小值的过程。

采用均方误差最小准则表示的运动矢量v(i,j)为

采用绝对误差和最小准则表示的运动矢量v(i,j)为kk-1

式中,f(m,n)表示当前的图像块,即A,f(m+i,n+j)表示前一帧中B搜索窗内、相对A的位置偏移为v(i,j)的一个搜索块,i、j 的变化范围为(-d~d-1)。对所有的(i,j)计算误差匹配函数值,找到最小的误差所对应的v(i,j)即为运动矢量,其水平和垂直分量分xy别为v=i和v=j。

采用块匹配技术进行运动估值估计时要求选择合适的方形子块尺寸 N。子块尺寸偏小时,块内像素运动一致性好,运动估计准确度较高,但用于表示运动矢量的数据过多,会使码率增加,计算量也增大。子块尺寸偏大时,计算量减小,用于表示运动矢量的数据也变少,但含不同类型区域的子块增加,使得运动估计准确度不高,预测误差偏大,同样会使码率增加。在目前的视频编码国际标准中,N的取值有32,16,8,4等,另外,还出现了长方形的子块,如4×8,8×4等。

4.块匹配运动估计算法

试读结束[说明:试读内容隐藏了图片]

下载完整电子书

若在网站上没有找合适的书籍,可联系网站客服获取,各类电子版图书资料皆有。

客服微信:xzh432

登入/注册
卧槽~你还有脸回来
没有账号? 忘记密码?