用于再隐藏包括在解码的图像中的错误的方法和设备的制作方法

文档序号:7629647阅读:98来源:国知局
专利名称:用于再隐藏包括在解码的图像中的错误的方法和设备的制作方法
技术领域
本发明涉及错误再隐藏(error re-concealment),更具体地讲,涉及一种当使用包括错误隐藏的区域(error concealed area)的参考块对当前块进行运动补偿时再隐藏包括在当前块中的错误隐藏的区域的错误的方法和设备。
背景技术
由于视频包含大量数据,所以视频数据的存储或传输需要数据压缩。MPEG-1、MPEG-2、MPEG-4、H.261和H.264是用于数据压缩的各种国际标准。根据诸如MPEG的数据压缩标准压缩的视频和音频数据被复用,以比特流的形式被存储在诸如光盘的存储介质中,或者通过通信网络被传输给解码器。在存储或传输中可能发生错误。存在多种在运动图像解码器中隐藏图像中的错误的方法。
这些方法可粗略分为空间域中的错误隐藏和时域中的错误隐藏。空间域中的错误隐藏包括使用无错解压缩的相邻区域的视频信息来预测错误区域的图像。此时,可使用各种预测方法。时域中的错误隐藏包括使用无错解压缩的先前帧来预测当前帧的错误区域的图像。此时,将被用于预测的所述先前帧的区域通过使用无错解压缩的与所述错误区域相邻的区域的运动矢量来确定。
即使当使用这些错误隐藏方法时,仍难以精确地恢复损坏的图像。另外,一旦一个图像帧具有错误隐藏的区域,则该错误隐藏的区域或其一部分必定会传播至其他帧。图1是用于解释传统的错误隐藏中的错误传播的示图。参照图1,由包括在当前帧2中的当前块20的运动矢量指示的参考块10从先前帧1来获得,以用于对当前块20执行运动补偿。此时,由于先前帧1包括错误隐藏的区域13并且参考块10包括错误隐藏的区域13的一部分,所以当前块20也包括错误隐藏的区域23。换句话说,当错误隐藏的先前帧被用作用于当前块的运动补偿的参考帧时,不可避免地发生经由帧的错误传播。

发明内容
本发明提供了一种用于再隐藏错误的方法,其中,通过当错误隐藏的先前帧被用作用于当前块的运动补偿的参考帧时使经由帧的错误传播最小化可提高运动图像解码器的最终输出视频质量。
本发明还提供了一种用于再隐藏错误的设备,该设备通过当错误隐藏的先前帧被用作用于当前块的运动补偿的参考帧时使帧之间的错误传播最小化来提高运动图像解码器的最终输出视频质量。
本发明还提供了一种其上记录有程序的计算机可读记录介质,该程序用于实现再隐藏错误的方法,其中,通过当错误隐藏的先前帧被用作用于当前块的运动补偿的参考帧时使经由帧的错误传播最小化可提高运动图像解码器的最终输出视频质量。
根据本发明的一方面,提供了一种用于再隐藏包括在解码的图像中的错误的方法。该方法包括(a)确定用于当前块的运动补偿的第一参考帧中的第一参考块是否包括错误隐藏的区域;和(b)如果第一参考块包括错误隐藏的区域,则对包括在当前块中的错误隐藏的区域执行错误再隐藏。
根据本发明的另一方面,提供了一种用于再隐藏包括在解码的图像中的错误的设备。该设备包括存储器,用于存储多个参考帧;和错误隐藏单元,从所述存储器读取用于当前块的运动补偿的第一参考帧,并且如果第一参考帧中的第一参考块包括错误隐藏的区域则对包括在当前块中的错误隐藏的区域执行错误再隐藏。
根据本发明的另一方面,提供了一种其上记录有程序的计算机可读记录介质,该程序用于实现再隐藏包括在解码的图像中的错误的方法。该方法包括(a)确定用于当前块的运动补偿的第一参考帧中的第一参考块是否包括错误隐藏的区域;和(b)如果第一参考块包括错误隐藏的区域,则对包括在当前块中的错误隐藏的区域执行错误再隐藏。


通过下面结合附图对示例性实施例进行的详细描述,本发明的以上和其他特点及优点将会变得更加清楚,其中图1是用于解释传统的错误隐藏中的错误传播的示图;图2是根据本发明实施例的错误再隐藏设备的方框图;图3是包括根据本发明实施例的错误再隐藏设备的运动图像解码器的例子的方框图;图4是表示根据本发明实施例的错误再隐藏方法的流程图;图5表示用于当前块的运动补偿的参考帧和参考块;图6表示被分成错误隐藏的区域和其他区域的当前块;图7是用于解释再参考由当前块的参考帧参考的帧以再隐藏所述当前块的错误隐藏的区域的错误的过程的示图;图8表示当前块以及与所述当前块相邻的多个块;和图9A至图9C显示用于绝对差值和(SAD)计算的区域扩展至邻近区域以再隐藏当前块的错误隐藏的区域的错误的情况。
具体实施例方式
现在将参照附图对本发明的示例性实施例进行详细的描述。在附图中,相同或类似的部件由相同的标号表示。在下面的描述中,为了简洁而不对已知功能和结构进行详细的描述。
图2是根据本发明实施例的错误再隐藏设备3的方框图。参照图2,错误再隐藏设备3包括错误隐藏单元31和帧存储器33。帧存储器33存储多个解码的参考帧。错误隐藏单元31使用存储在帧存储器33中的所述多个解码的参考帧来执行根据本发明的错误再隐藏。错误区域信息和解码的当前帧被输入给错误隐藏单元31。错误区域信息指示发生传输错误的区域。如图3中所示,可变长度解码器(VLD)35检测错误区域并将关于该错误区域的信息和错误隐藏所需的信息提供给错误隐藏单元31。如果用于当前块的运动补偿的第一参考帧中的第一参考块包括错误隐藏的区域,则错误隐藏单元31再隐藏包括在当前块中的错误隐藏的区域的错误。第一参考帧存储在帧存储器33中。
图3是包括根据本发明实施例的错误再隐藏设备3的运动图像解码器的例子的方框图。参照图3,该运动图像解码器包括VLD35、逆量化/逆离散余弦变换(IQ/IDCT)单元37、运动补偿单元39和错误再隐藏设备3。VLD35接收比特流并对接收的比特流执行可变长度解码。IQ/IDCT单元37对从VLD35接收的信息诸如可变长度解码并量化的变换系数执行IQ和IDCT。运动补偿单元39被提供来自VLD35的信息诸如可变长度解码的运动矢量,并参照存储在存储器33中的解码的参考帧以预定块大小为单位对当前帧执行运动补偿。根据本发明实施例的错误再隐藏设备3不仅执行传统的错误隐藏,而且当在当前块的运动补偿中使用的参考块包括错误隐藏的区域时对包括在当前块中的错误隐藏的区域执行错误再隐藏。
根据本发明实施例的错误再隐藏方法将基于根据本发明实施例的错误再隐藏设备3的结构来详细描述。
图4是表示根据本发明实施例的错误再隐藏方法的流程图。在第一操作S110中,错误隐藏单元31接收被运动补偿的当前块并检查由该当前块参考的参考帧是否包括错误隐藏的区域或者检查该当前块的参考块是否包括错误隐藏的区域。如果该当前块的参考块包括错误隐藏的区域,则在操作S130中,对包括在该当前块中的错误隐藏的区域执行错误再隐藏。
以下,将参照图5至图8以及图9A至图9C来详细描述操作S130中的错误再隐藏。图5表示用于当前块的运动补偿的参考帧4和参考块40。如果参考帧4被分成预定大小的块,例如16×16的块,则参考块40跨越第一块51、第二块52、第三块53和第四块54。如果第三块53和第四块54是错误隐藏的区域,则参考块40被分成包括在第一块51中的区域A’41、包括在第二块52中的区域B’42和包括在第三块53和第四块54中的区域C’43。由于当前块通过使用由该当前块的运动矢量指示的参考块被运动补偿,所以当前块60也能够分成区域A61、区域B62和区域C63,如图6中所示。区域A61与参考块40的区域A’41对应,区域B62与参考块40的区域B’42对应,区域C63与参考块40的区域C’43对应。
本发明涉及再隐藏错误隐藏的区域,即当前块60的区域C63。区域C63的错误再隐藏通过参照由错误隐藏帧即参考帧4参考的帧7执行的时域中的预测而被执行,如图7中所示。
为了区域C63的错误再隐藏,选择多个候选运动矢量用于参考块40的运动补偿。在本实施例中,候选运动矢量是当前块60的运动矢量MV0、第一块51的运动矢量MV1和第二块52的运动矢量MV2。由候选运动矢量9指示的再参考帧7中的块70被分成区域A”71、区域B”72和区域C”73。区域A”71与参考块40的区域A’41对应,区域B”72与区域B’42对应,区域C”73与区域C’43对应。区域A”71和区域B”72之间的匹配以及区域A’41和区域B’42之间的匹配使用评估函数来检查。该评估函数可以是绝对差值和(SAD)函数、绝对变换差值和(SATD)函数、平方差值和(SSD)函数或拉格朗日函数。对每一个候选运动矢量执行这种处理,并用由候选运动矢量指示的再参考块之中与参考块40最匹配的块70的区域C”73代替当前块60的区域C63。此时,与参考块40最匹配的块(70)不仅可以在由候选运动矢量指示的位置处找到,还可以在这些位置周围的预定范围内找到。此外,当使用SAD函数作为所述评估函数时,如果最小SAD大于预定阈值,则可以不执行错误再隐藏。
当为再参考而计算SAD时,如果区域A’41和区域B’42的大小小于区域C’43,则计算出的SAD的可靠性降低。在本实施例中,当区域C’43的大小为S1并且区域A’41和区域B’42的大小为S2时,如果S2/S1大于预定阈值R1,则执行错误再隐藏。然而,如果S2/S1小于阈值R2,则不对区域C63执行错误再隐藏。如果S2/S1小于R1并大于R2,则在通过将用于计算SAD的区域扩展至相邻区域来提高SAD的可靠性之后执行错误再隐藏,如图9A至图9C中所示。
首先,如图8中所示,测量如图8中所示的当前块60和其相邻块BL1 81、BL2 82和BL3 83之间的相似性以选择相似块。此时,可能没有相似块,或者可能选择至少两个块作为相似块。如果没有相似块,则不执行错误再隐藏。所述相似性通过比较相应块的解码模式、运动矢量和像素值来确定。
然后,在参考帧4中确定与选择的相似块对应的块。与由当前块60的运动矢量指示的参考块40相邻的块BL1’84、BL2’85和BL3’86与块BL1 81、BL2 82和BL3 83对应。
如果块BL1 81被确定为是当前块60的相似块,则使用SAD函数在再参考帧7中搜索与块BL1’84、区域A’41和区域B’42匹配的区域,如图9B中所示。用再参考帧7中与匹配的区域的区域C’43对应的区域C”73代替当前块60的区域C63。此时,为了确定与区域A’41和区域B’42匹配的区域,以与如上所述相同的方式选择候选运动矢量。如果块BL2 82或BL3 83被确定为是当前块60的相似块,则以与块BL1 81被确定为是当前块60的相似块的情况相同的方式对当前块60的区域C63执行错误再隐藏。
通常,当在视频数据传输中发生错误时,在运动图像解码器中对发生错误的帧执行错误隐藏,由此提高视频质量。然而,无法使用错误隐藏来完美地还原没有错误的图像。在这种错误隐藏之后仍存在的错误传播至后面的帧中,使得视频质量降低。在本发明中,通过对即使在对发生错误的帧执行错误隐藏之后仍可能传播至下一帧中的隐藏的错误进行再隐藏,可提高运动图像解码器的最终输出视频质量。
本发明也可实现为计算机可读记录介质上的计算机可读代码。所述计算机可读记录介质为任何可存储其后能由计算机系统读取的数据的数据存储装置。所述计算机可读记录介质的例子包括只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘、光学数据存储装置、和载波。所述计算机可读记录介质也可分布于网络连接的计算机系统上,以便所述计算机可读代码以分布方式被存储并被执行。
尽管参照其示例性实施例具体表示和描述了本发明,但本领域普通技术人员应该理解,在不脱离由权利要求限定的本发明的精神和范围情况下,可以对其进行各种形式和细节上的改变。
权利要求
1.一种用于再隐藏包括在解码的图像中的错误的方法,该方法包括(a)确定用于当前块的运动补偿的第一参考帧中的第一参考块是否包括错误隐藏的区域;和(b)如果第一参考块包括错误隐藏的区域,则对包括在当前块中的错误隐藏的区域执行错误再隐藏。
2.如权利要求1所述的方法,其中,步骤(b)包括(b1)确定用于第一参考块的运动补偿的多个候选运动矢量;(b2)从第二参考帧中的由所述多个候选运动矢量指示的参考块中提取与第一参考块中除所述错误隐藏的区域之外的剩余区域对应的区域;(b3)在从第二参考帧中提取的区域之中确定与第一参考块中除所述错误隐藏的区域之外的剩余区域匹配的区域,并且确定包括匹配的区域并被包括在第二参考帧中的第二参考块;和(b4)用与第一参考块的错误隐藏的区域对应的第二参考块的区域代替包括在当前块中的错误隐藏的区域,以执行错误再隐藏。
3.如权利要求2所述的方法,其中,所述多个候选运动矢量是当前块的运动矢量和包括第一参考块中除所述错误隐藏的区域之外的剩余区域的第一参考帧的块中的至少一个的运动矢量。
4.如权利要求2所述的方法,其中,步骤(b3)通过使用绝对差值和函数、绝对变换差值和函数、平方差值和函数和拉格朗日函数之一而被执行。
5.如权利要求2所述的方法,其中,步骤(b2)包括在由所述多个候选运动矢量指示的像素周围的预定范围中确定第二参考帧中的所述参考块,并从所述参考块提取与第一参考块中除所述错误隐藏的区域之外的剩余区域对应的区域。
6.如权利要求4所述的方法,其中,如果使用绝对差值和函数、绝对变换差值和函数、平方差值和函数和拉格朗日函数之一计算的结果大于预定阈值,则不执行错误再隐藏。
7.如权利要求2所述的方法,还包括(c)获得第一参考块中除所述错误隐藏的区域之外的剩余区域的大小与所述错误隐藏的区域的大小之比,其中,如果获得的比率小于预定阈值,则不执行(b)。
8.一种用于再隐藏包括在解码的图像中的错误的设备,该设备包括存储器,用于存储多个参考帧;和错误隐藏单元,从所述存储器读取用于当前块的运动补偿的第一参考帧,并且如果第一参考帧中的第一参考块包括错误隐藏的区域,则对包括在当前块中的错误隐藏的区域执行错误再隐藏。
9.如权利要求8所述的设备,其中,所述错误隐藏单元确定用于第一参考块的运动补偿的多个候选运动矢量;从第二参考帧中的由所述多个候选运动矢量指示的参考块中提取与第一参考块中除所述错误隐藏的区域之外的剩余区域对应的区域;在从第二参考帧中提取的区域之中确定与第一参考块中除所述错误隐藏的区域之外的剩余区域匹配的区域,并且确定包括匹配的区域并被包括在第二参考帧中的第二参考块;并且用与第一参考块的错误隐藏的区域对应的第二参考块的区域代替包括在当前块中的错误隐藏的区域,由此执行错误再隐藏。
10.如权利要求9所述的设备,其中,所述多个候选运动矢量是当前块的运动矢量和包括第一参考块中除所述错误隐藏的区域之外的剩余区域的第一参考帧的块中的至少一个的运动矢量。
11.如权利要求9所述的设备,其中,当在从第二参考帧中提取的区域之中确定与第一参考块中除所述错误隐藏的区域之外的剩余区域匹配的区域时,所述错误隐藏单元使用绝对差值和函数、绝对变换差值和函数、平方差值和函数和拉格朗日函数之一。
12.如权利要求9所述的设备,其中,所述错误隐藏单元在由所述多个候选运动矢量指示的像素周围的预定范围中确定第二参考帧中的所述参考块,并从所述参考块提取与第一参考块中除所述错误隐藏的区域之外的区域对应的区域。
13.如权利要求11所述的设备,其中,如果使用绝对差值和函数、绝对变换差值和函数、平方差值和函数和拉格朗日函数之一计算的结果大于预定阈值,则所述错误隐藏单元不执行错误再隐藏。
14.如权利要求9所述的设备,其中,所述错误隐藏单元获得第一参考块中除所述错误隐藏的区域之外的剩余区域的大小与所述错误隐藏的区域的大小之比,其中,如果获得的比率小于预定阈值,则不执行错误再隐藏。
15.一种其上记录有程序的计算机可读记录介质,该程序用于实现再隐藏包括在解码的图像中的错误的方法,该方法包括(a)确定用于当前块的运动补偿的第一参考帧中的第一参考块是否包括错误隐藏的区域;和(b)如果第一参考块包括错误隐藏的区域,则对包括在当前块中的错误隐藏的区域执行错误再隐藏。
16.如权利要求15所述的计算机可读记录介质,其中,步骤(b)包括(b1)确定用于第一参考块的运动补偿的多个候选运动矢量;(b2)从第二参考帧中的由所述多个候选运动矢量指示的参考块中提取与第一参考块中除所述错误隐藏的区域之外的剩余区域对应的区域;(b3)在从第二参考帧中提取的区域之中确定与第一参考块中除所述错误隐藏的区域之外的剩余区域匹配的区域,并且确定包括匹配的区域并被包括在第二参考帧中的第二参考块;和(b4)用与第一参考块的错误隐藏的区域对应的第二参考块的区域代替包括在当前块中的错误隐藏的区域,以执行错误再隐藏。
17.如权利要求16所述的计算机可读记录介质,其中,所述多个候选运动矢量是当前块的运动矢量和包括第一参考块中除所述错误隐藏的区域之外的剩余区域的第一参考帧的块中的至少一个的运动矢量。
18.如权利要求16所述的计算机可读记录介质,其中,步骤(b3)通过使用绝对差值和函数、绝对变换差值和函数、平方差值和函数和拉格朗日函数之一而被执行。
19.如权利要求16所述的计算机可读记录介质,其中,步骤(b2)包括在由所述多个候选运动矢量指示的像素周围的预定范围中确定第二参考帧中的所述参考块,并从所述参考块提取与第一参考块中除所述错误隐藏的区域之外的剩余区域对应的区域。
20.如权利要求18所述的计算机可读记录介质,其中,如果使用绝对差值和函数、绝对变换差值和函数、平方差值和函数和拉格朗日函数之一计算的结果大于预定阈值,则不执行错误再隐藏。
21.如权利要求16所述的计算机可读记录介质,还包括(c)获得第一参考块中除所述错误隐藏的区域之外的剩余区域的大小与所述错误隐藏的区域的大小之比,其中,如果获得的比率小于预定阈值,则不执行错误再隐藏。
全文摘要
提供了一种用于再隐藏包括在解码的图像中的错误的方法和设备。该方法包括确定用于当前块的运动补偿的第一参考帧中的第一参考块是否包括错误隐藏的区域;和如果第一参考块包括错误隐藏的区域,则对包括在当前块中的错误隐藏的区域执行错误再隐藏。
文档编号H04N7/32GK1798346SQ200510134519
公开日2006年7月5日 申请日期2005年12月8日 优先权日2004年12月31日
发明者崔炳善 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1