【硕士论文】H.264AVC视频编码算法及其DSP实现研究.pdf

【硕士论文】H.264AVC视频编码算法及其DSP实现研究.pdf

ID:32021042

大小:1.99 MB

页数:56页

时间:2019-01-30

上传者:U-1863
【硕士论文】H.264AVC视频编码算法及其DSP实现研究.pdf_第1页
【硕士论文】H.264AVC视频编码算法及其DSP实现研究.pdf_第2页
【硕士论文】H.264AVC视频编码算法及其DSP实现研究.pdf_第3页
【硕士论文】H.264AVC视频编码算法及其DSP实现研究.pdf_第4页
【硕士论文】H.264AVC视频编码算法及其DSP实现研究.pdf_第5页
资源描述:

《【硕士论文】H.264AVC视频编码算法及其DSP实现研究.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

西北工业大学硕士学位论文H.264/AVC视频编码算法及其DSP实现研究姓名:葛晛晛申请学位级别:硕士专业:信号与信息处理指导教师:郝重阳20060201 摘要H.264/AVC是目f{{f大力发展研究的、适应于低码率传输的新一代视频压缩标准,它具有更高的压缩比、更好的IP和无线网络信道的适应性,在数字视频通信和存储领域得到越来越广泛的应用。另外,近几十年;}乏DSP技术的高速发展可为实现复杂的新一代视频编解码系统提供平台。因此,H.264/AVC视频编码算法及其DSP实现的研究已经成为目前视讯行业研究的热点和难点。本文对H.264/AVC的关键技术进行了较系统的研究,完成的主要,【+作是:算法研究方面:对照JM参考代码对H.2641AVC的率失真优化策略、帧内预测、帧间多尺寸块模式、整数核变换量化、码流封装等部分进行深入研究。在总结已有方法优缺点的基础上,提出了一种基于混合特征的H。264/AVC快速帧内预测模式决策方法,该方法利用联合特征信息对已有预测模式进行预先筛选,从而加快决策速度,实验证明该方法在保证编码性能的基础一卜,可以使帧内编码时问相对原RDO全搜索方法降低近50%提出了一种基于合并分裂合并思想的H.2641AVC快速帧间预测块模式决策方法。该方法构造了块合并和块分裂准则,并从8x8尺寸块出发,代入准则依次进行判决,从而剔除了部分块尺寸模式,实验结果表明,该方法相对于原全搜索方法,能将帧间编码时间减少近70%,而对编码性能参数影响甚微。DSP实现研究方面:研究了DSPTMS320DM642EVM的开发原理以及DSP代码的优化方法。在VC++中用DrawDib视频函数组实现了视频显示界面,并通过PCIAPI函数实现了PC和DSP之间的视频通信。在CCS环境下实现了H.264,AVC基本层的I帧编码嚣,并用DM642EVM进行了硬件仿真。针对所‘耍现编码器的DSP代码提出了数据类型、存储器、C语言、汇编等级别的有效优化方法,优化后编码速度提高4倍多。用PCj二豹14.264/AVC解码器对编码后的吗流文件进行解码,测试结果表明编解码性能参数完全符合H.264/AVC标准的要求。关键词:H.264/AVC率失真优化策略帧内预测帧间预测模式决策TMS320DM642视频显示界面I帧编码器 AbstractNewgenerationvideocompressionstandardIi.264/AvC,whichissuitablefor10wbitratetransmission.isdevelopedstronglynovv.IthashighercompressionratioandbetteradaptabilityforIPandwirelessnetwork。whichmakeitusedwidelyinfieldsofdigitalvideocommunicationandstorage.Inaddition,DSPtechnology,whichdevelopssoquicklyrecently,couldprovideaplatformforthecomplicatednewgenerationvideocodingsystem.Consequently,researchonH.264/AVCvideocodingalgorithmsanditsrealizationwithDSPhasbecomeahotanddimcultsubjectinvideocommunicationindustry.ThekeytechnologyofH.264/AVCwasstudiedsystematicallyinthispaper.andthemainachievementsofworkwere】istedasfollows:ResearchachievementsonAlgorithms:RatedistortionoptimizedstrategvIintraprediction,variable—sizedblockinterpredictionmodedecision,integercoretransformationandquantization,andcodeencapsulationwerestudieddeeplybythereferenceJMcodeinthisPaper.Accordingtotheanalysisonoldmethods.amixcdfeatures-lzlasedfastintrapredictionmodedecisionmethodforH.264/AVCwasproposedInthismethodmodeswerefilteredbymixedfeaturesinadvance.andthedeciskmapproachwasspeededup.Theexperimentresultsshowedthatthenewschemewasabletoachieveareductionofupto50%timeforintraencoding.withsimilarencodingperformancetotheoriginalRDOfullresearchmethodinI-I.264/AVCreferencesoftwareFurthermore.afastinterblockmodedecisionmethodforH.264/AVCwasproposediuthispaF)er.Withtheinitialblocksize8x8.alltheblocksizemodeswerefilteredbycertainmergingandspliRingstandards,whichwereconstructedatthebeginning.Theexperimentsresultsshowedthat,comparedwiththeoriginalfullresearchmethod.thisfastmethodcouldreduceinterencodingtimeby70%withlittleinfluenceonencodingpertormance.ResearchachievementsonDSPrealization:TheexploreprincipleofDSPTM$320DM642EVMandtheoptimizationmeansforDSPcodewerestudiedAvideodisplayGUlwasmadebyuseofDrawDibvideofunctionsinVC++.andthecommunicationbetweenPCandDSPwererealizedthroughPCIAPlfunctions.H.264/AVCIfraineencoderofbasicprofilewasrealizedinCCS.anditwasemulatedonDM642EVM?Efiectiveoptimizedmethodsofdatatype÷memor}:Ccode?andassemblerwereproposedforDSPcodeoftheencoder,andbythemtheencodingspeedcouldbeacceleratedtomorethan4timescomparedwithoriginalcode.ThenthecodedocumentsweredecodedbvthedecoderonPC,andthetestdatashowedthattheperfoiTnaneeaccordedwit}lH.264,AVCstandardwell.Keywords:H.264/AVCRatedistortionoptimizedstrategyIntrapredictionInterpredictionModedecisionTMS320DM642VideodisplayGUIIframeencoder 加北1:业大学硕十学位论文第一章的青第一章前言弟一旱日Ij商1.1本论文的研究背景及意义图象压缩编码从1948年电视信号数字化提出以来,已有五十多年的历史,小仅在理论研究上取得了重大进步,而且在实际应用中也获得了很大成果。近十年来,图象编码技术得到了迅速发展和广泛应用,并且H臻成熟.其标志就是多个关于图象编码的国际标准的制定,即国际标准化组织ISO和国际电工委员会IEC关于静止图象的编码标准JPEG/jPEG2000,关于活动图象的编码标准MPEG—l、MPEG,2、MPEG.4等,以及国际电信联盟ITU.T制定的视频编码标准H.26X系列。这些标准采用的图象编码算法融合了各种性能优良的图象编码方法,代表了目前图象编码的发展水平。H.264/AVC[1J是由ISO/IEC与ITU.T组成的联合视频组(ⅣT)制定并=j;二2003年3月正式获得通过的新一代视频压缩编码标准。1996年制定H.263标准后,[TU—T的视频编码专家组(VCEG)开始了两个方瓤的研究:一个是短期研究计划,在H.263基础上增加选项(之后产生了H.263+与H.263++):另一个是长期研究计划,制定一种新标准以支持低码率的视频通信。长期研究计划产生了H.26L标准草寨,在压缩效率方面与先期的ITU.T视频压缩标准相比,具有明显的优越性。2001年,ISO的MPEG组织认识到H.26L潜在的优势,随后ISO与ITU开始组建包括柬自ISO/IECMPEG与IH』.TVCEG的联合视频组(JVT),JVT的主要任务就是将H.26I,草案发展为一个国际性标准。于是,在ISOflEC中浚标准命名为AVC(AdvancedVideoCoding),作为MPEG.4标准的第10个部分;在ITU-T中IF式命名为H.264标准。H.264的主要优点如下【2j:在相同的熏建图象质量下,H.264比H.263+和MPEG-4减小了约50%的码率。对信道时延的适应性较强,既可工作于低时延模式以满足实时业务。如会议电视等:又可工作于无时延限制的场合,如视频存储等。提高网络适应性,采用“网络友好”的结构和语法,加强对误码和丢包的处理,提高解码器的差错恢复能力。在编/解码器中采用复杂度可分级设计,在图象质量和编码处理之间可分级,以适应不同复杂度的应用。相对于先期的视频压缩标准,H,264引入了很多先进的技术,包括4x4整数变换、空城内的帧内预测、1/4象素精度的运动估计、多参考帧与多种大小块的帧删预测技术等。虽然H.264/AVC的编码效率远比以先静的视频编码标准高,但出_】二其具有相当复杂的编码技术及模式选择,使得其运算复杂度也远高F先前的编码标准。根 曲北。I:业大学硕士学位论文第一蘑河苦_-■-___-_-■●■___■_●_●■__-_■l-_-■●—-●__l__-一II_■●●-■-●-■_____—_●_●■_-_-_--_一据JVT会议文件的评估结果,H.264/AVC参考编解码软件JM2.1,相较于MPEG.4MoMuSysFPDAMl—020414,其编码器复杂度约为10倍以上,而解髑器复杂度则为3倍以』_:。如此高的复杂度将使得H.264/AVC难以使用在具有即时需求的应用J:。因此如何在不致牺牲H.264/AVC的编码效率之前提下,降低其运算复杂度使其适于实用化的程度,成为目前相当重要的研究方向。另一方面,多媒体终端设备具有广泛的应蒯6U景,可以应用于视频会议、可视电话、视频监控、PDA、数字电视等各个领域,尤其足在3G时代,高效、使用的多媒体终端设备一直是通信领域研究和丌发的主要方向之一。多媒体通信终端的实现主要有两点:一方面需要快速、稳定的处理器作为媒体信号处理的;严台,’j~方面需要适合多媒体通信协议标准的软件算法.尤其是对音视频信号的压缩处理算法。两者的结合才能产生高效的多媒体通信设备。H.264/AVC的出台握供了适合通信的视频标准和算法指导,而数字信号处理器(DSP)的高速发展为实现高效的音视频信号处理提供了可能性。因此,将两者集合,把H.264/AVC算法在DSP}:实现,对于多媒体通信的研究具有一定的意义和价值。1.2国内外的研究现状【.2.1H.264/AVC热点技术的研究现状H.264/AVC标准中的关键技术包括:多种更好的运动估汁(小数像豢、多模式、多参考帧)、4×4小尺寸块的整数变换、更精确的帧内颈测、熵编码等。其中针对帧内(Intra)和帧间(Inter)宏块的精确快速的预测模式决策算法、快速的高精度运动估计算法、高效率的熵编码算法是研究的热点和难点,其研究现状如下:多模式决策算法:由于多种预测模式的存在,这就要求在编码时对这些模式进行择优,而择优的方法很多,存必要对其进行研究。择优过程中,ff264/AVC将基于T.Wiegand提出的率失真优化策略(RDO)p1作为重要可选模式。对j‘}陋内预测,目前参考代码中用的是全搜索的方法.这种方法的计算量比较犬,因此可以对决策步骤进行优化,形成一些快速帧内模式决策方法,所了解到的快速方法有FengPAN等在JVT会议中提出的基于边缘方向宜方图的方法H啪BojunMeng等提出的基于分组像素点的方法铲’等,它们在不同程度上优化了原全搜索方法。埘于帧间预测,目前有D.Wu等提出的旗于均匀区域的快速帧间预测模式决策f6】、PengYin等提出的基于误差表面单调性的快速帧间预测模式决镣【71等。运动搜索算法:二维运动估计算法中以块匹配算法最为常用。其中全搜索算法可以提供给定失真准煲I下的最优解,但计算复杂度太高。许多快速匹配算法可以提供较快的搜索速度,但预测性能不太好。因此,为了在低计算复杂性视频编 两-IL:1:业大学硕叶:学位论文第一章前?j_____-__●●__●_■■●--_■■■●_-■____●---●_囊---__l___I_lU码算法中应用运动补偿来消除视频信号的时间冗余,必须研究速度快且性能好的运动估计算法。针对较早的编码标准如H263、MPEG.4等提出的优化算法有ji步搜索法、对数搜索法、梯度搜索法、四步搜索法,六边行搜索法、钻石搜索法以及带状搜索法等。新的快速运动估计算法UMHexagonS(中固专利)是一种运算量相对于H.264/AVC中原有的快速全搜索算法可节约90%以上的新算法,仝名叫“非对称十字型多层次六边形格点搜索算法”(Unsymmetrical,CrossMuti.HexagonSearch)【8】,这是一种整像素运动估值算法。由于它在高码率大运动冈象序列编码时,在保持较好率失真性能的条件下,运算量十分低,已被H.264/AVC标准惟式采纳。熵编码算法:H.264/AVC标准中使用了CAVLC【9I和CABACimj两种熵编码算法。基于内容的自适应二进制算术编码(CABAC)与自适应可变长度编码(CAVLC)相比较有3个优点:1)内容建模提供编码符号条件概率的估计,利用恰当的内容模型,根据在当前要编码的符号附近已经编码符号的不同概率模型之删转换可去掉符号间冗余;2)算术编码为每个字母符号分配非整数位,因此符号几乎以他们的熵速率编码,对概率>O.5的符号很奄效。相比huffman编码,算术编码可以‘史现小数码长的分配,更符合香农的信息论,使压缩率大大提高:3)自适应算术编码允许熵编码器适应变化的符号的统计性,即对每个帧f-目J宏块源图象和低质量的预测之问的差值编码。通常,大量的运动向量、不同序列和位速率的统计性在时间和空间上发生变化,因此采用考虑已经编码的运动向量的累进概率的自适应模型可以使算术编码器更好的适应当前符号的统计性。除了上述热点技术之外,视频数据在网络传输中的差错控制投术【“q21、变尺寸整数DCT变换、可变步长的量化机制、自适应的码率控制以及去除方块效应的环路滤波技术也是视频编码中的重要技术。具有更高压缩能力但是运算量巨大的小波视频压缩、分形视频压缩以及面向存储检索的基于视频对象的压缩技术,n:在受到更多的研究与关注。1.2.2DSP实现的现状近几年来数字多媒体处理系统已经逐步取代传统的模拟系统.而今年基于MPEG.4的数字系统又全面取代MPEG。I系统,国内已经有领先厂商应用DSP推出基于H264/AVC的数字系统并投入市场。在早期的MPEG-1类产品中,视频有专用芯片,DSP只处理语音。在MPEG.4及H.264/AVc类产品中DSP全面完成视频和语音处理工作。相比较ASIC而言,数字监控行业在DSP平台上进行视频产品开发有以下几方面的优势:第一,用户丌发自出度更大,支持多种个性化丌发,可以满足市场不断提出的新的要求,在第一时问提升产品性能,增强产品的竞争 坩北i:业人学硕十学位论文第一章前言能力;第二,DSP处理能力强,可以在一个DSP上同时实现多路音视频信号的日i缩处理,同时为了及时满足应用的需要、还提供了很多视频争用功能,比如视频滤波、De—interlace处理、高分辨显示输出、OSD功能等,甚至象网络接口、IDE接口都成为了视频DSP的主要功能,这样使进一步大幅度降低产品的成本成为叮能(这一点很重要);第三,开发周期短,实现快速技术更新和产品换代;第四.:芷=片功耗低,对提高产品的稳定性提供可靠保障。TI公司于2003年1月推出了数字媒体处理器,IMS320DM642II3I,该器件适用FVoIP、视频点播(VOD)、多通道数字录像应用,以及需要高质量的音视频编解码领域,该器件一经推出便受到了业界的普遍关注,Tl为方便广大客户对DM642的开发,推出了DM642的EVM板(评估板),极大的方便和简化了人们对DM642的应用。因此,用DM642EVM实现H.264,AVC己成为当今视讯行业的热点技术。而目前用DM642实现实时的H.264/AVC时主要存在以下难点,一是算法的优化:二是C代码的实现和优化;三是存储器的优化。这三方面因素也成为目前受关注度最高,研究力度最大,并有待进一步有效解决的问题。1.3论文的主要工作本论文对视频编码原理及当今流行的视频编码标准进行了研究,针刑H.264/AVC标准的新特性.深入学习和理解其关键算法及其编解码系统原理,分析H.264/AVC编解码器的运算瓶颈所在,优化部分算法,并利用DSP刀发平台实现和优化了H.264/AVCI帧的编码器。其具体内容有:1.熟悉视频编码的基本原理,了解各类视频编码标准及其适用领域。2.理解了H.264/AVC高级视频编码标准中各类关键技术的原理,掌握其编解码系统原理;对关键技术和热点技术,如整数核变换量化、更精确的帧内预测编码、多种更好的运动估计、熵编码等进行深入研究。3.通过对JM参考代码的分析,理清了率失真优化策略、多模式决策策略、整数核变换量化等复杂算法的代码实现思路。4.针对帧内、帧问预测模式决策方法进行深入研究,对现有各类方法的性能进行分析和比较,引入新思路或者融合已有方法的优点,形成快速决策方法。5.熟悉DSPDM642EVM的结构和应用,深入学习了DSPC6000系列的丌发原理,对DSP程序的优化方法进行研究。6.用VC++实现了视频显示界面,深入理解DSPPCIAPI函数,实现了PC与DSP问的视频通信。7.利用DSPTMS320DM642EVM实现和优化了H.264/AVC基木层的I帧编隹5器,并用PC机上的解码器正确进行解码。 矾北一L:业人学硕士学位论文第一章H.264/AVC概述及芙键技术介纠第二章H.264/AVC概述及关键技术介绍2.1H.264/AVC编解码系统H.264标准压缩系统由视频编码层(VCL)和网络提取层(NAL)114J两部分组成。VCL中包括VCL编码器与VCL解码器,主要功能是视频数据压缩编码和解码,它包括运动补偿、变换编码、熵编码等压缩单元。NAL则用于为VCL提供一个与网络无关的统一接口,它负责对视频数据进行封装打包后使其在网络中传送,采用统一的数据格式。NAL层可以使H.264的VCL层和其他一些多媒体传输层灾现映射,并通过这些层实现传输编码得到的数据功能,如图2.1所示。例如:1.RTP/IP层,用束提供任何实时的有线或无线的网络服务。2.文件格式,例如ISO用于存储的MP4和MMS服务。3.H.32x协议,可以提供有线和无线的传统服务以及MPEG一2系统的广播服务等。图2-1H.264标准压缩系统I竺羔曼竺!l_(巫田—o匿咽.■*b*f,aN悴莆弋田一年疆学惠疆弹?一叫去高二,≮翻2-2H.264视频编码层fi臼绷解码系统摧崮H.264视频编码层的编解码系统框图如图2.2所示。其中,摄像头采集和采集数据处理部分为预处理环节,为编解码器提供源图象。编码器采用变换和预测的混台编码方法。将帧内预测、运动估计后的残差数据进行变换量化,然后再进行熵编码,编码后的码流与其他所需信息一起封装成NAL单元供网络传输。解码器对NAL单元进行解码,解出头信息,得到参考预;j8|l数据,然后将其与解出的预测残差数据相加,便可得到解码重构图象。最后通过显示设备输出解码图象。2.2H.264/AVC的系统层次划分及码流封装H.264协议可以分为34--7.集t11,即基本层、主要层和扩展层,如图2-3。基本层只包含了实现/4.264协议的最基本的模块,主要包含有1帧编码、P帧编码、CAVLC、Slice(片)结构划分以及冗余帧编码4个大的模块,基本层主要用于视 陌北.【:业大学硕士学搬论文第二章H.264/AVC概述及芙键技术介}f{颂会议。为了提高编码系统的适应性和码流的鲁棒性,协议标准又在基本层之上定义了主要层和扩展层。主要层在基本层的基础上去掉了Slice结构划分及冗余帧编码部分,而添加了B帧编码、权重预测、场图象/场宏块的编码以及CABAC等馍块,主要用于网络的视频流。而扩展层则是在基本层的基础上添加了B帧编码、权重预测sP与SI帧编码和对Slice进行分区编码与差等保护等模块,主要用于消费电予应用。本文主要研究的是基本层。扩晨昱,一⋯““\/。\}}层?sP与s¨、一BHj拨1}t#槲{-1-,-i!⋯’枉审孙删二CAB,a,L图2.3H.264的系统层次划分H.264采用基于网络适应层单元NALU的码流结构,使码流具有很大的灵活性和鲁棒性。根据JM8.4l”J定义的码流格式,H.264码流结构投传输层协议及码流的应用环境不同可以分为两种:RTP封装(图2-4)与能高效检测出NAL}!Il元边界的附录B字节流格式封装(图2-5)。对于附录B字节流格式,每个NAI。单元前面放三或四个特定的被称为前导码(startcode)的字节,JM8.4中均取4个字=符00oo01。NAL的边界可以通过搜索这3或4个特定的前导码来确定,并通过使用预防码来防l七前导码竞争。通常,H.264中各种语法单元经过CAVl。C或CABAC编码得到的码字写入缓存形成最原始的数据位串(SODB),丽最终要写入码流文件的附录B字节流是由原始数据位串经过4层封装得到的(如图2.6)。NALUlNALU2NALU3NALU4L、厂—L二二二二二二、广二二二二/RTP乜★业12十}竹t口Trfi"浊找荷陶2-4RTP封装格式一⋯⋯~‘stallctxleNALUIstarte.ode:NALU2mattetxle·NALU3L—一:二—二/⋯一‘一一附录B‘#节汛图2-5附录B字节流封装格式图2-6附录B字宵流封鼗屡次通常,对于一个图象序列按附录B格式进行编码后,如果插入B桢,丽且允订bP.PUm一,一r一一~+一 荫北1:业大学硕十学位论文第二章H.264/AVC概述及关键技术介2一帧划分成多个slice,则不同类型的NAL单元排列次序应如下图醐2—7不同类l'!NALU的排列次序其中,参数集是用柬给解码器提供信息束进行大量的VCLNAL单元解码的。两种典型的参数集的作用是:1)序列参数集,对一系列顺序的图象编码时所用的参数。2)图象参数集,对一个视频序列中编码过的图象解码时所用的参数。而每个sliceNAL单元的封装结构又如图2-8和图2—9所示(其中partition为数据分区):In时}悒,sP悄:£!‘二一、,注:填充位足有盘CASAC摸式r才斋望:对]:IDR耐象只乜奢一"flshce,H只自十外M酗2—8IDR帧及WB/SP帧sliceNALU结构(不对slice进行分区,邑一帧只划分一个slice)肝毋尽P舳,‘■⋯一⋯、,shcelslI。c2sIlc心⋯蚪:1网牛体前译码2:一。7-商NALU★3‘#节时弃地光惶,仅仡cABAc时才☆【"l仅nm们数撕图2—9l/P/B/SP0贞slice/partitionNALU结构(对slice进行分区,并采用差等保护,且~帧可划分为多个slice)2.3H.264/AVC编解码的视频格式本文中所研究的H.264视频编码器接收的视频格、,\一、’式为YCbCr描述,采样格式为4:2:0,即指在图象.、一、、、水平和垂直方向上每2个连续的采样点上取2个Y样,、.本,1个红色色差Cr样本,1个蓝色色差cb样本,相i、’-'Z.‘、当于每个像素用1.5个样本表示.可用图2-10描述,图2-104:2:0幽象采样格式黜酱筒觜简辫筒霹黼蕊 曲北L:业人学硕士学位论文第二章l{.264/AVC概述及天键技术介纠其中“×’,表示亮度Y采样,“0”表示色差。此外,H264中定义了5种标准图象尺寸:sub.QCIF、QCIF、C1F、4CIF、16C1F,其中QCIF(176×144)和CIF(352×288)是/、i用最为广泛的标准尺寸格式。2.4H.264/AVC的关键技术介绍2.4.1帧内预测通过实验发现,帧内相邻宏块通常具有很类似的性质,因此,It.264利用相邻宏块的空间相关性来进行帧内预测编码,以提高帧内编码的效率。对于一个给定的宏块,首先利用相邻的周围宏块对此宏块避行预测(通常利用此宏块左边和卜边的宏块来预测,因为它们已经被编码并重建过),然后对实际宏块和预测宏块对应像素做差值,并对差值变换编码,从而可以在一定程度上减少一个I帧的数掂量。H.264的帧内预测编码方法一个显著的特征就是帧内预测在空间域进行,丽不像其他视频编码标准(如H.263+、MPEG。4)一样在变换域。为进一步提高预测编码效率,对于亮度分量,H.264对含有较多空域细肖信息的宏块采用4x4预测(9种模式),而对于较平坦的区域采用16×16的预测模式(4种模式),另外还提供了不经预测和变换量化的步骤I-PCM模式。对于4x4的亮度块预测,如图2.1l所示,把16x16的亮度宠块划分成16个4x4的子块,每个子块的像素点a-p用与其MABCDEFGI,I相邻的上面和左面已经编码并重建的像,I一-a:b..cl?素采样点A.M进行帧内预测。图2.12中Kik’I说明了各模式的预测方向。对于模式o⋯“:oP3~8,待预测像素的值由采样点4.M的图2-114x4帧内颅测的各像素点分布加权平均得到。编码器根据预测块P和当前块的最小残差为每个块选择预测模式。图2.124x4亮度块的9种预测方向对于16x16的亮度预测,类似于4x4亮度预测,用与每个宏块相邻的已编码重建的像素采样点值对宏块像素值进行预测,其预测方向如图2一13所示。对于8x8的色度预测,其4种预测模式和16×16亮度预测模式相似。只是模 蹦北j:业大学硕十学位论文第一二章H.264/AVC概述及关键技术介鲥_--●III——I_-_--El式标号不同,DC(模式O),水平(模式1),垂直(模式2),平面(模式3)。通常两色度块采用同种模式预测。0(td)I(,K、:‘)2(DCj3lym、幽2—1316x16亮度块的4种预测方向对于一些很不规则的图象,可以对其采用I-PCM模式进行直接编码。IIpCM模式不经过预测和变化量化步骤,真接编码采样点的值并传送。2.4.2帧问预测H.264的帧间预测是基于块的预测,它利用已编码重建的帧/场对当莳帧/场进行运动补偿,它与先前视频编码标准不同的地方是:可变块尺寸、多参考帧以及小数像素。下面分别介绍这三个特点:1.多尺寸块模式H.264采用如图2.14所示的可变尺寸块进行帧问预测,其中,一个16×16的亮度宏块可以划分为16x16,16×8,8×16和8×8四种模式(图2.14(a)),每个划分区域都是一个宏块分区;如果选择8x8模式,那么宏块中的8×8分区还可以再细分为8x8,8x4,4x8和4×4四种模式(图2-14(b)),称为宏块子分区。这些块尺寸模式可以形象地表示成树形结构,如图2.15所示。其中,大的分割尺寸适合于平坦区域,而小尺寸适合于多细节区域。论文的3.4节将就如何选择合适的尺、j_模式进行深入研究。㈡:!}下一;},23图2.14(a)宏块分区16x16、8x16、16x8、8x8模式(b)宏块子分医8x8、4×8、8x4、4x4模式2.双向、多参考帧一一——j二一~,t卜11ili广、-iJ。l薯“卜l—一i7、一】~I一一,_、。11IsI图2-15变尺寸块模式的树形结构在H.264中,可采用多个参数帧的运动估计,即在编码器的缓存中存有多个刚刚编码好的参数帧,编码器从其中选择一个给出更好的编码效果的作为参数帧,并指出是哪个帧被用于预测,这样就可获得比只用上一个刚编码好的I陵作为预测 隋J£f:业大学硕七学位论文第二章H.264/AVC概述及戈踺技术介}“-l_●●●__●--__I——I_-___-__●_●●-__-_●-_-----_-----__●_帧的更好的编码效果。H.264帧间预测环节中包含双向的多个参考帧,每个方向f:最多可以有15个参考图象。3.小数像素在H.263中采用了半像素估计,在1t.264中则进一步采月j1/4像素,以提高运动矢量位移的精度,降低码率。H.264中采用了6阶FIR滤波器的内插获得1./2像素位臀的值。当1/2像素值获得后.1/4像素值可通过线性内插获得。列r4:2:0的视频格式,亮度信号的1/4像素精度对应予色度部分的1/8像素的运动矢鼍.因此需要对色度信号进行l/8像素的内插运算。理论上,如果将运动补偿的精度增加一倍可有O.5bit/Sample的编码增益,但实际验汪发现在运动矢量精度超过l/8像紊后,系统基本上就没有明显增益了,因此,在H.264中,只采用了l/4像豢精度的运动矢量模式,而不是采用1/8像素的精度。2.4.3整数核变换量化视频压缩编码中以往的常用单位为8x8块。在H.264中却采用小尺寸的4×4块.由于变换块的尺寸变小了,运动物体的划分就更为精确。这种情况F,图象变换过程中的计算量小了,而且在运动物体边缘的衔接误差也大为减少。当图象中有较大面积的平滑区域时,为了不产生因小尺寸变换带柬的块州扶度差异,H.264可对帧内宏块亮度数据的16个4x4块的DCql系数进行第二次4x4块的变换,对色度数据的4个4×4块的DC系数(每个小块~个,挺4个DC系数)进行2x2块的变换。H.264不仅使图象变换块尺寸变小,而且改用整数“核”变换,并用蝶形运算实现,这样避免了乘法运算,且能够在不影响编码性能的前提下,有效地降低计算复杂度,也更有利于硬件实现。出于编码器和解码器的变换和反变换的精度相同,可以有效地消除“反变换误差”。整数核变换量化的具体过程见论文的3.5节。2.4.4熵编码多媒体数据压缩的方法可分为有损压缩和无损压缩两种,而无损压缩编码义可称为熵编码或者冗余编码,这种编码是利用信源的统计特性进行压缩编码的,也称统计编码。视频编码中常用|!}辱是熵编码中的变氏编码(也称huffman编码)和算术编码。H.264中所要编码的参数包括:序列层、图象层和片层(Slice)的语法单元,宏块类型,已编码块类型,量化参数,参考帧索引,运动矢量以及残莲数摄。片层以上的语法单元用定长或者变长的直接二进制编码方式,片层及片层以F的语法单元及编码参数用变长编码(VLC)或者基于.}下文的二进制算术编码 辑J£I:业大学硕士学位论文第二章H.264/AVC概述及关键技术介}“-●-l_--_●●_----_●●-_--_-_I--_l_____-_--___-__-___●________-__-_-_-_●-__●一(CABAC)。而VLC又包括统一的变长编码(UVLC)和基于上下文的变长编码(CAVLC)。2.4.5去块效应滤波运动估计和整数核变换都以方块为单位,这种人为的分割造成了方块边界的1i连贯性,会产生明显的方块效应,这对重建图象的主观质量有很大损伤。H264通过在方块边界使用滤波器来消除方块效应。有条件的滤波用于图象的所有4x4块的边界,除了图象的边界和特别指出_i进行滤波的某些边界。滤波过程以宏块地址增加的顺序进行。在对每个宏块滤波时,可以使用当前宏块上方或左方己滤波的宏块值。去块效应滤波分别用于亮度和色度分量。滤波过程中垂直边界的已改变的值作为同一宏块水平边界滤波的输入。去块效应滤波器用于编码器的反变换之后(蕈建和存储宏块做进一步预测之前)和解码器中(重建和显示宏块之阿)。2.4.6码率控制对视频通信而言,由于通信信道带宽有限,需对视频编码码率进行控制,来保证编码码流的顺利传输和信道带宽的充分利用。针对不同的应用场合,学者们提出了多种码率控制(RateContr01)策略。码率控制有两种模式¨71:VBR和CBR,即可变比特控制和固定比特控制。VBR模式是一种开环处理,输入为视频源和~个量化系数QP值。CBR模式是一种闭环处理,输入为视频源和目标比特,它根据对源复杂度估计、解码缓冲的大小及网络带宽估计动态调整Qe,得到符合要求的码率,这也是真『E意义上的码率控制。H.264码率控制方法的提案主要有两个:ⅣT.F086中MPEG.2TM5改进版本[18】及JVT—G012中提出用流量往返模型119l来分配每个基本单元目标比特数,并在宏块层编码采用二次率失真函数计算量化参数的算法。JVT.G012还比较了这两种算法.认为其算法优于F086算法。2.4.7SP/SI帧SP/SI帧【20l是H.264的特定编码帧,用于在视频流间高效切换,以便在解码时可以随意跳至某一时刻图象或同一视频内容在多码率传输过程中做流切换。当视频流的内容相同,编码参数不同时,采用sP帧;而当视频流的内容相差很大时,则采用SI帧将更加有效,它采用4×4帧内预测编码。 阳北】:业人学硕士学位论文第二章H.264/AVC部分关键算法_【jj}究第三章H.264/AVC部分关键算法研究3.1视频压缩质量评价标准目前多采用峰值信噪比PSNR(PeakSignal.NoiseRatio)和码率Bitrate两个指标来衡量视频压缩的质量,PSNR主要衡量图象的失真度,Bitrate则用来衡量编码后的码流大小。当评价视频压缩算法时,我们通常要综合考虑这两方面凼素,硎出表格进行比较,或者画出R-D对应曲线进行更直观的分析。Bitrate是指每秒钟传输的码流位数(即biI数),以bps(bitspersecond)为啦位,当固定帧速率后,Bitrate仅由编码后的码流长度决定。PSNR是一种衡量图象失真度的参数标准.它是目前衡量图象失真度时常用的指标之一,定义为信号功率与噪声功率之比,单位为分贝(dB)。在图象处理的过程中,将图象峰值像素值的平方视为信号功率,而噪声功率可认为是图象的均方误差。实验中,我们对PSNR的定义如下【4J,假设图象的尺寸为MxN:图象的均方误差:M姬。面÷万善莓嘲,xdif/i,(3-1)其中,嘲,为处理后的恢复图象与原图象对应像素值的差值。厂,‘‘2、图象的峰值信噪比:删=1叭。g,。【荔蠢j‘3_2’由公式(3.2)可得:MSE:三黑:面65025lO1¨lO10因此,对于亮度分量Y,MSEy:兰罢粢10对于色度分量u,MSEr.:至器嘉10对于色度分量v,MSE,:至翼熹三个分量的平均均方误差为:M—S—E一4xMSEr+MSE.+MSE—v(3.7)o粥M"如 两北L业大学硕士学能论文筘三章l-t.264/,4VC部分戈键筇法研究__-_■■__●_■●-IIIIIIIullIIII—__■_—-■--赢厂1c(2、因此,三个分量的平均峰值信噪比为:PSNR=10log.。l兰:二l(3-8)LMSE/实验中作为图象压缩质量评价指标的PSNR均为三个分量的平均峰值信噪比,即PSNR,如果是图象序列的PSNR,则为序列中所有图象PSNR的平均值。3_2H.264/AVC中的率失真优化策略(RDO)率失真优化(RateDistortionOptimized)策略【31是在率失真理论【211的嫠础卜提出的一种代价函数方案,它在网络传输和编码技术中有着』、泛的应用。H264引入了这种代价函数策略,并将其合理地运用于运动搜索、参考帧择优和模式决簸r{],相对于运用传统代价函数的编码方法,编码效果有了大幅度提高。RDO的主要思想是,在计算代价函数时,同时考虑码率和失真度两方面吲索的制约,在保证低失真度的同时保证低码率,这样更加有利于视频流的传输。H.264在运动搜索、参考帧择优、模式决策三个方面运用了不同的RDO代价函数.也将非RDO代价函数列为可选模式,以满足不同的需要。3.2.1率失真理论及率失真优化模型在视频传输过程中,为了在目标数据率的限制下使得传输的视频信号的失真达到最小,需要用到信息论中的率失真问题,即在编码比特率和图象失真之渊必需选择一个恰当的折衷。可描述如下:在保证比特率月不超过最大比特率矗一的条件下,使失真D达到最小,即min{D}限制条件:RsR。。(3-9)可以通过选择最优的编码参数给出“最好”的图象、质量(最低的失真),并不超过目标比特率。在实际中,用一套编码参数(量化系数、块模式选择等)对视频\n^R序列进行编码,得到相应的编码比特率(R)和解码图\,一*%象质量(或失真D),两者结合即形成~个R—D工作点。o~~o用不同套的编码参数重复上述编码过程,获得不同的幽3q1理想的率必真曲线尺一D工作点(如图3.1)。率失真理论指出,理想的率失真曲线(R—一D■,。曲线)位于众多工作点的凸边上(图3—1标出)。而率失真优化的目标就是寻找一套编码参数,使其代表的工作点尽可能地位于或接近这条曲线。等式(3-9)很难直接最小化,目前常用的优化模型是拉各朗目优化法【2“,具体如下:min{J=D+;tRl(3-10),是包含D、R以及拉各朗只乘数^的~个新函数。J=D4加表示了一条直线,^代表它的斜率。对于每个可能的乘数A等式(3-10)都有一个解,每个解就是和理想的率失真曲线相切(或接近相切)的直线。 婀北【:业人学硕十学位论文第三章H.264/Avc部分火键算法研究3.2.2H.264/AVC代价函数分析H.264中所用到的代价共有三种:运动矢量(MV)代价MVCOST;参考帧(REF)代价REF_COST;模式(MODE)代价MODECOS]1。求每种代价的代价函数大体可以分为RDO和非RDO两种,可以依据不同情况进行选择。I.拉各朗F1乘数A的定义H.264中用到了三种拉各朗同乘数,分别为用于运动搜索的拉各朗同乘数^一。及其移位变形^。。脚。;用于模式择优的拉各朗R乘数l。柏。RDO方式卜,三种^的值均与量化系数QP、帧类型有关,且^,。。,=√ji=:而非RDO方式下,厶“。。《。础,它们的值仅和Q.P有关。2.运动矢量代价MVCOST运动矢量代价主要运用于运动搜索模块中,为搜索点的择优提供了代价依据。H.264直接运用了RDO运动搜索代价函数,其主要构成如F:MV_COST=SAD+2M,。栅,。,×运动矢量码流位数(MVbits)相关量(3.11)其中,SAD是当前块和参考帧搜索位置块的绝对误差,如果用了哈达马变换则SAD转化为SATD;MVbits是编码运动矢量差MVD的比特数,d{MVbits列表给出。,3.参考帧代价REFCOST参考帧代价_}{jI于多参考帧的择优,采用RDO或非RDO代价时定义有所差别:非RDO方式:REF_COST=SAD+2x2。。×参考帧争}^。。佑。×运动矢量码流1矿数(MVbits)相关量(3-12)其中,参考帧号为参考帧的编号,其他各变量的定义与MVCOST中一致。RDO方式:REF—COST=SAD+2=“。。向m×参考帧码流位数(REFbits)相关量“。“。[actor×运动矢量码流位数(MVbits)相关量(3-13)其中,REFbits是编码参考帧号的比特数,由REFbits列表给出,其他变量与卜述定义~致。4.模式代价MODECOST模式代价用于块模式的择优中,在帧内预测块和帧间预测块的各模式选择过程中定义有所不同:对于亮度分量帧内预测模式择优,非RDO方式:MODE_COST=SAD+4x厶,。出(3-14)其中,SAD为当前块与预测块的差值,同样,如果用了哈达马变换则转化为SATD。RDO方式:MODtCOST=SSD+2,.oaC块编码比特数(BLOCKbits)(3.15)其中,SSD为当前块与重构块的均方误差,定义如式(3-24):BLOCKbits为某种预测模式下的残差块编码比特数,由熵编码结果给出。 两北J:业大学项_十学位论文第二章H.264/Avc部分关键算法研究对于亮度分量帧间预测块模式择优,非RDO方式:MODE—COST=MV—COST+REF—COST+2mode×模式比特(MODEbits)(3—16)其中,MV—COST、REF—COST分别为运动搜索、参考帧择优后的最佳代价;MODEbits为编码模式号的比特数,由列表给出。RDO方式:MODE_COST=SSD+2.,础×块编码比特数(BLOCKbits)t3-17)其中,SSD为当前块与重构块的差值iBLOCKbits为某种块模式F的块编码比特数,由熵编码结果给出,包括残差块、运动矢量和参考帧编码比特数。对于P帧亮度分量的特殊模式SKIP模式和B帧亮度分量的特殊模式SKIP、DIRECT模式,其非RDO代价:SKIP_COST=SAD-8×2。。(P帧)(3一18)DIRECT—COST=SAD-16xk。ode(B帧)(3-19)SAD为当前块与参考帧相应位置块的差值,如果用了哈达马变换则转化为SATD。对于色度分量帧内预测模式择优(色度分量只有帧内预测),MODE—COST。SAD(3-20)翩D为当前块与预测块的差值,用了哈达马变换则转化为跗rD。3.2.3H.264/AVC编码过程中RDO代价函数的运用H。264编码一个宏块时代价函数的使用过程如下:ste.)1帧间三种帧间大块模式(16×16,16x8,8x16)循环,进行择优:ste.)1.1运动搜索,代价函数用MV—COST(包含对非RDOP帧SKIP模式的择优)。ste.,1.2参考帧择优,代价函数用REFCOST。ste.)1.3非RDO块模式择优,代价函数用MODECOST。ste.)2帧间小块模式(P8模式)循环。进行择优:ste.)2.1运动搜索,代价函数用MVCOST(包含对非RDOP帧SKIP模式的择优)。ste.)2.2参考帧择优,代价函数用REFCOST。step2.3块模式择优,代价函数用MODECOST。step2.4对于非RDO方式,将step2.3的择优结果与stepl中的最佳大模式进行比较决策,选出最优模式。step3所有模式择优:step3.1RDO方式下,对三种帧l’日J大块模式、最佳P8模式、两种帧内预测模式以及SKIP、DIRECT模式进行RDO模式代价MODECOST的比较择优:step3.1.1四种色度块帧内预测模式循环。step3.1.2设簧运动预测和参考帧模式。step3.1|3计算七种模式的RDO模式代价MODECOST,进行比较决策。15 V1=i-IL;[业大学硕士学位论文第二帮H.264/AVC部分天键算法Iij}究■●■■■■■■■■■■●■■■■■■■■■■●■■■■■■■■■■■●■■●■●■■■●■■■■■■■●●■■■■■■●■■■●■■■■■■■■■■■■■■■■|■一II嗽step3.2非RDO方式下,将step2的择优结果与DIRECT模式、帧内预测模式进行比较择优:step3.2.1获得DIRECT模式下的代价MODECOST,进行比较择优。step3.2,2进行4x4和16x16的帧内预测,用MODECOST对预测模式择优。以上步骤中,如果用RDO代价函数,因为计算代价时已经编码,择优后仪篱对编码参数进行存储;如果用非RDO代价函数,则择优后还要进行编码过程,编码后存储参数。3_2.4实验及结果分析对JM8.4代码的RDO性能进行测试,选取六种QCIF格式的图象序列,其中包括快运动序列foreman,coastguard和news,慢运动序列claire,akiyo和container。!实验中采用I帧和P帧编码,编码方式为IPPPP,帧速率为30Hz,测试帧数为1帧I帧、49帧P帧,共50帧。将foreman和claire两序列的性能参数和决策时n】j的变化记录如表3.1。其中,QJP为编码量化系数,PSNR(dB)为RDO代价与非RDO代价相比图象序列峰值信噪比的变化量,Bitrate(%)为序列比特率的变化白分比,Time(%)为编码时间的变化酉分比。还可以通过序列的R.D曲线更直观地分析算法的性能参数,如图3.2。表3.1测试幽象序列的性能参数(a)foreman.qcif图象序列(b)claire.qcif幽琢序列‘)PPSNR(dB)Bitrate(%)Time(%)120。09.2.6436.8416O.03_4.1232.1220O.16.6.4227.64240.17.6.9223.83280.06.12.4520.72320.07.14.4018.50Q|pPSNR(dB)Bitrate(%)Time(%J120.04.14.4526.5516O14-12.7624.19200,27.8.1321.78240.27.7.031980280.10一5.1718.1832O.11.5.621651(a)foreman.qcif图象序列(b)claire.qcif幽象序列图3-2测试图象帝列的R-D曲线虱霸一一彩一一一⋯一一。.一卜够一 西北.i业丈学硕十学位论文第三章H264/AVC部分关键算法研究出图表信息司知,引入RDO代价函数后,H264的图象序列编码性能有了大幅度提高,其中PSNR平均增加了013dB,Bitrate平均减少了8.40%,这火大提高了视频传输的质量。当然,RDO也有缺陷,}l;{表格数掘可以看出.其编码效率较低,编码耗时较大,因此可以进步优化和改进tt264中的率失真优化策略。33H.264/Avc帧内预测模式决策由2.4.1节的介绍,H264有多种可供选择的帧内预测模式,而如何选择模式也就是模式决策的方法是值得深入研究的。3.3.1现有决策方法1.全搜索的帧内预测模式决策方法JM8.4程序中采用叠搜索的方法来进行帧内预测模式的决策。步骤为:slepl根据种预测模式产生4×4的亮度预测块,计算原始块和预测块的残羞块..step2计算代价函数:1)非RDO:卫Cost⋯=∑CO够ISATD(d(ff)I+4_PA(gP)(3—21)i=l其中,碱萨原始块一预测块,SATD为对残差块diff做哈达马变换后变换系数的绝对值之和,也可不选择做哈达马变换,这时SATD转化为SAD,SAD是对diff块备像素点绝对值的直接求和。将SATD值与4P2(QP)相加为代价函数Cost。。ltQn是量化系数量lP的指数函数的近似:A(QP)。z。m。=0.852‘⋯。2’”(3—22)对于最可能模式(当前块的左邻和上邻块最佳预测模式中的较小模式),P。-0+对于其他模式,P=I。2)若选用RDO,可通过计算帧内4x4亮度块的RDO作为代价函数进行择优:Cost¨=RDO=厶Ⅲ。(s,c.MODEI^㈣)=SSD(s,c,MODE)+zmR(S,f,2l_[ODE)(3—23)其中SSD=∑№,n,)一s’(一Y,f)11(3-24){xvlE月为原始块S与重构块5’的均方残差,R(s,c,MODE)为残差块编码后的玛流位数=step3对所有9种4×4模式重复stepl~2,然后选择最小的Cost。,。。step4对宏块内的16个4x4块重复stepl~3,对所有Cost。。。求和。step5根据一种16×16的预测模式产生一个预测宏块,对残差宏块的每个4x4块进行哈达马变换。step6从16个4x4块中提取每个I)C系数的l,4形成男一个4×4块,对DC系数块step6从16个4×4块中提取每个DC系数的1/4形成男一个4x4块,对DC系数块 两北1:业大学硕士学位论文第二章H.2641AVC部分关键算法研究进行哈达马变换。step7对所有哈达马变换系数的绝对值求和(除step5巾的DC系数),墩和的l/:作为代价函数值。step8对4种16×16模式重复step5-7,选择最小的代价豳数值Costm:6。step9检测步骤4-8的代价函数值,如果o“。。≥∑(10盯。,+24A(QP)(3-25),=l则当前块选取4×4的intra预测模式,否则,选取16×16的预测模式。stepl0对于色度块,先做4种8x8模式的预测,然后用4x4亮度块的第一种代价函数进行模式决策。由此可见.一个宏块内的模式组合数为:M8x(M4x16+M16)(3-26)其中M8=4、M4=9、M16=4,分别代表8×8色度块、4×4亮度块和16×16亮度块的帧内预测模式个数,所以将要计算592个不同的代价函数以选择最佳摸式,汁簿复杂度很大,尤其是在运用RDO后,虽然保真度火幅度提高了,但耗时过大,需要采用一些快速算法,在保证其编码精确度的基础上对其进行优化。2.基于边缘方向直方图的快速帧内预测模式决策方法通过观察发现沿着局部边缘方向的像素通常有相似的值。这对亮度和色度均有效,因此FengPAN等人在JVT会议|41中提出了一种基f边缘方向直方阁的快速决策算法,这种方法选用sobet算子映射出的边缘方向直方图来提取边缘方向信息,然后使用局部边缘方向上的采样点对当前像素进行预测。该方法通过边缘方向来确定候选模式,从而减少候选模式数,降低了运算量。3.基于分组像素点的快速帧内预测模式决策方法由于4x4的尺寸比较小,所以块内纹理比较平滑,130junMeng等人根据这⋯特点,在文献[5】中提出了一种基于分组像素点的快速决策算法。该方法用分组像素点来代表一个块,在决策的每个步骤中仅计锌一组像素点的代价函数,以此减少计算点数,简化了运算。4.空域和变换域联合的快速帧内预测模式决策方法ChangsungKim等人提出了⋯种基于空域、变换域的决策疗法【22|该方法通过对二蕾域、变换域特性的统计,以空域、变换域最佳模式来近似RDO最佳模式,以此省去RDO的计算时间,从而加快决策速度。3.3.2基于混合特征的H.264/AVC快速帧内预测模式决策方法原全搜索的决策方法计算复杂度相当高,有必要对其进行优化和改进,以形成相应的快速决策方法。基于边缘向量直方图的快速方法运算较为复杂,因此决策速度提高的幅度不是很大,相对原RDO全搜索方法编码时间大约仅减少30%/,: 西北J二业大学硕十学位论文籀二=章H.264/AVC部分关键算法研究右;基于分组像素点的快速方法在运用了RDO优化后效果并不明显;空域和变换域联合的快速方法是比较简单可行的方法,但是其准确度和决策效率还有待提岛。本文提出的基于混合特征的快速帧内预测模式决策方法主要针对关键的4x4亮度块的9种预测模式,突出了DC模式的重要性,并将其与最可能模式特性,空域、变换域特征以及预测方向相邻模式特征相结台,形成了联合特征信息遴行决策。3.3.2.1特征提取由2.4.1节,4×4亮度块帧内预测模式的方向可归纳如图3—3所永。t87/瓠’/?r\、63/j-47’6、图3-34x4亮度块帧内预测模式(9种)对三个QCIF图象序列的500帧进行测试,针对4x4亮度块得出以下,结论:1.宏块位于帧的最顶部时,只需检测DC模式(模式2)和水乎模式(模式1);宏块位于帧的最左部时,只需检测DC模式和垂直模式(模式0)。2.当最可能模式代价SATD小于某一闽值时,RDO最佳模式为最可能模式。3.以4x4亮度块的9种模式的剐D和SATD幅度等级为X轴和Y轴,建立图象序列的RDO最佳模式的直方图。发现大部分最佳模式落在(剐D,删丁D)的3×3窗内,如图3-4所示。蹦3-4RDO擐佳模式直方图盼‘≯j%:,、晶:{l’『;Ⅳ南、J引。)+.一;囊酗3-5再幅度等级(SAD,SATD)的平均鸲率(R)灾真(D)芙系4.由(1,1)~(3,3)各等级模式的R.D关系,如图3.5,发现模式(1,1)近似于RDO的最佳模式,其次为模式(2,1),(3,1)..5.不在这个3x3窗范围内的RDO最佳模式有60%为DC模式。6.DC模式为SATD或者SAD的次小模式或第三小模式时,选择DC模式。7.SATD或者删D的三个较小模式的幅值相等时选择DC模式。 两北【:业人学硕_:学位论文籀三章l{.264/AVC部分咒键弹法研究--__--●_-_-_--●_■__----●■--●____-●●●_--____-__■●-●__II_■--____■-■■■--●●_-■■-_●_-一8.除了最小模式以外,与SATD或者SAD最小模式预测方向相邻的两模式为RDO最佳模式的概率最大。由以上结论建立如下的决策思路:定义阈值变量五,疋,l’和疋’:。sATD,一SATD』t一一一SATDIF,:—SAD2-—SAD,SAD.(3-29)墅翌[竺婴SATD,只:—SA—Di3I-_SA—D’(3-30)7:。—1矿其中,SATDl和SADl分别为SATD和SAD的最小值,SATD2卸s0伤分别为SATD和SAD的次小值,SATD3和蹦cb分别为SATD和SAD的第:刊、值。以错误判决率为依据。分别选取SATD和SAD的闽值r和z_’,如图3-6所示,以实验中的foreman.qcif图象序列为例:T≈O.43,T’≈0.4。(a)SATD的闽值T(b)SAD的闽值717图3-6闽值的选取先对SATD,再对SAD进行闽值检测。若五火_F闽值丁则直接选取SATDI模式和DC模式为候选模式,其余若t’大于丁7则选取SADl模式和DC模式为供选模式。由结论6和7,为保证决策精度,对于通过的上述检测步骤的块.若其SATD或SAD的三个较小模式的幅值相同,即z=L=0或7:7=F=0,则直接选择DC模式;对于不满足的块,若其SATD或SAD的三个较小模式中有Dc模式,则选择DC模式。由结论8,通过上述所有步骤豹块,仅选取剐7_D和SAD最小模式、与最小模式预测方向相邻的两模式以及DC模式为候选模式进行RDO检测。例如若最小模式为模式0,相邻两模式为5和7:若最小模式为模式1,相邻两模式6和8;糟最小模式为模式3,相邻两模式为7和8。3.3.2.2决策系统模型按照上述决策思路,搭建4×4亮度块帧内预测模式决策系统框图,如躅3.7:厂n卜 州北i:业大学硕十学位论文第二章Iu{.264/AVCN',分关键算法研究图3.7模式决策系统框幽3.3.2.3决策步骤stepl根据一种预测模式产生4×4亮度预测块,汁算原始块和预测块问的残差块。step2检测当前宏块位置,如果在当前帧的最顶部,则候选模式为DC模式和水平模式(模式1):如果在当前帧的最左部,则候选模式为DC模式和垂直模式(模式0),比较候选模式的RDO代价值,选出最佳模式,到stepl0。step3计算最可能模式的SATD,若小于闽值瓦,则选择最可能模式为最佳模式,到stepl0。step4计算4×4块9种帧内预测模式的SATD值。对9种模式的SATD进行排序,提取SATD值较小的3种模式。step5计算SATD闽值变量正和瓦,若I大于训练闽值r,则直接选取SATD最小模式和DC模式为候选模式,再计算两种模式的RDO值(公式(3-23)),进行比较判断,选取最终的最佳预测模式,到stepl0。step6计算SAD阚值变量正’和巧,按步骤对SAD较小模式进行检测.若‘’大于二r,则将SAD最小模式与DC模式进行比较决策,到stepl0。step7若闽值变量不满足step5和step6的条件,则比较正和疋以及正研口《,若两者相等且均为0,则表示至少有3种模式的剐rD或者删D值一致,选择DC模式为最佳模式,到stepl0。step8若SATD或剐D的较小模式中有DC模式,则选取DC模式为最佳模式,到stepl0astep9计算SATD和SAD最小模式、与最小模式预测方向相邻的两模式以及DC模式的RDO代价值,进行比较决策.到stepl0。steplO模式决策结束,输出最佳4x4亮度块帧内预测模式,然后进行帧内预测。3.3.2.4实验结果及分析用本文提出的基于混合特征的快速帧内预测模式决策方法对六种QCIF格式的图象序列进行测试,其中包括快运动序列tbreman,coastguard和llews,慢运动序列claire,Akiyo和container。实验中采用全I帧编码,测试帧数50帧,帧速奉 婀北I:业大学硕_f=学位论文第=章H.264/AVC部分天键算法研究为30Hz。将forelllarl和claire两序歹0的决策时问和性能参数的交化记录如表3.2(与原RDO全搜索方法进行比较)。其中,QP为编码量化系数,PSNR(dB)为本文方法与原全搜索方法相比图象序列峰值信噪比f{勺变化量,Bitrate(%)为序列比特率的变化百分比,Time(%)为I帧编码时间的变化百分比。由表格数据可知,与原RDO全搜索方法相比,本文方法对快速和慢速运动嘲象序列均有很好的优化效果。I帧编码时间减少量接近50%:PSNR的降低兰O.10dB,可以忽略:比特率的增加<6%,也可以忽略。还可以通过序列的R.D曲线更直观地分析算法的性能参数,仍以foreman和claire两图象序列为例,如图3.8所j÷。由图,本文方法和原全搜索方法的R.D曲线非常接近。由此可见,本文方法较大幅度地提高了I帧编码速度,对图象序列性能的影响却微乎其微,因此,本文提出的基于混合特征快速帧内预测模式决策方法对原全搜索方法的优化效果是非常显著的。表3-2测试图象序列的性能参数(a)foreman.qcif图象序列(b)claireqcif图象序州QPPSNR(dB)Bitrate(%)Time(%)12.O.102.09.45.316.O.092.92.42.620.O.083.74.42.924.0.084.9l-44.728.0.075.31.42.332.0.055.71.43.3QPPSNR(d13)Bitrate(%)Time(%)12,0.093.42—51.416,0.082.77—49.【20一O.102.37.48424m.10379.5l728-0,074.08.52.032.0.064.33,49、2(a)foreman.qcif图象序列(b)claire.qcif图象序列图3-8测试图象序列的R。D曲线3.4H.264/AVC帧问预测块模式决策在2r4.2节中我们已经介绍过H.264/AVC采用了一种可变块尺寸的运动预测模式,亮度块尺寸的范围从16×16变化到4×4,其中包含很多可选模式,形成了~种树形结构的运动预测,同时还为P帧和B帧提供了特殊的SKIP模式和DIRECT模式(不用运动搜索的跳过模式,MV=0或者是预测值,如架MV=0,则直接用参22 撕北l:业人学硕1:学位论文第二三章H.2641AVC部分关键算法研究■-■■一III■■■■■■■■■●■■■■■_■■■■●■■■■●●■■■_■■■■■■_■■■■■●■■■■■■■■■■■■■■■■■■■■■■■■■■■●■■■■■—■考帧相应块代替当前块,无需残差编码)和可选的帧内4×4模式、帧内16×16模式,总共11种模式。这些可选模式的存在使得编码方式更加灵活,通过实验数据表明12“”J,编码精度相对于固定尺寸块预测要高很多。然而,可选的帧问预测馍式增加了,必然会使得运算复杂度增加,因此有必要采用一种高敬的决策方法来选取块尺寸组合方式,使得编码效率和编码质量俱佳。JM8.4中采用了全搜索的帧间模式决策方法,这种方法虽然使得编码精度毒【{肖高,但运算量太大,编码效率很低。为了提高编码效率,目村已形成r一些快速的块尺寸决策方法。这些方法总的来说可以分为三类,“顶到底”方法,即分裂方法;“底到顶”方法,即合并方法;合并、分裂结合法。3.4.1现有决策方法1.全搜索的帧间预测块模式决策方法stepl进行相关设置,包括有效模式、RDO模式、拉格朗日系数。step2在16×16,16x8,8x16三种模式中择优。step2.1按某种块尺寸进行分区运动搜索。step2.2前、后向参考帧择优。step2.3对三种模式择优,并进行模式存储。step38×8块择优(B帧8×8DIRECT模式和P8模式(8x8、8×4、4×8和4x4模式))。step3.1计算B帧DIRECT模式的代价。step3.2分区运动搜索。step3‘3前、后向参考帧择优。step3.4计算8×8模式的代价函数值(非RDO和RDO),进行择优,并累积得到16x16块在P8模式下的最小代价值。step4对于非RDO模式决策,比较P8模式和非P8模式的代价函数值进行择优。step5对于RDO模式决策,进行七种模式(SKIP、16x16、16x8、8×16、P8、帧内16×16和帧内4x4)择优(考虑色度影响)。step6对于非RDO模式决策,在step4的基础上和DIRECT、帧内4x4模式、帧内16×16模式一起进行择优。step7进行数据存储和码率控制。由此可见,如果选择了8x8模式,每个宏块需要进行7种变尺寸帧I剐块的运动搜索,还要对总共11种模式的代价函数进行比较择优,运算复杂度相当高。如果选用RDO代价函数,编码精度会有大幅度提高,但计算量就更大了。所以,自‘必要对全搜索的模式决策方法进行改进。 荫北I:业人学硕士学能论文第二章H.264/AVC部分芙键算}去研究2.“顶到底”的快速帧间预测块模式决策方法(分裂法)文献[23】[24】【25】最早提出了将可变尺寸块用于运动预测的思想。他们的块组合思路为:先用大块匹配,如果最佳块的误差大于给定闽值.则将此块分裂为四个小块,即“预到底”的思想,这个过程重复到得到最小误差;然后进行反台并,将对图象质量无影响的小块进行合并。他们的实验结果表明,对于低速率编码,tU变块尺寸的运动预测后的编码质量相对于固定块尺寸编码有大幅度的提高。然而,上述的分裂思想只是一个最初的、简单的构思,因此在组合过程r11进行了重复的工作,灵活性和实用性还不够。近年来,尤其是在II.264标准出现后.在其基础上又形成了一些有针对性的“顶到底”方法,柬满足H.264的编码需要。D.Wu等人在文献[6】中提出了一种基于均匀区域的方法。其思想为:视频序列里的均匀区域一般属于同一个视频对象,因此应一起运动。所以一帧内的均匀块应有相似的运动,不需再分子块。采用边缘检测的方法来检测均匀区域。PengYin等人在文献【7】中提出了基于误差表面单调性的方法。将16×16,8xg,4x4三种模式作为初始化模式,。,。。。表示模式误筹。若‘,。m(16x16)‘厶。(8x8)<‘,。。。(4x4)或者Jmoa。(16x16)>3mode(gx8)>,m州。(4×4)则误差表面是单调的。若单调,则只检验两种最佳模式之间的模式。3.“底到顶”的快速帧间预测块模式决策方法(合并法)tnjongRhee等在文献[26仲首先提出了基于合并思想的快速决策方法。其慰路依据是缝隙问题:通过不同的观测窗看一个运动物体,观察到的MV是不同的,不同窗内可选MV的重合矢量即为运动物体真『E的Mv。因此,大体的合并思路为:首先从4x4的小块出发,对每个小块做运动预测,得到MV,如朵个8×8块内的四个小块有重合的MV,则合并为8x8的块,且合并后块的MV为童合MV的最佳值;同样,对于16x16块内的4个8×8块,如果满足MV条件也可合并为16×16的块。由于这种合并思路的可变尺寸仅为方形树,即一个16x】6块可分为4个8×8块,一个8x8块可分为4个4x4块,对于H.264帧间预测块模式的决策问题只能借鉴其分裂思想,有针对性的进行应用。Yu.KuangTu等人在文献【27】中针对H.264对文献[26】1|。的合并方法进行了改进,形成了一种的基于自适应阀值的块合并决策方法。该方法主要是对8×8块的一种合并,定义了楣邻块MV距离闽值D纽(x。x。),其中x。x。为两相邻块图3-98。8相邻块对应的MV(图3-9),用量化系数和代价函数麸同确定闽值7H,如聚Dist(x。,X。)≤TH,即Merge(a,6)=1,则将两相邻块合并。合并过程为:从8×8的中等块尺寸块出发,1)如果Merge(a,6)=1且Merge(c,d)=1,则使用16"8尺寸块: 阳北l:业人学硕士学位论文第二章H.2641AVC部分关键算法讲究●_■_■■_IIIII■■■■■●■●■■●■■■■●■■■■●●■●■●■●■●_●__■●_●■●■■■-■■■■■■■●■■■■■■●_■■■■_■_■■●■●●●■●●■●-一2)如果Merge(a,c)=t且Merge(b,e1)=1,则使用8×16尺寸块:如果1)、2)都成移,则用16x16尺寸块。4.合并分裂法近年来,围绕着H。264的帧瞄预测块模式决策阚题,又出现了一蝼新fj勺快速决策方法,其中很多都是将上述两种思想(分裂和合并)相融合,并引入快速运动搜索方法以得到最佳的模式决策方式。文献128I提出了一种基于ADSS和SDSP的合并分裂法。该方法主要从快速运动搜索方法出发,以MV判断模式可选性,并用相应的快速搜索来降低搜索点数.从而加快模式决策。W,Konzali等人在文献[291中提出了基于APRS的合并分裂快速帧间预测块模式决策方法。方法思路为:首先进行分裂,从16×16尺寸块开始.判断其与川磺相应宏块差值块的SAD,如果小于闽值,则可以认为是静止宏块,无需再分裂,否则用ARPS对16x8、8x16和gx8模式进行比较决策选出最佳模式.如果最佳模式为8x8,则重复上述步骤进行分裂判断;然后是合并过程,判断分裂后的最小相邻块,如果为均匀的,则将其合并,重复此过程直到最大尺寸块。3.4.2基于合并分裂合并思想的快速帧闻块模式决策方法通过以上对~些比较典型的H.264帧问预测模式决策方法的介绍,lq以看出全搜索的决策方法效率太低,而目前出现的抉速决策方法从总体框架上说可以归结为:分裂法、合并法和合并分裂法。就改进性能束说,对于将大块分裂成小块的大多数方法,小块仍要进行MV搜索来确定其MV,所以比较耗时;相反对于合并方法,如果相邻小块的MV满足某些条件,则可直接用其表示合并后大块的MV,无需重新搜索,所以比较节省时间。当然,步骤减少了,必然会影响编码稽确度,所以大多数单独的分裂方法的PSNR和Bitrate性能要稍低于合并方法。对总的性能参数进行分析,合并分裂方法是最佳的,尤其是运用了快速运动搜索策略螽,总体性能有大幅度提高。就目前已存在的快速方法而言,采用从8x8块出发的合并分裂方法的实验效果最好。3.4.2.1决策方法的思路通过上述分析,结合各类方法的优缺点,提出以下合并.分裂.合并的改进思路:从8×8尺寸块出发,先与参考帧相应块比较,差值块的SAD满足~定的阈值条件,则使用SKIP模式;第一次合并过程:构造一定的判决准则,若8×8的块满足准则则进行块合并,继续对16×8、8x16和16x16的模式进行判断:分裂过程:构造棚应的判决准则,若8×8的块满足准则则分裂成4×4的块;第二次合并过程:检测 坷北L业人学硕士学位论文第三章H.264/AVCN;分梵键算法彤}究合并准则,若满足条件则将4×4的块合并为8×4、4x8的块进行进⋯步决策。1.SKIP模式阈值选取SAD作为SKIP模式的阚值代价,若SA‰=∑Is(x,Y,f)一3’(x,Y,,一△叫<"to(3-31)fj,,沁』则直接选取SKIP模式,不需再进行运动搜索和模式决策。其中,S为当酶宏块缘藜,s‘为参考帧对应位鼹宏块像素,r0为训练得出的闽值。2.合并准则根据基本合并理论,若相邻两小块的运动矢量MV相似,则可进行合并。而若需进行合并,必然要满足模式代价函数值条件:J。,m7[4}[0]+img->m7[0][4]+img->m7[4][4]);ml【l】《img->m7[0][0]-img->m7[4][0]+img->mT[0】f4j—img->m714][4]);ml【21=(img->m7[0][0]+img->m7[4][0]·img·>m7[0114]·img->m7[4][4]);m1[31=(irag->m7【O】【O】一img->m7[4][0]·img->m7[0][4]+img·>m7【4]【4]);4.扫描:对于帧宏块:Zig.zag扫,即“之”字型;对于场宏块:场扫(如图3.13)勿胱71115{a)ch)圈3.13扫描顺序(a)“之”字型扫(b)场扫5.后分级,量化:参数MF的实现:6×4×4的三维数组quant—coeflqp~reml[il[j】29 州北j:业大学硕士学位论文第二章H.264/AVC部分荚键算法研究___●-●--■_____-__--■●-__--●●_IIIIIIII_●--_■-_-_其中qp_rem=QP%6(QP除以6的余数);qp_per=QP/6(Qe除以6的新)q_bits=Q_BITS(常数)+qp-per;1)4×4残差数据块:实现公式:}z小=(慨J·MF十/)>>qbitss劬(z.,)=sign(1V)(3-40、2)4x4亮度帧内DC块:实现公式:lZfJ(u)l=qr,坤m1.A峨001+2f)>>(@its+1)sign(ZⅢ¨))=sign(Y:⋯,一(3-41)3)2×2色度DC块:实现公式:胁nJ)I=(‰u)|.^缎00)+2f)>>(qbits+1)sign(ZⅢⅥ))=sign(WjⅥ,))(3-42)6.零游程:用变量run记录幅值为0的变换量化系数的个数解码过程:7.仅对16×16亮度帧内预测残差数据块和8×8色度残差数据块:1)4×4亮度帧内DC块:实现蝶形如图3.12(C)2)2x2色度DC块:实现代码:img.>m7[Ol[0J=(ml[o】+mI【Il+m1[21+m113])>>1;img一>m714][01=(m1【O】_mt【l】+Irll【21一m1【3】)>>1;img->mT[0][4]=(ml【O】十ml[1】一ml[21·m1【3])>>1:img->m7[4]【4】。(mlfO]-m1fl】一m1[2】+mI[31)>>{;8.阿分级.反量化,前缩放:参数y的实现:三维数组dequant—coef[qprem][4l[4]1)4x4残差数据块:实现公式:吃=Z。一¨,<<(floor(QP/6))2)4x4亮度帧内DC块:实现公式:睨n,)=(%Ⅲ∥K00)+I<<(卜floor(QP/6))>>(2(3-43)floor(QP/6))(3-44)3)2x2色度DC块:实现公式:OP≥6,Ⅳ%忆,)=%Ⅲu)·_00)<<(floor(QP/6)一1)QP<6,睨¨广眈眦∥‰)j>>1(3.45)9.反整数“核”变换:X’CW'C,=实现蝶形如图3.12(d)。10.后缩放:Ⅳ。=round(X’/64)11.输出:4x4残差样本x。l1l/2,2一l—l1,2一llIl一1/2阿1l/2—1/2划(3—46)(3-47) 婀北1二业火学硕士学位论文第四章H.264/AVCI帧编码器的DSP实现和优化第四章H.264/AVCI帧编码器的DSP实现和优化4.1TD$642EVM简介TDS642EVME”1是基于TI的DSPTMS320DM642芯片设计的评估丌:发板。扳上DSP的计算能力可以达到4Gips,可以做实时的多路视频采集,实现复杂的音频、视频压缩算法,带有以太网口,可通过网络传输数据。主要应用于网络{见频监控,音频视频的压缩算法,在此基础上可丌发网络视频会议系统和其他基1i复杂图象处理的高速DSP应用。TDS642EVM的主要指标有:1)工作方式:独立和PCI两种工作模式:2)输入输出:复合或S端子视频输入;复合或S端子或高清晰度电视输出,VGA输出:立体声或者单一麦克风输入;立体声或单路数字音频输出;3)DSP与扳上存储器:DSP内部工作时钟为600MHz,外部总线时钟为100MHz,计算能力为4.8亿条指令每秒;DSP片内存储空间/L2cache为256KB;板上存储器包括32MB的片外扩展SDRAM、4MB闪存、256Kb的12CEEPROM:DSP引导方式为从FLASH引导或从PCI接[1引导:4)外部接口:2个UART(RS.232接U)、以太嘲接r1(10/100Mbps)、子板接口、PCI接口和JTAG接口。而DSPDM642芯片属于C64x系列的DSP,地址空闯为32bit,内部外部统一编址。DM642的地址空问映射与相应地址空俐上的连接设备如表4.1所示。衰4-1DSPDM642地址空间映射起始地址空间K度对应空间Ox00000000Ox00040000内部存储器空间/L2cache片内空间映射Ox00040000Ox7FFCooOO预留空间城外部设备0x80000000Ox02000000EMlF-ACE0,32MBSDRAM0x90000000OxO0080000EMIF.ACEI,4MBFlash片外空间映射Ox90080000OxO0080000EMIF,ACEl,4MBFPGA0xA.0000000OxlOO00000EMIF.ACE2,扩展0x13.0000000Oxl0000000EMIF.ACE3,扩展4.2PCI通道及视频显示界面4.2.1PCI通道C6000DSP片内集成了一个主/从模式的PCI接口,通过PCI总线能够实现DSP3l 阳北~【:业大学硕十学位论文第四章H.264/AVCl帧编码器的DSP实现和优化一IIIIIII--_■■■-■■■-_■_■____●_■_●____■_群与PCI主机的互连。对于C64x的DSP,PCI接口由EDMA的地址产生硬件与DSP帼连f311。可以作为PCI主机的处理器有Motorala的MC6800系列、PowerPC系列以及Intel的i960系列等。在本文的实验中采用PC机作为PCI主帆。为了实现DSP板与主机的通信,用户必须详细的了解PCI控制器lDM642EVM中为$560)每一个寄存器的作用和PCI总线的。l二作机制.这一工作鞋是比较大的。为了使用户专注于DSP的软件丌发,Tl公司编写了DSP板支持软件,DSP端应用程序和主机端应用程序只需使用相应的数据类型、调用相应的API(应梢程序接口)[32’331函数,便可实现DSP板和主机的通信。如果想实现DSP与PC机之问的通信,首先要对PCI通道进行初始化,其主要的操作步骤包括:1)添加头文件sd_pci64.h,这是支持软件库专门为PCI通信功能设置的、大文件。2)定义PCI句柄;PCI64_HANDLEMyPci;3)PCI初始化//定义错误信息参数INT32Error;inttest=0;//打开PCI通道Error=PCI64_Open(0,&MyPci);if(Error){AtkMessageBox(”ERRORtoUSEPCI\n“);test=l:),/检Npo导入模式it(!lsPciBootMode(MyPci)){AfxMessageBox(”ERRORtoUSEPCI\n”);test=1;)//复位DSP,开始导入模式进科printf(”AssertDSPreset\n”);Error2AssertDspReset(MyPci);if(Error){AfxMessageBox(”ERRORtoUSEPCI\n”);test=1;)//启动EMlF(外韶总线),以获取片外存储空间32 两北I:业人学硕七学位论文第四章H.264/AVCI帧编码器的DsP实现荆I优化printf(”SetupDSPEMIF、n”):Emiflnit(MyPci),//建立回调机制Error=0:hCallbackEvent=PCI64一GetCallbackEvent(MyPci):if(hCatlbackEvent1-NULL1Error2PCI64_SetupCallbackEvent(MyPci,(void+)Callback):elseError=一1:if(Error)(AfxMessageBox(”ERRORtoUSEPCI\n”);Error=O:test=1;}/,判断PCI初始化是否成功if(!test)AfxMessageBox(”PCIinitisokkn”);4.2.2视频显示界面的实现Windows操作系统提供了Windows视频软件包vFw(VideosforWindows),它为程序员提供了高级编程工具,程序员通过发送消息或设置属性便可实现视频图象的捕获、编辑和播放。VC++在支持vFw方面提供了vfw32.1ib、msacm.1ib、winmm.1ib等库文件,其中vfw32.1ib中的一套DrawDib视频函数可以处理屏幕上的视频操作,提供了对DIB位图的高性能显示能力,对视频内容进行直接操作,能直接访问视频缓冲区,而且显示时不需要去匹配当前的视频模式,:典时性强、效率高。为了使用DrawDib函数,在工程中加入库文件vfw32.1ib,并在程序的斤头包含头文件vfw.h。视频图象显示子函数的实现代码与分析如下(参数imgBits为RGB模型位罔数据缓存的地址):voiddmwpicdib(unsignedchar+imgBits){//设置显示缩放比例intzoomratel=:pW->m_zooml:intzoomrate2=pW->m_zoom2;//位到头皇占构体变培 旧⋯IL[业大学硕士学位论文第四章H.264/AVCl帧编码器的DsP实现嗣l优化BITMAPINFOHEADERbmpih;//绘图窗LqDC(DeviceContext,设备环境.即绘幽』{{的“画布”)句柄HDCpdc;/,获得绘图窗口的DC旬柄HWNDCurrWindow;CurrWindow=(HWND)FindWindow(NULL,"disp[aywnd”);pdc=GetDC(CurrWindow);∥给位图头结构体变鼍的并成员赋位bmpih.biSize=sizeof(BITMAPINFOHEADER);bmpih.biWidth=Wid;//位图的宽度bmpih.biHeight=Hei;//何图的高度bmpih.biPlanes=l://目标设器的级HIjbmpih.biBitCount=24;//24位真彩色图bmpih.biCompression=0://采用普通无压缩格式bmpih.biSizeImage=Wid‘Hei;//图象数据人小bmpih.biXPelsPerMeter=3780;//位图的水平分辨率bmpih.biYPelsPerMeter=3780;//位斟的乖直分辨奉bmpih.biCIrUsed=0;//使用biBitCount确定的全部颜色bmpih七jclrImponant;0;,/显示位幽时使用所有的颜色//调:宵显示缩放比例if(on512一n{M—W=512;M_H=512;)else{M—w。Wid+zoomratel;M_H=斗{e卜zoomrate2;}//打开一个DrawDib库,并创建一个DrawDibDc句柄HDRAWDIBhdd2DrawDibOpenO;/,初始化一个DrawDibDC(戏重瓤设置参数)DrawD-bBegin(hdd,pdc,//DrawDibDC句柄;绘嘲窗口DC句柄M—w,M—H,//目的蚓象的宽、商&bmpih,//位幽信息头结构体变鼙的地址M—W,M_H,//目的图象的宽、高0)://应用标志何∥实现绘图调色板DrawDibRealize(hdd,pdc,FALSE); 硝北l:业大学硕十学位论文第四章H.264/AVCI帧编码器的DSP实现和优化__●__IIIIIIII__●__●--___--●--__●__------____-__●_,,显示图象DrawDibDraw(hdd,pdc,,,DrawDibDC句柄;显示器设备环境句棚4,//显示区域左上角的x坐标4,//显示区域左上角的Y坐标MLw,//目的图象的宽度MH,//目的图象的高度&bmpih,//位幽信息头结构体变塔的地址(LPVOID)imgBits.Ⅳ位阁数据缓存的地址0,0,//源图象左上角像素的x,Y坐标均为0Wid,//源图象的宽度Hei,//源图象的高度DDFSAMEDRAW);//用当前设置的参数绘幽/,关闭DrawDibDC并释放DrawDib为其分配的资源DrawDibClose(hdd);∥释放绘图窗口ReleaseDC(CurrWindow,pdc);}通过PCI通道可以将PC机上的视频图象写入DSP内存,问样也可以将DsP内存中的视频图象读至tJpc机并显示在PC机上的界面内(按照要求用vc++实现的视频显示界面如图4.2所示),实现这~过程的流程如图4—1。圆.,t。⋯韧始化Pcl迥通__,■=二■——~——]1|^一秧抛蛳翻聋,_.T一5遵过Pc【^Pl将祝埏阻钍qk到DSP内疗中一一,。一⋯垣过踞J^PI将DsP中的瑚辅蹦每i重刊Pc机上⋯..一;一.~一,.——』⋯.—i)l将YUV慎式的彩色信息转化为}髓搬输^的帧琏I·RGB战式J串控制时问问酾f~⋯1I~———r——一。一t一一,根据输八的椎啵lt刨{卒制蝻dl栈顿的K’?,一’一图4-1PCI通道的视频图象传输及其显示流程 drill『:业人学硕士学位论文第四章H.264/AVCI帧编码器的DsP实现乖J优化_●■_■_●■●●●■■■■■■■■■■●■■■■_●■_■■■■■■■■■■■■■●●■●■●■■■■■■■■■■■■■●■●■■■_I_■■■E■●●■●●■■-圈4-2视颁显示界面4.3TMS320DM642的DSP程序优化策略4.3.1优化步骤DM642DSP内部包含有8个功能单元,但是山于各功能单元的功能不同、每条之指令执行的时间和和占用的资源不同、使用的数据通道不同以及各指令之问的逻辑关系不同等种种因素使得8个功能单元很难并钓:执花’,达不到最快的处理速度,因此如何合理的安排8个功能单元使之尽可能并行执行是DSP程序优化的本质性问题。为了获得高效的DSP程序代码,可以采用如下的丌发流程和优化步骤:1.根据系统需求编写相应的C程序代码。2.c语言级的优化:把效率低的C代码提出来进行优化,如果仍然达不到所-7,i的要求则进入第三步。3.汇编级的优化:把效率仍然达不到要求的代码拿出来,编写线性汇编,利用汇编优化器进行优化。上述的三个步骤不是都必须经过的,当在某~阶段获得了期望的性能,就不必进行下一阶段的优化了。4.3.2优化方法卧34~35l针对DSPDM642的DSP代码的优化方法可以归纳为以F几种1.采用C编译器提供的优化选项2.减少存储器之间的相关性3.使用内联函数(intrinsics)4.采用数据打包技术5.尽量使用TI提供的函数库1^ 西北.I:业大学硕十学位论文第四章H.264/AVCI帧编码器的DSP实现平lf优化6.尽量少用函数调用7.使用逻辑运算代替乘除运算8.采用指令穿插技术9,采用循环展开技术10.软件流水11.汇编优化12.其它优化措施1)把程序和频繁使用的数据放入片内RAM中2)使用EDMA搬移数据3)cache的使用4.4H.264/AVCI帧编码器的DSP实现和优化4.4.1H.264/AVCI帧编码器的DSP实现用DM642开发板对H.264基本层的I帧编码进行实现,每帧仅包含一个slice,并按照附录B格式封装码流,C代码的基本实现流程如图4.3所示。/骊旃\\歼蚺’分配酊巅蒡甄珏。’一一对毵攻≈望升鼍奔:躯翱缺馥毒件为磬粤盯鹱1蛙囊蠹ff每数理打囝4-3H.2641帧编码器的实现流稗鳓蜡砷嘧硪 艇北r业火学硕十学位论文第四章H.264]AVCl帧编玛器的DSP实现霸J优化存储空间安排如下:代码段、常量段及栈空间放在片内192KB的空间内,剩余64KB片内存储空问配置为L2cache;其他段,包括堆空吲等放在片外32MB的存储空间内。4,4.1.1帧内预测部分为减小运算复杂度,本文采用非RDO的全搜索方式(3.3.1节)对帧内预测粳式进行决策,预测模式包括亮度的4×4模式和16×16模式,笆度的8×8模式。对foreman.qcif和earphone.qcif图象序列进行实验,取出一帧,其帧内预测后的放聚如图4-4和4-5所示。帧内预测后,foreman视频图象的PSNR(预测帧与原始帧误差)为27.88dB,earphone视频图象的PSNR为28.05dB。(a)原始帧(b)预测帧图4.4foreman的帧内预测效果(a)原始帧(b)预测帧图4-5earphone的帧内预测效果4.4.12整数核变换量化部分按照3.5节所描述的整数核变换量化过程对原始块与预测块的残差数据块进行交换量化,量化系数取28(H.264量化系数的范围是O一51,28为近似中间值),同时进行反变换量化,将反交换量化后的重构数据块作为未编码块预NH,7的参考块。仍以foreman和carphone视频图象为例,经变换量化、反变换量化后的重构帧如图4-6、4-7所示。重构后,50帧foreman视频图象的平均PSNR(重构帧与原始帧误差)为37,60dB,cafphone视频图象的平均PSNR为38.08dB。 两北.L业大学硬十学位论文第四章H.264/AVCl帧编码器的DsP实现利优化(a)原始帧(b)重构帧幽4击foreman变换琏化环1Y的重构效果(a)原始帧(b)重构帧图4—7carphone变换量化环节的重构效果4.4.1.3CAVLC编码部分采用CAVLC对经变换量化后的残差数据进行编码,编码后将码流数据写入.264文件。编码完成后对码流位数进行统计,测试foreman.qcifI芋歹lJ,平均每帧1340040/50。26800.80bit;测试carphone.qcif序列的50帧,平均每帧1063064/50221261.28bit。4.4.2H.264/A、,CI帧编码器的DSP优化对于测试序列foreman.qcif,DM642Emulator(硬件仿真器)环境下,阁C代码实现的H.264I帧编码器平均每帧编码时间为134301594个时钟周期,DM642的主频为600MHz,因此,平均每帧需要的时问为134301594/600000。223.83ms,每秒大约只能跑5帧,效率不高,需要进行DSP代码优化。4.4.2.1存储空间和数据类型的优化1.合理分配存储空间将代码段、栈中的局部变量以及常用的常量(如量化步长表、码表、扫描表等)放在片内,以提高运算效率。堆中分配的动态存储空间以及作为全局变最的原始帧数据、预测数据、重构帧数据等.因为所占空间较大,被分配在片外存储空间。代码中用于空间分配的.cmd文件的编写如下:.heap0x100000//堆内存人小,】MB 哺北’1:业久学硕十学位论文第四章H.264/AVCI帧编码器的DsP实现和优化stack0xa000//40KB·栈内存大小.MEMORYISRAMo=00000000hl=00030000h//DM642片内存储空j’H】.192KBSDRAMo=80000000hl=02000000h//DM642片外存储空间,32MBl●SECTIoNS{.cinit>lsRAM//变撼仞始化丧.text>ISRAM//代码段.stack>1SRAM//栈段.bss>SDRAM//全局变撼和静态变龟.cortst>]SRAM//常精和字符串.far>SDRAM//以fh声明的全局,静态变鼙.switch>ISRAM//Jq;ff大型switch语句的跳转表.sysmem>SDRAM//全局堆,用T:存储器分配函数cio>ISRAM//用于stdio函数.heap’SDRAM//堆段、,2.合理定义数据类型对于24位真彩色图象,亮度、色度分量均为256级,所以用8bit数掘即uJ_表示,定义为unsignedchar类型,以最大限度的节省存储空间。残差数据可以定义勾short型,其他数据定义为int型。4.4.2.2C语言级优化1.减少函数调用为减少调用开销,尽量避免使用子函数,并将一些较短的子函数嵌入到上一一级函数中,以避免调用函数时保护现场所耗的时间。2.编译器的优化联合使用-pm叼p3和一03编译选项进行优化,其中包含了软件流水、循坏展刃‘、整体优化等优化方式。3.消除存储器之阳J的相关性将一些经常调用的变量或函数返回值设置为const,以消除存储器之间的相关性,使之能够并行,提高效率。例如,变换量化部分的参数列表等。4.调用TI封装好的库函数代码中经常需要计算SAD值,可调用imglib函数库中的img—sad16×16和img_sad_8x8函数,自己编写C代码执行一次16×16块的SAD计算将需要大约1424个时钟周期,而调用库函数后只需要70个时钟周期,效率提高了20倍。 婀北工业大学硕七学位论文第四章H.264/AVCl帧编码器的DSP实现和优化5.构造查找表由于在DSP代码运行时,求商(/)和求余(%)运算比较耗时,可以构造相应的输入输出对照表格,用查表的方法得到商或余数,从而减少运算时间。程序中求像素点相对位置和量化系数位置时用到此优化方法。如果除数是2的整倍数,还可以通过移位操作来节省运算时间。4.4.2.3汇编级优化对代码进行C语言级优化后,用profile对代码内各函数的执行周期进行统计,通过综合分析平均调用时间和调用次数两方面因素,认为有些函数有必要进行进一步的汇编级优化,这些函数代码长度不大,适合用线性汇编予以实现。现将代码中用线性汇编优化后效果比较明显的几个函数列入下表:表4-2线性汇编优化前后运行时间对比表函数名函数作用平均一帧调用次数优化前周期数/次优化后周期数/、父sad40求4x4块SAD1667187085butterfly()4×4蝶形变换158457511ibutterfly04x4蝶形反变换1584568104.4,2.4其他优化1.配簧cacheDM642的高性能还得益于CPU的两级高速缓存结构。CPU和一级程序高速缓存(LIP)及一级数据高速缓存(LID)直接连接.L1P和L1D分别为16KB,第二级缓存(L2)有256KB,程序空间和数据空间是共享的,可以设置成存姥单元(memory.),高速缓存(cache),或者是这两者的结合。把一部分片内存储器配置成二级缓存(L2cache),这样形成两级缓存的配置模式。一级缓存中的程序和数据是分开存放的,但是二级缓存中程序和数据是混和在一起的。二绒缓存配截模式可大大提高cache的命中率。通过上面的存储器配鼹模式.可最优的利用快速存储器,提高缓存命中率,减少CPU等待时间,充分发挥DM642的性能。cache模块在cslDM642.1ib库中定义,只需包含。程序中设置的L2cache为64KB。代码初始化时动态配簧缓存如下:CSL_init0;∥初始化CSLCACHEclean(CACHEL2ALL,0,0);//清空cache缓存CACHEsetL2Mode(CACHE64KCACHE);//配置64K的L2cacheCACHEsetL2Mode(CACHE一192KSRAM);//剩余192K为片内存储器CACHEenableCaehing(CACHE_EMlFA_CEOO); 阳北1-业大学硬十学位论文第四章H.264/AVCl帧编鹞器的DSP实现丰¨优化//设置能caching的范围,SDRAM0x80000000to0x80FFFFFFCACHEenableCaching(CACHE_EMIFA—CE01);/,设能eaching的范围,SDRAM0x8]000000to0x81FFFFFF2.采用EDMA数据搬移由于代码量和数据量较大,很多数据都存储在片外的空间内,因此当用到片外整块的数据时有必要采用EDMA数据搬移方式,以节省CPU的占用时|1I】J,提高运算效率。实验中主要采用块的方式搬移数据,因此主要用到EDMA的DAT模块,也是在cslDM642.1ib库定义的,需要包含相应的头文件:SD。首先定义片型号#defineCHIPDM6421.然后便口f调用相应API函数进行EDMA数据搬移了。例如:当从文件缓存区(一维)读亮度分量数据,并转化为亮度矩阵(:二维)时,可采用以下的块数据搬移方式:DAT_open(DATCHAANY,DAT—PR[一LOW,0);//打开DAT通道transferld。DAT』opy2d(DAT—ID2D,sf->yf,imgY,img->width,img->height.img->width):,,_}Ij一维到二维的方式将源缓_{莩sf->yf的数据搬移到目的绶存imgY,后面的参数为数据尺寸176x144,逅明传输状态标志DATwait(transferld);//在传输结束前保持等待状态DATclose();//DAT芙1=if通道用以上方式进行的数据搬移执行周期为682,而用矩阵循环赋值的方法时执行间期为522085,速度提高了近770倍,优化效果十分明显。4.4.3总体优化效果及分析对所实现的H.264I帧编码器代码按照以上各级别的优化方法进行优化后,以foreman.qcif和carphone.qcif为例,测试50帧.9P=28,lbreman平均⋯帧的编码时问可减少到1558485274/50;31169705个周期,即31169705/600000≈5I.94ms;carphone平均一帧的编码时滴周期为14936035lo/50a29949465个,29872070/600000249.78ms。所以平均下来对于QCIF格式的序列,每秒平均町以跑到约20帧,比优化前提高4倍。这对于H.264这样高复杂度的视频编码算法来说已经很不错了,当然在今后的工作中还可以采用进一步的优化措旄,使其编码效率更高。在PC机上对编码生成的.264码流文件进行解码,解码效果如图4-8,4-9。取QP=12、16、20、24、28、32,对foreman.qcif和carphone.qcif进行测试,测试帧数为50帧,将所实现编码器的平均性能参数(解码后的PSNR、Bits/frame)与PC机上的标准编码器进行比较,列出表格(表4—3)。山表格数据可知,lⅡ于简化了部分编码结构,因此平均每帧的码流位数比H.264标准编码器稍少一些,PSNR42 阳北12业大学硕十学位论文第四章H264/AVCI帧编码器的DSP实现和优化完全一致,从而验证了所实现编码器的征确性。(a)原始帧(b)解码帧图4-8foremanI帧编码1|乔的解码效聚(a)原始帧(b)解码帧图4-9earphoneI帧编码历的解码效果表4.3测试图象序列的性能参数(a)foreman.qcif图象序列标准编码器所实现编码器QPPSNR(dB)Bits/frame(bit)PSNR(dB)Bits/frame(bit)1249.4l100508.8049.4l100499361645.9976659.0445.9976649.282042.4955478.2442.4955467.04243938710.2439.3938699362836.6026812.0036.6026800.803233.7l18184.8033.7l18175.04(b)carphone.qcif图象序列标准编码器所实现编码器QPPSNR(dB)Bits/frame(bit)PSNR(dB)Bits/frame(bit)1249.7876620.0049、7876609.921646.8256679_3646.8256670722043.86410235243.8641012.962440.9129837.7640.9I29827.842838.08212723238.0821261.283235.1715i6l4435.1715151.36 pq北I-业大学硕七学位论文第元章总鲐与展望第五章总结与展望一、总结H.2641AVC是目前非常流行、实用的低码率视频编码标准,对它的研究谴三是目前视讯行业的一个热点和难点。本论文深入学习了H.264/AVC视频编码标准,-一方面对其编鳃码系统原理和关键算法进行了较为系统的研究,取得⋯蝗研究b竞聚;另一方面,学习DSP丌发原理,在DSPJr发板上实现并优化了H.264/AVCI帧编码器。H.264,AVC视频编码算法研究方面1.深入理解了H.264编解码系统原理;分析了帧内预i9|||、巾贞问预测、整数核变换量化、熵编码、去块效应滤波、码率控制和SWSI帧等关键技术和热点技术的原理。2.参照JM代码深入研究了H.264中率失真优化策路、帧内预测模式决策、帧间预测块模式决策和整数核变换量化的算法原理和实现思路,并剖析了t1.264的层次结构和码流封装格式。3.对H.264帧内预测模式决策方法进行深入研究,理清了魇全搜索方法的实现思路,并对已有的改进方法进行学习,在此基础上提出了一种基于混合特征的H.264快速帧内预测模式决策方法。该方法针对关键的4×4亮度块的9种预测模式.突出了DC模式的重要性,并将其与最可能模式特性,空域、变换域特征以及预测方向相邻模式特征等相结合,形成了联合特征信息对可选模式进行预先筛选。实验表明,相对原RDO全搜索的方法,该方法能将i帧编码时间减少近50%,而对图象序列的性能指标(PSNR和比特率)的影响却很小,综合性能大大优于原疗法,4.深入研究H.264帧间预测块模式决策方法,深入理解了原全搜索方法,并对已有的快速方法原理及其优缺点进行分析,从而理出最佳决策思路,提出了⋯种基于合并分裂合并思想的H,264快速帧矧预测块模式决策方法。咳方法构造了块合并和块分裂准则,并从8×8尺寸块出发,代入准则依次进行判决,从而剔除了部分块尺寸模式以加快决策。实验结果表明,该方法相对于原全搜索方法,能将帧问编码时间减少近70%.且比已有快速方法的编码效率要高,而图象序列性能指标PSNR和比特率与原全搜索方法相比变化很小,可以忽略。H.264/AVC的DSP实现研究方面1.对DSPDM642“M的结构和应用方法进行学习,深入理解了DSPC6000系列的开发原理,并对DSP代码的优化方法进行分析研究。2.在vc++中用DrawDib视频函数组实现了视频显示界面,并通过对PCIAPI 两此L业大学硕十学何论文第瓦章总结‘_展耀函数的理解和研究,实现了DSP和PC之间的通信,通过PCI通道将DSP内存中的图象序列显示在PC机上的界面内。3.在CCS环境内用C代码实现了H.264基本层的I帧编码器.并在DM642EVM上进行了硬件仿真。通过数掘类型、存储器、C语言以及汇编等级别的优化,使得H.2641帧编码速度比优化前提高4倍多,9P取28时.QClF序列的编码速度可以达到约20帧/秒,且生成的码流文件可以通过PC机上的解码器成功地进行解码。对编解码性能参数进行测试,实验结果表明PSNR和比特率等性能参数指标均满足H.264标准要求,从而验证了所实现编码器编码的『F确性。二、展望本文对H.264/AVC部分关键算法进行了深入研究,并用DSP实现和优化了H.264/AVC的I帧编码,做了大量的工作,并取得一定的成果。但仍有一螋地方需要进行深入讨论和进一步完善:1.由于H.264的整个算法比较复杂,对有些部分的研究还不够深入,需要进一步对照JM参考代码进行分析和理解。2.对运动搜索部分做进~步研究,将其与本文提出的快速帧间预测块模式决策方法进行结合,以形成更加有效的帧闯编码策略。3.从数据结构角度对H.264I帧编码进行优化,并用手工汇编编写相应的代码,以进一步提高DSP环境下的H.264I帧编码效率.达到更高的实时性需求。4.尝试在DSP代码中加入P帧编码部分,以形成适用于窄带条件下的低速率编码,从而实现更全面完善的H.264编码系统。,5.学习相应的硬件知识,以便完成相应的硬件设计,真正独立、完整地丁}-发出一套H.264视频编解码软硬件系统。6.进一步学习多媒体通信网络知识,例如IP、QoS指标等网络应用热点.,以完善多媒体应用的知识体系。 两J七'L业人学硕十学位论文参考文献【2]2【3】【4】【5】5【6】[9]9[10】DraftITU,TRecommendationandFinalDraftInternationalStandardofJointVideoSpecifieation(1TU—TRec.H.264IISO/lEC14496.10AVC)jVTDOC.JVT-(Ⅺ50[s].2003—3.AjayK.Luthra,GrayJ,Sullivan.andThomasWiegand.IntroductiontotheSpecialIssueontheH.264/AVCVideoCodingStandard[J].IEEETransactionsonCircuitsandSystemsforVideoTechnology,2003,13(7):557-559.GJ.Sullivan,T.Wiegand.Rate—DistortionOptimizationforVideoCompression[J].IEEESignalProcessingMagazine,1998,1501):74-90.FengPan,XiaoLin,RallardjaSunsanto,KengPangLim,ZhengGuoLiGeNanFen舀DaJunWu,andSiWu.FastModeDecisionforIntraPredictionlAI.JVTGOl3.7”ⅣTmeeting[C|.2003—3.BojunMeng,OscarC.Au,Chi·wahWomg,Hong—KwaiLam.EfficientII】tra—PredictionAlgorithmintt.264[A].IEEEJnternationalConferenceOi3Multimedia&Expo[C].Maryland.2003:111837-840.D.、№.S.Wu.eta1.BlockInterModeDecisionforFastEncodingofH.2641A1.IEEEInternationalConferenceonAcoustics,Speech,andSignalProcessing[C].Canada.2004:IIIl81~184PYin,eta1.FastModeDecisionandMorionEstimationforJVT/H.264[A1IEEEInternationalConferenceonMultimedia&Expo[C].Maryland.2003:IlI853-856.ZhiboChen,PengZhou.YunHeFastIntegerPelandFractionalPelMotionEstimationforJVT[C].ⅣTDoc.JVT-F017,6“Meeting:Awaji,Island,2002一12G.Bjontegarrd,K.Lillevold.Context-adaptiveVLCCodingofCoefficients[A1.JVT.C028『Cl,Faiefax,VA,2002.5.DetlevMarpe,HeikoSchwarz,ThomasWiegand.Contexted.BasedAdaptiveBinaryArithmeticCodingintheH.264/AVCVideoCompressionStandard[J].IEEETransactionsonCSVT,2003,13(7):620-636.YaoWang,JornOstermann,Ya—qinZhang.视频处理与通信[M】.北京:电子T业出版社,2003,毕厚杰、陈房美、方晖.IP宽带通信N-{?r技术[M】.北京:北京邮电大学出版社,2004.TMS320DM642Video/ImagingFixed—PointDigitalSignalProcessorDataManual[R1.Texaslnstruments,2003.5ThomasWiegand.GaryJ.Sullivan.Overviewofthett.264/AVCVideoCodingStandard[J1.IEEETransactionsonCsVT,2003,13(7):560~576.JointVideoTeam(JV'I’).referencesoftwareJM8.41S1.ITU.T-2004毕厚杰等.新一代视频压缩编码标准.H.264/AVC[M].北京:人民邮电出版社,2005.左雯.H.264的码率控制策略【Z】.中国多媒体视讯2005.2WWW.CmVC.COm.Cnq引列q习印刀f}【 曲北一L业大学硕士学位论文釜考立献[18】MaS,Ga0W,andLuY.ImprovedRateControlAlgorithm[C]JVT—F086,6⋯JVTmeeting.2戗)2-12.(19】Li.Z.GPan.F-Pang.K.AdaptiveBasicUnitLayerRateControlfol’JVl、lAj.JVTG013.7l“ⅣTmeeting[C],2003—3.{201万萍、豫仁巷、王海蜜.H,264/AVC中的SP/SI帧技术【j1.1乜桃技术,2004,1:22以5.、【2l】T.B蜘鲈.RateDistortionTheory[M].AMathematicalBasisforData娜ssion。Prentice-Hall,EnglewoodCliffs,1971,12萄CSKim,HHShih,andC.C.JayKuo.MultistageModeDecisionforIntraPredictioninH.264Codec(A].SPIE16。AnuualSymposiumEIW[.VCIP.Orlando.Florida.2004一1.[23]M.Chart,YYu,A,Constantinides.VariableSizeBlockMatchingMotioncompo璐越汹withApplicationtoVideoCoding[J].InProe.]nst.ElectEng.pti.1990,137(4):205-212.【24】H.Jelveh,A.Nandi.ImprovedVariableSizeBlockMatchingMotionCompensationforVideoConferenceApplication[J].InProc.DigitalSignal.ACappelliniandA.Constantinides.Eds.Berlin.Germany:Spring—Verlag.199】:391~396.【25】A.Puff,H.Hang,D.Schilling.IntcrframeCodingwithVariableBlockSizeMotionCompensation[A].InProc.GLOBECOM’87【C】:65-69.f26】I.Rhee,GMartin,S.Muthukrishnan,eta1.Qua&me—structuredVariable—sizeBlock·matchingMotionEstimationwithMinimalError[,[].IEEEl-ransacliolls011CSVT,2000,10(2):42—50.1271Y’K.Tu,J.F.Yang,eta1.FastVariable—sizeBlockMorionEstimationUsingMergingProcedurewithAnAdaptiveThreshold[A].MultimediaandExpo.2003.InProc.ICME。03[C1.2003—7:I789-792.【;8】Z.Zhou,M.TSun,etal:FastVariableBlock-sizeMotionEstimationAlgorithmsBasedonMergeandSplitProceduresforH,264/MPEG-4AV(1【A】InProc.ISCAS’04[C].2004—3:Ill725-728.[29JWKonzali,FThlili'eta1.AQuadree—structuredVariableSizeBlockforIl264’MotionEstimation[A].InSUP’COMfCl,Tunisia,2005·4.‘一【301TDS642EVM多路实时图象处理平台用户使用于册VllfI{】.m≯科挫发』起有限责任公司,2005,1311李方慧、芏飞、何佩琨.TMS320C6000系列DSPsi乐耻‘o胁⋯(讯版’1M).北京:电了.-r2_k出版j;_|=,2003.【32]ToolsTechNote2-GettingStarted、vimDM642PCI(DocumentRevisionO.02)【R].SpectrumDigital,2003—6.【33】TMS320C6000ChipSupportLibraryAPIUser’SGuidelR].。[exas]nstrLmlCiHs.2003.2.f34】程凌蜂等.TMS320C64XDSP的程序设计oj优化fz】.61Icl㈨,l}UJ,m?t,—w—w——w—.—6—1—ic—.—c—o—m—,2004—9.【35JVideoEncodingC’ptimizationonTMS320DM64x/C64x[R]:Texaslnstrumcnts.2004—10.47 西北工业大学硕士学位论文攻读颈士学位期阔的主要戚榘。攻读硕士学位期问的主要成果以第一作者发表的论文l葛睨睨、郝重阳、王字等.H.264/AVC帧内预测模式决策算法研究.计算机工程与应用(中文核心期刊),2005,41(28):7¨74.2葛睨睨、张俊蜂、郝重阳等.基于混合特征的H.264/AVC快速帧内预授《模式决策.计算机应用(中文核心期刊),2005,25(8):181l。1814.3葛睨睨、王宇、郝薹阳等.H.264/AVC可变尺寸帧阊预涌块模式决策研究.徽电子学与计算机(中文攘心期刊),已录用,2006.5发表.4葛睨睨、王字、郝篁阳等.H.2制AVc率失真优化策略研究.无线通信技术(中国科技核心期刊),已录用,2006.5发表.参与科研项目2004.12—2005.1l:参与实验室与西安某研究所舍作的基于H.263的视菝跟踪系统开发项目获奖情况校三好研究生(一等奖学金)校三好研究生(一等奖学金),“英飞凌”专项奖学金陕西省优秀毕业研究生,西北工业大学优秀毕业研究生O∞∞嘶加;如砌 两北Kik大学硕士学{≯沦文敛酗致谢衷心感谢导师郝重阳教授。论文的:[作是在郝老师的悉心指导-卜和不断鼓励下完成的。在研究的过程中,郝老师给我指明了研究的方向,并给我了许多宝贵的建议,帮助找克服困难,使我少走了许多弯路。郝老师对论文进行了认真的修改.保证了论文的质量。在论文的各个阶段,没有他的指导.论文是难以完成的。郝老师认真负责的,[作念度,一丝不苟的科研精神,、乎易近人的风格品质,给我留下了非常深刻的印象,这些品格将始终是我进行科研的榜样。感谢樊养余老师,在研究过程中,樊老师经常关心和胬助我.提出j7宝赛意见和建议,并在生活中也给予了无私的关怀和鼓励。感谢师兄席迎来博士和赖昌材博士,他们对视频压缩领域有很深的研究,因此在整个毕业设计过程中给予我很多帮助,每次向他们请教时,他们总会耐心地给我解答,并给我提出进一步的研究建议。整个论文的研究成果与师冠们对我的指导、关心和鼓励是分不开的,谢谢两位师兄。感谢师弟李俊杰、沈海涛,他们在研究过程中给予我很大的支持和帮助,许给我提供了一些有价值的建议,谢谢他们。也希望我的研究成果对他”j今后的研究有一定的帮助。感谢我们研究小组的赵炯博£、李志芳博士、吴东伟硕上,以,!=乏教研室的.E毅师姐、何贵青师姐、岳晓军、时平、鄱岳传、薛耿健、用法、李扬、唐瑶、力涛、顾德明,与他们的合作和相处很愉快,从他们身上Ij三学到了很多东西。最后,要感谢我的父母,并将此文献给他们,感谢他们在这二f一多年。P对我的养育和不断的精神支持和鼓励。在外求学的这七年早,无法在父坶身边照顾他们.却还让他们牵肠挂肚,希望此文能成为我给他们的最好的回报。 西北。f业大学学位论文知识产权声明书本人完全了解学校有芙保护知识产权的靓定,即:研究生住校攻凄学何期间论之j:作的知识产权单位羁于两北I一业人学。学校有权保留并向囤家仃关刮fJ城机恂逆交论文f|勺复印件和电子版。本人允许论文被奁阅羽I借阅。学校可咀将本’≯佗论文的全部或部分内锌编入有关数据库进行检索,可以采川影印、缩印或扫描等复制手段『呆存车f『汇编-术学忙论文同时本人保证,毕业J亓结合学伶论文研究瀑题再撰写的文章律注明作者单住为曲,Itl业大学.保密论文持解密后适埘本卢明。学位论文作者签名缸指导教师签名1矽舌年多月t目伊占年;西北1=业大学学位论文原刨性声明秉承学校严谨的学风干¨优良的科学道德,本人郊重声明:所}交的’学传论丈,是本人在导昕r的指导}’进行研究i’作所取得的成聚。尽我所知.臣j=文中已经}}州{f刖舱内奔羊¨致谢的地方外,本论文不包禽任何其他个人或集体己经公习发表或撰写过的研究成果,不包含本人或其他已中请。孚:位域其他州途使_【fj过的成鼹。对本文的”f究做Ⅱl重崾前献的个人手【i集体,均已矗文中以明确方式表明.本人学何论文与资料若有不实,愿意承{H一切相天的法律贵任。≯。何论文作者签名血∥‘qj辛爿fH H.264/AVC视频编码算法及其DSP实现研究作者:葛晛晛学位授予单位:西北工业大学参考文献(35条)1.JVT-G050.DraftITU-TRecommendationandFinalDraftInternationalStandardofJointVideoSpecification(ITU-TRec.H.264|ISO/IEC14496-10AVC)JVTDoc20032.AjayKLuthra.GrayJSullivan.ThomasWiegandIntroductiontotheSpecialIssueontheH.264/AVCVideoCodingStandard2003(07)3.GJSullivan.TWiegandRate-DistortionOptimizationforVideoCompression1998(11)4.FengPan.XiaoLin.RahardjaSunsanto.KengPangLim,ZhengGuoLiGeNanFeng,DaJunWu,andSiWuFastModeDecisionforIntraPrediction20035.BojunMeng.OscarCAu.Chi-WahWomg.Hong-KwaiLamEfficientIntra-PredictionAlgorithminH.26420036.DWu.SWuBlockInterModeDecisionforFastEncodingofH.26420047.PYinFastModeDecisionandMotionEstimationforJVT/H.26420038.ZhiboChen.PengZhou.YunHeFastIntegerPelandFractionalPelMotionEstimationforJVT20029.GBjontegarrd.KLillevoldContext-adaptiveVLCCodingofCoefficients200210.DetlevMarpe.HeikoSchwarz.ThomasWiegandContexted-BasedAdaptiveBinaryArithmeticCodingintheH.264/AVCVideoCompressionStandard2003(07)11.YaoWang.JornOstermann.Ya-qinZhang.王文全视频处理与通信200312.毕厚杰.陈启美.方晖IP宽带通信网络技术200413.TMS320DM642Video/ImagingFixed-PointDigitalSignalProcessorDataManual200314.ThomasWiegand.GaryJSullivanOverviewoftheH.264/AVCVideoCodingStandard2003(07)15.ITU-TJointVideoTeam(JVT),referencesoftwareJM8.4200416.毕厚杰新一代视频压缩编码标准-H.264/AVC200517.左雯H.264的码率控制策略200518.MaS.GaoW.LuYImprovedRateControlAlgorithm200219.LiZG.PanF.PangKAdaptiveBasicUnitLayerRateControlforJVT200320.万萍.陈仁雷.王海婴H.264/AVC中的SP/SI帧技术[期刊论文]-电视技术2004(1)21.TBergeRateDistortionTheoryAMathematicalBasisforDataCompression197122.CSKim.HHShih.CCJayKuoMultistageModeDecisionforIntraPredictioninH.264Codec200423.MChan.YYu.AConstantinidesVariableSizeBlockMatchingMotionCompensationwithApplicationtoVideoCoding1990(04)24.HJelveh.ANandiImprovedVariableSizeBlockMatchingMotionCompensationforVideoConferenceApplication199125.APuri.HHang.DSchillingInterframeCodingwithVariableBlockSizeMotionCompensation26.IRhee.GMartin.SMuthukrishnanQuadtree-structuredVariable-sizeBlock-matchingMotionEstimationwithMinimalError2000(02) 27.YKTu.JFYangFastVariable-sizeBlockMotionEstimationUsingMergingProcedurewithAnAdaptiveThreshold200328.ZZhou.MTSunFastVariableBlock-sizeMotionEstimationAlgorithmsBasedonMergeandSplitProceduresforH.264/MPEG-4AVC200429.WKonzali.FThliliAQuadree-structuredVariableSizeBlockforH.264MotionEstimation200530.TDS642EVM多路实时图象处理平台用户使用手册V1.1200531.李方慧.王飞.何佩琨TMS320C6000系列DSPs原理与应用200332.ToolsTechNote2-GettingStartedwithDM642PCI(DocumentRevision0.02)200333.TMS320C6000ChipSupportLibraryAPlUser'sGuide200334.程凌峰TMS320C64XDSP的程序设计与优化200435.VideoEncodingOptimizationonTMS320DM64x/C64x2004相似文献(7条)1.学位论文席道光基于H.264/AVC标准的视频编码系统应用研究2007近年来,随着多媒体技术与网络技术的迅速发展,以视频为主的多媒体通信成为时代主题,受到人们越来越多的关注。与MPEG-2相比,一种最新的标准H.264/AVC或称为MPEG-4第10部分目标就是以近似一半的比特率实现相同的视频质量。它采用了一系列先进编码技术,在编码效率、网络适应性等诸多领域超越以往的视频编码标准,代表了未来多媒体数据压缩编码的发展趋势。嵌入式系统是当前计算机技术的热门研究领域,是H.264/AVC应用的承载平台。ADSPBF-533是ADI公司推出的面向新一代视频编码的视频芯片。因此,研究H.264/AVC标准,并结合Blackfin533嵌入式系统进行应用研究具有重要意义。本文主要是H.264/AVC和Blackfin533嵌入式系统的应用研究。首先,对H.264/AVC标准的基本思想和原理进行了学习,对H.264/AVC中的关键技术和标准细节进行了深入研究。接着对Blackfin533处理器进行了深入的学习,了解它的芯片结构、总线结构、存储管理,熟悉他的编程指令和视频指令。在基于ADSP-BF533EZ-KITLite评估板的基础上设计了一个视频采集编码终端。通过分析编码系统的结构编写了系统的初始化配置程序,将开源的H.264/AVC视频编码算法进行了移植并根据Blackfin533处理器的结构特点对编码算法进行了优化。本课题研究的视频压缩编码传输系统可以广泛地应用于视频监控、信息家电、智能小区、远程抄表等领域,而且所研究的嵌入式视频终端设备经过进一步开发和完善,还可以应用于更广阔的领域。2.学位论文刘玉娜基于H.264/AVC视频编解码关键技术的研究2009在2003年3月,由MPEG和VCEG组成的JVT开发的新的视频编码标准H.264/AVC在国际上正式颁布。这一编码标准相对以往的视频编码标准如MPEG-1、MPEG-2、H.263等在低码率传输中表现出更好的性能。它利用许多比较先进的编码技术如7种预测块的树状结构运动补偿、亚像素运动矢量的使用以及多参考帧运用等,拥有很强的编码优势,编码效率比以往的标准提高了将近50%。但是相应地存在复杂度高、计算量大等问题,限制了H.264/AVC技术在实时通信领域的应用。H.264/AVC优异的编码性能对于市场具有极大的诱惑力,而研究其编码的快速算法及其实现是H.264/AVC走向市场的前提和保证,因此对H.264/AVC视频编码算法进行优化具有十分重要的理论意义和实用价值。针对上述问题,本文研究了以下几个方面:(1)论述了H.264/AVC的编解码原理,以及它的主要功能模块和采用的一些新的关键技术。(2)深入探讨了运动估计算法,对各种运动估计算法进行了比较分析,在H.264/AVC中利用几种预测方式得到最优的预测中心和设置阈值,提出了一个新的搜索算法,有效减少了搜索点,在主观图像质量变化不大的情况下,很大程度地提高运算速度,减少搜索算法复杂度。(3)介绍了去块滤波技术在视频编解码技术中的应用,着重对H.264/AVC标准中的环路滤波技术原理及算法进行详细的分析和介绍,并仿真验证环路滤波在整个编解码体系中不但能去除块效应提高主客观质量,而且能节省大量的码率。(4)由于环路滤波器的自适应性,导致其高度复杂,使得滤波过程耗时很长,而边界强度Bs值的计算大约占滤波器90%的计算量,所以本文通过降低Bs值的复杂度来降低编解码器的耗时。(5)H.264/AVC标准中的环路滤波技术可以有效地滤除块效应,但环路滤波中编码器和解码器必须要完全地匹配,不具有灵活性,本文介绍了一种只改变解码器不改变编码器的滤波算法,使得滤波算法应用更加灵活,通过多种视频码流测试仿真的数据显示,相对于原来的滤波算法信噪比只有较小的改变,而主观上图像的视觉效果有较好的改善。(6)本文还对H.264/AVC标准中的整数变换与量化技术进行了分析研究。3.学位论文何铁军基于H.264的熵编码器的设计与实现2007下一代视频压缩标准--H.264/AVC(ITU-TRecommendationH.264andISO/IECMPEG-4(part10)AdvancedVideoCoding)是由ITU-TVCEG和ISO/IECMPEG组成的联合视频小组——JVT联合制订的最新的视频压缩编解码标准。其设计目的在于取代MPEG-4(part2)标准,能够以较低的码率、较高的压缩比以及较小的失真对图像、视频进行编码,并能够适用于大多数应用场合。在没有改变基本编码架构——帧、宏块分割的前提下,H.264/AVC采取了大量的先进算法,如自适应的整数变换策略、增强的运动估计和运动补偿、自适应的环滤波器以及增强的熵编码方案等等,在编码效果和实现复杂度之间取得了良好的平衡,并特别针对ASIC实现作了优化,使得硬件实现该标准非常便利而经济。在全面了解相关视频编码算法的基础上,论文着重分析了H.264/AVC标准中的熵编码算法,深入探讨了视频编码系统中熵编码器的设计策略和设计方法,最后对基于H.264/AVC的熵编码器的硬件实现及其仿真和验证的过程做了详细的介绍,并对最终的性能性能作了简单的评估。论文以视频编码理论和新国际标准为基础,以低码流视频编码系统中的熵编码器的ASIC实现为研究目标,设计编码系统设计和基本电路设计,为进一步深入研究和开发设计适用于多媒体领域SOC芯片的相关的硬件加速电路提供了有益的帮助。4.学位论文赵哲基于BF-533DSP的H.264/AVC视频编码算法实现与优化2008本文以目前业界领先的DSP芯片供应商ADI公司的Blackfin533DSP为硬件平台,努力实现一种H.264/AVC视频编码系统,同时也是对具有优秀压缩性能的H.264/AVC标准不断得以实际应用的一种尝试。首先,本文通过深入研究H.264/AVC编码的两个计算复杂度较高的部分:帧内预测,帧间块划分模式选择,提出和改进了一些相关的快速算法,实验的结果也表明快速算法在很小的PSNR代价下有效地提高了编码速度;然后将H.264/AVC标准的JM模型测试代码移植到DSP硬件平台上,并完成了相关快速算法的实现;最后从程序级、算法级、存储器以及指令级四个层面,分别对编码系统进行了整体的调整和优化,目的是提高系统的编码速度。实验结果也验证了本文的优化实践在节约编码时间、提高编码效率上达到了较好的效果。5.学位论文王海波低码流H264/AVC视频编码器设计2006下一代视频压缩标准——H.264/AVC(ITU-TRecommendationH.264andISO/IECMPEG-4(part10)AdvancedVideoCoding)是由ITU-TVCEG和ISO/IECMPEG组成的联合视频小组——JVT联合制订的最新的视频压缩编解码标准。其设计目的在于取代MPEG-4(part2)标准,能够以较低的码率、较高的压缩比以及较小的失真对图像、视频进行编码,并能够适用于大多数应用场合。在没有改变基本编码架构——帧、宏块分割的前提下,H.264/AVC采取了大量的先进算 法,如自适应的整数变换策略、增强的运动估计和运动补偿、自适应的环滤波器以及增强的熵编码方案等等,在编码效果和实现复杂度之间取得了良好的平衡,并特别针对VLSI实现作了优化,使得硬件实现该标准非常便利而经济。在全面了解相关视频编码算法的基础上,本文着重分析了H.264/AVC标准中的编码算法,深入探讨了视频编码系统的设计策略和设计方法,最后对基于H.264/AVC的低码流视频编码器进行了初步的系统设计和部分功能模块的硬件电路设计。本文以视频编码理论和新国际标准为基础,以低码流视频编码系统ASIC实现为研究目标,设计编码系统设计和基本电路设计,为进一步深入研究和开发设计多媒体相关领域的SOC芯片提供了有益的帮助。6.学位论文常周林基于H.264/AVC的HDTV视频解码芯片研究与初步设计2005高清晰度数字电视(HDTV)是当前数字电视产业的发展趋势和研究热点。为了实现有效的传输和存储,必须对HDTV数字信号进行压缩编码。作为国际最新视频压缩编码标准,H.264/MPEG-4AVC以其更高的压缩效率和良好的网络适应性,成为解决HDTV视频压缩问题的实用化措施,具有非常广泛的应用领域和极为广阔的市场前景。在全面了解相关视频编码算法和数字电视原理的基础上,本文着重分析了H.264/AVC标准中的编码算法,深入探讨了HDTV视频解码系统的设计策略和设计方法,最后,对基于H.264/AVC的HDTV视频解码器进行了初步的系统设计和部分功能模块的硬件电路设计。论文的具体内容如下:第一章简要介绍了数字电视的概念、视频信号采样结构、分量编码以及HDTV图像格式与参数标准。第二章阐述了视频压缩编码的原理和所采用的基本编码算法,主要包括预测编码、变换编码和熵编码等理论。第三章描述了H.264/AVC编码标准的内容和特点,对其中的功能模块和相关算法做了详细的分析,如整数变换量化、CAVLC熵编码等。7.学位论文费宇光H.264/AVC中的算术码及其改进方法2006数字视频应用的日益广泛使得图像压缩标准不断完善提高。新的视频编码算法H.264/AVC的出现,其性能要大大超过MPEG2、MPEG4和H.263,同时产生更好的视频图像。作为H.264的一大特色,CABAC充分利用了视频流的上下文信息,对不同的视频流能够自适应,且由于算术码在实际应用中的计算精度,大大提高了编码效率。基于以上优点,CABAC被H.264/AVC标准采用,成为熵编码方案之一。尽管CABAC在压缩率上有了很大的突破,但随之带来的后果是复杂度较高,编解码速度比较慢,同时大量的上下文模型(399个)和二进制算术码部分概率的转化模型都需要一定的内存。在某些特定的场合,比如说基于DSP的实时监控系统,对视频编码的压缩率要求较高,同时为了实时性也对编解码速度有要求,另外存储空间也比较宝贵。此时CABAC无法满足要求,而CAVLC是基于VLC基础之上,其特点决定了很难去除码字间的冗余,压缩率较低,也不适合这样的应用场合。由于算术码具有压缩性能较好的先天优势,因此本文研究了一种H.264均衡算术码框架,以此作为这种场合下H.264熵编码的参考方法。另一方面,虽然CABAC大大提高了压缩率,但是算术码的抗误码性能非常差,一旦压缩后的文件在传输中出现一个比特错误,后面所有的码流可能都无法正确解码。而在无线信道的各种应用场合中,压缩后的视频信号尤其容易受到错误干扰。因此在CABAC中需要加入差错检测机制,已有的算术检错算法已经证明在CABAC中能够及时地检查出差错。为了提高图像解码质量,需要进行相应得重传或是误差掩盖。本文针对H.264算术码所做的研究工作可以概括如下:1)结合视频特性从提高编解码速度和压缩率两个方面对一种算术码快速算法作了改进。在此基础上根据H.264语法元素二值化后比特概率分布的特点设计了一种H.264均衡算术码框架,作为压缩率,实时性和存储空间要求都较高的特定场合下H.264熵编码的一种参考方法。本文首先通过分析CABAC的复杂度探讨了其编解码速度较差的瓶颈。然后研究了一种算术码快速算法,经过分析发现该算法在编码区间选择上还有进一步提高的空间。而且该算法的统计模型并不是非常理想,需要作进一步改进。本文在编码区间的选择上引入了区分大概率符号和小概率符号的方法,减少了当大概率符号时的操作复杂度,提高了编解码速度。同时进行自适应的概率统计,通过一定的缩放处理,使得编码符号的概率能较准确地逼近真实的概率值,提高了压缩率。在此基础上根据H.264语法元素二值化后比特概率分布的特点设计了一种H.264均衡算术码框架,将编码分为自适应编码和固定概率编码,并实验证明了该框架的有效性。2)重点研究了CABAC解码端的特点,并且结合算术码检错算法的检错延时,提出了一种针对应用层的重传模型,对编码端和解码端作相应的处理,以降低重传的数据量,减少网络的负载,同时也利用了解码端在出错前已经正确解码的图像信息。并结合模拟的传输环境对上述提出的重传模型有效性进行了验证。同时作为重传的一种替代方法,可以在解码端进行误差掩盖,以提高图像解码质量,本文根据CABAC解码端的特点并且结合算术码检错算法的检错延时,提出了一种时域上的误差掩盖方法,以减小差错的蔓延。然后通过实验将加入CABAC检错及相应检错后误差掩盖的方法和原始编解码方法进行了图像解码质量的对比。引证文献(1条)1.高博基于H.264视频压缩的DSP实现[学位论文]硕士2007本文链接:http://d.g.wanfangdata.com.cn/Thesis_Y857720.aspx下载时间:2010年5月29日

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
大家都在看
近期热门
关闭