1、本科毕业设计(20届)多视点视频编码快速算法研究所在学院专业班级电子信息科学与技术学生姓名学号指导教师职称完成日期年月I摘要【摘要】为了降低多视点视频编码的运算复杂度,使其能更好的应用于各种实际的领域,本文采用了一种基于动态阈值的多视点视频快速算法。首先分析了多视点视频编码的预测结构和宏块模式选择情况的统计特性,并把宏块模式分为四类。在这基础上,设计了以宏块模式类率失真均值作为阈值的快速宏块模式选择算法,以及阈值的近似计算方法和动态更新算法。最后衡量了快速算法的编码时间和率失真性能。实验结果表明,基于动态多阈值快速算法能在保证编码性能的情况下,编码速度比JMVM宏块模式选择算法提高217倍到6
2、69倍。【关键词】多视点视频编码;动态多阈值;宏块模式选择;快速算法IIABSTRACT【ABSTRACT】INORDERTOREDUCETHECOMPUTATIONALCOMPLEXITYOFMULTIVIEWVIDEOCODINGANDAPPLYMULTIVIEWVIDEOTOPRACTICALFIELDS,AFASTALGORITHMBASEDONDYNAMICMULTITHRESHOLDFORMULTIVIEWVIDEOCODINGISPROPOSEDINTHISPAPERFIRSTLY,STATISTICALFEATUREOFMACROBLOCKMODESELECTIONANDPRE
3、DICTIONSTRUCTUREOFMULTIVIEWVIDEOCODINGISANALYZED,ANDMACROBLOCKMODEISDIVIDEDINTOFOURCLASSESTHEN,AFASTMACROBLOCKMODESELECTIONALGORITHMWHOSEARETHEAVERAGEVALUESOFRATEANDDISTORTIONOFMACROBLOCKMODECLASSESANDANAPPROXIMATECOMPUTINGMETHODOFTHEMULTITHRESHOLDSANDANUPDATINGMETHODAREDESIGNEDFINALLY,THECODINGTIME
4、ANDRATEDISTORTIONPERFORMANCEAREEVALUATEDEXPERIMENTALRESULTSHOWSTHATTHEPROPOSEDFASTALGORITHMPROMOTESTHEENCODINGSPEEDBY217669TIMESINCOMPARISONWITHJMVM,WHILETHEALGORITHMHARDLYINFLUENCESTHECODINGPERFORMANCE【KEYWORDS】MULTIVIEWVIDEOCODINGMULTITHRESHOLDFORMULTIVIEWMACROBLOCKMODESELECTIONFASTALGORITHMIII目录1
5、绪论111选题的目的和意义112视频编码技术及其研究现状1121多视点视频编码2122国内外研究现状213论文结构安排32多视点视频编码和编码标准321多视点视频原理及压缩技术422多视点编码技术压缩相关的性能指数6221率失真性能6222计算复杂度723视频编码标准7231视频编码标准的发展历程7232H264编码标准73宏块模式选择情况统计特性和分析1031多视点视频编码的预测结构1032JMVM的宏块模式选择13321率失真代价的计算13322宏块模式全搜索算法1433宏块模式分布特性统计和宏块模式的分类144基于动态多阈值的快速选择算法1741宏块模式类率失真均值作为阈值的快速宏块模式
6、选择算法1742算法流程图1743阈值的计算18431阈值的近似计算方法18432阈值的动态更新算法185实验结果及分析1951实验环境2052快速算法编码时间比较2153快速算法率失真性能比较2254本章小结286结论和展望2961结论2962展望29参考文献31附录3311绪论自由视点视频(FREEVIEWPOINTVIDEO,FVV)系统是新一代多媒体视频系统的发展方向,能使人们自由地选择视点欣赏场景,给人们身临其境的感觉,在各个领域中具有非常广阔的应用背景12。FVV系统通常由以下几个部分组成视频采集、预处理、MVC编码器、MVC解码器、数据传输、虚拟视点绘制和显示环节。本文主要介绍多
7、视点视频的编码技术。11选题的目的和意义目前,随着通信技术和显示技术的不断发展,2D音频技术已经逐步走向成熟,广泛应用于各个领域。然而,人们对于数字视频的要求越来越高,大家都希望数字视频中的画面更加清晰、更加真实。为满足人们的这一需求,具有3D视觉功能的多视点视频技术越来越受到学术界和工业界等各个研究领域的重视,并成为近年来视频研究的热点之一345,并且经吸引了越来越多的国内外学者为其展开研究。最后,具有3D技术得多视点视频能够广泛的应用到各个领域提当中,如三维电视、交融式会议电视、远程医学诊疗、视频监视系统以及具有临场感的可视会议等多种正在兴起的多媒体业务6。多视点视频(MULTIVIEWV
8、IDEO)7是单通道视频信号在空间方面的扩展,是一种新型的具有立体感和交互操作功能的视频,通过在场景中放置多台摄像机,记录下多个视频数据,提供给用户以视点选择和场景漫游的交互能力。由于技术条件的限制,立体视频一直没有得到快速的发展,进入20世纪90年代后,随着三维显示技术的进步,多视点视频技术得到了全世界学者的关注,成为了一个研究的热点。多视点视频与单通道视频系统相比,多视点视频信号采集自多个相机,其数据量随着相机数目的增加而成倍增加。所以必须采用更高效的数据压缩编码技术,才能对多视点视频系统的数据进行有效的存储和传输。同时,随着人们对视频观看质量要求的提高,高分辨率、高清晰度是今后的趋势,这
9、将带来视频数据量的急剧增加。因此,如果要将多视点视频运用到实际系统中,就必须对多视点视频信息进行压缩编码,缓解多视点视频信息带来的存储和传输压力。多视点视频编码快速算法的主要目的,是研究如何通过提高压缩效率以及有效消除各个视频流内的时空冗余及交叉冗余并提高多视点视频压缩效率的技术,为提高多视点视频编解码的处理速度提供技术支持。而目前处理高压缩的单视点视频尚无法达到这个要求,这将严重阻碍多视点视频的应用和发展。于是,能够在保证编码性能的前提下提高编码的速度,是多视点视频编码中的关键技术。12视频编码技术及其研究现状2121多视点视频编码JVT(JOINTVIDEOTEAM)提出了多视点视频编码M
10、VC,MULTIVIEWVIDEOCODING的概念,并长期致力于视频编码的标准化工作,目前正在提出多视点视频编码校验模型型(JOINTMULTIVIEWVIDEOMODEL,JMVM)7,作为多视点视频编码的研究平台。在编码过程中,通过全搜索的方式,寻找最低率失真代价值来进行宏块模式的选择,可以在获得好的画面质量和编码率之间获取平衡。视频编码即采用高效的视频压缩技术,对多视点视频系统的数据进行有效的存储和传输。多视点视频信息中的数据冗余是多视点视频能高效压缩的基础。数据冗余是指不同信息间的相关性,我们日常用到的大部分信息都具有高度的相关性,而视频压缩的根本思想就是去除数据中的相关性。所谓的相
11、关性,就是能够根据给出的一部分数据来判断其相邻的数据。这种数据相关性包括三个方面1空间相关性8可以根据某视点中的某一帧的像素值推出其相邻帧的像素值。2时间相关性8在同一视点视频中,相邻时间上两帧图像的像素值很相似,可以从该视点前一时刻的像素值推出下一时刻的像素值。3视点相关性在同一个时刻里,可以从该时刻里某个视点中的某一帧的像素值推出下个视点中同一时刻里的某一帧的像素值。消除不同形式的冗余信息,是视频压缩技术的出发点,是在信息相关性的基础上的,它的目的是在保证视点的编码率和图像重构质量的前提下,去除各种形式的相关性,尽可能用最少的比特数来表征多视点视频信息,即编码性能要高。此外,压缩通常又可以
12、分为有损压缩和无损压缩。无损压缩的意思是指视频在压缩前和解压后的视频的信息完全一致。有损压缩则是说视频解压后的数据与压缩前的信息发生了变化,在编码的过程中会丢失一些人眼所看不见的图像或者是人耳所不能感受到的音频信息。有损压缩的优点是,它可以达到很高的压缩比,这样可以达到低编码率的目标,它广泛应用于各种快速算法中。但是,有损压缩过程中丢失的信息不可恢复。122国内外研究现状目前,各国研究机构针对FVV系统展开了研究和探索,纷纷推出了相应的实验系统9,包括斯坦福大学的LIGHTFIELD系统、日本NAGOYA大学的自由视点电视系统、MERL的3DTV(THREEDIMENSIONALTV)系统、德
13、国HHI研究所的基于模型的FVV方案、微软的交互式多视点视频系统、卡内基梅隆大学的多相机阵列系统。近年来,国际标准化组织JVT加快了3DAV的研究步伐,每年都会收到大量有关与FVV系统相关的提案。2004年初欧洲提出了3DTV计划,而厂商如PHILIPS的介入也使3DTV的裸眼立体可视技术取得重要进展。在国内学术界,清华大学戴琼海教授团队提出了集采集、压缩、传输和显示于一体的3DTV系统,何芸教授团队等在多视点视频编码上的研究。北京大学的高文教授团队在多视点视频编码方面也开展3了深入的研究。另外,宁波大学联合中科院计算机研究所组建的蒋刚毅教授团队对FVV的关键技术开展了系列研究,包括光线空间数
14、据插值和压缩、多视点视频编码101112、多视点视频颜色校正13、多视点视频编码快速算法14等。国内还包括中科院计算机研究所黄晁研究员的基于精细可扩展的多视角视频压缩编码方案15、上海大学的张兆扬教授在立体视频图像的中间视点生成上的研究16、西安电子科技大学常义林教授对多视点视频编码方面的研究17、天津大学侯春萍教授在立体电视技术方面的研究18。13论文结构安排本论文一共分为6章,具体安排如下第一章是绪论,介绍了论文选题的目的和意义,多视点视频编码的思想和国内外多视点视频的研究现状,最后简单介绍了论文的结构安排。第二章是对FVV系统中的关键技术多视点视频编码进行了介绍。介绍了多视点视频的一些基
15、本知识,包括多视点视频的原理和要求,视频压缩基础,以及国内外视频编码标准,且对多视点视频压缩相关技术作了分析。另外介绍了视频编码的标准,以及深入分析了H264编码标准。第三章着重是宏块模式分布特性统计和分析,首先简单介绍了多种预测编码结构,包括SIMULCAST、顺序视点预测SEQUENTIALVIEWPREDICTION、M帧预测MULTIDIRECTIONPREDICTION、GOGOP预测GROUPOFGOPPREDICTION等预测编码结构,并着重介绍了分层B帧HIERARCHICALBPICTURES,HBP预测编码结构。接着介绍了JMVM中的宏块模式选择,包括JMVM的宏块模式分类
16、,率失真代价的计算方法和JMVM中的宏块模式全搜索算法。最后根据宏块模式分布特性统计的试验结果,将宏块模式分为四类,为下一章基于动态阈值的快速算法的实现,起到了奠基作用。第四章我们提出了基于动态多阈值的快速宏块模式选择算法,根据第三章所得到的宏块分类,选取宏块模式类的率失真均值作为阈值,给出了阈值的近似算法和动态更新算法。第五章,实验结果的分析,根据实验结果分析比较两种快速算法的编码时间和率失真性能。并得出结论,验证了基于动态阈值模式选择的快速算法,在保证了编码性能的情况下,更具有效性。第六章是结论和展望,是对本文的总结和进一步研究的方向。2多视点视频编码和编码标准4多视点视频编码是FVV系统
17、的关键技术之一,也是本文研究的重点。本章首先介绍了多视点视频原理、多视点视频编码的要求、多视点视频压缩,且对多视点视频压缩相关技术作了分析。另外介绍了视频编码的标准,以及深入分析了H264编码标准。21多视点视频原理及压缩技术多视点视频信号是一种具有立体感和交互操作功能的新一代多媒体视频系统。它由多个相机在任意角度拍摄,为人们提供拍摄场景中不同角度的视频信息。此外,它可以利用获取的视频信息中的一个或多个视点信息,合成人们所想看的任意视点的信息,从而达到视点信息的自由显示和切换任意。在多视点视频中,除了在同一视点中前后时间上的相关性时间冗余外,还有在同一时刻内多个视点相机里拍摄的视点视频信息具有
18、视点上的相关性视点冗余。而且,视点间冗余是多视点视频序列中的重要特性之一,它与相机阵列形式、相机间距、相机和拍摄对象间的距离都有很大的关系,不同的参数将直接影响同一时刻内相邻两幅图像的视差。VIEW1VIEW0VIEWNMULTIVIEWENCODERCHANNELMULTIVIEWDECODERTV/HDTVSTEREOSYSTEMMULTIVIEW图21多视频视点系统多视点视频系统一般包括视频采集、预处理、视频编码、传输、解码、虚拟视点图像绘制和显示环节,如图2L所示。随着相机数目的增加,多视点视频编码的数据量也会成倍的增加。于是,要对大量的数据进行有效压缩,使用户保持实时的交互操作和随机
19、读取,同时保证编解码的有效性,将给多视点视频系统的编码、存储和传输能力带来巨大的考验。另外,在第一章中已经提到。视频的高效压缩是建立在多视点视频数据冗余的基础上的,根据时间冗余,空间冗余,视点冗余等不同的相关性,采用有损压缩和无损压缩的方法,其中,有损压缩能拥有较高的视频压缩效率,能更有效的实现快速算法。5在视频压缩研究中19,人们研究的主要问题是如何能有效地消除多视点视频中各种类型的冗余,在现有的视频编码技术中,主要有以下几种方法能够有效消除各种冗余。1预测预测编码DPCM的基本原理,是建立在图像的相邻两帧之间具有较强的相关性的基础上的,图像的每一帧可以通过相邻已知帧的象素值预测得到。因此,
20、在编解码的过程中传输的不是某帧本身的像素值,而是某一已知帧的实际值和预测值之间的数值差(残差值)。在预测压缩过程中,预测值的获取又可以通过开环预测和闭环预测得到。开环预测方法是以先前已知帧的实际值作为预测值;而闭环预测方法是以解压缩后得到的重构值作为预测值,它能使编码前与解码后的预测值保持一致,并被多数视频压缩标准采用。此外,预测压缩又根据时域帧间预测和空域帧内预测两种方法消除不同形式的冗余。其中,帧间预测202122,也称为运动预测,是各种视频压缩算法中最基本的模块。在该预测方法中,视点内的每一帧都是从它的参考帧中获取预测值的。目前,基于“块”的运动预测方法在各领域中得到了广泛应用,这种预测
21、方法过程简单,场编码方便,同时多视点视频中的时间冗余又能有效地被消除,所以被广泛应用于各种视频编码标准中。另外,多视点视频的空间冗余是通过帧内预测的方法消除。在对一给定宏块编码时,首先可以根据与之相邻的宏块进行预测并获取预测值,然后对他们之间的残差值进行编码。这样可以大大减小码率,从而提高编码速度。2变换与帧内预测技术2324相比,采用变换方法25能更有效的消除视点间的空间冗余,尽管这种方法它本身并不对数据进行压缩,但可以保持在变换域内视频数据的最大限度不相关。另外,在视频压缩中使用的最多的是正交变换压缩技术。在该编码过程中,首先把分撒在各个原坐标轴上的原始数据集中到新的坐标系中,接着,可以利
22、用人的肉眼对某些高频信号的不敏感性,通过粗量化高频系数,更好地消除心理冗余。3空间抽样这种方法在实际应用中,没有必要对彩色图像进行全分辨编码,因为人眼视觉系统的频率响应和空间频率成反比,并明显的表现在色差通道上。因此,降低视频压缩的数据量的一种有效方法是利用人眼视觉系统对某些信号的不敏感性25。在色差格式422中,色差信号CB,CR分别在水平方向上做21的降采样,和原始数据格式444相比,数据量降低了33;在色差格式420中,色差信号CB,CR在水平和垂直方向上都作21的降采样,相应的数据量降低了50。这两种色度采样的方法分别可以获得较全分辨率1667和2倍的压缩比。4量化在视频编码中,量化编
23、码25是最直观的数据压缩过程,这种压缩方法会使各种视频压缩算法产生失真。在这过程中,会减少数据的分布范围,集中分布状态,增加了视频信号的相关性,为后面的嫡6编码奠定基础。另外,因为人眼的视觉系统对不同区域和不同频率的会有不一样的敏感程度,在对视频进行压缩时采用自适应量化的方法,在保证压缩性能的情况下,以得到较好的图像质量。5熵编码熵编码方法是在视频信号统计特性的基础上进行的,基本思想是对分布概率大的宏块分配短码字,对分布概率较小的宏块分配长码字,最后使编码后得到最小平均码长。在实际运用中,是通过对视频进行大量的统计得到最佳的码表。算术编码是利用任何一个视频序列都可以用0和1之间的间隔特性表示且
24、编码,视频的宏块概率分布于它的间隔位置有关,可以通过对视频序列的统计特性,自适应地配置未知概率模型的分布。它有较高的编码性能,是目前最新的图像和视频压缩标准。综上所述,每个视频压缩的方法都有它自身的独特性。因此,在数据压缩过程中一般采用结合空间采样、时空预测、变换、量化和嫡编码等多种方法的混合压缩方案,以达到最佳的压缩效率。22多视点编码技术压缩相关的性能指数对多视点视频进行压缩编码,是为了缓解多视点视频带来的存储和传输压力,使其能够更好的应用到实际的领域当中。评价多视点视频数据压缩编技术26是否具有有效性的两大重要技术指标是率失真性能和计算复杂度。221率失真性能多视点视频因为具有直观性和真
25、实性而一直受人们喜爱,编码技术的重要研究方向是实现对视频的大量数据进行有效地编码存储和传输。它的目的是通过消除视点视频间的各种相关性,以缓解多视点视频数据的压缩和存储问题。评价视频编码的参数有很多,率失真性能是判断编码技术有效性的重要技术指标之一。它包括以下几个方面(1)编码率编码率是指在一定的帧率下,对视频信号编码时所需的每秒平均比特数(BITS/S,BPS)。此外,还可以通过测量每像素的平均比特数(BITS/PIXEL,BPP)分析编码率。(2)客观失真客观失真的判断主要通过测量均方误差(MSE)和峰值信噪比(PSNR)。均方误差的计算方法如(21)所示MINJJIXJIXMNXXMSE1
26、1221),(),(21其中,M和N分别表示图像的宽度和高度,X和X分别代表编码前的图像和解码后的图像。另外,峰值性噪比的计算方法如(22)所示7MSEPSNR210255LOG1022(3)主观质量因为视频压缩算法主要是在人眼不敏感的区域或频率范围内产生失真,所以视频压缩算法可能使视频图像出现较大的客观失真,但保证较好的主观视觉质量。一般情况下,因为对视频进行较粗的量化,会产生人眼能容易察觉到的,但是不能通过客观失真的测量值真实反应的块状效应、轮廓效应和环状效应。222计算复杂度在多视点视频编码中,是通过分析各个宏块的最低率失真代价值进行编码的,不同的宏块的计算复杂度都不同。多视点视频编码算
27、法是用运动估计消除时间冗余,用视差估计消除视点间冗余。基于JMVM的宏块模式选择算法,它有九种宏块编码模式,没对视频的一帧进行编码都要对这九种宏块进行逐个搜索,找出率失真代价值最小的宏块。另外,根据宏块的不同,计算复杂也不一。因此,必须采用快速算法降低视频编码的计算复杂度,并通过在编码过程中所使用的时间判断它的计算复杂度。23视频编码标准231视频编码标准的发展历程自从1988年CCITT制定了视频编码标准H261之后,视频编码技术应用的已经相当广泛了,并且还出现了大量的视频编码标准,包括各国自己制定的标准、国际标准以及商业标准等。因此,H261标准被称为视频压缩编码中的里程碑。国际视频编码标
28、准主要有ISO/IEC的MPEG系列和ITUT的H26X系列。H26X系列标准主要应用在可视电话、视频会议等等,MPEG系列标准则对存储媒体的压缩编码关注的比较多。这两个系列的视频编码标准还有很多互相借鉴的地方。根据时间顺序,以上两个系列的视频编码标准如下H261是最早的一种视频压缩编码标准中推出的,主要在编码率较低的视频会议中得到应用,图像的分辨率支持CIF和QCIF两种格式,输出码率则规定为P64KBPS(P1,230)。MPEG1是在1988年成立了活动图像专家组MPEG,MOVINGPICTUREEXPERTGROUP后,在1991年公布的,其码率为15MBPS。主要在家用VCD的视频
29、压缩得到应用。MPEG2又称H262标准,是ITUT和MPEG从1990年开始共同研制,它是目前为止所有视频压缩编码标准中最为成功的一个,在家用DVD的视频压缩和数字视频广播(DVB)领域中得到广泛应用。其码率是从4MBPS、15MBPS100MBPS,分别应用在不同的档次(PROFILE)和级别(LEVEL)的视频压缩中。H263是对H261编码标准的扩展,并且在编码的很多核心技术上都得到了很大提升,其中包括8了非限制的运动矢量模式(UMV)、半象素精度运动估计、基于句法的算术编码以及PB帧模式等。在这之后,也对改变准进行了扩展,如H263,H263标准,它能够提供更多的可选项,使标准能更加
30、广泛的应用到各个领域。MPEG4是在1999年推出的,在这之前备受人们的期待,并且通过采用基于对象的编码思想而被称为第二代视频压缩编码标准。但是它的核心技术是视频分割技术,到目前为止仍然不是很成熟。因此,在当今市场上虽然出现了很多自称是基于该标准的产品,但是却并真正的体现出基于对象的编码思想。H264是在2003年3月由ITUT和MPEG组织合作推出,这也是他们两组织的第二次合作。它的编码技术虽然仍是采用基于块的编码方式,但是它引入了很多先进的技术,如多参考帧27、整数变换、可变宏块尺寸、1/4象素运动补偿、CABAC等等,从而是视频压缩效率得到了有效的提高。与MPEG4、H263和MPEG2
31、等各种标准相比,它能在保证相同编码质量的前提之下,编码率方面分别降低了39,49和64。MPEG7和MPEG21是由MPEG组织推出的,这两个标准并不是和前面的各种标准一样,只是纯粹意义上的一种编码标准,它们是对多媒体交互和检索提出了一种抽象框架。232H264编码标准H264的编解码器是在传统的预测编解码框架基础上,消除视频各个试点间的相关性,在以往的编码标准中都使用过H264的基本压缩技术,不同的只是在实现这些模块过程中所采用的一些技术的细节。H264的档次包括基础档次,扩展档次和主要档次,分别为不同的编码功能提供支持。在每一个档次中,分别包括了最多有15个不同种类级别LEVEL和相应的编
32、解码器。基础档次多用于视频会议、无线通信和可视电话,主要档次支持电视广播和视频存储,扩展档次则在流媒体中有着非常广泛的应用,不过这些应用都不是定义性的,每一个档次都非常灵活,并且可以支持很多种应用。H264标准的目的是为了在以前提出的各种视频编码标准的基础上能实现更高的编码效率和图像质量相对于。但是,它主要的编码方法仍然采用了之前的标准如H263和MPEG4的编码算法结构,主要分为以下的几个部分(1)将视频帧分割成各种类型的子像素块,以子像素块作为编码单位来进行相应的处理。(2)利用帧内预测,变换,量化和嫡编码来消除视频帧内的空间冗余。(3)采用帧间预测28,通过运动估计和运动补偿视频的帧间图
33、像,并只对视频序列中发生过变化的地方进行编码,从达到消除帧间的时间冗余。(4)通过编码原帧和相应预测帧之间的一个残差值,以及采用变换、量化和墒编码来进一步消9除帧内的时间冗余。研究表明,H264编码视频流与MPEG2编码视频流相比比特率要节省64,与H263V2(H263)或MPEG4简单类编码视频流相比,平均可节省比特率39,而最多可节省50的比特率。H264独有的编解码技术使得标准的视频压缩性能有很大的提高,但是,H264的复杂度也有着一定的提高,与H263相比,复杂度提高了3倍到4倍。103宏块模式选择情况统计特性和分析宏快模式的选择情况统计是基于动态多阈值模式选择快速算法能够有效实现的
34、前提,在本章中主要介绍了多视点视频编码的预测结构,着重介绍了现在广泛采用的HBP编码结构,另外还介绍了JMVM的宏块模式选择,给出了率失真代价的计算方法。深入分析了宏块模式的选择情况,并将宏块模式分为四类。31多视点视频编码的预测结构多视点视频除了视点内的时间冗余外,视点间也存在较大的空间冗余。时间冗余主要通过运动估计来消除,而视点间冗余需视差估计来消除。而合理有效的编码结构其重点在于需要充分利用多视点视频信号之间的相关性,尽可能消除冗余信息。因此,编码结构的制定对多视点系统的应用起着至关重要的作用。研究者们相继提出了适应不同需求和不同环境的编码方案,较早的有SIMULCAST编码结构。该方案
35、只是应用于单通道视频编码,编码过程中不考虑视点间的相关性,所以编码效率低;但是该方法却由于有较低的计算复杂度和随机访问等性能,被广泛应用于各实际多视点应用系统。SIMULCAST结构在研究MVC编码结构期间是主要的参考评价,鉴于SIMULCAST没有考虑视点间的相关性,所以编码效率很低,后期的研究者主要研究如何提高编码效率。之后,顺序视点预测结构的提出弥补了SIMULCAST结构没利用视点间相关性的缺点,它有效地利用相邻视点和前一时刻的相关信息降低编码冗余。一定程度上提高了压缩效率,但也增加了计算复杂度及内存的消耗。而且由于其编解码依赖路径长、参考关系复杂等因素,导致该方案的随机访问性能不佳,
36、同时也存在容易导致错误传递、不利于并行编码等问题。接着,日本名古屋大学提出的MPICTURE编码结构、NTT公司提出的GOGOP编码结构等预测编码结构29。其中来自HHI、NTT、KDDI、FUJITSU、STMICROELECTRONICS、SEJONG大学、NAGOYA大学和MERL等公司和研究机构的MVC方法性能表现较好。其中,HHI提出的分层B帧编码结构HBP,它充分利用多视点视频信号的时空相关性,结合运动估计和视差估计方法,获得较高的压缩效率和优秀的率失真性能。HBP编码结构是目前基于H264视频标准提出的多视点编码方案中较为先进的编码结构,也是现阶段的主流结构。1单通道分层B帧HI
37、ERARCHICALBPICTURE编码方法2005年6月德国的HHI提出了单通道分层B帧编码方法29。如图31,视频序列的第一帧由帧内编码方式编码,其中的I帧和P帧是编码结构中的关键帧,先于GOP其他帧的编码和解码。GOP按层次编码B帧,即先编码BN帧,然后编码BN1帧。单通道的分层B帧编码方法主要利用预测结构的双向性,从而提高编码速度。11图31单通道5层B帧的分层B帧编码结构单视点的分层B帧方案通过合理码率进行分配策略和预测结构,它支持多层次的时间可分级,显著提高了率失真性能,对于绝大多数视频序列,尖峰信噪比(PSNR)相比于经典的IBBP编码模式平均提高15DB,同时对缓慢或规则运动的
38、视频序列还可以提高主观质量。2分层B帧HBP预测编码结构图32为HBP结构示意图。其中,水平和垂直方向分别代表不同的视点和不同的时刻。方框代表帧,箭头为帧间参考关系,箭头指向的帧被箭尾帧参考。图中,HBP编码结构的GOP长度为8,S0S7表示8个视点,T0T7为GOP的8个时刻。如第1视点第4时刻的帧S1T4有4个参考帧,包括两个时间参考帧S1T0和S1T8,两个视点参考帧S0T4和S2T4。S0为基础视点,该视点帧编码时不参考其他视点的帧;S1、S3、S5和S7视点中各帧编码时,除了参考同视点内不同时刻的帧外,还参考其他视点的帧。S2、S4和S6中的ANCHOR帧只有视点参考帧,非ANCHO
39、R帧只有时间参考帧。方框中I、B和P表示不同帧类型。I、B和P后的数字代表不同的编码层次,0为最高层,4为最低层。图33给出了第1视点中各帧的参考关系以及层次关系。一般地,高层的帧可被低层帧编码时参考,所以高层帧的编码率失真性能对整体的编码率失真性能影响重大。因此,不同层次的帧采用不同的QP编码,高层的帧采用较小的QP。HBP预测结构充分地利用了视点内和视点间的相关性,因而能取得很好的压缩性能。在HBP预测编码结构中,包含大量的B帧。在如图31中,GOPGROUPOFPICTURES长度为8,S0S7表示8个视点,T0T7为GOP的8个时刻。每个GOP包含帧数为视点数GOP长度的乘积。在该图中
40、一个GOP中,包含59个B帧。B帧占一个GOP总帧数的9219。GOP越长,B帧所占比例更高,编码的率失真性能越高。12VIEWTIMEI0B3B2B3B1B3B2P0B3B2B3B1B3B2B1B4B3B4B2B4B3B1B4B3B4B2B4B3B3B3B4B4I0P0B1B1P0B3B2B3B1B3B2B3P0P0B3B2B3B1B3B2B1B4B3B4B2B4B3B3B4P0B1P0B3B2B3B1B3B2B3P0S0S1S2S3S4S5S6S7T0T1T2T3T4T5T6T7T8图31基于HBP的多视点编码结构B1B2B3B4第一层第二层第三层第四层B1B3B4B4B4T8T7T5T3
41、T1T2T6T4T0图32视点1内各帧的层次结构和参考关系GOP长度除了影响编码效率之外,还影响随机访问性能。对于访问GOP中的任意一帧所要预先解码的帧数即为随机访问代价,该代价与B层次有关。其中最大随机访问代价FMAX计算方法为13NEVELLFVIEWMAXMAX(31)其中LMAX表示最大B帧层次。如图31有8个视点,GOP长度为8,那么解码B4帧(S5/T7)则需要18MAXF帧预先解码,具体如下I帧(S0/T0,S0/T8);P帧(S2/T0,S4/T0,S6/T0,S2/T8,S4/T8,S6/T8);B1帧(S5/T0,S5/T8,S4/T4,S6/T4);B2帧(S5/T4,S
42、4/T6,S6/T6)和B3帧(S5/T6,S4/T7,S6/T7)。13当GOP16时,LEVELMAX需增加1,则FMAX21。另外,视点数的增加也会导致P帧的增加和预先解码帧数的增加,如当NVIEW15时GOP8,FMAX26。因此,目前多视点视频编码预测机构的GOP的长度一般由帧率和随机访问要求来确定。例如,某序列的帧频为30帧/秒,随机访问要求为05秒,则GOP长度设置为15。32JMVM的宏块模式选择多视点视频编码校验模型JOINTMULTIVIEWVIDEOMODEL,JMVM,是多视点视频快速算法的研究平台。在这一平台中利用了H264编码标准和HBP编码预测结构30,将宏块模式
43、可以分为九大类,分别是SKIP、INTER1616、INTER168、INTER816、INTER88、INTER88FREXT、INTRA1616、INTRA88和INTRA44。INTER88还需要进一步划分为INTER88、INTER84、INTER48和INTER44。在多视点视频编码过程中,根据当前正在处理的宏块所在帧的类型,编码器需测试的宏快编码模式也不同,具体如下PFRAMESMODESKIP,INTER_1616,INTER_168,INTER_816,INTER_88,INTRA_1616,INTRA_88,INTRA_44;BFRAMESMODEDIRECT,INTER_1
44、616,INTER_168,INTER_816,INTER_88,INTRA_1616,INTRA_88,INTRA_44;IFRAMESMODEINTRA_1616,INTRA_88,INTRA_44;因此,应该根据不同类型的帧,在不同的宏块编码模式中搜索率失真代价最小的宏块编码模式作为该宏块的编码模式。321率失真代价的计算在JMVM中,可以对各种编码结构的多视点视频序列进行编解码。在编码过程中,通过全搜索模型中的九种宏块,选择率失真代价值最低的宏块,这样不仅可以在获得较好的画面质量,又可以保证编码效率。率失真代价用以下公式计算,|,|,MODECSRQPMODECSSSDMODECSJM
45、ODEMODE(32)上式中,MODE表示当前宏块的一种编码模式,JS,C,MODE|MODE错误未找到引用源。表示当前宏快的一种编码模式下的率失真代价值,S表示编码前的视频信号,C表示视频编码后的重构信号,MODE错误未找到引用源。为拉格朗日乘子,其计算方法如下122850QPMODE(33)另外,RS,C,MODE是表示当前宏快的一种编码模式下的所有编码比特数,分别对宏块头信息、运动(视差)信息和所有DCT系数进行编码,SSDS,C,MODE|QP表示原始信号和重构信号之间的平方14差值的和,计算方法如下22,11,1|,|,BBJIYXMJMICJISQPMODECSSSD34上式中,B
46、1,B2分别表示宏块的水平和垂直像素数,可以取值16,8和4,MMX,MYT错误未找到引用源。表示运动视差矢量。在进行宏块模式选择的过程中,依次搜索每个模块的多个时间参考帧和视点参考帧,测试所有的编码模式,找到率失真代价最小的编码模式作为最终的编码宏块模式。这种全搜索方法可以获得较高的重建图像质量,但它的计算复杂度非常高,明显影响了编码速度。322宏块模式全搜索算法在对视频进行编码的过程中,采用了在所有宏块模式中通过搜索最优率失真代价从而获得最优模式的方法,称全搜索算法。是对搜索范围内所有可能的候选位置计算SSD值,从而找出最小的SSD值,并以不同视点间宏块的相对偏移量作为所求运动矢量。该算法
47、在IMVM分类基础上,从SKIP模块出发,在逐个像素处计算SSD值,直到遍历整个模块中的所有点;并以此计算出各个模块的率失真代价值。宏块模式的全搜索算法如果只从匹配的角度分析,无疑是一种最好的匹配算法,并且其他快速算法也都是在这个基础上开展分析编码性能的。另外它也是一种运算量最大的块匹配算法。对于一幅640480的图像,每个宏块是由1616像素组成,将分成(64016)(48016)40301200个宏块,然后对每个宏块通过率失真优化技术技术进行模式选择,选择最小的率失真代价作为最优宏块模式。例如选择SKIP模式作为这个宏块的最优宏块模式,或是选择INTER1616模式作为这个宏块的最优宏块模
48、式等等。在编码过程中进行宏块模式选择时,对于每个宏块,依次搜索多个时间参考帧和视点参考帧,测试所有的编码模式,找到率失真代价最小的编码模式作为最终的编码宏块模式。这种全搜索方法虽然可以获得较高的重建图像质量,但导致计算复杂度非常高,明显影响了编码速度。如果有快速算法可以不用经历全部的模式而跳过一些没用到的模式的话,可以降低计算复杂度,节省编码时间。33宏块模式分布特性统计和宏块模式的分类使用SKIP模式编码的宏块在解码时只需从其前面参考帧相应宏块复制过来,因此,如果能够在对模式进行选择之前就能确定该宏块是SKIP模式的话,那就可以不用再对剩下的八种模式进行率失真代价的计算。另外,SKIP模式具
49、有较高的相关性,不用在不同视点的帧进行运动估计,所以它的运算复杂度非常低,这将会大大的提高视频的编码速度。如果不是SKIP模式,选择INTER1616模式的话,后面的模式也将会略过。只有当要选择的模式是INTRA44模式时,才需要历遍全部模式。因此,为了实现编码的快速算法,对各序列宏块模式的分布情况进行统计分析将会有很大的实际意义。在JMVM校验模型中,是通过搜索最优宏块率失真代价的方法选择最优宏块模式。在各个视频序15列的编码过程中,各帧编码所采用的宏块模式是具有一定统计规律的。为了描述这一统计特性,引入参数NC和TC,分别表示在帧编码过程中,最优宏块模式属于宏块模式类C的概率和率失真代价平均值,具体计算方法如下VHVHICIGCN1,35VHICIGVHIMIRDCIGCT1,1,01,VHICIG36在式(35)和(36)中,RDI,M表示第I个宏块的中率失真代价值最小的宏块模式,M表示率失真代价最小的宏块模式,H、V分别表示水平方向和垂直方向的宏块数,其中CMCMCIG10,37在对各测试序列进行分步情况进行统计的过程中,主要以本次测试序列的其中三个为例,采用多视点视频编码校验模型JMVM帧间预测宏块选择算法,分别对MERL的BA