用于视频编码的选择性去块滤波技术的制作方法

文档序号:7641278阅读:81来源:国知局

专利名称::用于视频编码的选择性去块滤波技术的制作方法
技术领域
:本发明涉及数字视频处理,且更明确地说,涉及可降低已编码视频帧中的成块假象的滤波技术。技术背景数字视频能力可并入到各种各样的装置中,其中包括数字电视、数字直播系统、无线通信装置、个人数字助理(PDA)、膝上型计算机、台式计算机、数码相机、数字记录装置、蜂窝式或卫星无线电电话、直接双向通信装置(有时称为"对讲机")等。数字视频装置可在创建、修改、传输、存储、记录和播放全运动视频序列中提供优于常规模拟视频系统的显著改进。已经针对编码数字视频序列建立了许多不同视频编码标准。举例来说,运动图片专家组(MPEG)已经开发了许多标准,其中包括MPEG-1、MPEG-2和MPEG-4。其它标准包括国际电信联盟(ITU)H.263标准、由加利福尼亚州库珀蒂诺市苹果计算机开发的QuickTimeTM技术、由华盛顿州雷蒙德市微软公司开发的WindowsTM视频、由因特尔公司开发的Indeo、来自华盛顿州西雅图市里尔网络公司的RealVideoTM和由超级麦客公司开发的CinepakTM。此外,新标准不断产生并进化,其中包括ITUH.264标准和许多专有标准。许多视频编码标准允许通过以压縮方式编码数据来改进视频序列的传输速率。压縮可降低需要传输的整体数据量以实现视频帧的有效传输。举例来说,大多数视频编码标准利用图形和视频压縮技术,其经设计以促进在与无压縮的情况下可实现的带宽相比较窄的带宽上进行的视频和图像传输。举例来说,MPEG标准以及ITUH.263和ITUH.264标准中的许多标准支持利用连续视频帧之间的相似性(称为时间或帧间相关)来提供帧间压縮的视频编码技术。此帧间压縮通常经由运动估计和运动补偿编码技术来实现。另外,一些视频编码技术利用帧内的相似性(称为空间或帧内相关)来压縮视频帧。帧内压縮通常经由空间估计和帧内预测编码技术来实现。在帧间和/或帧内压缩中使用离散视频块可在视频序列中在邻近视频块之间造成假象。明确地说,当视频帧被划分成多个视频块以进行视频编码时,一个已编码视频块的边缘可显得与另一已编码视频块的邻近边缘不连续。当发生这种情况时,已解码视频帧可显得"块效应",这是非常不良的。视频块的变换和量化可加剧己编码视频帧中的此不良成块效应。为了移除此"块效应",可对视频块的块边界执行滤波以"平滑"邻近视频块之间的过渡。去块滤波器大体上指的是用于平滑邻近视频块之间的过渡以降低或消除成块假象的滤波器。举例来说,ITU-TH.264标准需要去块滤波器作为环路内编码的一部分。在此情况下,当滤波是环路内视频编码的一部分时,用于运动估计和运动补偿的先前己编码帧是此类帧的经滤波版本。对于不批准去块滤波器作为编码环路的一部分的其它标准来说,后置去块滤波仍可通过在执行编码之后移除成块假象来改进视频编码的质量。
发明内容本发明描述解决可由于基于预测的视频编码而出现的始发的块效应和继承的块效应两者的去块滤波技术。始发的块效应指的是由不良纹理编码引入的块效应。始发的块效应发生在已编码视频帧的视频块边界处。另一方面,继承的块效应指的是可从预测视频帧继承的块效应,所述预测视频帧由基于预测的视频编码技术使用来编码当前视频块。继承的块效应可发生在已编码视频帧中的任何位置处,且不限于块边界。因此,在块边界周围应用的传统去块滤波可能不会移除继承的块效应。本发明提供选择性去块滤波,其特别可用于未针对标准顺应性指定环路内去块滤波的编码标准,例如MPEG-4和ITUH.263P0(ITUH.263标准的简档0)。在此情况下,可以解决始发的块效应和继承的块效应的方式应用后置滤波。明确地说,可相对于正被编码的给定视频块的块边界来选择性执行去块滤波,可使用用于编码所述给定视频块的预测视频帧的经滤波版本来执行运动补偿过程,或进行所述两者。本发明还提供可应用于确定在各种情形下应用什么类型的去块技术的选择规则。所述选择规则可确保不会由滤波引入编码器和解码器处的视频块之间的失配。在一个实施例中,本发明提供一种视频编码装置,其包含视频编码单元,其通过对视频序列的帧的视频块使用基于预测的编码技术来编码所述帧;以及去块滤波单元。举例来说,所述基于预测的编码技术可包括运动补偿过程,其使用预测帧的未滤波版本来提供基于运动的编码。所述去块滤波单元(a)如果给定视频块被纹理编码,那么对所述给定视频块的块边界进行去块滤波;(b)如果给定视频块未经纹理编码,给定视频块的相邻视频块未经纹理编码,且给定视频块和相邻视频块具有大致相似的运动向量,那么通过使用用于编码给定视频块的预测视频帧的经滤波版本来执行运动补偿过程;且(c)如果既没有满足(a)也没有满足(b),那么对给定视频块的块边界进行去块滤波且使用预测视频帧的滤波版本来执行运动补偿过程。在另一实施例中,本发明提供一种方法,其包含(a)通过对视频序列的帧的视频块使用基于预测的编码技术来编码所述帧;(b)如果给定视频块被纹理编码,那么对所述给定视频块的块边界进行去块滤波;(c)如果给定视频块未经纹理编码,给定视频块的相邻视频块未经纹理编码,且给定视频块和相邻视频块具有大致相似的运动向量,那么通过使用用于编码给定视频块的预测视频帧的经滤波版本来执行运动补偿过程;以及(d)如果既没有满足(b)也没有满足(c),那么对给定视频块的块边界进行去块滤波且使用预测视频帧的滤波版本来执行运动补偿过程。在另一实施例中,本发明提供一种用于视频编码的去块滤波单元。在此情况下,所述去块滤波单元(a)如果给定视频块被纹理编码,那么对所述给定视频块的块边界进行去块滤波;(b)如果给定视频块未经纹理编码,给定视频块的相邻视频块未经纹理编码,且给定视频块和相邻视频块具有大致相似的运动向量,那么通过使用用于编码给定视频块的预测视频帧的经滤波版本来执行运动补偿过程;且(c)如果既没有满足(a)也没有满足(b),那么对给定视频块的块边界进行去块滤波且使用预测视频帧的滤波版本来执行运动补偿过程。在另一实施例中,本发明提供一种计算机可读媒体,其包含在视频编码过程期间执行时进行以下操作的指令(a)如果给定视频块被纹理编码,那么对所述给定视频块的块边界进行去块滤波;(b)如果给定视频块未经纹理编码,给定视频块的相邻视频块未经纹理编码,且给定视频块和相邻视频块具有大致相似的运动向量,那么通过使用用于编码给定视频块的预测视频帧的经滤波版本来执行运动补偿过程;且(c)如果既没有满足(a)也没有满足(b),那么对给定视频块的块边界进行去块滤波且使用预测视频帧的滤波版本来执行运动补偿过程。在另一实施例中,本发明提供一种视频编码装置,其包含用于通过对视频序列的帧的视频块使用基于预测的编码技术来编码所述帧的装置;用于如果给定视频块被纹理编码,那么对所述给定视频块的块边界进行去块滤波的装置;用于如果给定视频块未经纹理编码,给定视频块的相邻视频块未经纹理编码,且给定视频块和相邻视频块具有大致相似的运动向量,那么通过使用用于编码给定视频块的预测视频帧的经滤波版本来执行运动补偿过程的装置;以及用于如果视频块未经纹理编码且满足以下条件中的一者或一者以上,那么对给定视频块的块边界进行去块滤波且使用预测视频帧的滤波版本来执行运动补偿过程的装置给定视频块的相邻视频块被纹理编码,以及给定视频块和相邻视频块具有大致不同的运动向量。在另一实施例中,本发明提供一种视频编码装置,其包含通过对视频序列的帧的视频块使用基于预测的编码技术来编码所述帧的视频编码单元。在此情况下,所述视频编码单元执行去块滤波,其中包括(a)如果给定视频块被纹理编码,那么对所述给定视频块的块边界进行去块滤波;(b)如果给定视频块未经纹理编码,给定视频块的相邻视频块未经纹理编码,且给定视频块和相邻视频块具有大致相似的运动向量,那么通过使用用于编码给定视频块的预测视频帧的经滤波版本来执行运动补偿过程;以及(C)如果既没有满足(a)也没有满足(b),那么对给定视频块的块边界进行去块滤波且使用预测视频帧的滤波版本来执行运动补偿过程。在额外实施例中,本发明预期相对于帧内预测编码而非基于运动的编码来实施本文的技术。在此情况下,一种方法可包含(a)如果给定视频块被纹理编码,那么对所述给定视频块的块边界进行去块滤波;(b)如果给定视频块未经纹理编码,给定视频块的相邻视频块未经纹理编码,且给定视频块和相邻视频块具有大致相似的运动向量,那么通过使用用于编码给定视频块的参考帧的经滤波版本来执行帧内预测过程;以及(c)如果既没有满足(a)也没有满足(b),那么对给定视频块的块边界进行去块滤波且使用预测视频帧的滤波版本来执行空间估计过程。还预期实施此额外技术的装置和/或去块滤波器。本文描述的这些和其它技术及实施例可在数字视频装置中以硬件、软件、固件或其任何组合来实施。如果以软件实施,那么所述软件可在数字信号处理器(DSP)中执行。在所述情况下,执行所述技术的软件可最初存储在计算机可读媒体中且加载到DSP中并加以执行以在数字视频装置中实现有效的去块滤波。还预期使用硬件、一个或一个以上处理器或硬件、软件、固件与处理器的组合的实施方案。在附图和以下描述中陈述各种实施例的额外细节。将容易从描述内容和附图以及权利要求书了解其它特征、目的和优点。图1是根据本发明实施例的视频编码装置的示范性方框图。图2是说明根据本发明一个实施例的视频解码器单元和去块单元的示范性结构的流程图。图3是说明根据本发明一个实施例的包括集成去块功能性的视频解码器单元的示范性结构的流程图。图4是说明包括梗用ITUH.264去块滤波器的去块功能性的视频解码器单元的示范性结构的流程图。图5是说明符合本发明的去块技术的流程图。具体实施方式本发明描述选择性去块滤波技术,其特别可用于未针对标准顺应性指定环路内去块滤波的编码标准,例如MPEG-4和ITUH.263P0。根据本发明,可相对于正被编码的给定视频块的块边界来选择性执行去块滤波,可使用用于编码所述给定视频块的预测视频帧的经滤波版本来执行运动补偿过程,或进行所述两者。本发明还提供可应用于确定在各种情形下应用什么类型的去块技术的选择规则。所述选择规则可改进视频编码,且还可确保不会由滤波引入编码器和解码器处的视频块之间的失配。所描述的技术可解决可由于基于预测的视频编码而出现的始发的块效应和继承的块效应两者。始发的块效应指的是由不良纹理编码引入的块效应。始发的块效应发生在已编码视频帧的视频块边界处。另一方面,继承的块效应指的是可从基于预测的视频编码所使用的预测视频帧继承的块效应。预测视频帧指的是用以执行编码的参考帧,且对于基于运动的编码来说,通常是正被编码的视频序列的当前帧的前一(或后一)帧。在任何情况下,继承的块效应可发生在已编码视频帧中的任何位置处,且不限于块边界。图1是根据本发明的视频编码装置10的方框图。编码装置10可包含可用于编码或解码视频序列的各种各样装置中的任一者。编码装置10的实例大体上包括任何计算机(例如服务器、工作站或任何其它台式计算机装置)或移动计算机装置(例如膝上型计算机或个人数字助理(PDA))。其它实例包括数字电视广播卫星和接收装置,例如数字电视、数码相机、数字视频相机或其它数字记录装置。另外实例包括数字视频电话(例如具有视频能力的移动电话)、具有视频能力的直接双向通信装置、其它无线视频装置等。在所述技术可降低滤波复杂性的范围内,所述技术可特别有用于尺寸和电池消耗更为重要的小型手持式装置。编码装置IO包括存储器12,其可包含任何易失性或非易失性存储元件。存储器12大体上例如在编码和解码过程期间存储视频序列。在一些情况下,存储器12可包括芯片上存储器和芯片外存储器两者。举例来说,存储器12可包括存储视频序列的相对较大的芯片外存储器空间和在编码过程使用的较小且较快的本机芯片上存储器。在所述情况下,芯片外存储器可包含动态随机存取存储器(DRAM)或快闪存储器,且本机芯片上存储器可包含同步随机存取存储器(SRAM)。然而,出于简单起见,说明单个存储器12来表示可用于促进视频编码的任何数目的存储器元件。在图1所示的实例中,编码装置IO包括视频编码单元14和去块(DB)滤波单元18。虽然独立说明这些组件,但在一些情况下,去块滤波功能性可集成到视频编码单元中。一般来说,编码单元14执行基于预测的编码技术,例如经由运动估计和运动补偿技术的帧间编码或经由空间估计和帧内预测技术的帧内编码。编码单元14可称为"编解码器",但通常称为编码器、解码器或集成编码器/解码器。本文所揭示的技术最适用于解码,但也可在编码期间特别是在使用解码技术作为编码步骤的一部分的情况下应用。编码装置14可在硬件、软件、固件、一个或一个以上数字信号处理器(DSP)、微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散硬件组件或其各种组合中实施。去块单元18根据本发明的技术执行选择性去块滤波。明确地说,去块单元18相对于正被编码的给定视频块的块边界选择性执行去块滤波,使用用于编码所述给定视频块的预测视频帧的经滤波版本来执行额外运动补偿过程,或进行所述两者。去块单元18所应用的选择准则以解决始发的块效应和继承的块效应的方式确定去块滤波的水平和程度。所述技术可允许对块边界进行去块滤波,但可在此滤波可能会在用于编码的块与用于解码的块之间引入失配的情况下避免在运动补偿过程中进行此滤波。换句话说,对于经纹理编码的块来说,使用预测块的经滤波版本的运动补偿可引入失配。因此,对于经纹理编码的块来说,运动补偿可使用预测块的未滤波版本。还描述了各种结构,其可简化本发明技术的实施。在大多数情况下,编码装置10可包括许多其它组件,其出于简单起见未在图1中说明。举例来说,这些额外组件可包括用以发送和接收视频序列的发射器和接收器、用以俘获视频序列的视频俘获装置(例如数码相机)或在编码视频的装置中常用的任何其它组件。大多数广泛使用的视频编码技术(例如ITUH.264/AVC、ITUH.263、ITUH.261、MPEG-1、MPEG-2、MPEG-4、Windows媒体视频9.0(WMV9)和RealVideo9.0(RV9))利用基于块的变换和标量量化作为纹理编码的基础。虽然基于块的纹理编码是用于压縮视频的相对简单和有效的方案,但纹理编码的一个缺点是显现成块假象。成块假象(还称为块效应)在使用粗略量化来编码视频内容时特别显著,而使用粗略量化对于以低位速率进行的视频传输是典型的。如上所述,可将块效应分类成两种类型始发的块效应和继承的块效应。始发的块效应通常是由不良纹理编码引入的块效应。当用较高量化参数编码视频块时始发的块效应较为严重。此始发的块效应发生在块边界周围的像素处,且具有与块大小相同的长度(例如,对于MPEG-4来说为8个像素)。由于在块边界周围可看见始发的块效应,因此在那些区域上应用的低通滤波器通常足以解决所述问题。另一方面,继承的块效应是从用于帧间预测(或帧内预测)视频块的参考帧继承而来的成块假象。换句话说,继承的块效应是最初位于由基于预测的编码在参考帧内识别的参考视频块中的块效应。由于此参考视频块用于构建已编码块,且通常由运动向量识别,因而参考视频块的块效应可由使用参考编码的当前视频块继承。继承的块效应假象可在任何位置处可见,且不限于块边界。另外,继承的块效应可具有任何长度(例如,对于MPEG-4来说不仅仅是8个像素)。在块边界周围应用的传统去块滤波器将通常不会移除此继承的块效应。继承的块效应在支持环路内去块滤波的视频编码系统中并不成问题。在此情况下,使用经滤波帧作为用于基于预测的编码的参考帧。因此,在此类系统中,继承的块效应通常被移除或至少在很大程度上被移除,因为参考帧已经受去块滤波。在运动补偿之后,纹理编码可甚至进一步减少预测(运动补偿)块与原始块之间的差异,这可有助于进一步减少继承的块效应。然而,在没有纹理编码的情况下,来自参考帧的块效应将直接传递到已编码帧的块上。对于支持环路内去块滤波器的ITUH.264和ITUH.263P3(ITUH.263标准的简档3)来说,继承的块效应可能并不是重要问题,因为通过环路内去块滤波将参考帧中的块效应大体上降低到可接受水平。另一方面,当没有利用环路内去块滤波(例如,在MPEG-4和ITUH.263P0中)时,继承的块效应是较为严重的问题。在此情况下,由于用于解码当前帧的参考帧是在应用去块滤波之前的参考帧,因而如果在当前帧中没有充分纹理编码(例如,当量化参数较高时),那么参考帧中的块效应将传递到当前帧上。本发明的一个焦点是描述可为MPEG4和ITUH.263P0解决继承的块效应问题的后置去块滤波器解决方案。继承的块效应的严重性可取决于块类型(已编码块图案和运动向量)和所使用的去块滤波器类型(环路内或环路后)。表1中展示四种不同块类型和两种不同滤波器类型(环路滤波器和后置滤波器)的继承的块效应。表1<table>tableseeoriginaldocumentpage15</column></row><table>在表l中,"cbp"代表已编码块图案,且"mv"代表运动向量。当cbp二0时,不存在纹理编码,且反之亦然。符号"="表示参考帧中的块效应完全传递到当前块上。符号"<"表示从参考帧继承的块效应由于环路内行为的缘故而得以减少。符号"-"表示从参考帧继承的块效应由于纹理编码的缘故而进一步得以减少。明显地,当cbp-O且使用环路后滤波器时,继承的块效应最为严重。本发明提议一种称为基于选择性运动补偿的去块(SMCDB)的解决方案以便移除继承的块效应,尤其对于cbp=0的那些块来说。当cbp邦(cbp不等于0)时,其指示对视频块使用纹理编码时,可避免基于经滤波参考帧的运动补偿,使得不会在编码器和解码器处的视频块之间引入失配。由于环路内去块滤波减少继承的块效应,因而一种用以移除成块假象的解决方案是在解码器处用经滤波参考帧替代未滤波参考帧。然而,这可在编码器与解码器之间引入失配问题,因为编码器使用未滤波帧作为参考帧,而解码器使用经滤波帧作为参考帧。所述失配问题还可能由于下一"帧内"帧到达之前的误差传播的缘故而变得更为严重。另一途径是在所有像素位置上应用去块滤波器来代替仅在块边界上应用去块滤波。由于从参考帧继承的块效应可显现在任何地方,因而向所有位置应用去块滤波可在很多情况下移除继承的块效应。然而,这种技术从实施观点来看过度复杂,且通常由于过度滤波的缘故而造成模糊图像。又一解决方案是基于历史跟踪。继承的块效应通常起源于I帧(帧内编码帧),且通过时间预测从一个帧传递到下一个帧。通过跟踪每一块(因此,块效应)的移动且在存在继承的块效应的位置处应用去块滤波器,可解决继承的块效应问题。举例来说,这种技术使用运动向量跟踪块效应的移动,记录过去所使用的去块滤波器的类型,且接着在已知具有继承的块效应的位置处应用与参考帧中使用的去块滤波器的类型相同的去块滤波器。举例来说,假设x表示参考帧中的块效应,且MC(x)是从参考帧继承的块效应。历史跟踪技术首先确定MC(x)的位置,且接着对MC(x)应用与前一帧相同的去块。可将所述过程描述为x—>MC(x)—>DB(MC(x))。请注意,在这种技术仅处理cbq-O情况的范围内,此处不考虑纹理编码。然而,跟踪所有块的所有移动行为可能变得非常复杂。较为简单的替代方案是将所述过程中的运动补偿(MC)和去块(DB)的次序从x—〉MC(x)—〉DB(MC(x))交换到x—>DB(x)_>MC(DB(x))。新次序意味着对于cbq=0的块使用经滤波帧作为参考帧来执行运动补偿。而且,这仅应用于没有纹理编码的块。对于具有纹理编码的块(cbp#0),这种技术可能在编码器与解码器之间引入失配问题。因而,当cbp^O时,可能特别避免使用这种技术。在对cbq=0的当前块执行MC(DB(x))之后,如果当前块的相邻块不是运动补偿块,或如果相邻块具有不同运动向量,那么可在当前块与其相邻块之间应用另一轮去块以防止在运动补偿块与其相邻块之间产生可能的块效应。这种算法(本文称为基于选择性运动补偿的去块(SMCDB))对块应用(1)DB、(2)MC或(3)先MC再DB。基于cbp和相邻块的特性来作出选择,如下文更详细描述。在本发明所使用的符号中,应注意DB指的是对正被编码的当前视频块的块边界进行的去块滤波。MC指的是额外运动补偿过程,其应用用于编码当前视频块的预测视频帧的经滤波版本。预测视频帧的此经滤波版本可在编码时进行存储,特别以供用于此额外运动补偿过程。然而,在环路后去块滤波之前用于编码的最初运动补偿过程可使用预测帧的未滤波版本。一般来说,本发明的技术可遵循三个基本步骤(1)如果对于当前视频块来说cbp=l(所述块具有纹理编码),那么对当前视频块使用去块滤波。(2)如果对于当前视频块来说cbp-O,对于当前视频块的相邻者来说cbp二O,且相邻者的运动向量与当前块的运动向量相同,那么使用MC2(下文解释)。(3)否则,使用MC2和DB两者。为了区分常规解码器和环路后去块器所使用的运动补偿(MC),本发明中使用两种不同符号MC1和MC2。MC1是解码器的MC,其中所使用的参考帧是在去块滤波器之前的解码帧,即未滤波帧。MC2是去块滤波单元的MC,其中所使用的参考帧是应用去块滤波器之后的参考帧,即经滤波帧。在编码参考帧时,可存储或高速缓存其经滤波版本以供稍后可能用于MC2过程。图2是说明可用于实施SMCDB的一种结构的图。图2的结构尤其可用于具有可分配到去块过程的有限功率和有限处理循环的装置。对于具有足够功率和处理额外开销的芯片或装置来说,将去块滤波技术集成到解码器中可能更为有用,例如图3的实例中展示。如图2所示,装置20包括解码器22和去块单元24。解码器22包括执行第一运动补偿过程的运动补偿器(MC1)21,且还包括执行纹理编码的纹理引擎(TE)23。举例来说,TE23可执行离散余弦变换(DCT)过程或用于视频编码的另一纹理编码过程。为了支持改进的去块滤波,使用去块单元24。去块单元24可根据本发明执行环路后去块滤波。如图2所示,去块单元24确定是否cbq-0(如25所示)。如果是的话(25的是分支),那么去块单元22实施运动补偿器(MC2)26以执行第二运动补偿过程。重要的是,MC226所执行的运动补偿过程应用参考帧的经滤波版本,其可能已经存储在存储器中。然而,如果参考帧具有经滤波块边界,那么可在已解码帧中引入继承的块效应。如果去块单元24确定cbq=0(25的是分支),那么随后是MC226,另外确定(27所示)正在编码的当前视频块的相邻者是否具有cbq-O和等于(或大致类似于)当前视频块的运动向量的运动向量。如果满足这两个准则,那么对于当前视频块的块边界避免去块滤波28。如果cbp^0(25的否分支)或如果不满足确定27的任一准则,那么去块单元24实施去块滤波28以对当前视频块的块边界进行去块滤波。图2中所说明的这些确定和滤波还可相对于多个块边界和正被编码的当前视频块的多个相邻者来进行。一般来说,图2说明其中与解码单元一起使用单独去块滤波器的一种结构。所述去块滤波器可执行以下步骤-(1)如果当前视频块被纹理编码,那么相对于当前视频块的边界应用去块滤波。(2)如果当前视频块未经纹理编码,当前视频块的相邻者未经纹理编码,且与相邻者相关联的运动向量和与当前块相关联的运动向量相同或大致相似,那么使用基于预测的编码中所使用的预测帧的经滤波版本来实施运动补偿过程。(3)否则,使用利用预测帧的经滤波版本的运动补偿过程和相对于当前视频块的边界进行的去块滤波两者。图3是说明可用于实施SMCDB的结构的另一图。图3的结构也执行前述段落中描述的所述三个步骤。然而,不同于图2的装置20,图3的装置30将解码功能性与本文描述的去块滤波集成在一起。如图3所示,装置30的集成解码器包括执行第一运动补偿过程的运动补偿器(MC1)31和执行纹理编码的纹理引擎(TE)33。决策(32)基于是否cbp=0来确定是否将执行纹理编码。如果不是的话(32的否分支),那么TE33执行纹理编码,且如果与当前视频块相关联的量化参数(QP)大于阈值(36的是分支),那么去块滤波器37相对于当前视频块的块边界执行去块滤波。应注意,可向本文所述的任何实施例添加QP阈值确定(36所示)。如果cbp-O(32的是分支),那么实施运动补偿器(MC2)34。如同本文的其它实例,MC234使用基于预测的编码中所使用的预测视频帧的经滤波版本来执行其运动补偿过程。而且,预测视频帧的经滤波版本可能已经在先前受到去块滤波(例如,在预测视频帧的先前编码中)之后被存储。装置30确定(35所示)与正被编码的当前视频块相邻的视频块是否具有cbp-O和等于(或大致类似于)当前视频块的运动向量的运动向量。如果没有满足这两个准则中的任一者,那么如果与当前视频块相关联的QP大于阈值(36的是分支),则装置30实施去块滤波器37。然而,如果满足这些准则中的任一者,那么避免对当前视频块的块边界进行去块滤波,因为这可能另外地引入对视频内容的过度平滑。应注意,尽管图2和3的图相对于基于运动的编码来应用,但也可相对于帧内编码帧来使用类似技术。在此情况下,可用帧内预测过程来代替运动补偿过程,如在基于帧内的预测编码中所使用。预测帧(用于帧内编码)是包括正被编码的当前帧的同一帧。本文所述的技术还可结合编码装置的一个或一个以上现有去块滤波器来实施。因此,如果给定编码装置已经实施去块滤波器,那么可使得本发明的技术与现有去块滤波器"向后兼容"。更一般地说,SMCDB可与任何去块滤波器一起工作。举例来说,如果H.264去块滤波器在硬件中实施,那么可使用与H.264去块滤波器组合的SMCDB。可稍微修改最初设计为用于H.264编解码器的环路内滤波器的H.264去块滤波器,并将其用作用于MPEG4和ITUH.263PO的后置滤波器。根据本发明,图4说明与H.264去块组合的SMCDB的结构,其中用H.264去块滤波器的边界强度确定来替代关于是否在MC2之后执行去块的决策(如图2和3中)。如图4所示,编码装置40包括使用预测视频帧的未滤波版本执行第一运动补偿过程的运动补偿器(MC1)41和执行纹理编码的纹理引擎(TE)43。决策(42)基于是否cbp-O来确定是否将执行纹理编码。如果cbp=0(42的是分支),那么运动补偿器(MC2)44执行使用预测视频帧的经滤波版本的运动补偿器过程。如果cbp^0(42的否分支),那么纹理引擎43执行纹理编码,且去块滤波器单元45用于确定是否应对当前视频块的块边界进行去块滤波并确定其程度。在图4的实例中,去块滤波单元45进行边界强度确定(46)和滤波决策(47)。在一些情况下,可使用现有ITUH.264去块滤波器作为后置滤波器来实施这些确定。在此情况下,去块滤波单元45可存取环路内去块滤波器,但使用所述滤波器作为后置去块滤波器。去块滤波单元48可包括査找表以执行有效使用ITUH.264滤波器但遵守例如MPEG-4的另一标准所需的任何输入参数调整。然而,本发明的技术不限于与任何特定标准一起使用,且可广泛地与许多标准和现有或新近实施的滤波单元一起应用。一般来说,在图4中,基于边界强度确定(46)和滤波决策(47)的结果来执行去块滤波(48所示),但可根据若干可能编码标准中的一者来界定所述确定和决策。如果需要的话,还可在实施去块滤波单元45之前调用阈值QP确定。在此情况下,只有(除了上文列举的偶然情况之外)与当前视频块相关联的量化参数也大于阈值,才会调用去块滤波单元45。换句话说,如果QP足够低以确保对帧的视频块进行高度准确的编码,那么可避免去块滤波。除了上文所述的技术之外,还可在各种情形下应用许多额外技术,以便进一步降低实施方案的复杂性。在一个实例中,可依据用于给定视频块的QP和当前视频块到最后I帧的距离来停用/启用去块滤波。实验已展示当用相同QP编码时,I帧往往会比P帧(预测帧)更具块效应,且较靠近最后I帧的P帧往往会比较远离最后I帧的P帧更具块效应。也就是说,块效应往往会随着到最后I帧的距离增加而减少。此外,正如预期的,对于到最后I帧具有固定距离的帧来说,块效应随着帧QP增加而变得更为严重。这些观测适用于视频块级别以及帧级别。基于这些观测,可基于QP和到最后I帧的距离来进行视频块级别去块滤波决策,以便降低实施方案的复杂性。举例来说,可在QP小于阈值"th"时对视频块停用去块滤波,其中"th"是d的函数,且d是当前视频块到最后I帧的距离。此去块决策充当用以绕过不必要的去块滤波的门,且可借此降低实施方案复杂性。所述决策还可经设计为以特别方式实施或可通过复杂性-质量价值函数来更有效地实施。可通过仅相对于亮度块而不相对于色度块执行去块滤波(和其决策)来实现另一复杂性降低。换句话说,可对"色度"块停用去块滤波。由于成块假象在亮度中比在色度中更为明显,因而避免色度去块滤波可能不会过度降低质量。实验已经展示当停用色度DB时存在很少或没有可见质量损失。可通过在MC2之后停用去块滤波来实现又一复杂性降低(如本文描述)。在图2和3的结构中,针对cbp-O且特性不同于其相邻者的块,在MC2之后应用去块滤波。在MC2之后关闭此滤波可甚至进一步降低系统复杂性,但可能降低去块的质量。对于利用现有ITUH.264去块滤波器的实施方案,还可通过停用强滤波(与为4的.边界强度(BS)相关联)来降低复杂性。针对ITUH.264界定的BS:4滤波器比与其它BS值相关联的滤波器复杂得多。当用由ITUH.264界定的BS-3滤波器替代由ITUH.264界定的BS-4强滤波器时,可在很大程度上降低复杂性,所述BS-3滤波器产生非常小的质量降级。在再一实施方案中,在不需要时可停用MC2。由于在SMCDB方案中使用MC2的原因是移除继承的块效应,因而当继承的块效应不再是问题时应停用MC2。未编码块的数目、帧内视频块的数目和帧中的平均QP均为决定继承的块效应的严重性时的影响因素。举例来说,如果未编码块的数目小于阈值且平均QP小于阈值,那么可停用MC2。在此情况下,如果MC2当前被停用,但帧内视频块的数目大于阈值,那么可重新启用MC2。为了检验本文所提议的技术的质量,在实验中使用以下两个测试视频剪辑"皮肤"和"城市"。成块假象值(BAV)用于测量块效应严重性。在模拟中,以48千位每秒(kbps)和15帧每秒(fps)的速率用MPEG-4编码每一视频剪辑。在去块性能(块效应降低)方面,所有SMCDB配置均胜过H.264去块滤波。在复杂性(处理循环使用)方面,甚至最复杂的SMCDB配置(没有使用简化)也比ITUH.264去块滤波技术消耗更少的处理循环。图5是说明符合本发明的去块技术的流程图。将在图1的装置10的上下文中描述图5,但所述技术可由将DB滤波单元(如图1的单元18)直接集成到视频编码单元中的装置实施,在此情况下去块滤波技术将由编码单元执行。如图5所示,编码单元14使用基于预测的编码技术来编码存储器12中的视频帧(51)。基于预测的编码技术指的是其中将视频帧的块与用于编码的其它块进行比较的任何编码技术。基于预测的编码技术的实例包括基于运动估计和运动补偿的帧间压縮或基于空间估计和帧内预测的帧内相关。基于预测的编码(51)可例如在运动补偿中使用预测视频帧的未滤波版本。DB滤波单元18确定是否已对给定视频块使用了纹理编码(52)。如果是的话(52的是分支),那么DB滤波单元18对给定视频块的块边界进行滤波(53)。如果不是的话(52的否分支),那么DB滤波单元18基于经滤波参考帧(即,经滤波预测帧)来执行新的运动补偿过程(54)。在使用经滤波参考帧的运动补偿过程(54)随后,DS滤波单元18确定是否己对给定视频块的相邻者使用了纹理编码(55)且是否给定视频块和相邻视频块具有相似运动向量(56)。如果没有对给定视频块使用纹理编码(52的否分支),但对给定视频块的相邻者使用了纹理编码(55的是分支),那么DB滤波单元18对给定视频块的块边界进行去块滤波(53)。而且,如果没有对给定视频块使用纹理编码(52的否分支)且没有对给定视频块的相邻者使用纹理编码(55的否分支),并且给定视频块和相邻视频块不具有相似运动向量(56的否分支),那么DB滤波单元18对给定视频块的块边界进行去块滤波(53)。然而,如果没有对给定视频块使用纹理编码(52的否分支)且没有对给定视频块的相邻者使用纹理编码(55的否分支),但给定视频块和相邻视频块具有相似运动向量,那么DB滤波单元18避免对给定视频块的块边界进行任何去块滤波(57)。出于简单起见相对于对给定视频块的一个块边界进行滤波来说明图5所说明的技术。当然,本发明进一步预期相对于给定视频块的若干块边界来应用滤波技术。因此,本发明的技术可包括(d)如果给定视频块被纹理编码,那么对给定视频块的多个块边界进行去块滤波;(e)如果给定视频块未经纹理编码,给定视频块的多个相邻视频块未经纹理编码,且给定视频块和相邻视频块具有大致相似的运动向量,那么通过使用用于编码给定视频块的预测视频帧的经滤波版本来执行运动补偿过程;以及(f)如果既没有满足(d)也没有满足(e),那么对给定视频块的所述多个块边界进行去块滤波且使用预测视频帧的滤波版本来执行运动补偿过程。已经描述了许多实施例。然而,可对本文描述的技术作出各种修改。举例来说,虽然已经在基于帧间预测的编码的上下文中描述了所述技术,但也可在基于帧内预测的编码的上下文中应用类似技术。换句话说,预测视频帧可以是视频序列中正被编码的当前帧的前一或后一帧,或(在帧内编码的情况下)可以是包括正被编码的当前视频块的同一帧。本发明预期本文描述的技术的这些和其它变型。本文描述的技术可在硬件、软件、固件或其任何组合中实施。如果在软件中实施,那么所述技术可针对于包含程序代码的计算机可读媒体,所述程序代码在编码视频序列的装置中执行时执行本文所述的去块滤波技术中的一者或一者以上。在此情况下,计算机可读媒体可包含随机存取存储器(RAM)(例如同步动态随机存取存储器(SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器等。程序代码可以计算机可读指令的形式存储在存储器上。在此情况下,例如DSP的处理器可执行存储在存储器中的指令,以便进行所述去块滤波技术中的一者或一者以上。在一些情况下,所述技术可由调用各种硬件组件以加速编码过程的DSP执行。在其它情况下,本文描述的单元可实施为微处理器、一个或一个以上专用集成电路(ASIC)、一个或一个以上现场可编程门阵列(FPGA)或某种其它硬件-软件组合。本文描述的去块滤波器单元可包含硬件滤波器,或可能包含以软件或固件实施的滤波器。这些和其它实施例属于所附权利要求书的范围内。权利要求1.一种视频编码装置,其包含视频编码单元,其通过对视频序列的帧的视频块使用基于预测的编码技术来编码所述帧;以及去块滤波单元,其(a)如果给定视频块经纹理编码,那么对所述给定视频块的块边界进行去块滤波;(b)如果所述给定视频块未经纹理编码,所述给定视频块的相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量,那么使用用于编码所述给定视频块的预测视频帧的经滤波版本来执行运动补偿过程;以及(c)如果既没有满足(a)也没有满足(b),那么对所述给定视频块的所述块边界进行去块滤波且使用所述预测视频帧的所述滤波版本来执行所述运动补偿过程。2.根据权利要求l所述的视频编码装置,其中所述去块滤波单元(d)如果所述给定视频块经纹理编码,那么对所述给定视频块的多个块边界进行去块滤波;(e)如果所述给定视频块未经纹理编码,所述给定视频块的多个相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量,那么使用用于编码所述给定视频块的所述预测视频帧的所述经滤波版本来执行所述运动补偿过程;以及(f)如果既没有满足(d)也没有满足(e),那么对所述给定视频块的所述多个块边界进行去块滤波且使用所述预测视频帧的所述滤波版本来执行所述运动补偿过程。3.根据权利要求1所述的视频编码装置,其中所述基于预测的编码技术包含运动估计和运动补偿。4.根据权利要求l所述的视频编码装置,其中所述视频编码装置遵守未针对标准顺应性指定环路内去块滤波的编码标准。5.根据权利要求4所述的视频编码装置,其中所述编码标准包含运动图片专家组4(MPEG-4)标准和国际电信联盟(ITU)H.263P0标准中的一者。6.根据权利要求l所述的视频编码装置,其中所述视频编码装置包含数字电视、无线通信装置、个人数字助理、膝上型计算机、台式计算机、数码相机、数字记录装置、具有视频能力的蜂窝式无线电电话、具有视频能力的卫星无线电电话和具有视频能力的直接双向通信装置中的至少一者。7.根据权利要求l所述的视频编码装置,其中所述去块滤波单元至少部分基于与所述视频序列的所述帧中的一者相关联的量化参数小于阈值来相对于所述帧中的所述一者停用去块滤波。8.根据权利要求l所述的视频编码装置,其中所述去块滤波单元相对于亮度视频块执行(a)、(b)和(c),且相对于色度视频块停用去块滤波。9.根据权利要求1所述的视频编码装置,其中步骤(b)排除对所述给定视频块的所述块边界进行任何去块滤波。10.根据权利要求l所述的视频编码装置,其中所述基于预测的编码技术包括使用所述预测视频帧的未滤波版本的运动补偿过程。11.一种方法,其包含(a)通过对视频序列的帧的视频块使用基于预测的编码技术来编码所述帧;(b)如果给定视频块经纹理编码,那么对所述给定视频块的块边界进行去块滤波;(c)如果所述给定视频块未经纹理编码,所述给定视频块的相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量,那么使用用于编码所述给定视频块的预测视频帧的经滤波版本来执行运动补偿过程;以及(d)如果既没有满足(b)也没有满足(c),那么对所述给定视频块的所述块边界进行去块滤波且使用所述预测视频帧的所述滤波版本来执行所述运动补偿过程。12.根据权利要求ll所述的方法,其进一步包含(e)如果所述给定视频块经纹理编码,那么对所述给定视频块的多个块边界进行去块滤波;(f)如果所述给定视频块未经纹理编码,所述给定视频块的多个相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量,那么使用用于编码所述给定视频块的所述预测视频帧的所述经滤波版本来执行所述运动补偿过程;以及(g)如果既没有满足(e)也没有满足(f),那么对所述给定视频块的所述多个块所述预测视频帧的所述滤波版本来执行所述运动补偿过程。13.根据权利要求11所述的方法,其中所述基于预测的编码技术包含运动估计和运动补偿。14.根据权利要求11所述的方法,其中编码所述视频序列的帧包含根据未针对标准顺应性指定环路内去块滤波的编码标准来编码所述帧。15.根据权利要求14所述的方法,其中所述编码标准包含运动图片专家组4(MPEG-4)标准和国际电信联盟(ITU)H.263P0标准中的一者。16.根据权利要求11所述的方法,其进一步包含至少部分基于与所述视频序列的所述帧中的一者相关联的量化参数小于阈值来相对于所述帧中的所述一者停用去块滤波。17.根据权利要求ll所述的方法,其中执行去块滤波包含相对于亮度视频块执行(b)、(c)和(d),所述方法进一步包含相对于色度视频块停用去块滤波。18.根据权利要求11所述的方法,其中所述基于预测的编码技术包括使用所述预测视频帧的未滤波版本的运动补偿过程。19.一种用于视频编码的去块滤波单元,其中所述去块滤波单元(a)如果给定视频块经纹理编码,那么对所述给定视频块的块边界进行去块滤波;(b)如果所述给定视频块未经纹理编码,所述给定视频块的相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量,那么使用用于编码所述给定视频块的预测视频帧的经滤波版本来执行运动补偿过程;以及(c)如果既没有满足(a)也没有满足(b),那么对所述给定视频块的所述块边界进行去块滤波且使用所述预测视频帧的所述滤波版本来执行所述运动补偿过程。20.根据权利要求19所述的去块滤波单元,其中所述去块滤波单元(d)如果所述给定视频块经纹理编码,那么对所述给定视频块的多个块边界进行去块滤波;(e)如果所述给定视频块未经纹理编码,所述给定视频块的多个相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量,那么使用用于编码所述给定视频块的所述预测视频帧的所述经滤波版本来执行所述运动补偿过程;以及(f)如果既没有满足(d)也没有满足(e),那么对所述给定视频块的所述多个块边界进行去块滤波且使用所述预测视频帧的所述滤波版本来执行所述运动补偿过程。21.根据权利要求19所述的去块滤波单元,其中所述去块滤波单元包含在处理器中执行的软件指令。22.根据权利要求19所述的去块滤波单元,其中所述基于预测的编码技术包括使用所述预测视频帧的未滤波版本的运动补偿过程。23.—种计算机可读媒体,其包含在视频编码过程期间执行时进行以下操作的指令-(a)如果给定视频块经纹理编码,那么对所述给定视频块的块边界进行去块滤波;(b)如果所述给定视频块未经纹理编码,所述给定视频块的相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量,那么使用用于编码所述给定视频块的预测视频帧的经滤波版本来执行运动补偿过程;以及(c)如果既没有满足(a)也没有满足(b),那么对所述给定视频块的所述块边界进行去块滤波且使用所述预测视频帧的所述滤波版本来执行所述运动补偿过程。24.根据权利要求23所述的计算机可读媒体,其进一步包含在所述编码过程期间执行时进行以下操作的指令-(d)如果所述给定视频块经纹理编码,那么对所述给定视频块的多个块边界进行去块滤波;(e)如果所述给定视频块未经纹理编码,所述给定视频块的多个相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量,那么使用用于编码所述给定视频块的所述预测视频帧的所述经滤波版本来执行所述运动补偿过程;以及(f)如果既没有满足(d)也没有满足(e),那么对所述给定视频块的所述多个块边界进行去块滤波且使用所述预测视频帧的所述滤波版本来执行所述运动补偿过程。25.—种视频编码装置,其包含用于通过对视频序列的帧的视频块使用基于预测的编码技术来编码所述帧的装置;用于在给定视频块经纹理编码的情况下对所述给定视频块的块边界进行去块滤波的装置;用于在所述给定视频块未经纹理编码,所述给定视频块的相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量的情况下使用用于编码所述给定视频块的预测视频帧的经滤波版本来执行运动补偿过程的装置;以及用于在所述视频块未经纹理编码且满足以下条件中的一者或一者以上的情况下对所述给定视频块的所述块边界进行去块滤波且使用所述预测视频帧的所述滤波版本来执行所述运动补偿过程的装置所述给定视频块的所述相邻视频块经纹理编码,以及所述给定视频块和所述相邻视频块具有大致不同的运动向量。26.—种视频编码装置,其包含通过对视频序列的帧的视频块使用基于预测的编码技术来编码所述帧并执行去块滤波的视频编码单元,所述去块滤波包括(a)如果给定视频块经纹理编码,那么对所述给定视频块的块边界进行去块滤波;(b)如果所述给定视频块未经纹理编码,所述给定视频块的相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量,那么使用用于编码所述给定视频块的预测视频帧的经滤波版本来执行运动补偿过程;以及(c)如果既没有满足(a)也没有满足(b),那么对所述给定视频块的所述块边界进行去块滤波且使用所述预测视频帧的所述滤波版本来执行所述运动补偿过程。27.根据权利要求26所述的视频编码装置,其中由所述视频编码单元执行的所述去块滤波进一步包含(d)如果所述给定视频块经纹理编码,那么对所述给定视频块的多个块边界进行去块滤波;(e)如果所述给定视频块未经纹理编码,所述给定视频块的多个相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量,那么使用用于编码所述给定视频块的所述预测视频帧的所述经滤波版本来执行所述运动补偿过程;以及(f)如果既没有满足(d)也没有满足(e),那么对所述给定视频块的所述多个块边界进行去块滤波且使用所述预测视频帧的所述滤波版本来执行所述运动补偿过程。28.根据权利要求26所述的视频编码装置,其中所述基于预测的编码技术包括使用所述预测视频帧的未滤波版本的运动补偿过程。29.—种方法,其包含(a)如果给定视频块经纹理编码,那么对所述给定视频块的块边界进行去块滤波;(b)如果所述给定视频块未经纹理编码,所述给定视频块的相邻视频块未经纹理编码,且所述给定视频块和所述相邻视频块具有大致相似的运动向量,那么使用用于编码所述给定视频块的参考帧的经滤波版本来执行帧内预测过程;以及(c)如果既没有满足(a)也没有满足(b),那么对所述给定视频块的所述块边界进行去块滤波且使用所述预测视频帧的所述滤波版本来执行空间估计过程。全文摘要本发明描述选择性去块滤波技术,其特别可与未针对标准顺应性指定环路内去块滤波的编码标准一起使用。根据本发明,可相对于正被编码的给定视频块的块边界来选择性执行去块滤波,可使用用于编码所述给定视频块的预测视频帧的经滤波版本来执行运动补偿过程,或进行所述两者。本发明还提供可应用于确定在各种情形下应用什么类型的去块技术的选择规则。所述选择规则可改进视频编码且还可确保所述去块滤波不会在编码器和解码器处的视频块之间引入失配。文档编号H04N7/26GK101326831SQ200680046066公开日2008年12月17日申请日期2006年10月18日优先权日2005年10月18日发明者琰叶,沙拉特·曼朱纳特,滕佳缘申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1