买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】视频运动补偿装置和方法_华为技术有限公司_201580083341.2 

申请/专利权人:华为技术有限公司

申请日:2015-09-25

公开(公告)日:2020-07-24

公开(公告)号:CN108028937B

主分类号:H04N19/50(20060101)

分类号:H04N19/50(20060101);H04N19/82(20060101);H04N19/13(20060101);H04N19/523(20060101)

优先权:

专利状态码:有效-授权

法律状态:2020.07.24#授权;2018.06.05#实质审查的生效;2018.05.11#公开

摘要:本发明涉及一种视频编码器,用于根据运动补偿将后续帧的视频流预测编码成编码视频比特流,包括:帧缓冲器207,用于存储所述视频流的至少一个参考帧,所述参考帧不同于所述视频流的当前帧;帧间预测单元210,用于根据所述参考帧的参考块生成所述当前帧的当前块的预测块;以及自适应锐化滤波器211,用于对所述预测块进行自适应滤波。

主权项:1.一种视频编码器,其特征在于,用于根据运动补偿将后续帧的视频流预测编码成编码视频比特流,包括:帧缓冲器207,用于存储所述视频流的至少一个参考帧,所述参考帧不同于所述视频流的当前帧;帧间预测单元210,用于根据所述参考帧的参考块生成所述当前帧的当前块的预测块;自适应锐化滤波器211,用于对所述预测块进行自适应滤波,所述自适应锐化滤波器211由至少一个自适应参数控制;控制单元212,用于确定所述自适应参数的参数值并且将所确定的参数值提供给所述自适应锐化滤波器211,其中所述自适应参数包含锐化强度系数k;以及编码单元203,用于生成编码视频比特流,其中所述编码视频比特流中包含所述预测块对应的量化残差变换系数和对应的锐化滤波器信息。

全文数据:视频运动补偿装置和方法技术领域[0001]本发明一般涉及视频处理领域和视频运动补偿装置,并且具体地涉及用于支持运动补偿以预测视频中的帧的视频编码器和视频解码器。本发明还涉及编码方法,用于使用运动补偿对视频流进行编码;和解码方法,用于使用运动补偿对视频流进行解码。最后,本发明涉及一种计算机程序,该计算机程序具有用于执行这种方法的程序代码。背景技术[0002]在视频处理领域中,特别是在混合视频编码和压缩领域,使用了帧间和帧内预测以及变换编码。这些混合视频编码技术用于诸如H.261、H.263、MPEG-1、2和4、H.264AVC或H.265HEVC的已知视频压缩标准中。[0003]图1示出了根据现有技术的视频编码器。视频编码器100包括用于接收视频流的帧或图像的输入块的输入端和用于生成编码视频比特流的输出端。视频编码器100用于对视频流进行预测、变换、量化和熵编码。变换、量化和熵编码分别由变换单元101、量化单元102和熵编码单元103执行,以生成编码视频比特流作为输出。[0004]视频流对应于多个帧,其中每个帧被分成进行帧内或帧间编码的一定大小的块。例如视频流的第一帧的块由帧内预测单元109进行帧内编码。仅使用同一帧内的信息进行帧内编码,使得其可以独立解码,并且可以在比特流中提供用于随机访问的入口点。视频流的其他多个帧的多个块由帧间预测单元11〇进行帧间编码:来自称作参考帧的编码帧的信息用于减少时间冗余,从而通过参考帧中相同大小的块预测出帧间编码帧的每个块。模式选择单元108用于选择是由帧内预测单元109还是由帧间预测单元110处理帧的块。[0005]为了进行桢间预测,编码的参考桢由逆量化单元104、逆变换单元105和环路滤波单元106进行处理,以获得随后存储在帧缓冲器107中的参考帧。特别地,参考帧的参考块可以由这些单元处理以获得重建的参考块。然后,将重建的参考块重新组合成参考帧。[0006]帧间预测单元110包含待帧间编码的当前帧或图像以及来自帧缓冲器107的一个或多个参考帧或图像用作输入。由帧间预测单元110应用运动估计和运动补偿。运动估计用于基于某个代价函数得到运动矢量和参考帧。然后运动补偿根据参考帧的参考块到当前帧的变换来描述当前帧的当前块。帧间预测单元110针对当前块输出预测块,其中所述预测块将待编码的当前块与其预测块之间的差值最小化,即最小化残差块。例如,残差块的最小化基于速率失真优化过程。[0007]然后,由变换单元101对当前块与其预测(S卩,残差块之间的差值进行变换。由量化单元102和熵编码单元103对变换系数进行量化和熵编码。如此生成的编码视频比特流包括桢内编码块和桢间编码块。[0008]这种混合视频编码包括结合预测误差的变换编码的运动补偿预测。对于每个块,估计的运动矢量也作为编码视频比特流中的信令数据传输。当前的标准H.264AVC和H.265HEVC基于针对运动矢量的14像素位移分辨率。为了估计和补偿分数像素位移,参考帧必须在分像素位置上插入。为了在分像素位置上获得这样的插入帧,在帧间预测单元110中使用插值滤波器。[0009]插入帧的质量很大程度上取决于所使用的插值滤波器的属性。短抽头滤波器例如双线性滤波器可以抑制高频并且使插入帧变得模糊。其他滤波器如长抽头滤波器可以保持高频率,但在尖锐边缘附近产生一些环状效应伪影。另一个问题是运动补偿利用先前编码和重建的帧作为参考帧:参考帧可能包含由变换系数量化引起的伪影,这称为吉布斯效应。由于这些伪影,边缘以及边缘周围的区域也可能失真。[0010]在现有技术中已知通过对解码帧应用锐化或去模糊后滤波器可以增加边缘的质量。这种后滤波设计的问题在于,锐化滤波器不包括在编码过程中。因此,锐化滤波器的效果在速率失真优化过程中不能考虑在内。这可能会导致客观质量指标如峰值信噪比peaksignaltonoiseratio,简称PSNR的降低。[0011]为了增加客观质量,在现有技术中还已知将锐化滤波器添加到环路滤波单元106中。相应地,锐化滤波器应用于重建的参考帧,并且可以通过去除参考帧中压缩失真来提升运动补偿预测。然而,这样的环路滤波技术不能去除由运动插值滤波器引起的伪影。发明内容[0012]认识到上述提及的缺点和问题,本发明旨在改进现有技术。特别地,本发明的目的是提供一种视频编码器、编码方法、视频解码器和解码方法,用于对后续帧的视频流进行改进编码和解码。[0013]特别地,本发明旨在提高帧间预测编码的质量。特别地,本发明旨在去除由运动估计和运动补偿引起的伪影。具体地,本发明的目的是减少运动插值滤波器的负面影响,即降低在分像素位置上插入参考帧的负面影响,并通过减少参考帧的量化伪影来提高预测质量。[0014]本发明上述提及的目标通过所附独立权利要求提供的方案实现。本发明有利的实现方式在各自的从属权利要求中进一步定义。[0015]本发明第一方面提供一种视频编码器,用于根据运动补偿将后续帧的视频流预测编码成编码视频比特流。所述视频编码器包括帧缓冲器,用于存储所述视频流的至少一个参考帧,所述参考帧不同于所述视频流的当前帧。所述视频编码器包括帧间预测单元,用于根据所述参考帧的参考块生成所述当前帧的当前块的预测块。所述视频编码器包括自适应锐化滤波器,用于对所述预测块进行自适应滤波。[0016]因而,将自适应锐化滤波器应用于预测块提高了帧间预测编码的质量,因为其去除或至少减少了在分像素位置上插入参考帧或块引起的环状效应伪影,即由运动插值滤波器引起的环状效应伪影,同时有益地保证了插入边缘的质量。其还去除或至少减少由参考块中的变换系数的量化引起的环状效应伪影,也称为吉布斯Gibbs效应。其进一步减少了量化和运动插入引起的边缘模糊,并且也减少了运动模糊造成的边缘模糊。另外,本发明增加了重建帧或重建块中边缘的主观质量。[0017]因而,根据本发明将锐化滤波器放置在运动插值滤波器之后,即在帧间预测单元之后,使得锐化滤波器执行环内参考滤波器也即环路滤波单元的任务,而同时可以去除或至少减少由运动插值滤波造成的伪影。而且,使用自适应锐化滤波器可以自适应视频内容的本地特征,尤其是预测块的本地特征,使得均小块的编码仅需要更少的信令开销便可以向解码器进行传输。根据第一方面所述的视频编码器的一种实施形式中,所述视频编码器包括控制单元。所述自适应锐化滤波器由至少一个自适应参数控制。所述控制单元用于确定所述自适应参数的参数值并且将所确定的参数值提供给所述自适应锐化滤波器。[0018]因而,预测块通过能自适于视频的具体内容的锐化滤波器来进行滤波。自适应能够考虑视频内容的本地特征,并且由于自适应锐化滤波器的参数化表示仅使用一个用于自适应和传输的系数,所以可以限制所需的信令开销。特别地,可以减少用于预测编码的块的大小,而不会同时增加信令开销。[0019]根据第一方面所述的视频编码器的另一种实施形式中,所述控制单元用于提供所述自适应参数的不同参数值,并且基于残差块的最小化或者基于代价标准例如速率失真优化来选择所述不同参数值中的一个,所述残差块为所述当前块和所述预测块之间差值。[0020]因而,可以进一步提升运动补偿。可以对至少一个自适应参数的不同值获得的残差块进行比较。可以通过选择将残差块或者代价标准最小化的预测块来提升运动补偿。然后,从不同的参数值中选择与所选择的预测块对应的参数值,以提升运动补偿。[0021]根据第一方面所述的视频编码器的另一个实现形式中,锐化滤波器是一个非线性滤波器。[0022]因而,优选使用这种非线性锐化滤波器来增强运动预测。基于线性锐化或去模糊滤波器的传统边缘增强技术如非锐化掩模技术可增加主观质量,但不能抑制由运动插值滤波引起的环状效应伪影。而且,已发现在大多数情况下,这种线性锐化甚至可能增加环状效应并降低客观性能特征。另一方面,非线性滤波器可以更好地消除环状效应,因此是有益的。而且,锐化滤波器即自适应锐化滤波器使用非线性设计,可以有益地减少自适应参数的数量,从而减少信令开销。[0023]根据第一方面所述的视频编码器的另一个实现形式中,锐化滤波器包括边缘图计算单元,用于生成源图像块的边缘图,所述源图像块是所述参考块或所述预测块。锐化滤波器包括模糊滤波器,用于模糊所述源图像块的所述边缘图。锐化滤波器包括高通滤波器,用于通过对所述模糊的边缘图进行高通滤波,生成针对所述源图像块每个位置的导数矢量。锐化滤波器包括缩放单元,用于通过使用锐化强度系数缩放所述导数矢量生成位移矢量。锐化滤波器包括扭曲单元,用于基于所述位移矢量扭曲所述预测块。所述自适应参数包含所述锐化强度系数。因而,锐化滤波器的这种结构定义了非线性锐化滤波器,有益地,其可以更好地消除环状效应伪影。此外,使用锐化强度系数作为自适应参数意味着只需要一个自适应参数,这进一步降低了信令开销。[0024]根据第一方面所述的视频编码器的另一个实现形式中,一直启用锐化滤波器。[0025]根据第一方面所述的视频编码器的另一个实现形式中,所述视频编码器包括控制单元,用于控制所述自适应锐化滤波器的选择性旁路和所述自适应锐化滤波器的选择性应用中的至少一个。[0026]因而,控制单元可以决定应用或旁路锐化滤波器。然后,可以将该决定应用于每个特定的情况,例如待编码的特定视频流。而且,可以旁路锐化滤波器来节省视频编码器中的计算资源。另一方面,如果优先考虑提高插入质量和减少伪影,可以应用锐化滤波器。[0027]根据第一方面所述的视频编码器的另一个实现形式中,控制单元用于根据代价函数来控制选择性旁路和选择性应用中的至少一个,以最小化残差块。所述残差块可以是所述当前块与所述预测块之间的差值。例如,所述代价函数可以基于速率失真优化。[0028]因而,可以进一步旁路或应用锐化滤波器来提升运动补偿。分别从帧间预测单元输出的预测块和锐化滤波器输出的预测块导出的两个残差块可以根据代价函数进行比较。通过选择使残差块最小化的预测块并相应地应用或旁路锐化滤波器,可以减少数据量例如待编码的变换系数的数量。[0029]根据第一方面所述的视频编码器的另一个实现形式中,视频编码器包括编码单元,用于产生编码视频比特流。所述控制单元用于向所述编码单元传输锐化滤波器信息,所述锐化滤波器信息用于反映所述锐化滤波器的所述选择性旁路和所述选择性应用中的至少一个。编码单元用于在编码视频比特流中添加锐化滤波器信息。[0030]因而,在对编码视频比特流进行解码时,可以获得该锐化滤波器信息,并相应地在解码器侧应用或旁路锐化滤波器,从而保证正确的解码。[0031]根据第一方面所述的视频编码器的另一个实现形式中,所述自适应参数信息或所述锐化滤波器信息针对每个预测块在块层进行添加,针对所述帧的任意或规则区域在帧层、GOP图像组层、在PPS图像参数集合层或在SPS序列参数集合层进行添加。[0032]因而,可以将锐化滤波器信息设置为期望的粒度,从而可以优化信令。[0033]根据第一方面所述的视频编码器的另一个实现形式中,所述自适应锐化滤波器包含单个自适应参数。[0034]因而,可以进一步减少自适应所需的并且用于向解码器进行传输的信令开销。[0035]本发明第二方面提供一种编码方法,用于根据运动补偿将后续帧的视频流预测编码成编码视频比特流。该方法包括存储所述视频流的至少一个参考帧,所述参考帧不同于所述视频流的当前帧。该方法包括根据所述参考帧的参考块生成所述当前帧的当前块的预测块。该方法包括对所述预测块进行自适应滤波。[0036]根据本发明第二方面的方法的其它特征或实现方式可以用于执行根据本发明第一方面及其不同的实现形式的视频编码器的功能。[0037]本发明第三方面提供一种视频解码器,用于对通过根据运动补偿预测编码后续帧的视频流得到的编码视频比特流进行解码。所述视频解码器包括帧缓冲器,用于存储从所述编码视频比特流得到的至少一个参考帧,所述参考帧不同于所述编码视频比特流的当前帧。所述视频解码器包括帧间预测单元,用于根据所述参考帧的参考块生成所述当前帧的当前块的预测块。所述视频解码器包括自适应锐化滤波器,用于对所述预测块进行自适应滤波。[0038]因而,通过第一方面的视频编码器所获得的优点也能通过第三方面的视频解码器获得。[0039]根据第三方面所述的视频解码器的一种实施形式中,所述视频解码器包括控制单元。所述自适应锐化滤波器由至少一个自适应参数控制。所述控制单元用于确定所述自适应参数的参数值并且将所确定的参数值提供给所述自适应锐化滤波器。[0040]因而,可以利用至少一个自适应参数来有益地进行锐化滤波器自适应。[0041]根据第三方面所述的视频解码器的一种实施形式中,控制单元用于根据从编码视频比特流得到的自适应参数信息来确定自适应参数的参数值。[0042]因而,自适应参数可以从视频编码器生成的编码视频比特流中获得。因此,可以确保视频编码器和视频解码器都执行锐化滤波器的相同的自适应,并且可以确保视频解码器获得的视频对应于视频编码器编码的视频。[0043]根据第三方面所述的视频解码器的一个实现形式中,所述视频解码器包括控制单元,用于控制所述自适应锐化滤波器的选择性旁路和所述自适应锐化滤波器的选择性应用中的至少一个。[0044]因而,可根据每个特定情况自适应调整使用或不使用锐化滤波器单元。而且,可以旁路锐化滤波器来节省视频编码器和视频解码器中的计算资源。另一方面,如果优先考虑提高插入质量和减少伪影,可以应用锐化滤波器。[0045]根据第三方面所述的视频解码器的一个实现形式中,控制单元用于基于从所述编码视频比特流得到的锐化滤波器信息来控制选择性旁路和选择性应用中的至少一个。[0046]因而,视频解码器可以用于视频编码器,其可以有益地在编码视频比特流中添加锐化滤波器信息,所述锐化滤波器信息反映视频编码器侧上的锐化滤波器的打开或关闭。[0047]根据本发明第一方面的视频编码器的其他特征或实施方式,特别是所述锐化滤波器及其结构,也适用于根据本发明第三方面的视频解码器。[0048]本发明第四方面提供一种解码方法,用于对通过根据运动补偿预测编码后续帧的视频流得到的编码视频比特流进行解码。所述方法包括存储从所述编码视频比特流得到的至少一个参考帧,所述参考帧不同于所述编码视频比特流的当前帧。该方法包括根据所述参考帧的参考块生成所述当前帧的当前块的预测块。该方法包括对所述预测块进行自适应滤波。[0049]根据本发明第四方面的方法的其它特征或实现方式可以用于执行根据本发明第三方面及其不同的实现形式的视频解码器的功能。[0050]本发明的第五方面提供了一种具有程序代码的计算机程序,所述程序代码用于当计算机程序在计算设备上运行时执行这种编码和或解码方法。[0051]本发明提出一种运动补偿提升方案,通过将自适应锐化滤波器应用于运动预测信号(即预测块来实现。提出了通过减少环状效应伪影并增加运动预测块中边缘的锐度来提升运动补偿。提出了将锐化滤波器作为预测滤波器置于编码器和解码器中,用于增强运动补偿。非线性锐化预测滤波器可以用于提升运动补偿。[0052]需要注意的是,本申请所描述的所有设备、元件、单元和方式均可在软件或硬件元件或它们的任意组合中实现。由本申请描述的各种实体执行的所有步骤以及所描述的由各种实体执行的功能旨在表示各个的实体适用于或用于执行相应的步骤和功能。即使在具体实施例的以下描述中,完全由外部实体形成的具体功能或步骤未在执行该具体步骤或功能的该实体的具体细节元件的描述中反映,技术人员应清楚可以在各个软件或硬件元件或它们的任意组合中实现这些方法和功能。附图说明[0053]结合所附附图,下面具体实施例的描述将阐述上述本发明的各方面及其实现形式,其中:[0054]图1示出了根据现有技术的视频编码器;[0055]图2示出了根据本发明实施例的一种视频编码器;[0056]图3示出了根据本发明实施例的一种视频解码器;[0057]图4示出了根据本发明的锐化滤波器的一个实施例;[0058]图5示出了根据本发明实施例的一种视频编码方法;[0059]图6示出了根据本发明实施例的一种视频解码方法;[0060]图7示出了根据本发明实施例的锐化自适应;[0061]图8示出了图7所示的锐化自适应的可能实施例。具体实施方式[0062]图2示出了根据本发明实施例的一种视频编码器,特别是一种用于根据运动补偿将后续帧的视频流预测编码成编码视频比特流的视频编码器200。[0063]视频编码器200特别地包括帧缓冲器207、帧间预测单元210和锐化滤波器211。[0064]帧缓冲器207用于存储所述视频流的至少一个参考帧或图像。所述参考帧不同于视频流的当前帧。特别地,在本发明的上下文中,当前帧是当前编码的视频流的帧,而参考帧是已经被编码的视频流的帧。下面所提及的“桢”都可以被“图像”替代。[0065]帧间预测单元210用于根据参考帧的参考块生成当前帧的当前块的预测块。优选地,参考帧是存储在帧缓冲器207中的参考帧,而当前块优选地对应于视频编码器200的输入,其在图2中称为视频块。特别地,使用帧间编码技术对当前帧进行编码,S卩,由与当前帧不同的至少一个参考帧来预测当前帧。参考帧可以是先前帧,即在后续帧的视频流内位于当前帧之前的帧。或者,如果使用前向预测,则参考帧可以是未来帧,即位于当前帧之后的帧。假使有多个参考帧,至少一个可以是所述先前帧,并且其中至少一个可以是所述未来帧。参考帧可以是帧内编码的,即可以不使用任何其它帧并且不依赖于其他帧进行编码,使得可以对其进行独立解码并且其可以用作随机视频访问的入口点。[0066]特别地,帧间预测单元210用于通过生成运动矢量并估计参考帧的参考块与当前帧的当前块之间的运动进行运动估计。所述运动估计在编码期间执行,从而基于某个代价函数例如速率失真优化来找到指向参考帧中的最佳参考块的运动矢量。除了运动估计之夕卜,帧间预测单元210还用于通过基于运动矢量和参考块生成针对当前块的预测块来进行运动补偿。[0067]特别地,运动预测包括运动估计单元和运动补偿单元。运动矢量是通过运动估计单元生成的。参考块和当前块优选地是参考帧和当前帧的各自的区域或子区域。这样的块可以具有规则的形状例如矩形或不规则形状。或者,所述块的大小可以与帧的大小相同。当前块和参考块都具有相同的大小。块的大小可以通过作为边信息或信令数据传输给解码器的块模式信息来定义。块可以对应于编码单元,该编码单元是预定义大小的视频序列的基本编码结构,其包含帧的一部分,例如,64x64像素。[0068]根据参考块,生成针对当前块的预测块。特别地,可以根据多个参考块生成针对当前帧多个当前块的多个预测块。这些参考块可以是单个参考帧的一部分,或者可以从不同的参考帧中选择。可以针对当前帧生成几个预测块,并且可以合并针对当前帧生成的预测块来获得当前帧的预测帧。[0069]所述锐化滤波器211是自适应锐化滤波器,用于对所述预测块进行自适应滤波。因此,锐化滤波器211应用于帧间预测单元210生成的预测块。在帧间预测单元210之后添加了本发明提出的锐化滤波器211,以增强通过帧间预测获得的预测块,即通过包括运动估计和运动补偿的运动预测获得的预测块。因此,锐化滤波器211用于生成锐化的预测块。[0070]有益地,视频编码器200包含控制单元212,且自适应锐化滤波器211利用(S卩,由其控制至少一个自适应参数。所述控制单元212用于确定所述自适应参数的参数值并且将所确定的参数值提供给所述自适应锐化滤波器211。[0071]优选地,自适应锐化滤波器211仅利用一个自适应参数,其值由控制单元212设定。[0072]所述控制单元212用于通过提供所述自适应参数的不同参数值并且基于残差块的最小化或者基于代价标准例如速率失真优化来选择所述不同参数值中的一个来确定所述参数值,所述残差块为当前块和预测块之间差值。[0073]有益地,视频编码器200包括编码单元203,用于产生编码视频比特流。所述控制单元212用于向所述编码单元203传输确定的参数值的自适应参数信息。编码单元203用于在编码视频比特流中添加自适应参数信息。这是指,一旦控制单元212已经将一个自适应参数设置为一个给定值或将多个自适应参数设置为各自的给定值,所述控制单元212将给定值发送到编码单元203,该编码单元203将给定值作为信令数据添加到所述编码视频比特流中。[0074]图2中的视频编码器200包括类似于图1中的视频编码器100中的另外的单元,特别地用于支持混合视频编码。例如,视频编码器200包含类似单元,所述类似单元为变换单元201,量化单元202及熵编码器或熵编码单元203,本领域已知,分别用于通过变换到频域产生变换系数,将系数量化并且对量化系数例如与信令数据一起进行熵编码。变换单元201的输入是残差块,该残差块定义为当前帧的当前块与预测块之间的差值,所述当前帧的当前块在图2中称为视频块,所述预测块由帧间预测单元210,锐化滤波器211,或帧内预测单元209输出。熵编码单元203用于生成编码视频比特流作为输出。[0075]视频编码器200包含另外的类似单元,该类似单元为逆量化单元204,逆变换单元205及环路滤波单元206。量化单元202生成的量化变换系数由逆量化单元204和逆变换单元205分别进行逆量化和逆变换,以获得与馈送到变换单元201的残差块相对应的重建的残差块。然后将重建的残差块添加到先前用于生成残差块的预测块中,以获得对应当前块的重建的当前块,该重建的当前块在图2中称为重建的视频块。该重建的当前块可以由环路滤波单元206处理以消除按块处理和量化所引入的伪影。然后,可以通过重建的当前块重建包括至少一个当前块或有益地包括多个当前块的当前帧。该重建的当前帧可以存储在帧缓冲器207中,在对视频流的另一个帧进行帧间预测时用作参考帧。[0076]视频编码器200中提供了模式选择单元208,类似图1,用于选择视频编码器200的输入块是由帧内预测单元209还是由帧间预测单元210进行处理。模式选择单元208相应地选择是仅使用来自该帧的信息来对该帧的块进行帧内编码还是使用来自其它帧的附加信息(即,来自存储在帧缓冲器207中的至少一个参考帧进行帧间编码。[0077]帧内预测单元209负责帧内预测并且基于帧内预测生成预测块。如上所述,帧间预测单元210负责帧间预测,并且生成从参考帧中的相同大小的块预测出的预测块,以减少时间冗余。[0078]特别地,可以一直启用锐化滤波器211。这是指帧间预测单元210生成的预测块总是馈送到锐化滤波器211,并且总是通过当前块与由锐化滤波器211输出的锐化的预测块的差值来获得残差块。[0079]可选地,可以选择性旁路或选择性应用锐化滤波器211。假使应用了锐化滤波器211,锐化滤波器211生成锐化的预测块,并且残差块是通过当前块和锐化滤波器211输出的锐化的预测块的差值获得的。假使旁路了锐化滤波器211,则通过当前块与帧间预测单元210输出的预测块的差值来获得残差块。[0080]锐化滤波器211的选择性旁路和或应用可以由控制单元212控制。例如,控制单元可以用于根据代价函数来控制锐化滤波器211的应用和或旁路,以最小化残差块。例如,所述代价函数可以基于速率失真优化。特别地,所述代价函数可以应用于根据锐化滤波器211输出的预测块获得的残差块,以及根据帧间预测单元210输出的预测块获得的残差块。根据代价函数的结果,可以应用或旁路锐化滤波器211。[0081]控制单元212旁路或应用锐化滤波器211的决定可以作为由编码单元或熵编码单元203生成的编码视频比特流内的信令数据传输。控制单元212将锐化滤波器信息传输到编码单元203,所述锐化滤波器信息反映锐化滤波器211的选择性旁路和选择性应用中的至少一个。然后,编码单元203将锐化滤波器信息作为信令数据添加到编码视频比特流中。[0082]锐化滤波器信息可以采用锐化滤波器标志的形式,其可以取两个值,例如0和1。这两个值中的一个例如1定义应用锐化滤波器,而另一个值则定义旁路锐化滤波器。或者,不存在锐化滤波器信息可解释为反映锐化滤波器的旁路状态,而存在锐化滤波器信息可反映应用状态。[0083]自适应参数信息和或锐化滤波器信息的粒度可以变化。例如,所述锐化滤波器信息可以针对每个预测块在块层进行添加,针对所述帧的任意或规则区域在帧层、GOP图像组层、在PPS图像参数集合层或在SPS序列参数集合层进行添加。如果针对每个预测块在块层添加所述锐化滤波器信息,则编码单元203可以针对由帧间预测单元210生成的每个预测块添加锐化滤波器信息。然后,编码单元203在编码视频比特流中针对每个预测块添加对应的量化残差变换系数和对应的锐化滤波器信息。[0084]图3示出了根据本发明实施例的一种视频解码器,特别是一种用于对通过根据运动补偿预测编码后续帧的视频流得到的编码视频比特流进行解码的视频解码器300。[0085]特别地,视频解码器300包括帧缓冲器307,帧间预测单元310和自适应锐化滤波器311。帧缓冲器307用于存储从所述编码视频比特流得到的至少一个参考帧,所述参考帧不同于编码视频比特流的当前帧。帧间预测单元310用于根据参考帧的参考块生成当前帧的当前块的预测块。自适应锐化滤波器311用于对所述预测块进行自适应滤波。[0086]有益地,视频解码器300包含控制单元312,且自适应锐化滤波器311利用至少一个自适应参数。所述控制单元312用于确定所述自适应参数的参数值并且将所确定的参数值提供给所述自适应锐化滤波器311。[0087]特别地,控制单元312可以用于根据从编码视频比特流得到的自适应参数信息来确定自适应参数的参数值。[0088]所述解码器300用于解码由视频编码器200生成的编码视频比特流,并且解码器300和编码器200都产生相同的预测。帧缓冲器307,帧间预测单元310和锐化滤波器311的特征类似于图2中的帧缓冲器207,帧间预测单元210和锐化滤波器211的特征。[0089]为了确保在编码器侧和解码器侧的预测相同,编码器200的锐化滤波器的自适应参数可以作为信令数据传递到解码器300。作为替代解决方案,可以在解码器侧导出自适应参数而不发送相应的信令数据。特别地,自适应参数可以从周围区域或从参考帧中导出。例如,参数可以从当前帧中的周围块导出,例如,可以与当前块的周围块的自适应参数相同。[0090]特别地,视频解码器300可以包括也存在于视频编码器200中的另外的单元,例如逆量化单元304、逆变换单元305、环路滤波单元306和帧内预测单元309,它们分别对应于视频编码器200的逆量化单元204、逆变换单元205、环路滤波单元206和帧内预测单元209。熵解码单元303用于解码接收到的编码视频比特流并相应地获得量化的残差变换系数以及锐化滤波器信息,如果存在锐化滤波器信息的话。将量化的残差变换系数馈送到逆量化单元304和逆变换单元305以产生残差块。将残差块添加到预测块,并且重建的残差块馈送到环路滤波单元306以获得解码的视频。解码的视频的帧可以存储在帧缓冲器307中,并且用作参考帧用于帧间预测。[0091]特别地,可以一直启用锐化滤波器311。这是指由锐化滤波器进行滤波的预测单元用于获得解码的视频。[0092]或者,例如,锐化滤波器311的选择性旁路或应用可以由控制单元312进行。可以将解码单元303从编码视频比特流中获得的锐化滤波器信息馈送到控制单元312,该控制单元312依据锐化滤波器信息控制锐化滤波器311的旁路和或应用。[0093]锐化滤波器信息反映锐化滤波器311的旁路或应用,并且优选地对应于由视频编码器200添加到编码视频比特流的锐化滤波器信息。例如,讨论的关于视频编码器200的锐化滤波器信息的形式和粒度的不同方面也适用于视频解码器300。[0094]图4示出了根据本发明的自适应锐化滤波器400的一个实施例,特别是视频编码器200的自适应锐化滤波器211的实施例。视频解码器300的自适应锐化滤波器311可能与图4所示的自适应锐化滤波器211有轻微差异,下面将对所述差异进行讨论。[0095]锐化滤波器400优选地为非线性滤波器。优选地使用非线性锐化滤波器而不是线性滤波器,来去除由运动插值滤波器和参考块或帧的量化造成的伪影。选择非线性滤波器可以减少锐化滤波器400的自适应参数的数量。特别地,非线性滤波器可以仅利用一个自适应参数,从而减小编码视频比特流的信令开销。尽管本发明也包含使用一个以上自适应参数来控制锐化滤波器400的情况,但是锐化滤波器仅利用一个自适应参数是特别有益的实施例。[0096]特别地,锐化滤波器400包括边缘图计算单元401和402、模糊滤波器404、高通滤波器405、缩放单元406和扭曲单元407。[0097]边缘图计算单元401和402用于生成源图像块的边缘图,所述源图像块是所述参考块或所述预测块。模糊滤波器404用于模糊所述源图像块的所述边缘图。高通滤波器405用于通过对所述模糊的边缘图进行高通滤波,生成针对所述源图像块每个位置的导数矢量d2x,d2y。缩放单元406用于通过使用锐化强度系数k缩放所述导数矢量d2x,d2y生成位移矢量wx,wy。扭曲单元407用于基于所述位移矢量wx,wy扭曲所述预测块。[0098]因而,控制锐化滤波器400的自适应参数是锐化强度系数k。图4所示的本发明的实施例针对锐化滤波器400仅有一个自适应参数。[0099]边缘图计算单元401和402可以包括:梯度矢量单元401,用于针对源图像块的每个位置生成梯度矢量(dx,dy;以及梯度矢量长度单元402,用于计算各个位置的梯度矢量dx,dy的长度,从而生成源图像块的边缘图。因而,该结构允许生成边缘图,边缘图可以由模糊滤波器、高通滤波器和缩放单元进一步处理以生成扭曲位移矢量。[0Ί00]可以结合下面的等式应用相应的Prewitt滤波器通过对dx和dy分别取一阶导数来得到梯度矢量,即分别对图4中的源图像块的水平方向和垂直方向取一阶导数。[0103]边缘图可以通过梯度矢量长度单元402结合以下等式计算梯度矢量长度来获得:[0104][0105]有益地,锐化滤波器400包括裁剪单元403,用于裁剪源图像块的边缘图,所述裁剪单元403位于边缘图计算单元401和402与模糊滤波器404之间。因此,根据阈值裁剪边缘图是有益的,因为这避免处理扭曲矢量的极高值和极低值。[0106]对裁剪的边缘图进行模糊的步骤可以由模糊滤波器404执行,该模糊滤波器404采用如下定义的高斯滤波器形式:[0107][0108]高通滤波器用于分别针对d2x和d2y得到二阶导数,例如根据以下等式得到二阶导数:[0111]根据以下等式使用系数k缩放二阶导数矢量d2x,d2y来获得位移矢量wx,wy,其中,系数k可以视为锐化强度。[0114]扭曲单元407包括插值滤波器例如双线性插值滤波器以获得分像素位置处的采样值。扭曲单元407使用由缩放单元406生成的位移矢量。因此,改善了视频编码器的整体质量,同时在期望的分像素位置上插入参考帧或块。[0115]减法单元408用于得到扭曲单元407生成的锐化的预测块与当前块之间的差值,所述当前块对应待编码块。实际上,减法单元408产生残差块。自适应锐化滤波器400或控制自适应锐化滤波器400的控制单元211用于例如通过最小化残差块或通过代价标准例如速率失真来找到最佳锐化强度k。[0116]视频编码器200的自适应锐化滤波器与视频解码器300的自适应锐化滤波器之间的差异优选地在于减法单元408和残差块的最小化。在视频解码器300中,自适应参数即系数k不通过减法单元408和残差块的最小化来设置。而是,优选地取决于反映系数k的值的信令数据,在视频解码器300中设置自适应参数,所述信令数据是编码视频比特流的一部分并由视频编码器200设置。[0117]锐化滤波器400基于由源图像块计算的位移矢量进行扭曲操作,该源图像块在图4中称为运动预测块。[0118]根据图4中未示出的实施例,源图像块是存储在帧缓冲器207和307中的参考帧的参考块,以从参考块导出位移矢量wx,wy。因而,参考块用作源图像块以获得位移矢量,位移矢量也称为锐化位移矢量或扭曲位移矢量。然后使用获得的位移矢量将扭曲应用于预测块。该实施例的优点在于节省了编码器侧的计算资源。[0119]根据图4所示的可选实施例,源图像块是由帧间预测单元210和310生成的预测块,以从预测块导出位移矢量wx,wy。[0120]因而,选择预测块作为源图像块可以计算合适的位移矢量,以用于扭曲所述预测块。而且,然后,锐化滤波器仅需要针对预测块的一次输入,不需要针对参考块的二次输入。[0121]图5示出了根据本发明实施例的一种视频编码方法,特别是一种用于根据运动补偿将后续帧的视频流预测编码成编码视频比特流的方法500。[0122]该方法500包括步骤501:存储所述视频流的至少一个参考帧,所述参考帧不同于视频流的当前帧。[0123]该方法500还包括帧间预测步骤502:根据参考帧的参考块生成当前帧的当前块的预测块。该方法500还包括自适应锐化滤波步骤503:对所述预测块进行自适应滤波。[0124]图6示出了根据本发明实施例的一种视频解码方法,特别是一种用于对通过根据运动补偿预测编码后续帧的视频流得到的编码视频比特流进行解码的方法600。[0125]该方法600包括步骤601:存储从所述编码视频比特流得到的至少一个参考帧,所述参考帧不同于编码视频比特流的当前帧。[0126]该方法600包括帧间预测步骤602:根据参考帧的参考块生成当前帧的当前块的预测块。[0127]该方法600包括自适应锐化滤波步骤603:对所述预测块进行自适应滤波。[0128]视频编码器200或视频解码器300进一步描述的方面和特征也适用于所述编码方法500和所述解码方法600。[0129]图7示出了根据本发明实施例的锐化自适应。图7所示的锐化自适应过程在视频编码器一侧进行。[0130]锐化滤波器的自适应参数以及锐化本身必要性的估计,即对自适应锐化滤波器进行应用或旁路的决定,可以与运动估计过程一起执行。图7阐述了在评估候选运动矢量期间如何能够获得自适应锐化参数。然后,可以进行以下步骤:[0131]取运动矢量进行分析;[0132]通过应用传统插值滤波器709来获得运动插入块708;[0133]进行锐化滤波器自适应707以获得针对锐化滤波器的最佳自适应参数;[0134]应用具有在先前步骤中找到的最佳参数的锐化滤波器706以获得锐化的预测块705;[0135]决定或评估704锐化的预测块是否比未进行锐化的预测块更好,其中,该决定或评估基于速率失真优化,并且通过用作信令数据或边信息添加到编码视频比特流中的锐化滤波器信息传输到视频解码器。该锐化滤波器信息在图7中标识为进行锐化或不进行锐化。[0136]如果视频编码器200决定应用锐化预测,则反映锐化滤波器的最佳参数值的自适应参数信息也作为信令数据添加到编码视频比特流中。所述自适应参数信息在图7中标识为锐化强度。图7中所示的锐化自适应可以应用于运动估计环路的不同步骤。图8示出了用于将锐化自适应过程整合到运动矢量搜索中的三个可能的实施例。[0137]在图8a所示的实施例中,针对每个可能的候选运动矢量执行锐化自适应,即找到最佳系数k。该实施例以搜索复杂度为代价提供了可能的最好质量。[0138]相应地,图8a中的运动估计800包括针对每个候选运动矢量801的锐化滤波器自适应803。针对候选运动矢量,802获得预测块,803进行自适应锐化,804判断对锐化滤波器进行应用还是旁路。针对每个可能的候选运动矢量重复该过程。[0139]在图8c所示的实施例中,仅针对一个运动矢量,即针对在运动估计期间找到的最好的运动矢量,可选地执行锐化自适应。这个实施例的优点在于其减少了搜索的复杂性。另一方面,找到的锐化的预测块可能不是最好的。[0140]相应地,图8c的运动估计820只包括一个锐化自适应步骤825。基于该锐化自适应825,可以判定是对自适应锐化滤波器进行应用还是旁路826。在进行锐化自适应825之前,针对每个候选运动矢量821进行整数运动矢量搜索822,并且针对每个分像素位置823执行分数运动矢量搜索824。[0141]图8b中所示的实施例是图8a和图8c中的实施例之间的平衡解决方案:只在分数运动矢量细化期间进行锐化自适应。在该实施例中,进行整数运动矢量搜索而不进行锐化自适应,以降低搜索复杂度。[0142]相应地,图8b中的运动估计810包括针对每个候选运动矢量811执行的整数运动矢量搜索812。一旦完成整数运动矢量搜索812,针对每个分像素位置813对所获得的预测块进行插入814:针对每个预测块进行锐化自适应815,并且针对每个预测块确定对锐化滤波器进行应用还是旁路816。[0143]已经结合作为实例的不同实施例以及实施方案描述了本发明。但本领域技术人员通过实践所请发明,研究附图、本公开以及独立权项,能够理解并获得其它变体。在权利要求以及描述中,术语“包括”不排除其他元件或步骤,且“一个”并不排除复数可能。单个元件或其它单元可满足权利要求书中所叙述的若干实体或项目的功能。在仅凭某些措施被记载在相互不同的从属权利要求书中这个单纯的事实并不意味着这些措施的组合不能在有利的实现方式中使用。

权利要求:1.一种视频编码器,其特征在于,用于根据运动补偿将后续帧的视频流预测编码成编码视频比特流,包括:帧缓冲器207,用于存储所述视频流的至少一个参考帧,所述参考帧不同于所述视频流的当前帧;帧间预测单元210,用于根据所述参考帧的参考块生成所述当前帧的当前块的预测块;以及自适应锐化滤波器211,用于对所述预测块进行自适应滤波。2.根据权利要求1所述的视频编码器,其特征在于,包括控制单元212,其中,所述自适应锐化滤波器211由至少一个自适应参数控制,以及所述控制单元212用于确定所述自适应参数的参数值并且将所确定的参数值提供给所述自适应锐化滤波器211。3.根据权利要求2所述的视频编码器,其特征在于,所述控制单元212用于提供所述自适应参数的不同参数值,并且基于残差块的最小化或者基于代价标准例如速率失真优化来选择所述不同参数值中的一个,所述残差块为所述当前块和所述预测块之间的差值。4.根据上述权利要求中任一项所述的视频编码器,其特征在于,所述自适应锐化滤波器211是非线性滤波器。5.根据权利要求2至5中的任一项所述的视频编码器,其特征在于,所述自适应锐化滤波器211包括:边缘图计算单元401和402,用于生成源图像块的边缘图,所述源图像块是所述参考块或所述预测块;模糊滤波器404,用于模糊所述源图像块的所述边缘图;高通滤波器405,用于通过对所述模糊的边缘图进行高通滤波,生成针对所述源图像块每个位置的导数矢量d2x,d2y;缩放单元406,用于通过使用锐化强度系数k缩放所述导数矢量d2x,d2y生成位移矢量wx,wy;以及扭曲单元407,用于基于所述位移矢量wx,wy扭曲所述预测块;其中所述自适应参数包含所述锐化强度系数⑹。6.根据权利要求2至5中任一项所述的视频编码器,其特征在于,包括编码单元(203,用于生成所述编码视频比特流;其中所述控制单元212用于向所述编码单元203传输所述确定的参数值的自适应参数信息;以及所述编码单元203用于在所述编码视频比特流中添加所述自适应参数信息。7.根据上述权利要求中任一项所述的视频编码器,其特征在于,一直启用所述自适应锐化滤波器211。8.根据权利要求1至6中任一项所述的视频编码器,其特征在于,包括控制单元212,用于控制所述自适应锐化滤波器211的选择性旁路和所述自适应锐化滤波器211的选择性应用中的至少一个。9.根据权利要求8所述的视频编码器,其特征在于,所述控制单元212用于基于残差块的最小化或者基于其他代价标准例如其他速率失真优化来控制所述选择性旁路和所述选择性应用中的至少一个,所述残差块为所述当前块和所述预测块之间的差值。10.根据权利要求8或9中所述的视频编码器,其特征在于,包括编码单元203,用于生成所述编码视频比特流;其中所述控制单元212用于向所述编码单元203传输锐化滤波器信息,所述锐化滤波器信息用于反映所述选择性旁路和所述选择性应用中的至少一个;以及编码单元203用于在所述编码视频比特流中添加所述锐化滤波器信息。11.根据权利要求6或10所述的视频编码器,其特征在于,所述自适应参数信息或所述锐化滤波器信息针对每个预测块在块层进行添加,针对所述帧的任意或规则区域在帧层、GOP图像组层、在PPS图像参数集合层或在SPS序列参数集合层进行添加。12.根据以上权利要求中任一项所述的视频编码器,其特征在于,所述自适应锐化滤波器211由单个自适应参数控制。13.—种编码方法,其特征在于,用于根据运动补偿将后续帧的视频流预测编码成编码视频比特流,包括:存储501所述视频流的至少一个参考帧,所述参考帧不同于所述视频流的当前帧;根据所述参考帧的参考块生成502所述当前帧的当前块的预测块;以及对所述预测块进行自适应滤波503。14.一种视频解码器,其特征在于,用于对通过根据运动补偿预测编码后续帧的视频流得到的编码视频比特流进行解码,包括:帧缓冲器307,用于存储从所述编码视频比特流得到的至少一个参考帧,所述参考帧不同于所述编码视频比特流的当前帧;帧间预测单元310,用于根据所述参考帧的参考块生成所述当前帧的当前块的预测块;以及自适应锐化滤波器311,用于对所述预测块进行自适应滤波。15.根据权利要求14所述的视频解码器,其特征在于,包括控制单元312;其中所述自适应锐化滤波器311由至少一个自适应参数控制;以及所述控制单元312用于确定所述自适应参数的参数值并且将所确定的参数值提供给所述自适应锐化滤波器311。16.根据权利要求15所述的视频解码器,其特征在于,其中,所述控制单元312用于根据从所述编码视频比特流得到的自适应参数信息来确定所述自适应参数的参数值。17.根据权利要求15或16所述的视频解码器,其特征在于,其中,所述控制单元312用于控制所述自适应锐化滤波器211的选择性旁路和所述自适应锐化滤波器211的选择性应用中的至少一个。18.根据权利要求17所述的视频解码器,其特征在于,其中,控制单元312用于基于从所述编码视频比特流得到的锐化滤波器信息来控制所述选择性旁路和所述选择性应用中的至少一个。19.一种解码方法,用于对通过根据运动补偿预测编码后续帧的视频流得到的编码视频比特流进行解码,其特征在于,所述方法包括:存储601从所述编码视频比特流得到的至少一个参考帧,所述参考帧不同于所述编码视频比特流的当前帧;根据所述参考帧的参考块生成602所述当前帧的当前块的预测块;以及对所述预测块进行自适应滤波603。20.—种具有程序代码的计算机程序,其特征在于,所述程序代码用于当所述计算机程序在计算设备上运行时,执行如权利要求13或19所述的方法。

百度查询: 华为技术有限公司 视频运动补偿装置和方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。