用于对分割块进行编码的视频编码方法、用于对分割块进行解码的视频解码方法以及用于实施上述方法的记录媒体与流程

文档序号:13108696阅读:149来源:国知局
本申请为2010年2月23日向国家知识产权局提交的申请号为201080014719.0、发明名称为“用于对分割块进行编码的视频编码方法、用于对分割块进行解码的视频解码方法以及用于实施上述方法的记录媒体”的专利申请的分案申请。技术领域本发明涉及能够将输入图片分割成编码块单元并通过使用帧内和帧间预测编码而对划分的编码单元块进行编码和解码的视频编码和解码方法,具体地,本发明涉及通过视频编码中的帧间和帧内预测来对划分的编码单元块进行编码和解码的视频编码和解码方法,所述视频编码和解码方法可提高编码效率,还可并通过根据划分的编码单元块的大小而使用正方形变换或非正方形变换而对块视频信号进行编码来进一步提高编码效率。

背景技术:
国际标准化组织/国际电工委员会(ISO/IEC)14496-10(活动图像专家组(MPEG)-4第10部分,高级视频译码(AdvancedVideoCoding))或者H.264(其为在ISO/IEC及国际电联电信标准化部门(ITU-T)中联合标准化的视频压缩/编码技术)、ISO/IEC14496-10修正案3(MPEG-4可分级视频译码(ScalableVideoCoding))标准、视频编解码器-1(VC-1)(其为电影和电视工程师协会(SMPTE)标准)、音频视频译码标准(AVS)等已在视频数据压缩效率方面实现显著进步。存在提高视频压缩效率的各种方式。具体地,执行下述步骤:将宏块细分为16×16、16×8、8×16、8×8、8×4、4×8以及4×4单元、对子块进行预测编码以及用在率失真代价方面的最佳块模式对块进行编码以使成本最小化,这与在以宏块(其各具有16×16个像素)为单位来分割待编码的每一输入图片的大小后执行预测编码的现有视频编码标准(MPEG-1视频、MPEG-2视频、MPEG-4第2部分视频、H.261、H.263等)不同。因此,可更有效地预测复合视频的细微运动或运动,且可通过显著减少所产生的残余信号来显著提高压缩系数。图1是展示在H.264中用作在现有技术的H.264/高级视频译码(AVC)编码器中编码的划分块类型为16×16的宏块单元块的七种类型的动作预测块划分的图式。在如图1中所示的基于块的预测编码方法中,一般通过将输入视频分割成若干个大小为16×16的宏块单元来执行编码过程。具体地,在ISO/IEC14496-10(MPEG-4高级视频译码)或H.264/AVC标准中,通过将宏块分割成如图1中所示的七种类型的子块并最终选择一块使率失真代价最小化来执行预测编码。当对子块执行帧内编码(其中,将被编码的16×16宏块被分割成这些子块)时,宏块以一个16×16像素单元的大小经受帧内预测编码。或者,在宏块被分割成若干个子块后,对四个8×8块或者十六个4×4块执行帧内预测编码。大体来说,上述帧内预测编码技术在低清晰度视频编码中减少各种块模式的数目方面有效,但在高清晰度(HD)或特高清晰度(UHD)视频编码中存在问题。即,在超级宏块大小为32×32或者更大(作为编码单元块的16×16宏块扩展成所述大小)的情况下,如果超级宏块内的所有划分块模式像现有方法中一样基于16×16、8×8或者4×4块而应用于同一帧内预测,那么编码效率便降级。换句话说,应注意,在相关技术中,所有划分块仅通过基于划分块的预测编码方法中的帧内或帧间预测编码而得以编码。即,仅选择帧内预测编码和帧间预测编码中的一者应用于划分块,而不是将帧内预测编码和帧间预测编码两者均应用于划分块。由于对通过应用帧内编码和帧间编码中的仅一者获得的块编码模式的语法表达非常简明,所以这种做法可能导致在HD率或较低率下图像或视频压缩的编码效率的增益,但在编码单元为与宏块相同或较大的超级宏块时可能变为使编码效率降级的因素。

技术实现要素:
技术问题创作本发明是为了解决上述问题,且本发明的目的是提供一种更有效的预测编码方法,所述方法通过对在视频编码期间针对每一译码单元块的若干个划分译码块而选择帧内或帧间预测编码的方法进行扩展来执行编码过程,以使得在经分割块的运动补偿后可选择帧内和帧间预测编码模式两者并根据块大小而将正方形或非正方形变换核选择性地应用于残余信号。本发明的另一目的是提供一种用于实施所述方法的计算机可读记录媒体。技术方案根据本发明的用于实现上述目的的示例性实施例,提供了一种视频编码方法,所述方法包含:将每一输入图片分割为译码单元(CU)块;将每一CU块分割为子译码单元(子CU)块;以及通过在CU块内选择性地使用帧内预测编码和帧间预测编码来对每一CU块或其子CU块进行编码。所述视频编码方法可进一步包含:通过根据块大小而选择性地应用可变块大小变换核来对通过编码单元块和子CU块的残余信号进行变换;对经变换的残余信号进行量化;以及对量化的结果进行熵编码。可通过根据块大小和编码类型而选择性地应用一个或多个解块滤波器来对通过子CU块的残余信号进行编码。编码单元块的大小可为具有N*N大小的正方形,且编码单元块可被分割成具有任意大小的一个或多个正方形或非正方形子块。当使用帧间预测编码来对每一CU块中的正方形或非正方形子块进行编码时,可通过选择帧内预测编码方法中的一者来对子块进行编码。当对每一CU块中的正方形或非正方形子块执行帧内预测编码或帧间预测编码时,可通过扫描根据块大小而选择的经量化的变换系数来执行熵编码。可通过应用正方形变换核来对每一CU块中的正方形子块进行变换。当通过应用正方形变换核来对每一CU块中的正方形子块进行变换时,可通过将正方形子块的水平像素的数目与垂直像素的数目进行比较来应用具有较小或相同的像素数目的大小的正方形变换核。可通过应用非正方形变换核来对每一CU块中的非正方形子块进行变换。当通过应用非正方形变换核来对每一CU块中的非正方形子块进行变换时,可通过将非正方形子块的水平像素的数目与垂直像素的数目进行比较来应用具有较小或相同的像素数目的大小的非正方形变换核。根据本发明的另一示例性实施例,提供了一种在视频编码中对分割块进行编码的方法,所述方法包含:(a)输入待编码的图片;(b)将输入图片分割成CU块;(c)将每一输入CU块分割成子CU块;(d)对CU块或其子CU块执行帧内预测编码和帧间预测编码,并为编码CU块或其子CU块选择一种块类型;以及(e)通过使用块类型的预测结果来对编码CU块和其子CU块执行帧内预测编码和/或帧间预测编码。根据本发明的又一示例性实施例,提供了一种在视频编码中对分割块进行编码的方法,所述方法包含:(a')输入待编码的图片;(b')将输入图片分割成编码CU块;(c')确定是否对当前CU块执行帧间预测编码;(d')在当前输入图片对应于帧间预测的情况下将待在输入图片中编码的编码CU块的子CU块的索引初始化;(e')选择待编码的编码CU块的块模式;(f')确定是否对选定块模式执行帧内和帧间预测编码两者;(g')在确定对选定块模式执行帧内和帧间预测编码两者的情况下对选定块模式执行帧内和帧间预测编码;(h')存储步骤(g')的预测编码结果和率失真代价值;(i')在选定块模式为最终模式的情况下,通过比较相应块模式的率失真代价并为编码单元块选择最终块模式来确定编码;(j')确定当前编码单元块是否为当前输入图片中的最终块;以及(k')在当前编码单元块是当前输入图片中的最终块的情况下确定当前输入图片是否为最终图片,并重复步骤(a')到步骤(j')直到当前输入图片成为最终图片为止。所述方法可进一步包含:在步骤(c')后,在当前输入图片不对应于帧间预测的情况下执行帧内预测编码。所述方法可进一步包含:在步骤(f')后,在未确定对选定块模式执行帧内和帧间预测编码两者的情况下对选定块模式执行帧间预测编码。所述方法可进一步包含:在步骤(g')后,在对选定块模式执行帧间预测编码的情况下通过运动预测和补偿来获得残余信号;通过使用残余信号来对选定块进行变换;对经变换的选定块进行量化;以及对量化的结果进行熵编码。所述方法可进一步包含:在步骤(g')后,在对选定块模式执行帧内预测编码的情况下通过帧内预测编码来获得残余信号;通过使用残余信号来对选定块进行变换;对经变换选定块进行量化;以及对量化的结果进行熵编码。所述方法可进一步包含:在使用残余信号来对选定块进行变换时通过根据块大小而选择性地应用变换核来执行变换。根据本发明的又一示例性实施例,提供了一种在视频解码中对分割块进行解码的方法,所述方法包括:(A)输入待解码的位流;(B)确定输入位流是否对应于帧间预测;(C)在输入位流经受帧内预测编码的情况下执行帧内预测解码;(D)在输入位流对应于帧间预测的情况下剖析片层;(E)剖析片层内的单元编码块;(F)对单元编码子分割块的编码模式进行解码;(G)剖析子分割编码块是否为帧间预测编码块;(H)在子分割编码块对应于帧间预测的情况下执行帧间预测解码;(I)在子分割编码块对应于帧内预测的情况下执行帧内预测解码;(J)根据子分割解码结果来对单元解码块像素进行配置;(K)根据解码单元块结果来对片层像素进行配置;以及(L)根据片层像素配置结果来对图片进行配置。因此,可执行帧内和/或帧间预测解码。步骤(C)可进一步包含:在CU块为与1616宏块相同或较大大小的超级宏块的情况下,通过对对应于CU块的大小的CU块或其子CU块的编码模式进行解码来执行帧内预测解码。步骤(C)可进一步包含:通过应用对应于CU块的大小或其子CU块的大小的解块滤波器来执行帧内预测解码。步骤(C)可进一步包含以下步骤:通过根据CU块的大小或其子CU块的大小而应用解块滤波器来执行帧内预测解码。步骤(F)可进一步包含:在CU块为与1616宏块相同或较大大小的超级宏块的情况下,对对应于CU块的大小或其子CU块的大小的CU块或其子CU块编码模式进行解码。步骤(H)可进一步包含:通过应用对应于CU块的大小或其子CU块的大小的正方形或非正方形变换并对经编码的量化变换系数进行解码来执行帧内预测解码。步骤(H)可进一步包含:通过根据CU块的大小或其子CU块的大小和相邻解码块的解码模式而应用逆量化方法并对经编码的量化变换系数进行解码来执行帧内预测解码。步骤(H)可进一步包含:通过应用对应于CU块的大小或其子CU块的大小的解块滤波器来执行帧间预测解码。根据本发明的又一示例性实施例,提供了一种存储用于使计算机执行上述方法的程序的计算机可读记录媒体。有益效果当根据本发明在视频编码中对编码CU块的像素值进行编码时,可通过将帧内预测编码和帧间预测编码中的至少一者应用于CU块或其子CU块而在帧内预测编码模式或帧间预测编码模式下对CU块或其划分CU块(或子CU块)进行编码,并针对每一编码CU块或其子CU块使用帧内和帧间预测两者来执行预测编码,以便可增加编码模式选择的灵活性且可提高编码效率。在根据本发明的基于分割块的预测编码中,通过根据CU块或子CU块的大小而选择性地应用可变块大小变换核的大小来对每一CU或子CU块进行编码,以便可在每一CU块内将帧内和帧间预测两者应用于子CU块。因此,可显著提高编码效率。附图说明图1是展示在现有技术的H.264/高级视频译码(AVC)编码器中编码的16×16宏块单元块的分割块类型的图式。图2是展示根据本发明的示例性实施例的用于在编码器中进行帧内或帧间预测编码的超级宏块单元块和分割块类型的图式。图3是说明一种根据本发明的示例性实施例的在视频编码中对分割块进行编码的方法的流程图。图4是说明一种根据本发明的示例性实施例的对在视频分割块模式中编码的位流进行解码的方法的流程图。具体实施方式在下文将参考附图来详细描述本发明的示例性实施例。在图中,相同的元件始终由相同的参考标号表示。如果与众所周知的功能或配置会使本发明的标的物不清晰,则将不对其进行详细描述。图2是展示根据本发明的示例性实施例的用于在编码器中进行帧内或帧间预测编码的超级宏块单元块和分割块类型的图式。图2是展示应用于本发明的示例性实施例的超级宏块和块分割类型的实例的图式,所述超级宏块的大小大于16×16像素单元的宏块。如图2中所示,执行将超级宏块分割为若干个子块和对分割块进行帧内或帧间预测编码的过程,且对超级宏块进行编码,以使得帧内和帧间预测编码两种模式均可用作最终编码模式。因此,可非常有效地提高视频编码效率。在实践中,可通过选择如等式1中所示能够使率失真代价(rate-distortioncost)最小化的块模式来执行编码。等式1IMODE(s,r,MODR|QP,λMODE)=SSD(s,r,MODE|QP)+λMODER(s,r,MODR|QP)此处,JMODE表示用于块编码模式的率失真函数,s表示待编码的原始块像素输入,r表示参考视频像素输入,QP表示量化参数,λ表示取决于模式的拉格朗日乘数(Lagrangemultiplier),且MODE表示分割块模式类型。此外,如果将变换编码应用于大小增加的超级宏块的残余信号,那么便可通过根据分割块的大小来选择性地应用大小为16×16或者更大(其大于4×4及8×8的现有大小)的正方形变换核或者大小为16×8、8×16的非正方形变换核或者更大大小的非正方形变换来提高编码效率。如果将大小为16×16或者更大的正方形变换核应用于超级宏块,那么便可执行如等式2中所示的计算。等式2Y=AX此处,X表示N×N输入视频信号矩阵,A表示N×N正方形变换核矩阵,且Y表示变换系数矩阵。如果子块在分割后为非正方形块,那么便执行如等式3中所示的变换。等式3Y=A1XA2此处,当输入视频信号X为M×(M/2)矩阵时,A1表示M×M正方形变换核矩阵,A2表示(M/2)×(M/2)正方形变换核矩阵,且Y表示变换系数矩阵。当根据本发明的示例性实施例而应用正方形或非正方形核变换时,优选通过执行与在分割块的水平像素数目与垂直像素数目之间的较小像素数目的比较并应用大小等于或小于较小像素数目的核来执行变换编码。图3是说明一种根据本发明的示例性实施例的用于在视频编码中对分割块进行编码的方法的流程图。参考图3,首先,将待编码的图片i的索引初始化(i=0)(S101)。按序输入图片i以供编码(S102)。接着,将输入图片i分割成若干个编码单元块(S103)。在本发明的示例性实施例中,编码单元块可为宏块或超级宏块。接着,检查是否对当前图片i执行帧间预测编码(S104)。如果当前图片i不对应于帧间预测,那么便执行帧内预测编码(S105)。否则,如果当前图片i对应于帧间预测,那么便将该图片i内的待编码的编码单元块j的索引初始化(j=0)(S106)。此后,将待编码的单元块j分割成若干个子块(S107)。将子块模式k的索引初始化(k=0)(S108)。选择若干个子块模式k中的一者(S109)。检查是否为待在编码单元块中编码的子块模式执行帧内和帧间预测(S110)。如果经检查要执行帧内和帧间预测,那么便执行帧内和帧间编码(S111)。否则,仅执行帧间预测编码(S112)。将预测编码结果和率失真代价值存储为编码结果(S113)。检查子块模式k是否为最终块模式(S114)。如果子块模式k不是最终块模式,那么便对下一块模式重复步骤S109到步骤S113。另一方面,如果子块模式k是最终块模式,那么便确定最佳分割块并最终选择对应的编码结果(S115)。确定当前编码单元块j是否为当前图片i中的最终块(S116)。如果当前编码单元块j不是最终块,那么便通过输入下一编码单元块来重复步骤S107到步骤S115。如果在步骤S116中确定当前编码单元块j是当前图片i中的最终块,那么便检测当前图片i是否为最终图片(S117)。如果当前图片i是最终图片,那么算法便结束。否则,算法返回到步骤S102,输入下一图片,并重复步骤S102到步骤S116。图4是说明一种根据本发明的示例性实施例的对在视频分割块模式中编码的位流进行解码的方法的流程图。参考图4,首先,将待解码的图片i的索引初始化(i=0)(S201)。按序输入经编码图片位流i以供解码(S202)。接着,检查输入图片位流i是否对应于帧间预测编码(S203)。如果当前图片位流i不对应于帧间预测编码,那么便执行帧内预测解码(S207)。否则,如果输入图片位流i对应于帧间预测编码,那么便将所述一张图片i内的待解码的片层j的索引初始化(j=0)(S204)。接着,分析关于输入图片位流的片层信息(S205)。将待在一张图片i内每一片层内解码的单元解码块k的索引初始化(k=0)(S206)。在本发明的示例性实施例中,解码单元块可为宏块或超级宏块。接着,在分析关于每一单元编码块的信息后(S208),将单元编码块内的分割子块的索引初始化(m=0)(S209)。此后,对单元编码块内的分割子块的编码模式进行解码(S210)。在检查了分割子块是否为帧间预测编码块后(S211),如果子块为帧间预测编码块便执行帧间预测解码(S213),且如果子块为帧内预测编码块或模式便执行帧内预测编码(S212)。此后,使用子块编码结果来恢复子分割块的像素值(S214)。在检查了当前子分割块m是否为最终块后(S215),如果当前子分割块m是最终块便对单元解码块的像素值进行配置(S216)。否则,算法返回到步骤S210以对下一分割子块进行解码,并执行步骤S210到步骤S214。在检查了当前单元编码块k是否为最终单元编码块后(S217),如果当前单元编码块k是最终单元编码块便对片层像素进行配置(S218)。否则,算法返回到步骤S208,并执行步骤S208到步骤S216。在检查了当前片层j是否为最终片层后(S219),如果当前片层j是最终片层便对图片像素进行配置(S220)。否则,执行步骤S205到步骤S218。在确定了当前图片i是否为最终图片后(S221),如果当前图片i是最终图片算法便结束。否则,算法返回到步骤S202,输入下一位流,并执行步骤S202到步骤S220。在根据本发明的实施例的视频编码中,将输入视频分割成若干个编码单元块。在将编码单元块细分成若干个子块后,通过选择性地使用帧内预测和帧间预测中的至少一者来对每一子分割块进行编码。因此,可使用帧间和帧内预测子块模式两者来在编码单元块的编码模式中执行编码,且同时选择性地应用可变块大小变换核,从而可提高编码效率。在根据本发明的示例性实施例的视频解码中,可通过执行编码的逆过程来对编码效率提高的压缩位流进行解码。作为本发明的另一示例性实施例,上述在视频编码中对分割块进行编码的方法可实施为计算机可读记录媒体上的计算机可读代码。所述计算机可读记录媒体包含可由计算机系统读取的所有类型的存储数据的记录装置。计算机可读记录媒体的实例包含只读存储器(ROM)、随机存取存储器(RAM)、压缩光盘只读存储器(CD-ROM)、磁带、硬盘、软磁盘、移动存储装置、快闪存储器、光学数据存储装置等。此外,可以载波形式实施计算机可读记录媒体(例如,在因特网上传输)。另外,计算机可读记录媒体经由计算机通信网络而分配到彼此连接的计算机系统,以便可以分配方式存储计算机可读代码且进而执行计算机可读代码。尽管已描述了视频编码和解码(其为编码的逆过程)方法中的帧间预测编码方法和/或帧间预测编码方法的优选实施例,但所述示例性实施例是说明性的,且本发明不限于此。所属领域的技术人员将理解,可在不脱离如由所附权利要求书界定的本发明的精神和范围的情况下在其中做出各种修改和改变。无序列表文字编码、解码、帧间预测、帧内预测、变换核、正方形变换核、非正方形变换核、量化、MPEG、率失真代价、H.264/MPEG-4第10部分高级视频译码(AdvancedVideoCoding)。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1