用以压缩视频信号的运动矢量处理器的制作方法

文档序号:7563976阅读:148来源:国知局
专利名称:用以压缩视频信号的运动矢量处理器的制作方法
技术领域
本发明涉及以逐数据块为基础对视频数据进行处理的运动补偿压缩设备,尤其是用于处理与独立的数据块相关的运动矢量。
当今在视频信号记录和传输中的潮流是趋于使用数字压缩技术。国际标准化组织在此趋势下发展了一系列设计为MPEG1和MPEG2等压缩信号规约。这些规约要求根据运动补偿预测技术压缩视频信号,其中的视频信号被分成相邻象素的矩阵,即数据块,并随之以数据块为基础对其信号处理。
在一典型的运动补偿的预测压缩连续图象中,它是从在先的压缩图象中被预测的。当前的图象是以逐个象素为基础从其相关的预测图象被减出,且其差或余数被编码以用于存储或传输。在产生该预测图象过程中,要将当前图象的数据块与预测图象的同样定幅的数据块作比较,直到找到最接近的数据块匹配为止。产生出一组运动矢量,这些矢量指示了最接近匹配其真实图象的预测图象的数据块。在主要部分中的两个数据块和运动矢量之间的差值形成被压缩的信息。然而,该余数可经过变换处理并经过可变长度及统计编码。
有关运动补偿预测压缩的详细资料可见由PeterA.Ruetz等人编的“高性能全运动视频压缩装置”,或HiroshiFujiwara等人编的“低比特率视频编码的全ASIC实施方案”以及Chaur-HehHsieh等人的“用于数据块匹配运动估算汇编的VLSI结构”。所有三篇文章均可见于“IEEE,用于视频技术的电话与系统”,(卷2,第二册,1992年6月)。
在诸如MPEG1的某些系统中,要对于是否编码一组运动的矢量作一个判定。这称作为一个MC/no-MC判定。
MC/no-MC判定之目的是针对压缩数据的每一个数据块来确定是选择出自运动估计搜寻(MC)的一个或几个运动矢量,还是反之选择(O,O)运动矢量(no-MC)。该MC/no-MC判定要应用于画面的每一个数据块。如在MPEG系统中那样,假如一特定的系统既执行正向的也执行反向的预测,则对于正向与反向运动矢量都要独立地作一个MC/no-MC判定。
这种no-MC运动矢量应该使用在MC运动矢量无用(不带有信息)及编码费用高的情况下,即其MC运动矢量趋于产生攒动噪声、且使得误差消除技术几乎无效的场合。这种情形尤其出现在象天空、或墙壁等平坦图象区域,此时的MC运动矢量趋于呈现为完全随机的,并且是在运动估计搜索期间随机噪声的结果出现在源图象中,而不是由于场景的变化。
通常,MC/no-MC的判定算法是基于预测误差。预测误差可以是在预测数据块和目标数据块之间的MAE(每象素的绝对误差均值)或MSE(每个象素的均方差)。通常,如果空间分布预测的数据块以及目标数据块产生最小的预测误差,就作一个no-MC判定。此外,如果产生在一数据块匹配搜索中的最小预测误差是由目标数据块和一个未经排列的数据块所产生、并且这一预测误差刚好比分布目标数据块和预测误差数据块的预测误差小一个预定电平的话,就进行no-MC判定。这种优选的门限电平需要通过对各个独立的系统做实验来确定。然而已经发现,若使用MSE作为预测误差,则一个为1的门限即表示好的结果。
如果对于一特定的数据块作为no-MC的判定,这就意味着设置为(O,O)的运动矢量。该矢量集可被编码成一个矢量,或余项数据的数据块并可被标志为一个no-MC数据块,而没有包括该矢量的必要,从而增加了压缩效率。
前述的MC/no-MC判定算法产生了非常令人讨厌的周边效果,此处称为“污窗效果”。对于在屏上的平坦区(其中是使用no-MC运动矢量),它的出现象肮脏的胶粘附着,可呈为很明显及令人讨厌。问题的起因是该no-MC运动矢量被用于几乎为平坦的区域,但事实它包含的是一个密度很低的图案模式,比如说是一个发灰的背景,或是一片云斑。可以通过降低使用在该判定中的门限来解决这一问题,然而这又会产生另一问题。由噪声引起的预测误差变得比该门限值大,且使得no-MC运动矢量很少被采用,会引起所描述的攒动噪声效应。
本发明旨在一种装置,其采用了MC/no-MC判定的长处而不招致不希望的“污窗”或“攒动噪声”效果。
本发明包括用于产生运动矢量的运动矢量产生装置,该矢量指示出图象间隔之间视频数据的单独的数据块的相对运动。该装置包括用于执行数据块匹配以产生单独的运动矢量的电路,以及根据诸如预测误差来执行一个MC/no-MC判定的装置。对应于多个相邻数据块的多个运动矢量可被同时地产生。利用与相邻数据块相关的运动矢量对与各自的数据相关的运动矢量作相关性检测。没有相关性存在且对其已作了MC/no-MC判定的那些运动矢量则被转变为零值运动矢量。


图1是包括实现本发明的矢量产生装置的视频信号压缩装置的方框图。
图2是部分地描述图1中运动矢量产生装置操作的流程图。
图3是图2中“相关判定”框的流程图,图4,5和6是用于本发明描述的矢量图。
本发明的MC/no-MC处理器是设计用来在选择no-MC运动矢量的场合时避免引起污窗效应。在污窗效果出现的种种场景中已经观察到,既使是选择了no-MC运动矢量的那些区域中其运动矢量场也是相互有关连的。另一方面,在那些选择了no-MC运动矢量而无污窗效应出现的区域中,该运动矢量场明显地呈现为十分随机。根据这种观察可以推断,围绕着每一个数据块的运动矢量场的相关性是一个很好的指示,它指示出被转变成no-MC矢量的MC矢量在实际上是主要的,而这种情况下不应该选no-MC运动矢量。
下面是一个已被发现提供满意结果的一个典型的相关性判据。如果一个MC运动矢量几乎与相邻数据块的运动矢量中的至少一个相等,则该MC运动矢量就被认作是相关。相邻数据块是指紧靠在所考虑的数据块的上、下、左和右的那些数据块。除去那些处于图象的边缘或顶角处的数据块以外,只有两个或三个相邻数据块,一般的数据块都有四个相邻数据块。说到几乎相等,是意味着该运动矢量的X和Y坐标方向上的以半象素为单位的绝对差值是小于或等于一个门限值(一个典型门限值是2)。如果MC运动矢量是相关的,则总是选择MC运动矢量。如果MC运动矢量是不相关的,则要根据预测误差的相对值作一个MC/no-MC的判定。
为实现这种新的MC/no-MC判定处理,需要存储视频数据的数据块的三行的运动矢量,而且要根据其相关性,在作出MC/no-MC判定之前必须算出数据块的一行的运动矢量。然而,通过采用这种MC/no-MC判定过程的简化变换,有可能简化其硬件方案。在这种简化的变换中,所要考虑的相邻的数据块是处在当前数据块上边或左边的数据块,还可能是右边的数据块,这是由于这种考虑只有极小的附加延时。这样的一个简化变换,虽不象减小存储器内存需求那样效果明显,但可实现好的造价-获益比。
图4示出了最佳的方案,其中的单独的数据块代表的是对应于单独的相邻图象区的视频数据的数据块。图中所示为数据块三行中的一部分,此种情形下,是以指示为C的数据块作为当前数据块。箭头用来表示每个数据块的运动矢量。在本最佳实施例中,是将数据块C的运动矢量与数据块T、B、R和L的运动矢量作比较。这就要求用于至少两行的运动矢量再加上一个数据的数据块的存储量。
图5示出了一种简化了的方案,它要求对用于数据块的一行的运动矢量的存储。图5中建议了几种方案,所有这些方案均属可行且产生可接受的结果。这些方案之一是确定矢量VC和矢量VL和VT之间的相关性。另一种方案是检测矢量VC与矢量VT-,VT,VT+和VL之间的相关性。再一种方案是检测矢量VC和矢量VL之间的相关性。这后一种方案实际上不要求数据存储并就只在使用预测误差而执行MC/no-MC判定的方法上提供了改进。
图6是指示矢量相关之方法的一部分。假设每一矢量都被以相关项定义,这种相关项描述了在目标位置和在X和Y分量值的预测数据块之间在坐标中的差异。一个求差(differencing)装置确定了在矢量VC和相邻矢量Vi之间的差△x和△y的幅度。如果对于一相邻矢量而言所确定的绝对值差值|△Xi|和|△Yi|都是小于一个门限值,则矢量VC被认为与矢量Vi相关,且对于一个数据块C不能实行MC矢量到no-MC矢量的转换。
应当注意,在前述的讨论中,视频数据已经表示为是在数据块中,并且运动矢量与各自的数据块相关联。在MPEG信号规约中,数据的多个数据块是被利用与一个宏数据块相关联的单一运动矢量而排列成一个宏数据块的。在所讨论的术语中,采用诸如MPEG的系统,其术语“数据的宏数据块”是可以和术语“数据的数据块”交换使用。
图1示出了用于实现本发明的装置的实例。在图1中,单元10-18表示公知的运动补偿预测视频信号压缩系统。暂不考虑瞬间单元100-102,视频信号被加入到端口10并被耦合到减法器11的一个输入端。由预测器17提供的表示预测图象的一个视频信号加到减法器11的另一个输入端,形成图象差,或余数。这些余数加到离散余弦变换装置12,它将所加的余数变换成表示空间频率的系数。该余数由量化器13量化,然后加到行程及统计编码器19。该量化的、行程及统计编码的数据被加到一个信号格式器14,它将该已编码的信号数据及同步信号排列,以用于存储或传输。
来自单元13的量化数据被加到反相量化器15和一个反离散余弦变换器16的级连组合,它们分别执行单元13和12的求反功能。由反离散余弦变换器16所提供的信号和由减法器11所提供的余数是相对应的。这些余数被耦合到运动补偿预测器17,而且被认为它至少含1帧的存储器。该存储器含最后的预测图象。从在预测器17的存储器及反离散余弦变换器16来的相对应的数据的数据块被以象素为基础而相加汇总,以产生一个新的预测图象。
运动矢量发生器18根据已知的数据块匹配技术产生运动矢量。该运动矢量被耦合到信号格式器14,在那里,与视频数据的数据块相乘,重复组合以形成一个压缩的数据流。
本发明中,运动矢量在被送到格式器14以前,要使其经历进一步的相关性检测。为完成这种相关性检测,用于单独的数据块的运动矢量被存储在存储器100中。矢量发生器18根据预测误差执行一个MC/no-MC判定,但不将任何MC矢量转变成no-MC矢量。而是由矢量产生器18发生一个标志位,指示一个特定的MC矢量是将被转变成一个no-MC矢量的选中矢量。这些标志位被与运动矢量相关地存储在存储器100中。如果该系统象图4中所示的那样被排列成数据块的三行范围上相关矢量,则存储100必须具有足够的存储器来存储这些矢量以及用于两行数据块的标志位。另一种情况是,如果系统被用来在数据块的两行上执行矢量的相关,则存储器100必须包括足够的存储空间以存储一行的矢量及相关的标志位。
用于单独的数据块的标志位实际上是经MC/no-MC判定单元102从存储器100中取存的。如果一个标志位指示是一个用于MC/no-MC转换的被选数据块,则判定数据块102执行一个矢量相关性判定。随之,如果单独的被选MC矢量被判定为和与一相邻数据块相关的任何矢量不相关,则该MC矢量被转换,即变换成一个no-MC矢量。
图2是描述运动矢量发生器18的操作流程图。在每一个视频场/帧的起始,发生器被复位(步骤200)。一个数据块变址寄存器K置为零(步骤201)系统随之存第一数据块(步骤202)。步骤203执行一个数据块匹配处理,以产生用于数据块K的矢量。在步骤204检测数据块匹配预测误差以确定用于数据块K的矢量是否为用于一个MC矢量到no-MC矢量的转换的选用数据块。如果该矢量是用于转换的矢量,标志位在步骤207被置1,如果不是,则该标志位在步骤206置0。数据块K的矢量以及相关的标志位在步骤208被存储于一存储器中,在步骤209作一相关性的判定,以确定其环绕的矢量是否属相关的及该标志位是1还是0,以及是否将MC矢量转换成一个no-MC矢量。索引寄存器K在步骤210中递增1并且该已递增的寄存器在步骤211被检测,以确定是否在当前帧中的所有的数据块已被处理过了。如果是的话,则返回步骤200,若否,则到步骤201。
图3示出了包含在相关性判定步骤209中的处理过程。依照一个数据块在一帧中所处位置的不同,它可能是也可能不是处在适于作矢量相关性确定的位置。例如,如果当前经历检验的数据块是处在一帧中的数据块的顶行,其上方再没有数据块,因而也就不存在与之方便地被相关的矢量。因此,相关性处理的第一步骤300是来确定是否现行数据块是在对于该数据块要做一矢量相关性的一帧区域内。在最简单的模式中,这可能是来确定是否该数据块数大到足以是第二行中的一个数据块并足够小,以是在该帧中。
一旦这种确定完成,与数据块K相关的标志位从存储器中取出(步骤301)并被查验(步骤302),以确定它是1还是0。如果是0(不作为MC/no-MC转换的选用数据块),无需做任何事情,且在步骤203中确定的矢量被输出(步骤301)以用于压缩处理。另一方面,如果该标志位是1,索引寄存器i在步骤303中被置为n,此处的n可以等于在一行数据块中的数据块数。用于数据块K和K+i的矢量以存储器中取出并加以处理(步骤304)。在步骤305中对来自数据块K和K+i矢量间的相关性作检测。如果在其矢量间存在相关性,则与数据块K相关的矢量不被转变成no-MC矢量,并在步骤311中将原有矢量输出,以使用在压缩处理中。如果来自数据块K和K+i的矢量无相关性,则在步骤306对索引寄存器i作检测,以确定是否全部相邻数据快都被检测了。如果是都被检测了,数据块K的运动矢量在步骤309被转变成no-MC矢量,并在步骤310输出以使用在压缩处理中。如果不是所有的相邻矢量已被检测,变址寄存器i在步骤307被相应地改变,以便验证被取出来在步骤304进行相关性测试的下一个相邻的矢量。最好是索引变址寄存器i以这样一种方式来被改变,在这种方式中,它配合出现在各自帧的边缘的数据块并指示出其矢量将被检测的恰当的数据块,例如在4中考虑数据块C时的数据块T、L、R和B。
在某种压缩系统中,如果用于一特定数据块的某些运动矢量指示出,最接近的与预测数据块匹配的目标数据块是共置于一起的,该数据块的编码可被指示为未经运动补偿的,并无运动矢量可与此相关。这种结果与提供一个零值运动矢量有相同的效果。因而在所附的权利要求中,是打算运动矢量变成零值的运动矢量的转换视为等效于将数据的一个运动补偿的数据块改变成具有或不具有运动矢量的一个非运动补偿编码数据块。
权利要求
1.在视频信号压缩装置中,以数据块为基础处理视频数据并通过数据块匹配处理产生与单独的数据块相关的运动矢量,运动矢量处理装置的特征在于装置(18),响应在所说的数据块匹配过程中产生的参数以确定分别的非零运动矢量(MC)的哪些属于用来转换成零值运动矢量(no-MC)的选定矢量;和,装置(100,102),用于确定与在和选用运动矢量(MC)关联的数据块关联的相邻数据块中的数据块关联的运动矢量是否相关,以及确定这些矢量是否为不相关,并用于转换所说的选用运动矢量(MC)变为零值运动矢量(no-MC)。
2.如权利要求1的装置,特征在于所述装置包括用于存储与单独的数据块关联的运动矢量的装置;和用于同时地从多个数据块存取运动矢量的装置。
3.如权利要求1的装置,其特征在于所说的运动矢量包括正交分量,并且所说的用于确定矢量是否相关的装置包括用于确定运动矢量(MC)的正交分量和一个相邻数据块的一个运动矢量的正交分量之间的差值是否都小于一预定值的装置。
4.如权利要求1的装置,其特征在于所说的用于确定运动矢量是否相关的装置还包括有装置,用于借助与多个相邻数据块关联的运动矢量执行一个相关性确定,并假若就与所说的多个相邻数据块的任何一个都没有检测到其相关性的话,该装置用于转换所说的选用运动矢量(MC)。
5.在视频信号压缩装置中,以数据块为基础处理视频数据并通过数据匹配处理产生与单独的数据块相关的运动矢量,装置特征在于,用于确定来自相邻数据块的运动矢量是否为相关,并将不相关的运动矢量的一些转换成零值运动矢量。
全文摘要
一个视频信号压缩器包括用于产生对于视频数据的单独数据块的运动矢量的装置(11—17)。运动矢量(不属于对在其它帧中的共位置数据块提供(18)方向的那些矢量)的某些被确定为选用矢量,以转换成提供共位置的数据块之方向的矢量。然而,如果矢量被确定与相邻运动矢量的一个为相关时,转换被排除(100,102)。
文档编号H04N7/36GK1095878SQ94102289
公开日1994年11月30日 申请日期1994年3月11日 优先权日1993年3月12日
发明者T·萨瓦蒂埃 申请人:汤姆森消费电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1