视频信号中的差错掩蔽的利记博彩app

文档序号:7586810阅读:198来源:国知局
专利名称:视频信号中的差错掩蔽的利记博彩app
技术领域
本发明涉及视频信号中的差错掩蔽及其方法和设备。
移动通信中近来的目标之一是提高数据传输速度,以便使移动网能设立多媒体业务。多媒体的一个关键部分是数字视频。视频传输包括连续传输表示一系列活动画面的图像数据的业务。如众所周知,与许多其他类型的媒体相比,传送图像所需的数据量很大,因此迄今为止在低比特率终端内使用视频的非常少。然而,近来在低比特率视频压缩领域已经取得了一些明显的进展,可以以20K比特/秒左右的比特率获得可接受的视频质量。由于不断地降低比特率,可以预期视频不久将要成为一种可通过诸如移动信道之类的信道提供的业务。
视频序列包括一系列静止的图象或帧。视频压缩方法是以减少视频序列的冗余度和感觉不到的部分为基础的。视频序列中的冗余度可以分成空间、时间和频谱这些冗余度。空间冗余度是指在一个帧内邻近像素之间的相关性。时间冗余度是指在相继帧的相应区域之间的相关性。时间冗余度是由于在前一个图像内出现的对象在当前图像也出现的似然性而引起的。可以通过产生描述在当前图像与前一图像的同样区域之间的运动(即位移)的运动补偿数据实现压缩。因此,当前图像可以根据前一图像预测。频谱冗余度是指同一个图像的不同的色彩分量之间的相关性。
然而,只是减少序列的冗余度通常并不能达到足够的压缩。因此,视频编码器力图降低视频序列中在视觉上最不重要的部分的质量。此外,编码比特流的冗余度可以通过对压缩参数和系数的高效率的无损编码予以减少。主要的技术是利用可变长度编码。
视频压缩方法通常区分能或不能利用时间冗余度减少的图像。不利用减小时间冗余度方法的压缩图像通常称为INTRA或I帧,而在时间上预测出来的图像称为INTER或P帧。在INTER帧情况下,预测的(经运动补偿的)图像很少是足够精确的,因此每个INTER帧还有一个与之关联的空间压缩预测误差图像。
压缩视频很容易受到传输差错的污染,主要有以下两个原因。第一,由于利用时间预测差分编码(INTER帧)的误差会在空间和时间上传播。实际上,这是指一旦出现一个误差,这个误差很容易有一段比较长的时间被人眼察觉。特别容易受影响的是低比特率的传输,因为其中只有少数的INTRA编码帧(传输INTRA编码帧可以停止时间上的误差传播)。第二,使用可变长度码增大了对差错的敏感性。在一个比特差错将一个码字改变为另一个长度不同的码字时,解码器将失去码字同步,从而对随后的无差错码字(包括若干比特)作错误解码,直到出现下一个同步码。(同步码是一个不能通过任何正当组合其他码字产生的比特模式。)一个压缩视频比特流中的每个比特对于图像解压缩来说是不具有同样的重要性的。有些比特属于规定诸如所用的图像类型(例如INTRA或INTER)、量化器值和选用的编码模式之类的重要信息的段。在H.263中,这种最重要的信息收集在图像标题内。图像标题的传输差错通常会导致随后的规定图像内容的这些比特全体误译。由于利用时间预测差分编码(INTER帧),误差会在空间和时间上传播。因此,普通处理图像标题污染的方法是在屏幕冻结上个图像,向发信端发送一个INTRA图像请求,等待所请求的INTRA帧。这导致在接收视频中有讨厌的暂停。
传输差错具有不同的特性,这取决于所用的网络。在分组交换网中,传输差错通常是分组丢失(由于网络组成部分内的拥塞)。在电路交换网中,传输差错通常是‘1’被污染为‘0’或‘0’被污染为‘1’的比特差错。
为了防止由于传输差错而使图像变差,可以采用重传、应用检错和/或纠错方法,和/或掩蔽接收到的受污染数据的影响。通常,重传提供了一种合理的防止视频数据流受差错影响的方法,但是在低比特率传输的大往返延迟和适度的或高误码率情况下采用重传几乎是不可能的,特别是对于实时电视电话应用来说。检错和纠错方法通常需要大的开销,因为这些方法为数据增添了一些冗余度。因此,对于低比特率应用来说,差错掩蔽可以被认为是一种保护和恢复图像、减小传输差错影响的优选方法。视频差错掩蔽方法通常适用于由于分组丢失和比特污染而发生的传输差错。
H.263是一个ITU-T建议书,通常用于平均数据率低于64kbps的低比特率通信的视频编码。这个建议书规定了比特流的语法和比特流的解码。当前,H.263有两个版本。版本1包括核心算法和四个任选的编码模式。H.263版本2是版本1的扩展,提供十二个新的可协商编码模式。
图像编码成一个亮度分量(Y)和两个色差(色度)分量(CB和CR)。色度图像以亮度图像的分辩率的二分之一沿着两个坐标轴采样。图像数据逐块编码,每块表示亮度或色度的8×8个像素。
每个编码图像,以及相应的编码比特流按一个分层结构配置,这个分层结构有四个层,自下至上为块层,宏块层,图块层和图像层。图块层可以配置成一组块或者一个片段(slice)。
块层数据包括均匀量子化的离散余弦变换系数,这些系数以Z字形顺序扫描,由一个扫描宽度编码器处理后用可变长度码编码。
每个宏块涉及亮度的16×16个像素,空间上相应色度分量的8×8个像素。也就是说,一个宏块包括四个88亮度块和两个空间相应的8×8个色差块。每个INTER宏块与一个运动矢量关联,这个运动矢量规定了一个在基准帧中与这个INTER宏块的像素相似的相应区域的位置。INTER宏块数据包括对于这个宏块的像素的编码预测误差数据。
通常,每个图像分成一些块组(GOB)。一个块组(GOB)典型的包括33个宏块(排列成3行,每行11个宏块)。每个GOB的数据包括一个任选的GOB标题和后随的的在这个GOB内的那些宏块的数据。
如果采用任选的片段结构模式,每个图像分成一些片段而不是GOB。一个片段含有若干个按扫描顺序接连的宏块。每个片段的数据包括一个片段标题和随后的片段宏块的数据。
图像层数据含有一些影响整个图像区和图像数据解码的参数。编码参数数据配置在一个所谓的图像标题内。
图像和GOB(或片段)以一个同步码开始。没有别的码字或码字的正当组合可以形成与同步码相同的比特模式。因此,同步码可以用于比特流检错和误码后重新同步。加到比特流的同步码越多,系统受差错的影响就越小。
在一些论文中已经引用了视频冗余编码(VRC)方法,例如StephanWenger的“互联网上H.263+抗差错模式K、R、N的模拟结果”(“SimulationResults for H.263+Error Resilience Modes K,R,N on the Internet”,ITU-T,SG16,Question 15,document Q15-D-17,7-Apr-1998)。这种方法的目的是针对分组交换网内分组丢失提供下降不大的视频质量。下面将说明这种方法的基本原理。
VRC方法的原理是将图像序列分成两个或更多个信号(或线程(thread)),以交错方式将所有的帧分配给各个线程,形成一些帧的子集。每个线程(或帧的子集)独立编码。显然,在一个信号内的帧频要比总的帧频低得多在两个线程(信号)的情况下为二分之一,而在三个线程的情况下为三分之一,诸如此类。这可能导致相当可观的编码代价,因为为了准确地表示涉及一个信号或线程内两个1NTER帧之间改变情况的运动通常需要一些较长的运动矢量。每隔一定时间,所有的信号会聚到一个所谓的同步帧。从这个同步帧开始,再开始一些新的线程。
如果这些含有帧的一个子集的线程之一因为例如一个分组丢失而受到损害,其余的仍完整的线程可用于预测下一个同步帧。这样就能继续对这个受损害的信号解码,从而导致轻微的图象质量恶化,或者停止对受损害的信号解码,从而导致帧频下降。然而,如果将子集的大小合理地保持成比较小,直到下一个同步帧到达为止恶化将只有一段非常地短的时间。
解码器从一个未受损害的线程中选择一个同步帧,予以解码。这意味着可以将发送的I图像的数目减少,因为不需要完全重新同步。如果在两个同步帧之间所有的线程都受到损害,就不能准确地预测一个同步帧。在这种情况下,讨厌的不自然现象将一直拖到下一个I图像正确解码,就象没有采用VRC的情况那样。
现在,可以采用根据ITU-H.263视频编码标准(版本2)的视频冗余编码,如果启用任选的基准图像选择模式(附录N)的话。然而,在其他视频压缩方法中采用视频冗余编码也没有重大的障碍。
大多数巳知的差错掩蔽技术是根据空间和时间内插方案。空间内插用于INTRA帧和INTER帧的INTRA编码区。空间内插是指丢失的区域根据空间上邻近的区域进行内插。这可以例如用边界像素的距离加权平均来执行。
在低比特率视频编码中较常采用的是时间内插的差错掩蔽,因为INTRA帧通常是相当少的。一种非常地基本的时间内插方案是丢失区域用前一帧的相同位置拷贝,即将丢失的块处理成“没有编码的”块。在一些较为先进的方案中,利用在空间上相邻的块的运动矢量的中值或平均值进行运动补偿。还有一些建议采用边界像素匹配,以便发现所丢失的块的最佳运动矢量。
在低分辨率和低比特率的情况下,在空间相邻的块之间的相关性往往是相当小的。因此根据空间相邻的像素数据内插的运动矢量可能与原来的相差很大。这意味着一个方向的掩蔽方案往往不能恢复原来的块。此外,如果只用运动矢量来掩蔽而甚至不设法恢复预测误差块,图像就会变得模糊,因为大量的细节将被丢失。实际上,采用现行的掩蔽方案,可以在一段比较长的时间内差错或没有正确掩蔽的块都很显眼。
前面提出的在易于出错的环境中应用VRC有着一些问题。首先,如果同步帧之间的时间间隔短(通常建议线程长度为5帧),就要牺牲压缩效率。另一方面,如果线程比较长,差错掩蔽就不很有效,从而牺牲了图像质量。
按照本发明的第一方面,所提供的是一种掩蔽一个视频序列的一个帧内的差错的方法,所述视频序列包括多个帧,编码成至少两个各表示视频序列的帧的一个子集的独立编码信号,所述方法包括接收表示所述视频序列的一个帧;标识一个在所述帧内的差错;以及通过用编在标识有差错的之外的一个信号内的至少一个帧预测相应数据来掩蔽所述差错。
因此本发明涉及一种多线程视频编码方案,一个出错区域通过用另一个VRC线程的未受污染的帧在时间上(最好是双向的)内插得到掩蔽。
本发明提供了达到比现有技术的解决方法更好的图像差错掩蔽措施。与现有技术的视频冗余编码方法相比,本发明可以在同步帧之间采用较长的线程,因此提高了压缩效率。
更可取的是,相应数据由双向预测,即用视频序列中出现在标识有差错的帧之前和之后的帧预测,而所述之前和之后的帧编在标识有差错的之外的至少一个信号内。
最有益的是,相应数据可以用在视频序列中标识有差错的帧的前一帧和/或后一帧预测,所述前一帧和后一帧出现在至少一个其他信号内。
差错可以首先通过用在与标识有差错的帧相同的信号内在所述帧前出现的一个帧预测相应数据予以掩蔽。
在这些编码信号包括标题信息时,一个在标题内有差错的帧可以通过下列步骤恢复标识在一个帧的标题内的差错;确定这个帧是否为一个帧间编码的帧;以及如果是这样的话,用编在标识有差错的之外的一个信号内的至少一个帧预测相应数据。
按照本发明的第二方面,所提出的视频解压缩的方法包括接收表示一个视频序列的至少两个信号,所述视频序列包括多个帧,而每个信号表示所述视频序列的帧的一个子集;标识在所述视频序列的一个帧内的差错;通过用编在标识有差错的之外的一个信号内的至少一个帧预测相应数据来掩蔽所述帧内的差错;以及显示这些所述视频序列的帧。
本发明的第三方面涉及掩蔽在一个视频序列的一个帧内的差错的设备,所述视频序列包括多个帧,编码成至少两个各表示视频序列的帧的一个子集的独立编码信号,所述设备包括一个接收所述至少两个信号的输入端;标识在所述视频序列的一个帧内的差错的装置;以及通过用编在标识有差错的之外的一个信号中的至少一个帧预测相应数据来掩蔽所述差错的装置。
更可取的是,所述掩蔽装置配置成用在所述视频序列中出现在标识有差错的帧之前和之后的帧预测相应数据,而所述之前和之后的帧编在标识有差错的之外的至少一个信号内。
最有益的是,所述掩蔽装置配置成用在所述视频序列内标识有差错的帧的前一帧和/或后一帧预测相应数据,所述前一帧和后一帧出现在至少一个其他信号内。
所述掩蔽装置可以配置成首先用在与标识有差错的帧相同的信号内在所述帧前出现的一个帧预测相应数据来掩蔽差错。
在编码信号包括标题信息时,所述设备还可以包括标识在一个帧的标题内的差错的装置;以及确定所述帧是否为一个帧间编码帧的装置,而其中所述掩蔽装置配置成用编在标识有差错的之外的一个信号内的至少一个帧预测相应数据。
下面将结合附图通过举例来对本发明进行说明,在这些附图中

图1例示了一种有两个各有3帧的线程(或信号)的多层视频编码方案;图2例示了在两个线程之一受到损害时现有技术的VRC操作;
图3例示了一个根据本发明的方法的实施例;图4例示了一个根据本发明的方法的第二实施例;图5例示了一种可以用来掩蔽差错的差错预测方法;图6示出了一个INTER图像标题掩蔽的例子;图7示出了一个本发明用于一个有三个线程的多线程信号的例子;以及图8示出了一个根据本发明的解码器的实施例。
按照诸如VRC之类的多线程视频编码方案,一个包括多个帧0,1,2,3,…,n的视频序列编码成至少两个各表示这个视频序列的帧的一个子集的线程或信号。每个线程与其它线程无关地独立编码,而一个线程内的每个帧以1NTER帧方式编码(虽然一个帧内的一些区域可以如众所周知的那样以INTRA帧方式编码)。因此,至少两个INTER帧的线程独立地受到编码和发送。每个INTER帧(或P帧)取决于本线程的一个较早的INTER帧,而不取决于在其他线程内的任何信息。需编码的帧以交错方式分配给各线程。所有的线程都从一个同步帧开始,这个同步帧可以是一个INTRA帧,虽然这并不是必要的。
在图1所示的例子中,视频序列包括2个线程10a、10b,每个线程各有三个帧12。因为只产生2个线程,所以每个线程包括视频序列的一些交错的帧。应当注意的是,每个线程10a、10b都会聚到一个同步帧14。在VRC中,需要每个线程内的最后一个帧(即线程10a的帧5和线程10b的帧6独立地产生相同的同步帧14。虽然在实践中这很难达到,但是已证明有可能足够接近(见以上Stephan Wenger的论文)。
图2例示了在两个线程或信号之一受到损害时现有技术的VRC操作。所建议的是,如果一个线程受到损害,就忽略这个线程,不再用它来产生解压缩的视频序列。视频序列用那些完整无损的线程来产生。如果说帧P4受到损害,就不再用线程10b产生解码的视频序列,这导致所得到的视频序列的帧频降低;或者参考污染的帧P4对线程10b的下一个帧P6解码,这意味着导致误差传播。
下面将说明本发明的掩蔽算法的一些例子。如图1和2所示,两个线程(或信号)各有3个帧。假定在第一同步帧和INTER帧P1、P2和P3内都没有传输差错。这帧因此就以普通方式解码和显示。假定解码器检测到帧P4的一些部分(而不是所有部分)受到污染。视频解码器于是起动,参考未污染的线程10a的一个或几个帧来掩蔽帧P4。这种掩蔽可以结合对受损害的信号内的后续帧的解码进行。
图3例示了本发明的第一实施例的工作情况。假如在帧P4的压缩数据(图中标为dP4)有传输差错。对这个帧解码,但受污染的帧(dP4)通常不予显示。然而,帧dP4的这些受污染的区域通过用未受污染的线程10a的帧P3进行单向内插予以掩蔽。假设这个掩蔽帧为P4’。然后,对未受损害的线程10a的无差错帧P5进行普通的解码和显示。更可取的是,再参考未受损害的线程的帧P3和P5对帧P4进行双向掩蔽。
下面将论述一个可以采用的内插算法的例子,虽然也可以采用其他的算法。
图4例示了本发明的第二实施例的工作情况。假如在帧P4的压缩数据(图中标为dP4)中有传输差错。对这个帧解码,但受污染的帧(dp4)通常不予显示。然后,对未受损害的线程10a的无差错帧P5进行普通的解码和显示。此后,按照本发明,帧dP4的那些受污染区域通过用未受污染的线程10a的帧P3和P5进行双向内插予以掩蔽。假设这个掩蔽帧为P4’。用一个未受损害的线程进行双向内插(如图4所示)的优点是优于单向内插(如图3所示),因为双向内插通常给出更好的掩蔽效果。
在本发明的第三实施例中,对受污染的帧P4进行解码,而受污染的区域首先采用现有技术的掩蔽方法用P2帧掩蔽。对掩蔽帧(P4c)进行显示。然后,对未受损害的线程10a的无差错帧P5进行普通的解码和显示。再通过用未受污染的线程10a的帧P3和P5进行双向内插对帧P4c的那些掩蔽区域进行精处理。假设精处理的掩蔽帧为P4″。在对P6解码时,用帧P4″作为参考帧。由于P4″很可能具有比初始掩蔽帧P4c好的质量,解码帧P6(和在同一个时间预测线程内的任何后续帧)的质量很可能也比较好。然后,解码过程继续以普通方式进行。
差错掩蔽可以用于恢复已经丢失的视频分组或含有CRC错误的视频分组(如果传输层能提供CRC错误指示的话)。在实践中,只是在P6中要参考的那些块必须予以掩蔽,除非以后还要参考帧P4(这在H.263的基准图像选择模式的规范中是允许的)。
在它的基本形式中,一个2线程信号的双向内插的情况如下。利用帧P3、P4和P5的时间基准来除P5内的运动矢量,得出帧P4的正向和反向运动矢量,即分量方式(x和y分量)的正向运动矢量MVf计算为MVf=TR4-TR3TR5-TR3*MV5]]>其中,TRn表示帧n的时间基准,而MV5为一个从帧3到帧5的运动矢量分量。反向运动矢量MVb以同样的方式计算,但是比例因子的分子为TR5-TR4,而符号与原来的相反。然后,从两个时间方向预测受污染的区域,最终恢复的块是预测块的加权平均。同样,这些时间基准用作加权因子。在数学关系上,用下式构成帧P4(示为Pix4(i,j))的一个块的像素(i,j)Pix4(i,j)=(TR4-TR3)*Pix3(i+MVfX,j+MVfy)TR5-TR3]]>+(TR5TR4)*Pix5(i+MVbX,j+MVby)TR5-TR3]]>为了简单起见,这种方法假定P5中的运动矢量直接可用于P4内相应宏块位置,即不考虑在这个区域内受某个运动矢量影响的运动。这个假设纯粹是为了使这个例子简单而已。
图5例示了一个典型的双向内插方案。它示出的是一个非常简化的情况,其中帧P3内的黑条30已经移到帧P5内的右边,而颜色已经减淡(从而预测误差是非零的)。下标表示黑条30在帧n内的位置。在用双向内插构成帧P4″时,运动矢量MVf指出这个条在帧P3内的位置(303),而运动矢量MVb指出这个条在帧P5内的位置(305)。得到的条(304)的颜色为基准条的加权平均,而它的位置也是基准位置的加权平均。注意,为了简单起见,这个例子并不是基于块的。
为了进一步改善这个算法,可以进行以下改进1.将帧P3、P4″(或P4’)和P5在受污染的区域内逐块比较。如果在P3和P5内的空间位置相同的块是相同的(在P5内这个块可能已经作为一个“不编码的”块发送),而这个块与在P4’(或P4″)内的不同,这个块就很可能是受到污染的。如果这个差错先前没有检测到,必须也予以掩蔽。这种掩蔽可以用P5拷贝相应的块来执行,这产生与双向内插相同的效果,但是更为简单。
2.任何已经在帧P5内以INTRA模式编码的块应该从P5直接拷贝到P4’(或P4″),因为双向内插可以导致有害的不自然现象。
3.如果在P3与P5之间有一些在帧P4到P5的这段时间内实际上偶然发生的改变,这些改变不应该在掩蔽帧P4″反映出来。在这种情况下,从P3进行单向内插(即反向预测)可以产生较好的效果。这种情况可以通过比较P4的无差错的区域内的改变情况检测出来。例如,也为这些无差错区域执行双向内插,检验哪个方向产生更可接受的效果。此外,可以根据对无差错区域执行的测试内插得出一个附加的加权因子,给帧P3或P5更大的加权。
4.双向内插本身也可以通过用例如一些现有技术的解决方法,诸如边界像素匹配之类的,微调运动矢量进一步改善。这当然要求在P4内有无差错块,在匹配过程中可以使用。
如果帧P4完全丢失,就不能采用改进3和4。
以上就在视频序列的图象信息(即要显示的数据)中的差错讨论了差错掩蔽情况。本发明也适用于在视频数据的标题内出现差错的帧。按照惯例,这样的帧不会是可恢复的,解码器将请求一个INTRA帧。
图6例示了本发明的另一个实施例。如在其他的例子中那样,有两个独立的VRC线程。假定P2的图像标题在传输信道中受到污染,而解码器检测到这种污染。解码器等待下一个帧(P3),而不是马上就提出一个INTRA帧请求。P3是相对帧P1帧间编码的。因此,解码器确定受污染的帧P2前后是属于另一个VRC线程的帧,而且P3是从P1按时间预测的。因此,很可能P2也是一个INTER帧,而且可以用如上所述掩蔽方法参考未受污染的线程10a的帧P1和/或P3产生P2的一个估计。然后如普通情况那样继续解码。
如果H.263的基准图像选择模式的反向信道消息发送功能部件在用,解码器可以用信号告知整个P4图像受到污染,而且应该用P3作为一个进行编码的基准帧。发送编码器接收到这个反向信道消息后,用正确解码的P3作为基准对属于这个受污染的线程的下一帧(P6)编码。这样,解码流就完全恢复,而不需要传输一个INTRA帧。如果不能利用反向信道发送消息,解码流就在下一个VRC同步帧到达时完全恢复。此时,受污染的VRC线程内时间预测的起始基准为恢复了的帧P2。
因此,本发明意味着可以采用较长的线程,因为不太可能那样频繁地请求INTRA帧来恢复图像数据。这样就可以保持视频冗余编码的多层方法的压缩效率而不牺牲最终图像质量。
这些例子都是结合两个在相继同步帧之间各有三个帧的线程的情况进行说明的。然而,读者可以看到,本发明也适用于具有多于两个线程的实施例和具有多于或少于三个帧的线程。例如,图7示出了一个编码成三个各有3帧12的线程10a、10b和10c的视频信号。比方说线程10b的帧P5受到了污染。受污染的帧P5内的差错可以通过用未受污染的线程10a内的P4和/或未受污染的线程10c内的帧P6进行内插来掩蔽。
对于差错通过用帧P4和P6进行双向预测予以掩蔽的情况,正向运动矢量计算为MTf5=TR5-TR4TR7-TR4*MV7/4]]>其中TRn表示帧n的时间基准,而MV7/4为从线程10a的P7至P4的运动矢量的分量。反向运动矢量MVb以同样的方式计算,但是用另一个未受污染的线程10c,有MVb5=TR6-TR5TR6-TR3*MV6/3]]>然后,从两个时间方向预测受污染的区域,最终恢复的块是预测块的加权平均。同样,这些时间基准用作加权因子。
同样,为简单起见,这种方法假定用P4和P6得到的运动矢量直接可用于P4内的相应宏块位置,即不考虑在受某个运动矢量影响的区域内的运动。这个假设纯粹是为了使这个例子简单而已。
虽然这些图示出的是各线程会聚到单个同步帧14的情况,但是可以理解,可以为每个线程10a、10b、10c等各编一个同步帧。例如,在图7中线程10a包括帧0,1,4,7,10,11,14,17,20;线程10b包括帧0,2,5,8,10,12,15,18等;以及线程10c包括帧0,3,6,9,10,13,16,19等;而帧0,10,20等是同步帧14。然而,解码器只需要对每个同步帧14的一个事件解码。
图8示出了一个根据本发明的视频解码器的例子。所示的解码器配置成对一个编码成两个线程的视频序列解码。这个解码器包括一个对发来的信号进行缓存的缓存器30。VLC解码器32将发来的信号解码成量化的DCT系数后输出给逆量化器34,而将运动矢量信息解码后输出给运动补偿器35。逆DCT变换器36对来自逆量化器34的经去量化的DCT系数进行逆变换,输出预测数据。运动补偿器35按照运动矢量改变前一帧的图像数据。加法器38将变换器36输出的像素数据与来自运动补偿器35的前一帧的图像数据相加。所得到的图像数据然后输出给一个缓存器39,供随后显示用。
加法器38输出的图像数据还存储在一组帧存储器40a或40b内。开关42选择的存储器组由在解码的线程确定,即组40a存储来自线程10a的帧,而组40b存储来自线程10b的帧。运动矢量也存储在帧存储器组40a、40b内,供差错掩蔽用。
运动补偿器35从一组帧存储器中选择一个帧,这组帧存储器由要解码的帧确定,即如果线程10b的一个帧要解码,就将存储在帧存储器组40b内的前一帧送至运动补偿器35。
差错检测器44检测解码的视频数据内的差错。如果在VLC解码器32对一个帧解码期间检测到一个差错,解码器就启动一个如前面说明的差错掩蔽过程。差错检测器44的先前连接到输出缓冲器39的输出端现在转接到差错掩蔽部46。差错掩蔽部46参考另一个未受污染的线程的一个或几个帧对当前帧的受污染部分进行差错掩蔽,如上所述。然后,将这样恢复的帧输出给输出缓冲器39,供随后显示用。恢复的帧也存储在由解码器的处理器(未示出)控制的开关42确定的相应帧存储器组40a或40b内适当的位置。
所考虑的当前帧的受污染区域的位置也存储在帧存储器组40a、40b内。
帧存储器组40a、40b内通常都存储有两个帧,以便能分别从前一帧和后一帧在正向和反向两个方向进行差错掩蔽。然而,如果差错掩蔽只用单向预测,每个帧存储器组可以就包括一个帧存储器。
当然,可以为解码器配置多于两组的帧存储器,这样就可以对一个具有两个以上线程的多线程信号解码。
权利要求
1.一种掩蔽在一个视频序列的一个帧内的差错的方法,所述视频序列包括多个帧,编码成至少两个各表示所述视频序列的帧的一个子集的独立编码信号,所述方法包括下列步骤接收表示所述视频序列的一个帧的数据,标识在所述帧内的差错;通过用在标识有差错的之外的一个信号中编码的至少一个帧预测相应数据来掩蔽所述差错。
2.一种根据权利要求1的方法,所述方法还包括用所述视频序列内出现在标识有差错的帧之前和之后的帧预测相应数据,而所述之前和之后的帧编在标识有差错的之外的至少一个信号内。
3.一种根据权利要求2的方法,所述方法还包括用所述视频序列中所述标识有差错的帧的前一帧和后一帧预测相应数据,而所述前一帧和后一帧编在标识有差错的之外的至少一个信号内。
4.一种根据权利要求3的方法,其中所述标识差错的步骤包括将所述帧的一些与所述前一帧和后一帧相应的区域相比较,如果在所述前一帧和后一帧内空间位置相同的区域是相同的,而所述区域在所考虑的帧内是不同的,就认为所述区域是受污染的。
5.一种根据权利要求4的方法,其中所述差错通过拷贝所述后一帧的相应区域予以掩蔽。
6.一种根据任何权利要求2至5的方法,其中所述后一帧内任何以INTRA模式编码的区域直接从所述后一帧拷贝到所考虑的帧的相应区域。
7.一种根据任何以上权利要求的方法,所述方法还包括首先通过用在与标识有差错的帧相同的信号内在所述帧前出现的一个帧预测相应数据来掩蔽所述差错。
8.一种根据任何以上权利要求的方法,其中所述编码信号都包含标题信息,所述方法还包括标识一个帧的标题内的差错,确定所述帧是否为一个帧间编码帧,如果是的话,用编在标识有差错的之外的一个信号内的至少一个帧预测相应数据。
9.一种根据任何以上权利要求的方法,其中所述掩蔽差错的步骤包括为所述考虑中的帧的无差错区域执行双向预测,确定哪个方向的预测产生更可接受的效果。
10.一种根据权利要求9的方法,所述方法还包括根据对所述无差错区域执行的测试预测得出一个加权因子,给正向或反向预测较大的加权。
11.一种视频解压缩方法,所述方法包括下列步骤接收表示一个视频序列的至少两个信号,所述视频序列包括多个帧,而每个信号表示所述视频序列的帧的一个子集;对接收信号的各帧解码,产生表示所述视频序列各帧的数据;标识在所述视频序列的一个帧内的差错;通过用编在标识有差错的之外的一个信号内的至少一个帧预测相应数据来掩蔽所述帧内的差错;以及显示这些所述视频序列的各个帧。
12.一种掩蔽在一个视频序列的一个帧内的差错的视频差错掩蔽设备,所述视频序列包括多个帧,编码成至少两个各表示所述视频序列的帧的一个子集的独立编码信号,所述设备包括一个接收所述至少两个信号的输入端;标识在所述视频序列的一个帧内的差错的装置;以及通过用编在标识有差错的之外的一个信号中的至少一个帧预测相应数据来掩蔽所述差错的装置。
13.根据权利要求12的设备,其中所述掩蔽装置配置成用在所述视频序列中出现在标识有差错的帧之前和之后的帧预测相应数据,而所述之前和之后的帧编在标识有差错的之外的至少一个信号内。
14.根据权利要求13的设备,其中所述掩蔽装置配置成用在所述视频序列中标识有差错的帧的前一帧和后一帧预测相应数据,而所述前一帧和后一帧出现在标识有差错的之外的至少一个信号内。
15.根据权利要求12、13或14的设备,其中所述掩蔽装置配置成首先通过用在与标识有差错的帧相同的信号内在所述帧前出现的一个帧预测相应数据来掩蔽差错。
16.根据任何权利要求12至15的设备,其中每个编码信号包含标题信息,所述设备还包括标识在一个帧的标题内的差错的装置;以及确定所述帧是否为一个帧间编码帧的装置,而其中所述掩蔽装置配置成用编在标识有差错的之外的一个信号内的至少一个帧预测相应数据。
全文摘要
本发明所提出的设备和方法用来掩蔽一个视频序列的一个帧内的差错,所述视频序列包括多个帧,编码成至少两个各表示所述视频序列的帧的一个子集的独立编码信号(10a,10b)。这种方法包括:接收所述至少两个信号(10a,10b);标识在所述视频序列的一个帧(P4)内的差错;以及通过用编在标识有差错的之外的一个信号(10b)内的至少一个帧(P3,P5)预测相应数据来掩蔽所述差错。
文档编号H04N7/68GK1325594SQ99812987
公开日2001年12月5日 申请日期1999年10月27日 优先权日1998年11月2日
发明者M·汉努克赛拉, A·J·霍伦兰塔 申请人:诺基亚移动电话有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1