对动态影像进行解码时的错误隐藏方法

文档序号:7613805阅读:285来源:国知局
专利名称:对动态影像进行解码时的错误隐藏方法
技术领域
本发明是关于在对动态影像进行解码时的错误隐藏方法。具体地说,就是关于在对MPEG-4(Motion Picture Experts Group-4)动态影像解码时的错误隐藏方法。依据本发明的MPEG-4(Motion Picture Experts Group-4)动态影像解码时的错误隐藏方法,利用了防止影像画面质量下降的宏块的模式信息。这样,在对通过数据网或者是线路网的MPEG-4(Motion Picture Experts Group-4)比特流信息进行传输时,系统就可以根据实际情况而对MPEG-4解码时的错误隐藏方法进行选择,以使其与MPEG-4比特流信息的错误相对应,从而就可以有效防止发生因网络错误而引起的在对MPEG-4(Motion Picture ExpertsGroup-4)进行解码时出现的影像质量下降的问题。
背景技术
对于将数字多媒体数据进行压缩后再进行传输或者进行编码处理的系统来说,例如在H.263或者MPEG4的情况下,在对动态影像进行压缩并进行编码时,就将数字影像的数据以模块(macro block)为单位进行处理。在对其进行编码(encoding)的时候,它包括以下过程即对动作的测定及修正;计算余弦的变化(DCT),DCT系数的量子化处理,以及对可变长度进行编码(VLC)的过程。在对其进行解码(decoding)的时候,所要经历的过程就是上述进行编码的逆过程,即它包括以下的过程逆量子化处理,逆DCT,对动作的修正及测定等过程。
如上所述,对于对数字影像信号进行传送和接收的系统来说,可以对由信道环境而产生的错误进行检测。然后,对发生这种错误时受到损伤的模块进行修正。同时,为了提高复原(接收)影像的画面质量而利用错误检测和错误隐藏的方法。
例如对于以模块为单位对数字影像信号进行传送和接收的系统来说,在对错误进行检测的时候要利用编码语法(syntax)信息。在数据脱离语法(syntax)信息的情况下,就视其发生了错误。对于发生错误的模块来说,可以利用时间或者空间的隐藏方法再对其加以修正。这样,就可以大大提高接收影像的画面质量了。
如上所述,对于利用语法信息的错误检测方法来说,它适用于以下几种情况。例如当以模块为单位对数字影像信号进行处理时,在移动矢量脱离特定的范围的情况下,或者是当可变长度脱离编码(VLC)表格的情况下,或者是余弦变化(DCT)系数脱离特定的范围的情况下,以及当一个模块内的DCT系数的个数超过特定的个数的情况下等。
图1是表示依据传统技术的错误对应MPEG-4解码器的普通结构组件图。
参照图1可以看出,依据传统技术的错误对应MPEG-4解码器(decoder)在对输入的比特流信息进行VLD(Variable Length Decoding)时,要经过错误检测和对应的过程,而其余的过程就是要经过与对已有的动态影像进行解码的过程相同的过程。
一般情况下,对于MPEG-4解码器来说,它在对发生错误的模块进行检测时要使用错误隐藏(error concealment)的方法。
在对经编码处理后而传输的动态影像信号进行解码时,一般来说,它所使用的错误隐藏方法大致可以分为2种。即利用空间类似性的错误隐藏方法(Spatial Error Concealment)和利用时间相关关系的错误隐藏方法(TemporalError concealment)。
对于以模块为单位进行数字影像信号处理的系统来说,上述2种方法是在假定(特征)影像信号的相邻模块之间具有较大的相关性,或者是在相邻时间段内的画面之间具有较大的关联性的情况下而使用的方法。
图2a和图2b是分别表示对利用空间类似性的错误隐藏方法(SpatialError Concealment)和利用时间相关关系的错误隐藏方法(Temporal Errorconcealment)进行说明的示意图。
参照图2可以看出,首先,图2a对将发生错误而受损伤的模块利用其周边相邻的未受到损伤的模块的值进行插补的方法进行了说明。也就是说,上述利用空间类似性的错误隐藏方法(Spatial Error Concealment)是表示在一个影像信号内利用空间的类似性的方法,它是利用其周边的正常的宏模块(macroblock)的信息而对发生错误的宏模块(macro block)进行隐藏的方法。
在这里,上述宏模块(macro block)意味着它是与一帧的16*16画素相当的部分。
另外,图示2b对将发生错误而受损伤的模块利用以前画面相应位置的模块进行填补的方法进行了说明。也就是说,上述利用时间相关关系的错误隐藏方法(Temporal Error concealment)是表示利用从以前影像开始的时间上的类似性的方法,它是表示在当前影像状态下,如果发生了错误,就利用从以前的影像开始的规定的信息对所发生的错误进行隐藏的方法。
在这种情况下,为了利用从上述以前的影像开始的规定的信息,而利用宏模块(macro block)的移动矢量(MV)的值将移动矢量(Motion Vector,MV)的值进行推断。然后,利用与从以前影像开始推断的移动矢量的值相对应的宏模块(macro block)的数据对错误进行隐藏。
换句话说,上述利用时间相关关系的错误隐藏方法(Temporal Errorconcealment)利用了移动矢量(MV),也就是说,如果当前画面的规定移动矢量(MV)发生了错误,它就利用以前画面的相同位置的移动矢量(MV)信息而对错误进行隐藏。
在这里,上述利用空间类似性的错误隐藏方法(Spatial ErrorConcealment)主要利用帧内编码帧(Intra frame,简称I-frame)。也就是说,仅通过当前影像的比特流信息内的数据而可以进行解码的画面来说,上述利用空间类似性的错误隐藏方法(Spatial Error Concealment)在这种情况下画面发生错误时是适用的。而上述利用时间相关关系的错误隐藏方法(TemporalError concealment)主要利用预测编码帧(Predictive frame,简称P-frame)。也就是说,对于参照以前的影像而进行解码的画面来说,上述利用时间相关关系的错误隐藏方法(Temporal Error concealment)在这种情况下画面发生错误时是适用的。
也就是说,如前面所述,对于适用于依据传统技术的MPEG-4解码器的错误隐藏方法来说,I-frame固定地执行利用空间类似性的错误隐藏方法(Spatial Error Concealment);而P-frame固定地执行利用时间相关关系的错误隐藏方法(Temporal Error concealment)。
但是,为了能够更加有效地对上述错误进行隐藏,就应不仅仅是依据当前画面(frame)的类型(也就是指I-frame或者是P-frame)进行错误的隐藏,而应当考虑对上述两种错误隐藏方法进行有选择性地灵活运用。这是它所存在的缺陷。

发明内容因此,本发明就是为解决上述问题而研发的,本发明的目的在于为用户提供一种对动态影像进行解码时的错误隐藏方法。依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法在对错误进行隐藏时,就参照发生错误的宏模块的周边宏模块的模式信息,然后,就从利用空间类似性的错误隐藏方法(Spatial Error Concealment)和利用时间相关关系的错误隐藏方法(TemporalError concealment)中能够更加有效地对错误进行隐藏的方法进行选择,并根据实际所选择的错误隐藏方法对错误进行隐藏。这样,就能够最终有效地提高影像画面的质量。
为了实现上述目的,依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法具有由以下几个步骤构成的特征即,对当前输入的动态影像比特流的画面内是否发生了错误的情况进行检测的步骤;当上述当前输入的动态影像的画面内的特定宏模块上发生了错误的情况下,就参照上述特定的宏模块的周围宏模块的规定信息的步骤;通过上述参照的周围宏模块的规定信息对上述发生错误的宏模块的错误进行隐藏的方法进行选择的步骤;根据上述选择的错误隐藏方法而进行错误隐藏的步骤。
另外,依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法还具有以下特征即上述规定的信息就是指其周围宏模块的模式信息。上述宏模块的模式是指以几种模式即仅仅通过对当前比特流信息进行解码就能够将影像信号还原的内部模式(Intra mode);参照以前的影像画面而对影像信号进行解码的隐藏模式(inter mode);以及将与以前影像的相同位置相关的宏模块照其原样进行复制的非编码模式(Not-Coded mode)。
另外,依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法还具有以下特征即当上述发生错误的宏模块为当前所输入的动态影像画面的第一个宏模块的时候,对于上述当前输入的画面I-frame来说,它使用利用空间类似性的错误隐藏方法(Spatial Error Concealment),而P-frame使用利用时间相关关系的错误隐藏方法(Temporal Error concealment)。
另外,依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法还具有以下特征即当上述发生错误的宏模块为除当前所输入的动态影像画面的第一个宏模块之外的第一行的宏模块的时候,则在将上述发生错误的宏模块的错误进行隐藏的时候,就要参照以前的宏模块,当所参照的宏模块的模式为内部模式的情况下,就是使用利用空间类似性的错误隐藏方法(Spatial ErrorConcealment);当所参照的宏模块的模式为非编码模式的情况下,就要使用利用时间相关关系的错误隐藏方法(Temporal Error concealment)。
另外,依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法还具有以下特征即当上述发生错误的宏模块为除当前所输入的动态影像画面的第一个宏模块之外的第一列的宏模块的时候,则在将上述发生错误的宏模块的错误进行隐藏的时候,就要参照其上面的宏模块,当所参照的宏模块的模式为内部模式的情况下,就是使用利用空间类似性的错误隐藏方法(Spatial ErrorConcealment);当所参照的宏模块的模式为非编码模式的情况下,就要使用利用时间相关关系的错误隐藏方法(Temporal Error concealment)。
另外,依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法还具有以下特征即当上述发生错误的宏模块为当前所输入的动态影像画面内部的宏模块的时候,在对错误进行隐藏时,就要参照上述发生错误的宏模块周围的宏模块的模式,当所参照的宏模块的模式大多数为内部模式的情况下,就要使用利用空间类似性的错误隐藏方法(Spatial Error Concealment);当所参照的宏模块的模式大多数为隐藏模式或者是非编码模式的情况下,就要使用利用时间相关关系的错误隐藏方法(Temporal Error concealment)。
对于P-frame内的宏模块的模式来说,它大致可以分为以下几种模式即仅仅通过对当前比特流信息进行解码就能够将相应的影像信号还原的内部模式(Intra mode);参照以前影像信息进行解码的隐藏模式(inter mode);以及将与以前影像的相同位置相关的宏模块照其原样进行复制的非编码模式(Not-Coded mode)。
也就是说,对于想要进行传输的动态影像画面来说,当上述画面内规定的宏模块与当前影像内部周围的影像的相关关系更加紧密的情况下,就要通过上述内部模式(Intra mode)进行编码(encoding)处理。当上述画面内规定的宏模块与以前影像的相关关系更加紧密的情况下,就要通过上述非编码模式(Not-Coded mode)进行编码(encoding)处理。
因此,在对上述P-frame的错误进行隐藏时,当上述内部模式的宏模块较多的情况下,就要使用利用空间类似性的错误隐藏方法(Spatial ErrorConcealment);当上述隐藏模式或者是非编码模式的宏模块较多的情况下,就要使用利用时间相关关系的错误隐藏方法(Temporal Error concealment)。这样,就能够更加有效地对相关模块的错误进行隐藏了。
但是,如前面所述,在依据传统技术的情况下,对于将上述P-frame的错误进行隐藏的情况来说,经常是固定地使用利用时间相关关系的错误隐藏方法(Temporal Error concealment)。
为了能够更加有效地对错误进行隐藏,依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法就针对上述情况,根据与当前影像画面的类型不相关的周围宏模块的模式,而采取灵活的方法有针对性地对错误进行隐藏。本发明就是关于具有上述特征的错误隐藏方法的。
也就是说,依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法在通过MPEG-4解码器对错误进行隐藏时,不论画面(frame)的类型如何,而是利用发生错误的宏模块的周围的宏模块的模式信息,有选择性地灵活运用利用空间类似性的错误隐藏方法(Spatial Error Concealment)或者是利用时间相关关系的错误隐藏方法(Temporal Error concealment)。从而就能够更加有效地对错误进行隐藏。这就是本发明的最终目的。
如上所述,依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法,通过参照发生错误的宏模块的周围宏模块的模式信息,而从利用空间类似性的错误隐藏方法(Spatial Error Concealment)和利用时间相关关系的错误隐藏方法(Temporal Error concealment)中,选择一个能够更加有效地对错误进行隐藏的方法而对错误进行隐藏。这样,收信方就能够更加有效地提高影像画面的质量了。因此,本发明具有非常良好的效果。

图1是表示依据传统技术的错误对应MPEG-4解码器的普通结构组件图。
图2a和图2b是分别表示对利用空间类似性的错误隐藏方法(SpatialError Concealment)和利用时间相关关系的错误隐藏方法(Temporal Errorconcealment)进行说明的示意图。
图3是表示对依据本发明的实施例的对动态影像进行解码时的错误隐藏方法进行说明的顺序图。
图4是表示对依据本发明根据发生错误的宏模块的位置并参照某个宏模块的模式而决定错误的隐藏方法进行说明的示意图。
具体实施方式下面,将参照附图对依据本发明的在对动态影像进行解码时的错误隐藏方法的理想实施例进行更加详细的说明。
图3是表示对依据本发明的实施例的对动态影像进行解码时的错误隐藏方法进行说明的顺序图。
下面,将参照图3依据本发明的实施例的对动态影像进行解码时的错误隐藏方法进行详细的说明。也就是说,将对在对通过数据网或者线路网的MPEG-4的比特流信息进行传输时,为了防止因信道错误等原因而引起的解码影像画面质量下降等现象的发生而采用的MPEG-4解码时的错误隐藏方法进行更加详细的说明。
首先,对于输入的比特流信息来说,对当前输入的动态影像比特流的画面内是否发生了错误的情况进行检测步骤ST300。
也就是说,对于在经编码(encoding)处理传输后并向解码器(decoder)输入的比特流信息来说,在对其进行解码的过程中,就通过上述解码器所具有的错误检测装置对上述当前输入的动态影像比特流信息的画面内部是否发生了错误的情况进行检测。
在这种情况下,在对上述错误进行检测的过程中,能够对一个画面内部发生错误的部分进行检测。也就是说,能够对发生错误的特定宏模块的位置信息进行检测。
然后,根据上述检测结果,当检测到上述当前输入的动态影像画面内的特定宏模块上发生了错误的情况下,就要对上述特定宏模块的周围宏模块的规定信息进行参照步骤ST310。
在这里,上述规定的信息就是指相关宏模块周围的宏模块的模式信息。如前面所述,上述宏模块的模式大致有以下几种即仅仅通过对当前比特流信息进行解码就能够将相应的影像信号还原的内部模式(Intra mode);参照以前影像信息进行解码的隐藏模式(inter mode);以及将与以前影像的相同位置相关的宏模块照其原样进行复制的非编码模式(Not-Coded mode)。
另外,依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法还具有以下特征即上述周围宏模块就是指同一画面内上述发生错误的宏模块以前的宏模块。
在这里,假定所参照模式的宏模块是经过正常解码处理的宏模块。同时,假定在对当前影像画面进行解码的过程中,能够同时对以前解码的宏模块的模式信息进行存储。
然后,就可以通过上述作为参照的周围宏模块的规定信息而对上述发生错误的宏模块的错误隐藏方法进行选择步骤ST320。
也就是说,对于上述参照的周围宏模块来说,在内部模式的宏模块较多的情况下,就要使用利用空间类似性的错误隐藏方法(Spatial ErrorConcealment);当隐藏模式或者是非编码模式的宏模块较多的情况下,就要使用利用时间相关关系的错误隐藏方法(Temporal Error concealment)。下面,将参照图4对此进行更加具体的说明。
最后,根据上述所选择的错误隐藏方法而对相关错误进行隐藏。如上所述,在这一过程中,要参照发生错误的宏模块的周围的宏模块的模式信息,而从利用空间类似性的错误隐藏方法(Spatial Error Concealment)和利用时间相关关系的错误隐藏方法(Temporal Error concealment)中,选择一个能够更加有效地对错误进行隐藏的方法而对错误进行隐藏。这样,收信方就能够更加有效地提高影像画面的质量了步骤ST330。
图4是表示对依据本发明根据发生错误的宏模块的位置并参照某个宏模块的模式而决定错误的隐藏方法进行说明的示意图。
但是,在这里,假定所参照模式的宏模块是经过正常解码的宏模块。同时,假定在对当前影像画面进行解码的过程中,能够继续对以前解码的宏模块的模式信息进行存储。
首先,如图4a所示的画面,也就是说,它是表示在当前所输入的动态影像画面400的第一个宏模块410发生错误的情况下对其错误隐藏进行说明的示意图。在这种情况下,由于可以作为参照的宏模块在当前输入的影像画面内不存在。因此,就根据上述画面400的类型,也就是根据相关的影像画面是为I-frame还是为P-frame的具体情况,而决定具体的错误隐藏方法。
也就是说,当上述当前所输入的影像画面400为I-frame的情况下,就是使用利用空间类似性的错误隐藏方法(Spatial Error Concealment);当上述当前所输入的影像画面400为P-frame的情况下,就要使用利用时间相关关系的错误隐藏方法(Temporal Error concealment)。
然后,如图4b所示的画面,也就是说,它是表示在除当前所输入的动态影像画面400的第一个宏模块之外的第一行的宏模块420发生错误的情况下对其错误隐藏进行说明的示意图。在这种情况下,在对发生错误的宏模块420的错误进行隐藏时,就可以参照以前的宏模块422。
也就是说,如图所示,可以参照与(A)的位置相应的宏模块(A MB)422的模式,在这种情况下,如果上述A宏模块422的模式为内部模式,则要使用利用空间类似性的错误隐藏方法(Spatial Error Concealment);如果上述A宏模块422的模式为隐藏模式或者非编码模式,就要使用利用时间相关关系的错误隐藏方法(Temporal Error concealment)。
然后,如图4c所示的画面,也就是说,它是表示在除当前所输入的动态影像画面400的第一个宏模块之外的第一列的宏模块430发生错误的情况下对其错误隐藏进行说明的示意图。在这种情况下,在对发生错误的宏模块430的错误进行隐藏时,就可以参照其上面的宏模块432。
也就是说,如图所示,可以参照与(B)的位置相应的宏模块(B MB)432的模式,在这种情况下,如果上述B宏模块432的模式为内部模式,则要使用利用空间类似性的错误隐藏方法(Spatial Error Concealment);如果上述B宏模块432的模式为隐藏模式或者非编码模式,就要使用利用时间相关关系的错误隐藏方法(Temporal Error concealment)。
最后,如图4d所示的画面,也就是说,它是表示在当前所输入的动态影像画面400内部的宏模块440发生错误的情况下对其错误隐藏进行说明的示意图。在这种情况下,在对发生错误的宏模块440的错误进行隐藏时,就可以参照多个宏模块。举一实例,例如在这种情况下可以参照以前宏模块(A MB)442和其上面的宏模块(B MB)444,以及其左上方的宏模块(C MB)446。
也就是说,参照上述3个宏模块442,444,446的模式,当上述3个宏模块的模式中内部模式较多的情况下,就要使用利用空间类似性的错误隐藏方法(Spatial Error Concealment);当上述3个宏模块的模式中隐藏模式或者非编码模式较多的情况下,就要使用利用时间相关关系的错误隐藏方法(Temporal Error concealment)。
通过上述的说明内容,相关工作人员完全可以在不偏离本项发明技术思想的范围内,进行多样的变更以及修改。
因此,本项发明的技术性范围并不局限于说明书上的内容,必须要根据权利范围来确定其技术性范围。
权利要求
1.对动态影像进行解码时的错误隐藏方法,包括对当前输入的动态影像比特流的画面内是否发生了错误的情况进行检测的步骤;当上述当前输入的动态影像的画面内的特定宏模块上发生了错误的情况下,就参照上述特定的宏模块的周围宏模块的规定信息的步骤;通过上述参照的周围宏模块的规定信息对上述发生错误的宏模块的错误进行隐藏的方法进行选择的步骤;根据上述选择的错误隐藏方法而进行错误隐藏的步骤。
2.如权利要求项1所述的对动态影像进行解码时的错误隐藏方法,其特征在于在进行上述错误检测的过程中,能够对一个画面内部发生错误的部分进行检测;也就是说,能够对发生错误的特定宏模块的位置信息进行检测。
3.如权利要求项1所述的对动态影像进行解码时的错误隐藏方法,其特征在于,上述规定的信息就是指其周围宏模块的模式信息;上述宏模块的模式是指以几种模式即仅仅通过对当前比特流信息进行解码就能够将影像信号还原的内部模式(Intra mode);参照以前的影像画面而对影像信号进行解码的隐藏模式(inter mode);以及将与以前影像的相同位置相关的宏模块照其原样进行复制的非编码模式(Not-Coded mode)。
4.如权利要求项1所述的对动态影像进行解码时的错误隐藏方法,其特征在于,上述周围宏模块就是指同一画面内上述发生错误的宏模块以前的宏模块。
5.如权利要求项1所述的对动态影像进行解码时的错误隐藏方法,其特征在于,当上述发生错误的宏模块为当前所输入的动态影像画面的第一个宏模块时,如果上述当前输入的画面为帧内编码帧,就要使用利用空间类似性的错误隐藏方法;如果上述当前输入的画面为预测编码帧,就要使用利用时间相关关系的错误隐藏方法。
6.如权利要求项1所述的对动态影像进行解码时的错误隐藏方法,其特征在于,当上述发生错误的宏模块为除当前所输入的动态影像画面的第一个宏模块之外的第一行的宏模块的时候,则在将上述发生错误的宏模块的错误进行隐藏的时候,就要参照以前的宏模块,当所参照的宏模块的模式为内部模式的情况下,就是使用利用空间类似性的错误隐藏方法;当所参照的宏模块的模式为非编码模式的情况下,就要使用利用时间相关关系的错误隐藏方法。
7.如权利要求项1所述的对动态影像进行解码时的错误隐藏方法,其特征在于,当上述发生错误的宏模块为除当前所输入的动态影像画面的第一个宏模块之外的第一列的宏模块的时候,则在将上述发生错误的宏模块的错误进行隐藏的时候,就要参照其上面的宏模块,当所参照的宏模块的模式为内部模式的情况下,就是使用利用空间类似性的错误隐藏方法;当所参照的宏模块的模式为非编码模式的情况下,就要使用利用时间相关关系的错误隐藏方法。
8.如权利要求项1所述的对动态影像进行解码时的错误隐藏方法,其特征在于,当上述发生错误的宏模块为当前所输入的动态影像画面内部的宏模块的时候,在对错误进行隐藏时,就要参照上述发生错误的宏模块周围的宏模块的模式,当所参照的宏模块的模式大多数为内部模式的情况下,就要使用利用空间类似性的错误隐藏方法;当所参照的宏模块的模式大多数为隐藏模式或者是非编码模式的情况下,就要使用利用时间相关关系的错误隐藏方法。
全文摘要
本发明是关于在对动态影像进行解码时的错误隐藏方法的。依据本发明的实施例的在对动态影像进行解码时的错误隐藏方法具有由以下几个步骤构成的特征即,对当前输入的动态影像比特流的画面内是否发生了错误的情况进行检测的步骤;当上述当前输入的动态影像的画面内的特定宏模块上发生了错误的情况下,就参照上述特定的宏模块的周围宏模块的规定信息的步骤;通过上述参照的周围宏模块的规定信息对上述发生错误的宏模块的错误进行隐藏的方法进行选择的步骤;根据上述选择的错误隐藏方法而进行错误隐藏的步骤。
文档编号H04N7/68GK1929618SQ20051002945
公开日2007年3月14日 申请日期2005年9月7日 优先权日2005年9月7日
发明者韩承熹, 郑永安, 郑仁泓 申请人:上海乐金广电电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1