检测编码视频数据流中的噪音的方法

文档序号:71542阅读:331来源:国知局
专利名称:检测编码视频数据流中的噪音的方法
技术领域
本发明涉及一种检测视频数据流中的噪音的方法,该视频数据流根据基于块的预测编码技术被宏块所编码,该宏块根据编码类型而被编码。
本发明涉及一种降低这种视频数据流中的噪音的方法。
本发明还涉及一种利用这种噪音检测和降低方法的代码转换方法。
最后,本发明涉及一种用于实现该噪音检测方法、噪音降低方法和代码转换方法的计算机程序产品。
本发明特别适合应用于例如MPEG类型的视频数据的代码转换中,以便所述视频数据以不同的速率进行转换时对它们进行高质量的记录。
背景技术
欧洲专利申请No1032217披露了一种用于对编码数字视频数据进行代码转换的方法和装置,其包括减噪器。这种代码转换方法图示于图1中。这种对编码的数字视频数据进行代码转换的方法连续地包括对能提供重构中间数据流的编码视频数据流进行解码的步骤100,所述解码步骤包括子步骤可变长度解码VLD 101、逆量化IQ 102和逆离散余弦变换IDCT 103及第一运动补偿104,105,106,对重构中间数据流进行处理的中间步骤110,特别的包括一噪音降低滤波器DF(111),用于产生改进的重构中间数据流,和对改进的重构中间数据流进行编码的步骤120,以能产生一改进的编码视频数据流,所述编码步骤包括子步骤离散余弦变换DCT 122、量化Q123、可变长度编码VLC 124及第二运动补偿121,125,126,127,128,129。
噪音降低步骤使用重构数据在空间域被执行。然而它对于包括部分解码步骤,也就是说不具有在欧洲专利N00690392中所述的逆离散余弦变换IDCT子步骤103的译码系统是不适用的,正因如此,译码系统对编码视频数据在空间域不进行再转换。另外,严格地说,该对编码数字视频数据进行代码转换的方法还不包括噪音检测步骤,基于此,噪音降低步骤能被更加有效的应用。

发明内容
本发明的目的是提供一种噪音检测方法,该方法能以一种简单有效的方式被实现,而不需要在空间域进行数据的解码和重构。
本发明的另一个目的是提供一种编码视频数据流中的噪音降低方法,该方法能在频域中被实现。
最后,本发明的目的是提供一种将第一编码视频数据流转换为第二编码视频数据流的方法,它用来改进第二编码视频数据流的质量。
根据本发明的一个方面,提供一种检测编码视频数据流(IS)中的噪音的方法,该编码视频数据流根据基于块的预测编码技术被宏块所编码,该宏块根据编码类型被编码,所述方法包括步骤读取编码视频数据流以便在当前图像中检测一个根据一种内部编码类型编码的当前内部宏块,也称作当前宏块,所述当前内部宏块在所述当前图像中具有给定位置;搜索包括在参考预测编码图像中的一组参考宏块的编码类型,所述一组参考宏块包括一个在所述参考预测编码图像中具有给定位置的中心参考宏块和与所述中心参考宏块相邻的多个宏块;以及如果所述一组参考宏块包含至少一个根据一个内部编码类型编码的宏块,则将检测的当前内部宏块作为噪音宏块。
其中所述检测步骤包括如下子步骤通过参考宏块组中的多个内部宏块来计算当前内部宏块的噪音等级。
本发明还提供了一种减少编码视频数据流中的噪音的方法,该编码视频数据流根据基于块的预测编码技术被宏块所编码,该宏块根据编码类型被编码,所述方法包括步骤检测编码视频数据流中的噪音,包括如下步骤读取编码视频数据流以便在当前图像中检测一个根据一种内部编码类型编码的当前内部宏块,也称作当前宏块,所述当前内部宏块在所述当前图像中具有给定位置;搜索包括在参考预测编码图像中的一组参考宏块的编码类型,所述一组参考宏块包括一个在所述参考预测编码图像中具有给定位置的中心参考宏块和与所述中心参考宏块相邻的多个宏块;以及如果所述一组参考宏块包含至少一个根据一个内部编码类型编码的宏块,则将检测的当前内部宏块作为噪音宏块;由此能够为所述当前内部宏块提供一个视频数据流中的噪音等级;和空间滤波,能够根据上述检测步骤提供的噪音等级而提供经过滤波的宏块。
本发明还提供了一种将第一编码视频数据流转换成第二编码视频数据流的转换方法,该第一编码视频数据流根据基于块的预测编码技术被宏块所编码,所述转换方法包括步骤对包含在第一编码视频数据流中的当前宏块进行解码,所述解码步骤包括一可变长度解码子步骤和一逆量化子步骤;解码步骤之后进行编码,以能够提供第二编码视频数据流,所述编码步骤包括量化子步骤;特征在于所述转换方法还包括步骤噪音检测,能够根据当前宏块和由可变长度解码子步骤产生的参考宏块组的编码类型为当前宏块提供一噪音等级;和在逆量化子步骤和量化子步骤之间进行空间滤波,该转换方法根据噪音检测步骤提供的噪音等级能够对当前宏块施加或不施加滤波步骤。
本发明还提供了一种将第一编码视频数据流转换为第二编码视频数据流的转换装置,该第一编码视频数据流根据基于块的预测编码技术被宏块所编码,所述转换装置包括对包含在第一编码视频数据流中的当前宏块进行解码的解码单元,所述解码单元包括可变长度解码电路和逆量化电路;解码单元之后的编码单元,能够提供第二编码视频数据流,所述编码单元包括量化电路,特征在于所述转换装置还包括噪音检测电路,能够根据当前宏块和由可变长度解码电路产生的参考宏块组的编码类型为当前宏块提供一噪音等级;和在逆量化电路和量化电路之间的空间滤波单元,所述空间滤波单元包括用来选择滤波单元中的一个滤波器的开关,以便将所述滤波单元的该滤波器应用到当前宏块,所述噪音检测电路根据噪音等级能够控制所述开关。
6.一种适于接收编码视频数据流的减噪器,所述编码视频数据流根据基于块的预测编码技术被宏块所编码,该宏块根据编码类型被编码,所述减噪器包括检测噪音装置,用于执行一种检测编码视频数据流中的噪音的方法,所述方法包括步骤读取编码视频数据流以便在当前图像中检测一个根据一种内部编码类型编码的当前内部宏块,也称作当前宏块,所述当前内部宏块在所述当前图像中具有给定位置;搜索包括在参考预测编码图像中的一组参考宏块的编码类型,所述一组参考宏块包括一个在所述参考预测编码图像中具有给定位置的中心参考宏块和与所述中心参考宏块相邻的多个宏块,以及如果所述一组参考宏块包含至少一个根据一个内部编码类型编码的宏块,则将检测的当前内部宏块作为噪音宏块,并且所述检测噪音装置用于为所述当前内部宏块提供一视频数据流的噪音等级,和一空间滤波器,用于根据噪音等级提供经过滤波的宏块。
仅利用任何一幅当前图像的宏块的编码类型,例如,内部编码类型及参考图像宏块的编码类型,这种方法就能检测噪音带,其中参考图像为双向预测编码B图像,或更可取的为预测编码P图像。从而使用来自于,例如由可变长度解码步骤VLD产生的,编码视频数据流的可直接存取的数据。因为该方法不需要对视频数据流进行复杂的统计分析,也不依赖于将来的数据,而且不需要逆变换,例如IDCT型的,或数据宏块的,因此该方法尤其的简单,因为它直接来自于图像和宏块的编码类型。
因此,与现有技术相反,为了执行对噪音数据的滤波,噪音降低方法不需要再次进入空间域,该滤波被直接应用于编码数据宏块的频域。
这样一种转换方法使得它能够检测噪音宏块,并对它们施加与由噪音检测步骤提供的值相适应的滤波。因此该方法能够产生改善转换图像的质量的合适的滤波。该噪音检测步骤的简单之处在于使用了低位存储资源和在未进行解码的数据流上进行操作的事实,这使得所述转换方法特别有效。



本发明将参照附图所示的实施例做进一步的说明,然而本发明不局限于此。
图1为按照现有技术的代码转换方法的示意图;图2为按照本发明描述噪音检测方法的主要步骤的示意图;图3为噪音检测方法的效果的例子;和图4为依据本发明的代码转换方法及与之相应的译码系统的示意图。
具体实施方式
本发明涉及一种检测视频数据流中的噪音的方法,该视频数据流被与基于块的编码技术相应的宏块所编码。所述编码技术根据编码类型,即当宏块没有参考先前图像的宏块而被编码时为内部编码类型,当宏块参考先前图像的宏块而被编码时为中间编码类型,并通过对宏块进行编码而产生一预测编码。基于块的编码技术为,例如,将图像分解成8行8像素分量块的MPEG标准,一个宏块一般来说,也就是说在4:2:2格式的情况下,包括4个亮度块Y、一个色差块U和一个色差块V。
本发明利用这样的实测结果包含有噪音的宏块,无论是属于预测编码的P图像还是属于双向预测编码的B图像,依据内部编码类型而被编码的几率是高的。这样的一个宏块常常属于单色带,并且编码器的运动估算能够预测噪音宏块的内部类型的编码将与被传送的最小比特数相对应。
然而,其它的原因可以是依据内部类型,例如场景的变化或在连续图像内新对象出现的宏块编码的由来。另外,内部编码图像I实质上仅包含内部编码类型的宏块,并且未必所有这些宏块都将是噪音宏块。
依据本发明的噪音检测方法考虑到这些不同的事项。图2为表示所述噪音检测方法主要步骤的示意图。该方法包括读取编码视频数据流IS的步骤21以便在当前图像中检测内部编码类型和与该编码类型相应的宏块的位置k,以下称作内部宏块。这一信息包含在编码视频数据流的首标中。如果当前图像的宏块不是内部编码类型的,那么该宏块不是噪音宏块L3。
噪音检测方法还包括步骤22在参照表中搜索参考宏块组的编码类型或类型T[v(k)],该参照表含有包括在参考预测编码图像中的宏块编码类型,参考宏块组在参考图像中具有一个位置v(k),该位置与在当前图像中的内部宏块的位置邻近。参考图像为双向预测编码B图像,或者更可取的为预测编码P图像,因为这种类型的图像比B图像拥有更多的内部编码类型的宏块,并且接着将提供噪音检测方法的更好的效果。位置k从1到N变化,那就是说,在标准格式图像720×576像素中,从1变到1620并且与图像中的宏块的坐标k,1对应。因此,更可取的,参照表为具有1620个二进制值的表,初始化例如为0,‘0’对应中间类型的宏块,而‘1’对应内部编码类型的宏块。
最后,噪音检测方法包括步骤23通过参考宏块组的编码类型或类型检测噪音宏块。
在一典型实施例中,参考宏块组由参考图像中位置k的单一宏块构成。因此,如果位置k上的宏块在当前图像和参考图像中是内部编码类型的,那么当前图像的宏块为噪音宏块。
在该优选实施例中,检测步骤还包括子步骤CAL通过参考宏块组的内部编码类型的数目计算一域值C。在这种情况下,参考宏块组由参考图像中的位置k的一个宏块和与之邻近的8个宏块组成。对于本领域技术人员将是明显的,这样的宏块组可以被限定或者相反的依据可利用的存储资源扩展,并且能够获得该期望的方法精度值。关于参考图像中的位置k上的宏块的编码类型的测试子步骤pMB先于计算子步骤被执行。如果位置宏块k是在当前图像和参考图像y中的内部编码类型,那么当前图像中的宏块为主噪音宏块L1。如果位置k上的宏块为当前图像而不是参考图像n中的一个内部编码宏块,那么将考虑该域值。如果域值C1大于或等于一第一临界值,例如6,那就是说,如果8个邻近宏块中的6个为内部编码类型的宏块,那么当前图像中的宏块为主噪音宏块L1。如果域值C2大于或等于一第二临界值,例如1,并且小于第一临界值,那么当前图像中的宏块为临界噪音宏块L2。最后,如果域值C0小于第二临界值,则当前图像的宏块不是噪音宏块L3。
这样一种噪音检测方法被方便地用于,例如,以一种简单快速的方式对一幅图像中的大量噪音进行估值,因此能够作为连续图像中的质量测量组分。在优选的实施例中,所述方法被用于以一种合适的方式来降低噪音。
这是因为检测步骤通过域值能够为一个宏块分配两个噪音等级L1,L2,主等级和与噪音带边界相应的等级。因而,对被这样检测的噪音宏块的处理按照噪音等级能被采用。在优选的实施例中,该处理为空间滤波过程Ws,其用存在于噪音宏块的亮度块或色差块中的位置i,j的每个频域系数定义如下Wsi,j=2cos(iπ/8)+av2+av·2cos(jπ/8)+ah2+ah]]>如果当前宏块不是噪音宏块L3,则没有执行空间过滤。另一方面,如果当前宏块为主噪音宏块L1,则执行中级过滤,例如使ah=av=8。最后,如果当前宏块为边界噪音宏块L1,则执行轻级滤波,例如使ah=av=6。借助于这种合适的滤波,以这种方式就能获得特别有效的噪音降低方法。这样一种方法能被方便的应用在用于在编码过程中减少图像中噪音的视频编码器,或者用于在解码过程中减少图像中噪音的解码器。
图3为按照本发明的噪音检测方法的效果的一个例子。内部编码类型INT的宏块以深灰色标示在参考图像I_REF和当前图像I_CUR中。另外,对于当前图像的每个内部编码类型的宏块来说,包含在参考图像中的中间编码类型的且将要被考虑的邻近宏块EDG以浅灰色表示。一被内部编码宏快包围的中间宏块,以下称为井口(hole)宏块HOL,也以黑色表示在参考图像中。对于位置k上的一个宏块,同时示出了参考宏块组V(k)。将获得下面主要的效果。
位置k-1上的宏块对于当前和参考图像来说是内部编码类型的。因此这是一个主噪音宏块L1,由网格表示。
参考图像中的井口宏块在当前图像中为内部编码类型的宏块。它的域值为7,因此这也是一个主噪音模块L1。
位置k上的宏块为当前图像的而不是在参考图像中的内部编码类型的宏块。它的域值为4,这是一个边界噪音宏块L2,这里由斜阴影线表示。
位置k+2上的宏块不是当前图像中的内部编码类型的宏块,因此它不是一个噪音宏块L3。
在当前图像中与一个新对象NO相应的宏块在所述图像中为内部编码类型的,但有一零域值。因此这也不是一个噪音宏块L3。
图4为根据本发明的转换方法400的示意图。所述代码转换方法将第一编码视频数据流Si转换为第二编码视频数据流So,其中第一编码视频数据流根据块预测编码技术被宏块所编码。
为了这个目的,所述转换方法包括对包含在第一编码视频数据流中的当前宏块进行解码的步骤,所述解码步骤包括其后紧跟第一逆量化IQ子步骤(402)的可变长度解码VLD(401)子步骤。
该代码转换方法包括能提供第二编码视频数据流的编码步骤,所述编码步骤包括量化子步骤Q422,其后紧跟可变长度编码VLC子步骤443。还包括预测步骤,它包括一系列子步骤第二逆量化IQ 444、减法445、逆离散余弦变换IDCT446、图像存储MEM(447)、运动补偿MC 448、离散余弦变换DCT 449和加法过程441。加法子步骤能够得到由DCT变换产生的运动补偿转换数据的分量块与由第一逆量化子步骤IQ 402产生的分量块的和。第二逆量化子步骤IQ 444能够对由量化子步骤Q产生的分量块进行量化。减法子步骤能够获得由加法子步骤产生的分量块和由第二逆量化子步骤IQ444产生的分量块之间的差。运动补偿子步骤MC根据由可变长度解码子步骤VLD提供的运动矢量MV和图像存储器MEM存储的内容,能够提供一运动补偿重现数据块。
代码转换方法还包括如图2所述的噪音检测步骤NDET 411,它为当前宏块提供一个噪音等级L,该噪音等级来自于由涉及宏块TI编码类型的可变长度解码步骤VLD产生的信息。它还包括位于第一逆量化子步骤IQ 402和量化子步骤Q 442之间的空间滤波步骤Ws431,432。噪音检测步骤依据与当前宏块关联的噪音等级L来控制转换步骤421。
在一典型实施例中,如果当前宏块为噪音宏块,那么滤波步骤执行前述的空间滤波过程Ws。另一方面,如果当前宏块不是噪音宏块,滤波步骤将被禁止。
在优选实施例中,当前宏块可能被分配两个噪音等级如果当前宏块为主噪音宏块L1,那么滤波步骤对当前宏块的分量块应用与转换步骤的第一位置a相对应的空间滤波过程Ws1 431,例如令ah=av=8,如果当前宏块为边界噪音宏块L2,那么滤波步骤对当前宏块的分量块应用与转换步骤的第二位置c相对应的空间滤波过程Ws2 432,例如令ah=av=16。
最后,如果当前宏块不是噪音宏块L3,则滤波步骤被禁止,这时与转换步骤的第三位置b相对应。
因而包括这种噪音降低的代码转换方法,尤其当噪音非常大时,改善了转换图像的质量。而且,在没有被滤波步骤431,432进行空间滤波的当前图像的中间编码类型的宏块被暂时滤波时,代码转换过程能被进一步的改善。
通过将软件装在一个或更多的电路中以执行前述的噪音检测、噪音降低、或代码转换方法,本发明能以软件的形式被实现。通过软件装置将有很多实现上述操作的方式。在这点上,图2和4是非常简要的。因此,虽然这样一幅图以分开模块的形式示出不同的功能,但这并不排除执行一些功能的单独的软件包。这并不排除这样的事实一项功能能通过一组软件包而被实现。同时还可能通过噪音检测电路装置、噪音降低电路装置或代码转换电路装置来实现这些功能,所述电路被适当的程序化。存储在程序存储器中的指令集参照图2和4能够使所述电路执行上述不同的操作。这样的指令集还能够通过对例如存有这样的指令集的盘片的数据载体的读取而被装入程序存储器。这样的读取还能够通过例如互联网的通信网络设备来执行。这样,服务提供商将为有兴趣的用户提供可利用的指令集。
图4同时也是依据本发明的一种译码系统的示意图,这时一个功能块代表此时译码系统的一个电路而不是代码转换电路的步骤。应该注意,所述译码系统包括,例如根据刚刚描述的原理而提出的噪音检测电路411。该检测电路根据当前宏块和参考宏块或由可变长度解码电路VLD 401产生的分量块的编码类型TI而能够为当前宏块提供一个噪音等级L。该译码系统还包括一位于逆向量化电路402和量化电路442之间的空间滤波单元,该滤波单元为了应用到当前宏块,本身具有一个用来选择a,b,c其中的一个滤波器431,432的转换开关421。该噪音检测电路根据噪音等级来控制该转换开关,以便按照前述的原理应用或不应用一个滤波器。
在目前的文本中,括号中的附图标记将不是对说明的限定。动词“包括(comprise)”及其动词变化还包括那些在句子中列举之外的元素和步骤。放在一个元素或步骤之前的单词“一(a)”或“一个(one)”并不排除许多这样的元素或步骤的出现。
权利要求
1.一种检测编码视频数据流(IS)中的噪音的方法,该编码视频数据流根据基于块的预测编码技术被宏块所编码,该宏块根据编码类型被编码,所述方法包括步骤读取(21)编码视频数据流以便在当前图像(I_CUR)中检测一个根据一种内部编码类型编码的当前内部宏块,也称作当前宏块,所述当前内部宏块在所述当前图像中具有给定位置(k),搜索(22)包括在参考预测编码图像(I_REF)中的一组参考宏块的编码类型(T[v(k)]),所述一组参考宏块包括一个在所述参考预测编码图像中具有给定位置的中心参考宏块和与所述中心参考宏块相邻的多个宏块,以及如果所述一组参考宏块包含至少一个根据一个内部编码类型编码的宏块,则将检测(23)的当前内部宏块作为噪音宏块。
2.如权利要求
1所述的方法,其中所述检测步骤包括如下子步骤通过参考宏块组中的多个内部宏块来计算当前内部宏块的噪音等级。
3.一种减少编码视频数据流(IS)中的噪音的方法,该编码视频数据流根据基于块的预测编码技术被宏块所编码,该宏块根据编码类型被编码,所述方法包括步骤检测编码视频数据流(IS)中的噪音,包括如下步骤读取(21)编码视频数据流以便在当前图像(I_CUR)中检测一个根据一种内部编码类型编码的当前内部宏块,也称作当前宏块,所述当前内部宏块在所述当前图像中具有给定位置(k),搜索(22)包括在参考预测编码图像(I_REF)中的一组参考宏块的编码类型(T[v(k)]),所述一组参考宏块包括一个在所述参考预测编码图像中具有给定位置的中心参考宏块和与所述中心参考宏块相邻的多个宏块,以及如果所述一组参考宏块包含至少一个根据一个内部编码类型编码的宏块,则将检测(23)的当前内部宏块作为噪音宏块,由此能够为所述当前内部宏块提供一个视频数据流中的噪音等级(L),和空间滤波,能够根据上述检测步骤提供的噪音等级而提供经过滤波的宏块。
4.一种将第一编码视频数据流(Si)转换成第二编码视频数据流(So)的转换方法,该第一编码视频数据流根据基于块的预测编码技术被宏块所编码,所述转换方法包括步骤对包含在第一编码视频数据流中的当前宏块进行解码,所述解码步骤包括一可变长度解码子步骤(401)和一逆量化子步骤(402),解码步骤之后进行编码,以能够提供第二编码视频数据流,所述编码步骤包括量化子步骤(442),特征在于所述转换方法还包括步骤噪音检测(411),能够根据当前宏块和由可变长度解码子步骤产生的参考宏块组的编码类型(TI)为当前宏块提供一噪音等级(L),和在逆量化子步骤和量化子步骤之间进行空间滤波,该转换方法根据噪音检测步骤提供的噪音等级能够对当前宏块施加或不施加滤波步骤。
5.一种将第一编码视频数据流(Si)转换为第二编码视频数据流(So)的转换装置,该第一编码视频数据流根据基于块的预测编码技术被宏块所编码,所述转换装置包括对包含在第一编码视频数据流中的当前宏块进行解码的解码单元,所述解码单元包括可变长度解码电路(401)和逆量化电路(402),解码单元之后的编码单元,能够提供第二编码视频数据流,所述编码单元包括量化电路(442),特征在于所述转换装置还包括噪音检测电路(411),能够根据当前宏块和由可变长度解码电路产生的参考宏块组的编码类型(TI)为当前宏块提供一噪音等级(L),和在逆量化电路和量化电路之间的空间滤波单元,所述空间滤波单元包括用来选择滤波单元中的一个滤波器的开关(421),以便将所述滤波单元的该滤波器应用到当前宏块,所述噪音检测电路根据噪音等级能够控制所述开关。
6.一种适于接收编码视频数据流(IS)的减噪器,所述编码视频数据流根据基于块的预测编码技术被宏块所编码,该宏块根据编码类型被编码,所述减噪器包括检测噪音装置,用于执行一种检测编码视频数据流(IS)中的噪音的方法,所述方法包括步骤读取(21)编码视频数据流以便在当前图像(I_CUR)中检测一个根据一种内部编码类型编码的当前内部宏块,也称作当前宏块,所述当前内部宏块在所述当前图像中具有给定位置(k),搜索(22)包括在参考预测编码图像(I_REF)中的一组参考宏块的编码类型(T[v(k)]),所述一组参考宏块包括一个在所述参考预测编码图像中具有给定位置的中心参考宏块和与所述中心参考宏块相邻的多个宏块,以及如果所述一组参考宏块包含至少一个根据一个内部编码类型编码的宏块,则将检测(23)的当前内部宏块作为噪音宏块,并且所述检测噪音装置用于为所述当前内部宏块提供一视频数据流的噪音等级(L),和一空间滤波器,用于根据噪音等级提供经过滤波的宏块。
专利摘要
本发明涉及一种检测视频数据流中的噪音的方法,该视频数据流根据基于块的预测编码技术被宏块所编码,该宏块根据编码类型被编码。所述方法包括读取编码视频数据流的步骤,以便在当前图像中检测内部编码类型和与该编码类型相应的宏块的位置,以下称作内部宏块。同时还包括在参照表中搜索参考宏块组的编码类型或类型的步骤,所述参照表含有包括在参考预测编码图像中的宏块的编码类型,所有的参考宏块在参考图像中具有一个位置,该位置与在当前图像中内部宏块的位置邻近。最后,还包括依据参考宏块组的编码类型或类型来检测噪音宏块的步骤。
文档编号H04N7/26GKCN1225915SQ02121701
公开日2005年11月2日 申请日期2002年4月20日
发明者A·布尔热 申请人:皇家菲利浦电子有限公司导出引文BiBTeX, EndNote, RefMan
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1