CN1906945A - 用于可缩放视频编码和解码的方法和装置 - Google Patents
用于可缩放视频编码和解码的方法和装置 Download PDFInfo
- Publication number
- CN1906945A CN1906945A CNA2004800409041A CN200480040904A CN1906945A CN 1906945 A CN1906945 A CN 1906945A CN A2004800409041 A CNA2004800409041 A CN A2004800409041A CN 200480040904 A CN200480040904 A CN 200480040904A CN 1906945 A CN1906945 A CN 1906945A
- Authority
- CN
- China
- Prior art keywords
- frame
- time
- redundancy
- grade
- frames
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
- H04N19/615—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding using motion compensated temporal filtering [MCTF]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/31—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/63—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
公开了可缩放视频编码算法。用于视频编码的方法包括:以与其解码顺序相同的顺序对帧进行时间滤波,以消除时间冗余;从消除了时间冗余的帧获得并量化变换系数;以及生成位流。视频编码器包含时间变换单元、空间变换单元、量化单元和位流生成单元,以执行该方法。用于视频解码的方法基本上与视频编码的顺序相反。视频解码器通过解释所接收的位流并且对其进行解码,来提取视频解码所必需的信息。因此,可以通过允许解码器解码所生成的位流,在编码器端上保持时间可缩放性的同时生成视频流。
Description
技术领域
本发明通常涉及视频压缩,尤其涉及这样的视频编码算法,其中编码处理中的时间滤波顺序在解码处理中被倒转。
背景技术
包括国际互联网在内的信息通信技术的发展已经导致视频通信、以及文本和声音通信的增加。然而,消费者对现有的基于文本的通信方案已经不感到满足。为了满足消费者,已经逐渐地提供包含包括文本、画面、音乐等在内的各种信息的多媒体数据。多媒体数据通常是量大的,使得其需要具有大容量的存储介质。此外,传输多媒体数据需要较宽的带宽。例如,具有640×480分辨率的24位真彩色画面需要每帧640×480×24的容量,即大约7.37兆位的数据。在这方面,需要大约1200千兆位的带宽,以便以30帧/秒的速度传输这个数据,并且需要大约1200千兆位的存储空间,以便存储具有90分钟长度的电影。考虑到此,在传输包括文本、画面或者声音在内的多媒体数据时,有必要使用压缩编码方案。
数据压缩的基本原理是消除在数据之间的冗余。数据冗余意味着三种类型的冗余:空间冗余、时间冗余、和知觉-视觉冗余。空间冗余是指在图像中相同颜色或者对象的重复,时间冗余是指在移动画面帧中的相邻帧之间没有或几乎没有变化、或者音频中的相同声音的连续重复,而知觉-视觉冗余是指人们的视觉和感觉对高频变迟钝。通过消除这些冗余,可以压缩数据。取决于源数据是否丢失,数据压缩的类型可以分为有损/无损压缩;取决于相对于每帧是否独立地压缩数据,数据压缩的类型可以分为帧内/帧间压缩;并且,取决于数据的压缩和还原是否需要相同的时间段,数据压缩的类型可以分为对称/非对称压缩。此外,当在压缩和解压缩中的总共端到端延迟时间不超过50毫秒时,这被称为实时压缩。当帧具有各种分辨率时,这被称为可缩放压缩。无损压缩主要用于压缩文本数据或者医学(medical)数据,而有损压缩主要用于压缩多媒体数据。另一方面,帧内压缩通常用于消除空间冗余,而帧间压缩用于消除时间冗余。
传输多媒体数据的相应传输介质依据介质而具有不同的容量。当前使用的传输介质具有各种传输速度,涵盖能够每秒传输数十兆位数据的超高速通信网络、以及具有每秒384千位的传输速度的移动通信网络等。在传统的视频编码算法例如MPEG-1、MPEG-2、H.263或者H.264中,通过基于运动补偿预测编码方案的运动补偿来消除时间冗余,并且通过变换编码方案来消除空间冗余。这些方案在压缩方面具有良好的性能,但是它们对于真正的可缩放位流几乎不具有灵活性,这是因为,这些方案中的主要算法采用递归法。为此原因,最新的研究已经针对于基于小波的可缩放视频编码。可缩放视频编码是指具有可缩放性的视频编码,该属性允许解码压缩的位流的部分。因为这个属性,可以从位流中获得各种视频。此处使用的术语“可缩放性”总体上是指可用于控制视频分辨率的空间可缩放性、可用于控制视频质量的信噪比(SNR)可缩放性、以及可用于控制视频的帧频的时间可缩放性,以及它们的组合。
在基于小波的可缩放视频编码方案中使用的各种技术当中,由Ohm(J.R.Ohm所著,1994年9月,IEEE Trans.Image Proc.,Vol.3,No.5,“Three-dimensional subband coding with motion compensation”)所提出并且由Choi和Wood(S.J.Choi和J.W.Woods,1999年2月,IEEE Trans.Image Proc.Vol.8,No.2,“Motion compensated 3-D subband coding of video”)改进的运动补偿时间滤波(MCTF)是具有时间灵活性的用来消除时间冗余并执行可缩放视频编码的核心技术。在MCTF中,在画面组(GOP)的基础上执行编码操作,而且沿运动方向对当前帧和参考帧对进行时间滤波。将参考图1更详细地描述这种技术。
图1图解了在采用MCTF方案的可缩放视频编码和解码处理中的时间分解(temporal decomposition)。
在图1中,L帧指示低频或者平均帧,而H帧指示高频或者差别帧。如此处说明的那样,为了执行编码处理,首先,对在最低时间等级上的帧对进行时间滤波,以由此将低时间等级上的帧变换为较高时间等级上的L帧和H帧,并且,再次对已变换的L帧对进行时间滤波,并且将其变换为在较高时间等级上的帧。
编码器使用已经通过了小波变换的、在最高等级上的L帧和H帧而生成位流。编码顺序从较低等级上的帧到较高等级上的帧进行操作。解码器通过以从较高等级上的帧到较低等级上的帧的次序而操作通过逆小波变换获得的暗色帧,来恢复帧。通过使用在第三时间等级上的L帧和H帧来恢复在第二时间等级上的两个L帧,并且,通过使用在第二时间等级上的两个L帧和两个H帧来恢复在第一时间等级上的四个L帧。最终,通过使用在第一时间等级上的四个L帧和四个H帧来恢复八个帧。采用原始MCTF方案的视频编码具有时间上灵活的可缩放性,但是它可能具有一些缺点,如在单方向运动估计方面的不良性能、以及在低时间速率上的低质量等。已经进行了许多研究努力来改进这些缺点。它们之一是由Turaga和Mihaela(D.S.Turaga和Mihaelavan der Schaar所著,2002年,ISO/IEC JTC1/SC29/WG11,MPEG03/M8388,“Unconstrained motion compensated temporal filtering”)所提议的无约束MCTF(UMCTF)。将参考图2描述UMCTF。
图2图解了在采用UMCTF方案的可缩放视频编码和解码处理中的时间分解。
在UMCTF方案中,有多个参考帧和双向滤波可用,由此提供了更一般的框架。此外,在UMCTF方案中,通过使用未滤波帧(A帧)的适当插入,非二值的时间滤波是可能的。代替已滤波的L帧,A帧的使用提高了在较低时间等级上的视觉质量,这是因为,由于缺乏精确运动估计,有时L帧的视觉质量会严重地降低。在过去的研究中,许多试验结果已经示出,没有更新步骤的UMCTF具有比原始MCTF更好的性能。为此原因,虽然最一般形式的UMCTF允许低通滤波器的自适应选择,但是一般使用没有更新步骤的UMCTF的特定形式。
解码器端可以利用使用基于MCTF(或者UMCTF)的可缩放视频编码算法压缩的视频流,来恢复具有灵活的时间可缩放性的视频序列。例如,当仅仅解码时间等级3的L(或者A)帧时,图1(或者图2)中的解码器端可以恢复具有1/8帧频的视频流,直到仅仅解码了时间等级2的L(或者A)帧为止,它可以恢复具有1/4帧频的视频流,直到仅仅解码了时间等级1的L(或者A)帧为止,它可以恢复具有1/2帧频的视频流,并且,当通过逆时间滤波将时间等级1的H帧全部恢复到L(或者A)帧时,它可以存储具有原始帧频的视频流。
技术问题
然而,当使用传统的基于MCTF(或者UMCTF)的可缩放视频编码算法压缩视频时,编码器端不具有灵活的时间可缩放性。参见图1(或者图2),因为在传统的方案中,已经由编码器端从较低时间等级上的帧到较高时间等级上的帧而执行了时间滤波,所以,编码器可能不具有时间可缩放性。这是因为,当在解码处理中执行逆时间滤波以允许解码器端恢复视频序列时,基于最高时间等级(时间等级3)上的L(或者A)帧恢复其它帧。在传统的方案中,仅仅在通过整个编码处理之后获得最高时间等级上的帧,因此,由于操作性能或者其它原因,编码器端不能暂停时间滤波。
为此原因,需要允许编码器端具有时间可缩放性的视频编码算法。
发明内容
因此,已经构思了本发明以满足上述需要。本发明的一个方面是提供视频编码和解码方法以及装置,其中编码器端具有时间可缩放性。
按照本发明的示范实施例,提供了一种用于视频编码的方法,该方法包含:(a)从在最高时间等级上的帧顺序地开始,接收构成视频序列的多个帧,并且在GOP的基础上消除帧之间的时间冗余;以及(b)通过量化从已经消除了时间冗余的帧获得的变换系数,生成位流。
对于步骤(a)中的在相同时间等级上的帧,可以从具有最小索引的帧(具有最早时间性的帧)到具有最高索引的帧(具有最晚时间性)的帧消除其时间冗余。
在构成GOP的帧之中,在最高时间等级上的帧可以是在GOP中具有最小帧索引的帧。
在步骤(a)中,当消除了构成GOP的帧之间的时间冗余时,可以将在最高时间等级上的第一帧设置为“A”帧,可以从最高到最低时间等级的顺序消除在不同于最高时间等级上的“A”帧的GOP的帧之间的时间冗余,并且,当帧处于同一时间等级时,可以从最低到最高帧索引的顺序消除时间冗余,其中,在处于较高或者相同时间等级上的帧当中,在消除时间冗余的过程中可以由每个帧参考的一个或者多个帧具有较高的帧索引。
在消除时间冗余的过程中,可以将一个帧添加到由每个帧参考的帧中。
在消除时间冗余的过程中,可以将属于下一GOP、在较高时间等级上的一个或者多个帧添加到由每个帧参考的帧中。
该方法还可以包含:消除多个帧之间的空间冗余,其中所生成的位流还包含有关空间冗余消除和时间冗余消除的顺序(冗余消除顺序)的信息。
按照本发明的另一个方面,提供了一种视频编码器,包含:时间变换单元,以最高到最低时间等级的顺序接收多个帧,并且消除这些帧的时间冗余;量化单元,量化在消除帧之间的时间冗余之后获得的变换系数;以及位流生成单元,通过使用量化的变换系数生成位流。
时间变换单元可以包含:运动估计单元,从所接收的多个帧中获得运动矢量;以及时间滤波单元,通过使用运动矢量,在GOP的基础上关于所接收的多个帧执行时间滤波,该时间滤波单元以最高到最低时间等级、或者在同一时间等级上以最低到最高帧索引的顺序,并且通过参考已被时间滤波的帧的原始帧,在GOP的基础上执行时间滤波。
时间滤波单元还可以包含:在当于时间滤波的处理中消除帧之间的时间冗余时所参考的参考帧之中,在时间滤波的处理中的每个帧。
视频编码器还可以包含:空间变换单元,其消除多个帧之间的空间冗余,其中位流生成单元组合有关消除时间冗余和空间冗余的顺序的信息,以获得变换系数,并且生成位流。
按照本发明的再一个方面,提供了一种用于视频解码的方法,包含:(a)通过接收和解释位流,提取有关已编码的帧以及冗余消除顺序的信息;(b)通过逆量化有关已编码的帧的信息,获得变换系数;以及(c)与冗余消除顺序相反地,通过变换系数的逆空间变换和逆时间变换来恢复已编码的帧。
在步骤(a)中,还从位流中提取有关每GOP的已编码的帧的数目的信息。
按照本发明的再一个示范实施例,提供了一种视频解码器,包含:位流解释单元,其解释所接收的位流,以从中提取有关已编码的帧的信息、以及冗余消除顺序;逆量化单元,其对有关已编码的帧的信息进行逆量化以从中获得变换系数;逆空间变换单元,其执行逆空间变换处理;以及逆时间变换单元,其执行逆时间变换处理,其中通过参考冗余消除顺序、与已编码的帧的冗余消除顺序相反地,对于变换系数而执行逆空间处理和逆变换处理,恢复位流的已编码的帧。
按照本发明的另一个示范实施例,提供了一种存储介质,在其上记录一种程序,该程序可由计算机读取以便根据上述示范实施例中的任何一个执行视频编码或者解码。
附图说明
根据以下结合附图的详细描述,本发明的上述及其它目的、特征和优点将被更清楚地理解,附图中:
图1图解了在采用传统MCTF方案的可缩放视频编码和解码处理中的时间分解;
图2图解了在采用传统UMCTF方案的可缩放视频编码和解码处理中的时间分解;
图3图解了在根据本发明的示范实施例的可缩放视频编码和解码中的时间分解;
图4图解了在根据本发明的另一个示范实施例的可缩放视频编码和解码中的时间分解;
图5图解了图4中的分级编码(或者解码);
图6图解了在保持编码器端的可缩放性的同时进行编码的过程中,在帧之间的可能连接;
图7图解了根据本发明的另一个示范实施例的在相邻GOP的帧之间的参考,其用来增加编码效率;
图8图解了根据本发明的另一个示范实施例的用来增加编码效率的多个参考模式;
图9图解了当使用多个参考模式时的分级结构和帧类型;
图10图解了根据图9的示范实施例的在具有高波动的视频序列中的视频编码的示例;
图11图解了根据图9中的示范实施例的在具有较小波动的视频序列中的视频编码的示例;
图12是说明根据本发明的示范实施例的可缩放视频编码器的构造的功能框图;
图13是说明根据本发明的另一个示范实施例的可缩放视频编码器的构造的功能框图;以及
图14是说明根据本发明的示范实施例的可缩放视频解码器的构造的功能框图。
具体实施方式
在下文中,将参考附图对本发明的示范实施例进行详细的描述。
可缩放视频编码算法在GOP(画面组)的基础上压缩帧。取决于编码算法,可以不同地确定GOP的大小(构成GOP的帧的数目),但是其优选被确定为2n(n是自然数)。在后面将要描述的本发明的示范实施例中,假定GOP具有8个帧;然而,这仅仅是示例。在这方面,即使GOP大小改变了,但只要它暗含本发明的技术思想,这也应当被推断为落入授予本发明的保护范围之内。
图3图解了在根据本发明示范实施例的可缩放视频编码和解码中的时间分解。
参见图3,编码和解码中的时间分解(即,时间滤波)都按顺序从较高的时间等级到较低的时间等级执行。由编码器端按顺序从较高时间等级上的帧到较低时间等级上的帧进行的时间分解构成了本发明不同于传统技术的主要特征。因此,根据本发明,编码器端还可以实现时间可缩放性。
下面,将更详细地描述编码处理。
图中所示的“A”帧是指未在时间滤波中被滤波的帧。换句话说,“A”帧可能是指还没有执行其基于预测的时间滤波的帧。图中所示的“H”帧是指已经执行其时间滤波的帧。构成“H”帧的每个宏块包括有关差别的信息,其中,该差别通过与对应于作为参考目标的帧(以下称为“参考帧”)的宏块进行比较而获得。
首先,时间等级为3的索引对编号为0的帧(以下称为“0号帧”)编码,其中通过仅仅执行空间变换、而不执行时间滤波,来执行编码。通过参考未编码的存储在缓冲器中的原始的0号帧,对4号帧进行时间滤波。已经执行了其时间滤波的4号帧中每个块在其上记录有关在与原始的0号帧相对应的块之间的差别的信息。也就是说,通过参考原始的0号帧对2号帧进行时间滤波,并且通过参考原始的4号帧对6号帧进行时间滤波。以同样方式,对在时间等级1上的帧进行时间滤波。也就是说,分别通过参考原始的0、2、4和6号帧对1、3、5和7号帧进行时间滤波。在对它们进行时间变换之后,通过量化处理而压缩还没有执行时间滤波的0号帧、以及执行了时间滤波的0到7号帧(具有暗色的帧)。将在时间滤波处理中获得的有关运动矢量的信息、以及其它必要的信息添加到压缩信息中,以生成位流,并且通过传输介质将该位流传输到解码器端。
将更详细地描述解码处理。具有暗色的帧是指从位流中获得的已编码的帧,而白帧是指通过解码处理恢复的帧。
首先,解码在时间等级3上的0号帧(通过执行逆量化和逆时间变换恢复原始的0号帧)。通过逆时间滤波,将通过参考所解码的原始的0号帧而被时间滤波的4号帧恢复到原始的4号帧。然后,关于在时间等级2上时间滤波的帧执行逆时间滤波。对于通过参考所恢复的原始的0号帧时间滤波的、在时间等级2上的帧而执行逆时间滤波,并且通过参考所恢复的原始的4号帧而对已时间滤波的6号帧进行逆时间滤波。以同样方式,对已时间滤波的在时间等级1上的帧进行逆时间滤波。也就是说,通过参考所恢复的原始的0、2、4和6号帧,对1、3、5和7号帧进行逆时间滤波。
根据上述示范实施例,可以生成与传统的基于MCTF的可缩放视频解码器兼容的视频流。然而,应当注意到,根据上述示范实施例编码的位流可能不意味着其与传统基于MCTF的可缩放视频解码器完全兼容。此处,术语“兼容”意指与传统MCTF方案中的帧对相比较而分解、且不利用帧对的平均值来更新的低频子带可以与用于恢复以MCTF方案编码的视频流的解码器兼容,其中该MCTF方案采用不对原始帧进行时间滤波的编码方案。
为首先描述解码器端的时间可缩放性,当解码器端已经接收了已编码的帧时,它可恢复在时间等级3上的0号帧。如果暂停解码,则可以获得具有1/8帧频的视频序列。在恢复了时间等级3上的0号帧之后,如果在已经恢复了在时间等级2上的4号帧时暂停解码,则可以获得具有1/4帧频的视频序列。以同样方式,可以获得具有1/2帧频以及原始帧频的视频序列。
接下来,将描述根据本发明的编码器端的时间可缩放性。如果编码器端对时间等级3上的0号帧进行编码,并且在编码处理处于暂停时(其在GOP的基础上暂停)将编码的0号帧传输到解码器端,则解码器端可以恢复具有1/8帧频的视频序列。如果编码器端对时间等级3上的0号帧进行编码、对4号帧进行时间滤波、并且在编码处理处于暂停时将编码的0和4号帧传输传输到解码器端,则解码器端可以恢复具有1/4帧频的视频序列。同样地,如果在对时间等级2上的2和6号帧进行时间滤波和编码之后,在编码处理处于暂停时将编码的0、2、4和6号帧传输到解码器端,则解码器端可以恢复具有1/2帧频的视频序列。根据本发明,甚至在需要实时编码的应用中、由于对于编码器端所进行编码来说的不足的操作性能、或者其它原因而不足以对GOP中的所有帧进行实时操作的情况下,即使编码仅仅是由还没有校正编码算法的编解码器对于传送到解码器端的部分帧进行的编码,解码器端也可以恢复任何具有较低帧频的视频序列。
图4图解了在根据本发明的另一个示范实施例的可缩放视频编码和解码中的时间分解。
这个示范实施例说明了将根据本发明的视频编码算法应用于基于UMCTF的可缩放视频编码处理的示例。
将图2所示的基于UMCTF的视频编码和解码与图4中的那些内容进行比较,可以得知编码器端有不同的编码顺序。也就是说,从较高时间等级上的帧到较低时间等级上的帧顺序地执行编码器端的时间滤波。下面将更详细地对其进行描述。
首先,不对最高时间等级上的0号帧进行时间滤波,而是仅仅进行编码。然后,通过参考原始的0号帧对4号帧进行时间滤波。然后,通过参考原始的0和4号帧对时间等级2上的2号帧进行时间滤波,并且通过参考原始的4号帧对6号帧进行时间滤波。通过参考两个帧对某一帧进行时间滤波暗指通过所谓的双向预测对该帧进行时间滤波。此后,通过参考原始的0和2号帧对时间等级1上的1号帧进行时间滤波,通过参考原始的2和4号帧对3号帧进行时间滤波,通过参考原始的4和6号帧对5号帧进行时间滤波,并通过参考原始的6号帧对7号帧进行时间滤波。
解码处理用来以与编码处理中相同的顺序、通过逆时间滤波恢复视频序列。
如图3所示的实施例所说明的,在这个示范实施例中,编码器端和解码器端可以具有时间可缩放性。由于在图4中图解的实施例中使用了基于双向预测的时间等级,所以,与根据图3的视频压缩相比,根据这个示范实施例的视频压缩可以提高压缩效率。
图5图解了分级编码(或者解码)。
为了易于理解本发明,图4中图解的示范实施例可以图5中的那样以分级方式绘出。
如所说明的,在每个时间等级上的全部帧都表示为节点,而且在它们之间的参考连接用箭头表示。为了相对于编码处理描述图5,其暗指与箭头从其引出的节点相对应的原始帧可以是用于另一帧的时间滤波的参考帧。与箭头到达的节点相对应的帧可以是通过参考从其引出该箭头的节点的原始帧来时间滤波的高频子带。为了相对于解码处理而描述它,与从其引出箭头的节点相对应的原始帧可以是用于其它帧的逆时间滤波的参考帧,而且与箭头所到达的节点相对应的帧可以是高频子带,其可随时通过参考从中引出箭头的节点的原始帧(恢复的帧)、通过逆时间滤波而恢复到原始帧。从编码器端来看,术语“原始帧”可以指在执行时间滤波之前的帧,但是从解码器端看,它也可以指通过已编码的帧的逆滤波而恢复的帧。
如所说明的,在每个时间等级中可仅布置必需的帧。例如,示出了仅仅GOP的帧当中的一个帧进入最高时间等级。在这个示范实施例中,0号帧具有最高时间等级,这是因为它被认为与传统的UMCTF兼容。如果具有最高时间等级的帧索引不为零(0),则由编码器端和解码器端进行的时间滤波处理的分级结构可以不同于图5中所绘出的结构。参见这个图,当GOP大小为8时,0号帧被编码为不在最高时间等级上执行时间滤波的A帧,并且,在下一个时间等级上,通过参考0号帧的原始帧,4号帧被编码为高频子带。然后,通过参考0和4号帧的原始帧,2号帧被编码为高频子带,并且,通过使用4号帧的原始帧,6号帧被编码为高频子带。同样地,通过使用0、2、4和6号帧,1、3、5和7号帧被编码为高频子带。
在解码处理中,首先解码0号帧。然后,通过参考恢复的0号帧对4号帧进行解码。以同样方式,通过参考存储的0和4号帧来解码2和6号帧。最后,通过参考恢复的0、2、4和6号帧来解码1、3、5和7号帧。
因为编码器端和解码器端都从较高时间等级上的帧开始编码(或者解码),所以,根据这个示范实施例的可缩放视频编码算法允许编码器端和解码器端具有时间可缩放性。
在传统的UMCTF算法的情况下,与MCTF算法不同,可以通过参考多个参考帧来压缩视频序列。本发明保持了UMCTF的这个属性。下面将描述当通过参考多个参考帧编码和解码视频来恢复视频序列时,在编码器端和解码器端中都保持时间可缩放性的条件。
假定F(k)指示具有索引k的帧,而且T(k)指示具有索引k的帧的时间等级。为了建立时间可缩放性,不能参考任何具有比对某一帧进行编码时所在的时间等级更低的时间等级的帧。例如,4号帧不能参考2号帧。如果允许这种参考,则编码处理不能在0和4号帧处停止(也就是说,仅仅在已经编码了2号帧之后才能够对4号帧编码)。通过以下方程确定可以由帧F(k)参考的一组参考帧Rk。
方程1
Rk={F(l)|T(l)>T(k))或((T(l)=T(k))且(l<=k))},
其中,l是指参考帧的索引。
同时,((T(l)=T(k))且(l<=k))意指在时间滤波处理中通过参考自身对帧F(k)进行时间滤波(所谓的“内部模式”),后面将对其进行描述。
根据方程1,在编码器端和解码器端都保持可缩放性的条件可以如下所述布置。
编码处理操作如下。1.将作为没有参考其它帧的帧的GOP的第一帧编码为(优选,但不是必要地)不执行时间滤波的帧(A帧)。2.对于在下一时间等级的帧,参考满足方程(1)的可能的参考帧,进行运动预测,并编码这些帧。在同一时间等级上,以从左到右的次序(以从最低到最高帧索引的次序)对帧进行编码。3.重复操作(2),直到所有帧都被编码了为止,然后编码下一个GOP,直到完成了所有帧的编码为止。
解码处理操作如下。1.解码GOP的第一帧。2.使用已经解码的帧当中的适当的参考帧,解码在下一个时间等级上的帧。在同一时间等级上,以从左到右的次序(以从最低到最高帧索引的次序)对帧进行解码。3.重复操作(2),直到所有帧都被解码了为止,然后解码下一个GOP,直到完成了所有帧的解码为止。
图6图解了在保持编码器端的可缩放性同时进行的编码过程中,在帧之间的可能连接。这个图示出了满足方程1中的条件的参考帧之间的可能连接。
在图6中,标记为A的帧被内部编码(也就是说,不参考其它帧),而标记为H的帧指示参考高频子带的所涉及的帧。高频子带是参考一个或多个帧而编码的帧。
在图6中,在GOP的大小为八时,为了说明的目的,帧的时间等级处于0、4、(2,6)、(1,3,5,7)的顺序。此外,即使在时间等级处于1、5、(3,7)、(0,2,4,6)的顺序的情况下,就编码器端时间可缩放性和解码器端时间可缩放性而言,也几乎没有问题。同样,2、6、(0,4)、(1,3,5,7)的时间等级顺序是允许的。换句话说,在可以满足编码器端时间可缩放性和解码器端时间可缩放性的时间等级上的任何帧都是允许的。
如图6所述,可以参考多个帧对帧进行编码。但是,使用多个参考帧来对帧进行编码示出了增加用于时间滤波的存储器量、以及延迟处理的时间的倾向。考虑到此,在本发明的示范实施例中,对于双向预测,将已编码的帧的参考帧限制为二(2)。在下文中,将把用来编码每个帧的最大参考帧数目限制为2。此外,在可用于参考的帧当中,将具有最接近的时间距离的帧用作用来编码每个帧的参考帧。这是因为,在大多数视频序列中,与较远的帧相比,最接近的帧实际上具有较高的相似性。
如上所述,仅为了说明的目的,对于示范实施例,下面将把GOP内的最高时间等级上的帧描述为具有最小帧索引的帧。因此,应当注意到,在最高时间等级上的帧可以是具有不同索引的帧。
图7图解了根据本发明的另一个示范实施例的在相邻GOP中的帧之间的参考,其用来增加编码效率。
如所说明的,不同于传统的MCTF算法,根据本发明的视频编码算法可以参考多个帧而对帧进行编码。被参考以用于编码的参考帧不需要属于一个GOP。换句话说,可以参考属于其它GOP的帧来编码的帧以增强视频压缩效率,这将被称为“GOP交叉(cross-GOP)优化”。这个GOP交叉优化可以支持传统的UMCTF算法。GOP交叉优化可用的原因是因为UMCTF和根据本发明的编码算法都使用了未时间滤波的A帧来代替已时间滤波的L帧(高频子带)。
在图6中,当通过双向预测对7号帧进行时间滤波时,参考0、4和6号帧的原始帧执行时间滤波。在此时编码的7号帧具有0、4和6参考帧累积的预测误差。然而,当如图7所示、7号帧参考下一GOP的0号帧的原始帧(以利用当前GOP计算8号帧)时,可以显著地减小预测误差的积累。这是因为,在时间滤波过程中,7号帧参考在该时间等级上的最接近帧。此外,由于作为参考帧的下一GOP上的0号帧是未被时间滤波的帧(也就是说,内部代码的帧),所以,可以显著地增强7号帧的质量。当由解码器端对已编码的帧进行解码时,在不进行GOP交叉优化的情况下解码并恢复0号帧,通过参考恢复的0号帧的逆时间滤波来恢复4号帧,并且,通过参考恢复的4号帧的逆时间滤波来恢复7号帧。此时,累积在恢复过程中所产生的误差(包括在恢复4号帧时的误差、在存储6号帧时的误差、以及在恢复7号帧时的误差)。然而,在应用GOP交叉优化时,可以参考已经恢复的、在下一GOP上的0号帧(即,8号帧),来恢复7号帧,其中,当恢复在下一GOP上的0到7号帧时仅存在一种误差,这是由于,7号帧通过参考下一GOP的0号帧的逆时间滤波而恢复。在如图7构造的时间滤波和逆时间滤波中,相对于帧的操作顺序可以处于0、4、2、1、3,8(下一GOP中的0)、6、5和7的次序。该操作顺序可以处于0、4、8(下一GOP中的0)、2、6、1、3、5和7的次序,其中下一GOP可以处于4,8,2,6,1和3的次序。在前一情况下,最终的延迟时间可能具有三帧间隔,而在后一情况下,最终的延迟时间可能具有七帧间隔。这里,最终延迟时间意指:除了编码和解码的操作时间以及编码的数据的传输时间之外的、由于算法本身而产生的延迟时间。也就是说,最终延迟时间是指当特定帧频的视频序列被压缩和传输到解码器端时,解码器端不中断地播放视频图像所需要的时间。在前一情况下,0号帧确实可以与视频拍摄同时即时编码、并且即时传输,但是1号帧不能与视频编码同时进行即时编码。为了编码1号帧,就视频序列而言,首先应该编码4和2号帧,并且,因此,只有在已经拍摄了1号帧后又全部拍摄了2、3和4号帧之后,对于1号帧的视频编码才是可能的。此时,产生3帧间隔的延迟时间。3和4号帧可以被立即编码。同样地,因为在后一情况下,请求8号帧来编码1号帧,所以,延迟时间是7帧间隔。在前一和后一情况下,从拍摄的视频序列的输入到恢复的视频序列的输出的时间关系均可以被布置为如表1所示。
表1
时间 | 0 1 2 3 4 5 6 7 8 9 |
按照0、4、2、1、3、6、5、7的顺序可用于编码的时间延迟时间按照0、4、2、6、1、3、5、7的顺序可用于解码的时间 | 0 4 4 4 4 6 6 7 8 120 3 2 1 0 1 0 0 0 33 4 5 6 7 8 9 10 11 12 |
按照0、4、8、2、6、1、3、5、7的顺序可用于编码的时间延迟时间按照0、4、8、2、6、1、3、5、7的顺序可用于解码的时间 | 0 8 8 8 8 8 8 8 8 160 7 6 5 4 3 2 1 0 77 8 9 10 11 12 13 14 15 16 |
同时,当编码4号帧时,可以参考8号GOP。即使在这种情况下,最终的延迟时间也将具有7帧间隔。这是因为,需要8号帧来编码1号帧。
对于上述示范实施例,允许编码器端具有可缩放性的编码和解码算法与具有限制的解码算法的兼容之处在于,帧以特定顺序(大多数情况下,从最高时间等级上的帧到最低时间等级上的帧)、并且以可用于参考的帧的方式进行解码。本发明的示范实施例使得编码器端与多个传统解码器端兼容、且还具有时间可缩放性成为可能。根据本发明,可以允许编码器端具有可缩放性以及3帧间隔的最大延迟时间。此外,本发明可以通过支持GOP交叉优化来提高编码的视频质量。此外,本发明可以支持对具有非二分(non-dichotomous)帧频的视频的编码和解码、以及通过内部宏块预测的画面质量的改善。
在编码和解码具有非二分帧频的视频的情况下,它们还可以由现有的UMCTF编码算法所支持。换句话说,在视频序列的压缩中,基于UMCTF的可缩放视频编码器可通过参考远处的独立帧以及近处的帧,来执行时间滤波。例如,在编码包含0到5号帧的GOP时,通过将0到3号帧设置为“A”帧、并将5号帧设置为“H”帧,然后对它们进行时间滤波,来执行基于UMCTF的时间滤波。然后,比较0号帧和3号帧,并且,将前帧设置为“A”帧、并将后帧设置为“H”帧,并且对它们进行时间滤波。在本发明中,如在UMCTF中一样,具有非二分帧频的视频编码是可用的,但是,与传统UMCTF的差别之处在于,将0号帧编码为“A”帧、并且参考0号帧的原始帧将3号帧解码为“H”帧,然后将1、2、4和5号帧编码为“H”帧。
将参考图8描述宏块内预测(以下称为“内部预测”)。
图8图解了根据本发明的另一个示范实施例的用于增加编码效率的多个参考模式。
图8中图解了:(1)前向预测、(2)后向预测、(3)双向预测(或者加权的双向预测)以及(4)内部预测。传统上,已经在可缩放视频编码中支持了前向预测、逆向预测和双向预测三种模式。此外,本发明包含具有加权值的双向预测和内部预测两种模式,以便增大压缩效率。内部预测的应用可以提高快速改变的视频序列的编码效率。
首先,将在下面考虑宏块间预测(以下称为“帧间预测(inter prediction)”)模式的确定。
因为允许双向预测和多个参考帧,所以可以容易地实现前向预测、后向预测和双向预测。可以使用众所周知的分级可变块大小匹配(HVBSM)算法,但是本发明的示范实施例采用了固定块大小的运动预测。为了方便起见,假定E(k,-1)是指在第k个前向预测中的绝对差的总和(以下简称为“SAD”),而B(k,-1)是指要为前向预测中量化运动矢量而分配的总位数。同样地,假定E(k,+1)是指在第k个后向预测中的SAD,而B(k,+1)是指要为后向预测中量化运动矢量而分配的总位数,E(k,*)是指在第k个双向预测中的SAD,而B(k,*)是指要为双向预测中量化运动矢量而分配的总位数,并且,E(k,#)是指第k个具有加权值的双向预测中的SAD,而B(k,#)是指要为具有加权值的双向预测中量化运动矢量而分配的总位数。可以相对于方程2来描述用于前向、后向和双向预测模式,以及具有加权值的双向预测的成本。
方程2
Cf=E(k,-1)+λB(k,-1)
Cb=E(k,1)+λB(k,1),
Cbi=E(k,*)+λ{B(k,-1)+B(k,1)},以及
Cwbi=E(k,#)+λ{B(k,-1)+B(k,1)+P}
其中Cf、Cb、Cbi和Cwbi分别是指前向、后向、双向、和具有加权值的双向预测的预测模式的成本,且P是指加权值。
λ是控制在运动和纹理(图像)位之间的平衡的拉格朗日(Lagrangian)系数。因为可缩放的视频编码器不能得知最终的位速率,所以应该针对于视频序列的属性以及主要在目标应用中使用的位速率来优化λ。通过计算因此如方程(2)所定义的最小成本,可以确定最优化的宏块间预测模式。
在双向预测模式下,通过将在虚拟块和要被编码的块之间的差记录在要被编码的块上,来编码某一块,其中虚拟块通过对在前向预测中的参考块和后向预测中的参考块取平均而形成。因此,为恢复编码块,需要有关误差以及用于定位参考目标块的两个运动矢量的信息。
顺便提及,不同于双向预测,具有加权值的双向预测基于每个参考块以及在相似度方面不同的要编码的块。对于具有加权值的双向预测,将前向预测中的参考块的像素值乘以P,并且将后向预测中的参考块的像素值乘以(1-P),并且对所述两个结果求和,以产生虚拟块。通过参考作为参考块的虚拟块,来编码要编码的块。
接下来,将描述宏块内预测模式的确定。
在一些视频序列中场景可以飞快地改变。在极端情况下,可能定位不具有与相邻帧的时间冗余的属性的帧。为了解决这个问题,基于MC-EZBC的编码方法支持自适应GOP大小的属性。自适应GOP大小的性质(quality)允许当未链接的像素数目大于预定的参考值(约为全部像素的30%)时暂停时间滤波,并且将所涉及的帧编码为“L”帧。与采用传统的MCTF方法相比,采用这种方法更好地提高了编码效率。然而,因为这种方法在帧的基础上被一致地确定,所以本发明已经引入了在标准混合编码器中使用的宏块内的概念,作为更灵活的方案。通常,由于预测草案(draft),开环编解码器不能使用相邻宏块的信息,但是混合编解码器可以使用多个内部预测的模式。在这个示范实施例中,已经使用了DC预测用于内部预测模式。在这个模式中,宏块通过用于它自己的Y、U和V分量的DC值而被内部预测。当内部预测模式的成本小于如上所述的最佳帧间预测模式的成本时,选择内部预测模式。在这种情况下,编码原始像素和DC值之间的差,并且编码代替运动矢量的三个DC值。内部预测模式的成本可以由方程3所定义。
方程3
Ci=E(k,0)+λB(k,0),
其中,E(k,0)是指在第k个内部预测处的SAD(原始亮度值和DC值之间的差),而且B(k,0)是指编码三个DC值的总位数。
当Ci小于由方程2所计算的值时,执行通过内部预测模式的编码。当仅仅利用单组DC值在内部预测模式上编码全部宏块时,将它们改变为非基于预测而编码的“A”帧(在传统MPEG-2中的“I”帧)是所期望的。另一方面,当用户期望观看视频序列的过程中的任意点、或者自动地编辑视频时,优选地,该视频序列具有尽可能多的“I”帧。在这种情况下,将帧间预测帧改变为“I”帧的方法可能是所希望的。
即使没有通过内部预测模式来编码所有宏块,但是,如果在内部预测模式中、当编码它们的预定百分比(例如,90%)时将它们改为“I”帧,则可能更容易实现观看视频序列的过程中的任意点、或者自动编辑视频。
图9图解了当使用多个参考模式时的分级结构和帧的类型。
“I+H”意指帧包含内部预测的宏块和帧间预测的宏块二者。“I”意指该帧由它本身编码而没有预测。换句话说,“I”帧是指当内部预测的宏块的百分比大于参考值时,改变帧以便其由它自身编码而没有预测。内部预测可以在GOP的初始帧(最高时间等级上的帧)中使用,但是,这本发明中未被采用,这种因为,它没有基于原始帧的小波变换那么有效。
图10和11图解了在具有高波动的视频序列中、以及在几乎不具有波动的视频序列中,在各种模式下预测帧的示例。术语“百分比”指示生产模式的百分比,“I”指示内部预测的百分比(假定GOP中的第一帧不用于预测),“BI”指示双向预测的百分比,“F”指示前向预测的百分比,而“B”指示后向预测的百分比。
参见图10,其中示出了:因为1号帧几乎相似于0号帧,所以F的百分比为优势性的78%,而且因为2号帧接近于0号帧和4号帧的中间,所以BI的百分比为优势性的87%(也就是说,其中0号帧比其它帧亮的图像)。因为4号帧完全不同于其它帧,所以I被100%编码,但是因为5号帧完全不同于4号帧并且相似于6号帧,所以B被编码了94%。
参见图11,所有帧都是相似的。在所有帧实际上非常相似时,BI示出了最佳性能。因此,图11表明BI的百分比通常是高的。
图12是图解根据本发明的示范实施例的可缩放视频编码器的构造的功能框图。
可缩放视频编码器接收构成视频序列的多个输入帧,在GOP的基础上压缩它们,并且生成位流。为此,可缩放视频编码器包含消除在多个帧之间的时间冗余的时间变换单元10、消除空间冗余的空间变换单元20、量化在消除了时间和空间冗余之后生成的变换系数的量化单元30、以及生成量化的变换系数及其它信息的组合的位流的位流生成单元40。
时间变换单元10包含运动估计单元12和时间滤波单元14,以补偿帧之间的运动,并对帧进行时间滤波。
首先,运动估计单元12搜索正在执行时间滤波的帧的每个宏块和与它们相对应的参考帧的每个宏块之间的运动矢量。将有关运动矢量的信息提供给时间滤波单元14,而且时间滤波单元14使用有关运动矢量的信息,关于多个帧执行时间滤波。在本发明的示范实施例中,时间滤波按顺序从最高时间等级上的帧到最低时间等级上的帧而进行。在同一时间等级上的帧的情况下,时间滤波从具有最低帧索引的帧(时间较早的帧)到具有最高帧索引的帧的进行。举例来说,在构成GOP的帧当中,具有最高帧等级的帧使用具有最低帧索引的帧。然而,还有可能选择GOP中的其它帧做为具有最高时间等级的帧。
消除了时间冗余的帧(即,已时间滤波的帧)通过空间变换单元20,以由此消除空间冗余。空间变换单元20使用空间变换来消除已时间滤波的帧的空间冗余。在这方面,在本发明中使用了基于小波的变换。在当前已知的基于小波的变换中,帧被分成四个相等的部分,压缩为具有四分之一的面积、非常类似于整个图像的图像被定位于在四等分面之一上,并且,剩余的四等分面由这样的信息(“H”图像)所替代,其中,利用该信息,可以通过“L”图像恢复整个图像。以同样方式,“L”帧可被替换为具有四分之一面积的“LL”图像、以及用于恢复“L”图像的信息。使用这种基于小波的方法的图像压缩方法已经应用于被称作JPEG2000的压缩方法中。可以通过基于小波的变换来消除帧之间的空间冗余,其中,不同于DCT变换,基于小波的变换允许原始图像信息以已变换图像的缩小形式存储,并且,因此,通过使用缩小的图像、具有空间可缩放性的视频编码是可用的。然而,基于小波的变换仅仅是示例。如果可以不实现空间可缩放性,则可使用在诸如MPEG-2之类的运动画面压缩中广泛使用的DCT方法。
已时间滤波的帧通过空间变换而变为变换系数,然后将其传输到量化单元30、并最终被量化。量化单元30量化作为实数类型系数的变换系数,以然后将它们改变为整数类型的变换系数。也就是说,可以减少通过量化表示图像数据的位的数量。在当前的示范实施例中,通过嵌入的量化方法执行对变换系数的量化处理。通过嵌入的量化方法执行关于变换系数的量化,并且,因此,可以减少量化所需的信息量,并且可以通过嵌入的量化获得SNR可缩放性。术语“嵌入”用于暗指编码的位流涉及量化。换句话说,根据最高视觉重要性程度顺序地生成压缩的数据,或者用视觉重要性标记压缩的数据。实际上,可以在解码器或者在传输信道中启用量化(或者视觉重要性)等级。如果传输带宽、存储容量、显示资源被允许,则可以无损地存储图像。如果不是这样,则如最受约束的资源所需的那样多而量化图像。当前已知的嵌入的量化算法包含EZW、SPIHT、EZBC、EBCOT等。在当前示例实施例中,可以使用任何已知的算法。
位流生成单元40生成位流,该位流包括有关编码图像的信息、以及有关在运动估计单元12中获得的运动矢量的信息(通过编码运动矢量而生成的位),并且向其附加头部(header)。允许被包括在位流中的信息将是在GOP内编码的帧数目(或者编码的时间等级)等。这是因为,由于编码器端具有时间可缩放性,所以解码器端应当知道有多少帧构成了几个GOP。
当使用基于小波的变换来消除空间冗余时,在最初变换的帧中保持图像的原始形式。因此,不同于基于DCT的运动画面编码方法,基于小波的变换方法可以在通过空间变换之后执行时间变换,量化这些帧,然后生成位流。
将参考图13描述另一个示范实施例。
图13是图解根据本发明的另一个示范实施例的可缩放视频编码器的构造的功能框图。
根据图13中图解的本发明的示范实施例的可缩放视频编码器包含消除在构成视频序列的多个帧之间的空间冗余的空间变换单元60、消除时间冗余的时间变换单元70、量化通过消除帧之间的空间和时间冗余而获得的变换系数的量化单元80、以及以编码的图像信息及其它信息的组合的方式生成位流的位流生成单元90。
关于术语“变换系数”,传统上主要已经使用了在运动画面压缩时、在时间滤波之后执行空间变换的方法,这个术语主要是指由空间变换生成的值。也就是说,当变换系数通过DCT变换而生成时,该变换系数也已经被称为“DCT系数”,或者,当它通过小波变换而生成时,它也已经被称为小波系数。在本发明中,变换系数是通过消除帧之间的空间和时间冗余而生成的值,其是指在量化(嵌入量化)之前的值。在图12中图解的示范实施例中,变换系数表示通过空间变换生成的系数。然而,应当注意到,在图13中图解的示范实施例中,变换系数可能表示通过时间变换生成的系数。
空间变换单元60消除在构成视频序列的多个帧之间的空间冗余。在这种情况下,空间变换单元采用基于小波的变换,以便消除帧之间的空间冗余。消除了空间冗余的帧(即,已空间变换的帧)被传输到时间变换单元70。
时间变换单元70消除已空间变换的帧之间的时间冗余,为此,其包含运动估计单元72和时间滤波单元74。在当前示范实施例中,时间变换单元70以与图12中图解的示范实施例中相同的方式进行操作。这两个实施例之间的差别在于,不同于图12中的帧,在图13中,输入帧已经被空间变换了。它们之间的另一个差别在于,时间变换单元70首先消除已空间变换的帧之间的时间冗余,并且此后生成用于量化的变换系数。
量化单元80量化变换系数,并且生成量化的图像信息(编码的图像信息),并将其提供给位流生成单元40。如图12中图解的示范实施例那样,量化用来获得相对于要最终通过嵌入量化而生成的位流的SNR可缩放性。
位流生成单元90生成位流,该位流包括有关已编码图像的信息、以及有关运动矢量的信息,并且向其附加头部。此时,如在图12的示范实施例中那样,可以包括有关在GOP内编码的帧的数目的信息(或者编码的时间等级)。
同时,图12的位流生成单元40和图13的位流生成单元可允许将有关消除时间冗余和空间冗余的顺序(以下称为“冗余消除顺序”)的信息均包含在位流中,以便解码器端可以得知该视频序列是否已经根据图12或13的实施例而进行了编码。可以使用用于在位流中包括冗余消除顺序的几种方法。通过选择一种方法作为参考,可以在位流中独立地指示其它的方法。例如,如果图12中的方法为参考方法,则可以不在由可缩放视频编码器生成的位流中指示有关冗余消除顺序的信息,但是,在由图13的可缩放视频解码器生成的位流中可以包括冗余消除顺序。否则,可以在图12和13的两个情况中均指示有关冗余消除顺序的信息。
可以实现根据图12的示范实施例的可缩放视频编码器,以及具有根据图13的示范实施例的可缩放视频编码器的全部功能的可缩放视频编码器,然后可以通过根据图12和13中的方法编码视频序列而生成更高效编码的位流,然后对它们进行比较。在这种情况下,冗余消除顺序应被包括在位流中。可以在顺序的基础上、或者在GOP的基础上确定冗余消除顺序。在前一情况下,冗余消除顺序应被包括在视频序列头部中,而在后一情况下,冗余消除顺序应被包括在GOP头部中。
图12和13的示范实施例可以借助于硬件实现,但是它们也可以使用软件模块以及任何具有计算性能来执行它们的设备来实现。
图14是图解根据本发明的示范实施例的可缩放视频解码器的构造的功能框图。
可缩放视频解码器包含:位流解释单元100,其解释输入的位流,以便提取包括在位流中的每个分量;第一解码单元200,其根据图12的实施例来恢复编码的图像;以及第二解码单元300,其根据图13的实施例来恢复编码的图像。
第一和第二解码单元可以借助于硬件或者软件模块实现。当它们以硬件或者软件模块实现时,它们可以如图5所示分别实现、或者以集成的方式实现。当它们以集成方式实现时,第一和第二解码单元采用与在位流解释单元100中获得的冗余消除顺序相反的逆冗余消除顺序。
另一方面,如图14所示,可缩放视频解码器可以恢复全部根据不同的冗余顺序编码的图像。还可以仅仅恢复根据多个冗余消除顺序中的任何一个编码的图像。当将冗余消除顺序应用于第一解码单元200时,通过第一解码单元200恢复视频序列,但是当将冗余消除顺序应用于第二解码单元300时,通过第二解码单元300恢复该视频序列。并且,位流解释单元100可以通过解释位流而得知作为当存在时间冗余时的对帧进行时间滤波的顺序的受约束的时间等级顺序。在当前示范实施例中,可以通过延迟时间控制参数的值而得知受约束的时间等级顺序以确定编码模式。对于从编码的图像信息中恢复视频序列的处理,首先将描述通过第一解码单元200的冗余消除,然后将描述通过第二解码单元300的冗余消除。
有关输入到第一解码单元200中的已编码的帧的信息通过逆量化单元210而被逆量化,并被改变为变换系数。由逆空间变换单元220对变换系数进行逆空间变换。逆空间变换涉及已编码的帧的空间变换。当在空间变换方式中使用了小波变换时,逆空间变换执行逆小波变换。当在DCT变换方式中使用了空间变换时,执行逆DCT变换。通过逆空间变换,变换系数改变为已时间滤波的“I”帧和“H”帧。对于逆时间变换,逆时间滤波单元230使用通过解释位流而获得的运动矢量。
有关输入到第二解码单元300中的已编码的帧的信息通过逆量化单元310而被逆量化,并被改变为变换系数。由逆时间变换单元320对变换系数进行逆时间变换。可以从通过允许位流解释单元100进行解释而获得的信息中,获得运动矢量和用于逆时间变换的受约束的时间等级顺序。通过逆时间变换的编码图像信息改变为已经通过空间变换的帧。处于已经通过空间变换的状态下的帧在逆空间变换单元330中被逆空间改变,并被恢复为构成视频序列的帧。在逆空间变换单元330中使用的逆空间变换是逆小波变换。
工业实用性
根据本发明的示范实施例,可得到使编码器端可具有时间可缩放性的视频编码。此外,当还没有对GOP中的所有帧进行操作、而是已经对它们的一部分进行了操作时,可以将GOP中的所有帧传输到解码器端,并且,解码器端可以开始解码所传输的部分帧,由此减少延迟时间。
具有本发明所属领域的常识的那些技术人员可以理解:本发明可以其它特定地方式执行,而不改变其技术思想和/或实质特征。虽然为了说明的目的已经公开了本发明的示范实施例,但是本领域的技术人员应当理解,在不偏离附属权利要求所公开的本发明的范围和精神的情况下进行各种修改、添加、以及替换是可能的。
Claims (23)
1、一种用于视频编码的方法,该方法包含:
(a)接收构成视频序列的多个帧,并且从最高时间等级上的帧开始,在画面组(GOP)的基础上顺序地消除多个帧之间的时间冗余;以及
(b)通过量化从已经消除了时间冗余的多个帧获得的变换系数,生成位流。
2、如权利要求1所述的方法,其中,对于在步骤(a)中的在同一时间等级上的帧,从具有最低帧索引的帧到具有最高帧索引的帧顺序地消除其时间冗余。
3、如权利要求1所述的方法,其中,在构成GOP的帧之中,在最高时间等级上的帧是GOP中具有最低帧索引的帧。
4、如权利要求1所述的方法,其中,在步骤(a)中,当消除了构成GOP的帧之间的时间冗余时,可以将在最高时间等级上的帧设置为A帧,以从最高时间等级到最低时间等级的顺序消除在不同于最高时间等级上的A帧的GOP的帧之间的时间冗余,并且,当帧处于同一时间等级时,以从最低帧索引到最高帧索引的顺序消除所述时间冗余,其中在消除时间冗余的过程中可以由每个帧参考的一个或者多个帧具有比处于较高时间等级或者同一时间等级上的帧更高的索引。
5、如权利要求4所述的方法,其中,在消除时间冗余的过程中,将帧添加到由每个帧参考的帧中。
6、如权利要求4所述的方法,其中,在消除时间冗余的过程中,将属于下一个GOP、在较高时间等级上的一个或者多个帧添加到由每个帧参考的帧中。
7、如权利要求1所述的方法,还包含:消除多个帧之间的空间冗余,其中所生成的位流还包含有关空间冗余消除和时间冗余消除的顺序的信息。
8、一种视频编码器,包含:
时间变换单元,其接收多个帧,并且以从最高时间等级到最低时间等级的顺序消除帧的时间冗余;
量化单元,其量化在消除帧之间的时间冗余之后获得的变换系数;以及
位流生成单元,其生成包括量化的变换系数在内的位流。
9、如权利要求8所述的视频编码器,其中,时间变换单元包含:
运动估计单元,其从所接收的多个帧中获得运动矢量;以及
时间滤波单元,其使用运动矢量在画面组(GOP)的基础上关于所接收的多个帧执行时间滤波,该时间滤波单元以从最高到最低时间等级、或者在同一时间等级上以从最低帧索引到最高帧索引的顺序,并且通过参考已被时间滤波的帧的原始帧,在GOP的基础上执行时间滤波。
10、如权利要求9所述的视频编码器,其中,当消除帧之间的时间冗余时,参考多个帧中的每一个。
11、如权利要求8所述的视频编码器,还包含空间变换单元,其消除多个帧之间的空间冗余,其中位流生成单元组合有关用于消除时间冗余的顺序和用于空间冗余的顺序的信息,以获得变换系数,并且生成位流。
12、一种用于视频解码的方法,该方法包含:
(a)通过接收和解释位流,提取有关已编码的帧以及冗余消除顺序的信息;
(b)通过逆量化有关已编码的帧的信息获得变换系数;以及
(c)针对于冗余消除顺序,通过变换系数的逆空间变换和逆时间变换,恢复已编码的帧。
13、如权利要求12所述的方法,其中,在步骤(a)中,还从位流中提取有关每画面组(GOP)的已编码的帧的数目的信息。
14、一种视频解码器,包含:
位流解释单元,其解释所接收的位流,以从中提取有关已编码的帧的信息、以及冗余消除顺序;
逆量化单元,其对有关已编码的帧的信息进行逆量化,以从中获得变换系数;
逆空间变换单元,其执行逆空间变换处理;以及
逆时间变换单元,其执行逆时间变换处理;
其中,通过参考冗余消除顺序、针对于已编码的帧的冗余消除顺序,对于变换系数而执行逆空间变换处理和逆时间变换处理,恢复位流的已编码的帧。
15、一种其上记录有程序的存储介质,该程序可由计算机读取以执行视频编码方法,所述方法包含:
(a)接收构成视频序列的多个帧,并且从最高时间等级上的帧开始,在画面组(GOP)的基础上顺序地消除多个帧之间的时间冗余;以及
(b)通过量化从已经消除了时间冗余的多个帧获得的变换系数,生成位流。
16、如权利要求15所述的存储介质,其中,对于在步骤(a)中的在同一时间等级上的帧,从具有最低帧索引的帧到具有最高帧索引的帧顺序地消除其时间冗余。
17、如权利要求15所述的存储介质,其中,在构成GOP的帧当中,在最高时间等级上的帧是GOP中具有最低帧索引的帧。
18、如权利要求15所述的存储介质,其中,在步骤(a)中,当消除了构成GOP的帧之间的时间冗余时,可以将在最高时间等级上的帧设置为A帧,以从最高时间等级到最低时间等级的顺序消除在不同于最高时间等级上的A帧的GOP的帧之间的时间冗余,并且,当帧处于同一时间等级时,以从最低帧索引到最高帧索引的顺序消除所述时间冗余,其中在消除时间冗余的过程中可以由每个帧参考的一个或者多个帧具有比处于较高时间等级或者同一时间等级上的帧更高的索引。
19、如权利要求18所述的存储介质,其中,在消除时间冗余的过程中,将帧添加到由每个帧参考的帧中。
20、如权利要求18所述的存储介质,其中,在消除时间冗余的过程中,可以将属于下一个GOP、在较高时间等级上的一个或者多个帧添加到由每个帧参考的帧中。
21、如权利要求18所述的存储介质,所述方法还包含:消除多个帧之间的空间冗余,其中所生成的位流还包含有关空间冗余消除和时间冗余消除的顺序的信息。
22、一种其上记录有程序的存储介质,该程序可由计算机读取以执行视频解码方法,所述方法包含:
(a)通过接收和解释位流,提取有关已编码的帧以及冗余消除顺序的信息;
(b)通过逆量化有关已编码的帧的信息获得变换系数;以及
(c)针对于冗余消除顺序,通过变换系数的逆空间变换和逆时间变换,恢复已编码的帧。
23、如权利要求22所述的存储介质,其中,在步骤(a)中,还从位流中提取有关每个画面组(GOP)中的已编码的帧的数目的信息。
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US52582703P | 2003-12-01 | 2003-12-01 | |
US60/525,827 | 2003-12-01 | ||
US53217903P | 2003-12-24 | 2003-12-24 | |
US60/532,179 | 2003-12-24 | ||
KR1020040003983A KR100597402B1 (ko) | 2003-12-01 | 2004-01-19 | 스케일러블 비디오 코딩 및 디코딩 방법, 이를 위한 장치 |
KR10-2004-0003983 | 2004-01-19 | ||
KR1020040003983 | 2004-01-19 | ||
PCT/KR2004/002989 WO2005055608A1 (en) | 2003-12-01 | 2004-11-18 | Method and apparatus for scalable video encoding and decoding |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1906945A true CN1906945A (zh) | 2007-01-31 |
CN1906945B CN1906945B (zh) | 2012-12-05 |
Family
ID=37249136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004800409041A Expired - Fee Related CN1906945B (zh) | 2003-12-01 | 2004-11-18 | 用于可缩放视频编码和解码的方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20050117647A1 (zh) |
KR (1) | KR100596706B1 (zh) |
CN (1) | CN1906945B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102223524A (zh) * | 2010-04-13 | 2011-10-19 | 中兴通讯股份有限公司 | 一种三维小波视频编码帧分组方法及装置 |
CN102300102A (zh) * | 2010-06-28 | 2011-12-28 | 立积电子股份有限公司 | 利用色彩解耦的视讯传输的方法及其装置和可读取媒介 |
CN101395907B (zh) * | 2006-01-09 | 2012-06-13 | 韩国电子通信研究院 | 可伸缩视频编码文件数据共享方法及其可伸缩视频编码文件 |
CN104754345A (zh) * | 2013-12-27 | 2015-07-01 | 展讯通信(上海)有限公司 | 视频编码方法及视频编码器 |
CN104602021B (zh) * | 2010-08-17 | 2016-09-21 | M&K控股株式会社 | 用于对活动图片进行解码的装置 |
CN108235032A (zh) * | 2012-01-18 | 2018-06-29 | Jvc 建伍株式会社 | 动图像解码装置以及动图像解码方法 |
CN111343503A (zh) * | 2020-03-31 | 2020-06-26 | 北京金山云网络技术有限公司 | 视频的转码方法、装置、电子设备及存储介质 |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050078099A (ko) * | 2004-01-30 | 2005-08-04 | 삼성전자주식회사 | 적응적으로 키 프레임을 삽입하는 비디오 코딩 장치 및 방법 |
US7580461B2 (en) | 2004-02-27 | 2009-08-25 | Microsoft Corporation | Barbell lifting for wavelet coding |
US7627037B2 (en) * | 2004-02-27 | 2009-12-01 | Microsoft Corporation | Barbell lifting for multi-layer wavelet coding |
KR100654431B1 (ko) * | 2004-03-08 | 2006-12-06 | 삼성전자주식회사 | 가변 gop 사이즈를 갖는 스케일러블 비디오 코딩방법및 이를 위한 스케일러블 비디오 인코더 |
EP1575299A1 (en) * | 2004-03-12 | 2005-09-14 | Thomson Licensing S.A. | Motion-compensated spatio-temporal wavelet compression of video data with optimised permutation of the frames |
US8111752B2 (en) | 2004-06-27 | 2012-02-07 | Apple Inc. | Encoding mode pruning during video encoding |
US20050286777A1 (en) * | 2004-06-27 | 2005-12-29 | Roger Kumar | Encoding and decoding images |
US7792188B2 (en) * | 2004-06-27 | 2010-09-07 | Apple Inc. | Selecting encoding types and predictive modes for encoding video data |
KR20060043050A (ko) * | 2004-09-23 | 2006-05-15 | 엘지전자 주식회사 | 영상 신호의 인코딩 및 디코딩 방법 |
KR20060043867A (ko) * | 2004-09-23 | 2006-05-15 | 엘지전자 주식회사 | 영상 신호의 인코딩 및 디코딩 방법 |
KR100668345B1 (ko) * | 2004-10-05 | 2007-01-12 | 삼성전자주식회사 | 움직임 보상된 계층 생성장치 및 방법 |
KR20060063604A (ko) * | 2004-12-06 | 2006-06-12 | 엘지전자 주식회사 | 영상 신호의 인코딩 및 디코딩 방법 |
KR101102393B1 (ko) * | 2004-12-06 | 2012-01-05 | 엘지전자 주식회사 | 에러 파급을 방지하는 영상신호의 엔코딩 및 디코딩 방법과장치 |
KR20060070400A (ko) * | 2004-12-20 | 2006-06-23 | 엘지전자 주식회사 | 영상 신호의 인코딩 및 디코딩 방법 |
KR100703760B1 (ko) * | 2005-03-18 | 2007-04-06 | 삼성전자주식회사 | 시간적 레벨간 모션 벡터 예측을 이용한 비디오인코딩/디코딩 방법 및 장치 |
WO2007024232A1 (en) * | 2005-08-26 | 2007-03-01 | Thomson Licensing | Trick play using temporal layering |
KR100727989B1 (ko) * | 2005-10-01 | 2007-06-14 | 삼성전자주식회사 | 동영상 부호화시의 인터 모드 결정 방법 및 장치 |
JP4621585B2 (ja) * | 2005-12-15 | 2011-01-26 | 株式会社東芝 | 画像処理装置及び画像処理方法 |
KR100818921B1 (ko) * | 2006-01-12 | 2008-04-03 | 삼성전자주식회사 | 모션 벡터 압축 방법, 상기 압축 방법을 이용하는 비디오인코더 및 비디오 디코더 |
US9602840B2 (en) * | 2006-02-06 | 2017-03-21 | Thomson Licensing | Method and apparatus for adaptive group of pictures (GOP) structure selection |
US9332274B2 (en) * | 2006-07-07 | 2016-05-03 | Microsoft Technology Licensing, Llc | Spatially scalable video coding |
US8332412B2 (en) * | 2009-10-21 | 2012-12-11 | At&T Intellectual Property I, Lp | Method and apparatus for staged content analysis |
US20120275502A1 (en) * | 2011-04-26 | 2012-11-01 | Fang-Yi Hsieh | Apparatus for dynamically adjusting video decoding complexity, and associated method |
KR101383775B1 (ko) | 2011-05-20 | 2014-04-14 | 주식회사 케이티 | 화면 내 예측 방법 및 장치 |
WO2013030833A1 (en) * | 2011-08-29 | 2013-03-07 | I.C.V.T. Ltd. | Controlling a video content system |
CN107404651B (zh) | 2011-09-09 | 2020-03-06 | 株式会社Kt | 用于解码视频信号的方法 |
KR20130116782A (ko) | 2012-04-16 | 2013-10-24 | 한국전자통신연구원 | 계층적 비디오 부호화에서의 계층정보 표현방식 |
CN107396121B (zh) * | 2017-08-22 | 2019-11-01 | 中南大学 | 一种基于分层b帧结构的编码单元深度预测方法及装置 |
CN107633023B (zh) * | 2017-08-25 | 2020-04-21 | 北京奇艺世纪科技有限公司 | 一种图像去重方法和装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2126467A1 (en) * | 1993-07-13 | 1995-01-14 | Barin Geoffry Haskell | Scalable encoding and decoding of high-resolution progressive video |
US6233017B1 (en) * | 1996-09-16 | 2001-05-15 | Microsoft Corporation | Multimedia compression system with adaptive block sizes |
US6728775B1 (en) * | 1997-03-17 | 2004-04-27 | Microsoft Corporation | Multiple multicasting of multimedia streams |
US6347157B2 (en) * | 1998-07-24 | 2002-02-12 | Picsurf, Inc. | System and method for encoding a video sequence using spatial and temporal transforms |
EP1277347A1 (en) * | 2000-04-11 | 2003-01-22 | Koninklijke Philips Electronics N.V. | Video encoding and decoding method |
WO2002001881A2 (en) * | 2000-06-30 | 2002-01-03 | Koninklijke Philips Electronics N.V. | Encoding method for the compression of a video sequence |
EP1338148A1 (en) * | 2000-11-17 | 2003-08-27 | Koninklijke Philips Electronics N.V. | Video coding method using a block matching process |
US20030202599A1 (en) * | 2002-04-29 | 2003-10-30 | Koninklijke Philips Electronics N.V. | Scalable wavelet based coding using motion compensated temporal filtering based on multiple reference frames |
-
2004
- 2004-01-12 KR KR1020040002076A patent/KR100596706B1/ko not_active IP Right Cessation
- 2004-10-15 US US10/964,917 patent/US20050117647A1/en not_active Abandoned
- 2004-11-18 CN CN2004800409041A patent/CN1906945B/zh not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101395907B (zh) * | 2006-01-09 | 2012-06-13 | 韩国电子通信研究院 | 可伸缩视频编码文件数据共享方法及其可伸缩视频编码文件 |
CN102223524A (zh) * | 2010-04-13 | 2011-10-19 | 中兴通讯股份有限公司 | 一种三维小波视频编码帧分组方法及装置 |
CN102223524B (zh) * | 2010-04-13 | 2013-08-07 | 中兴通讯股份有限公司 | 一种三维小波视频编码帧分组方法及装置 |
CN102300102A (zh) * | 2010-06-28 | 2011-12-28 | 立积电子股份有限公司 | 利用色彩解耦的视讯传输的方法及其装置和可读取媒介 |
CN104602021B (zh) * | 2010-08-17 | 2016-09-21 | M&K控股株式会社 | 用于对活动图片进行解码的装置 |
CN108235032A (zh) * | 2012-01-18 | 2018-06-29 | Jvc 建伍株式会社 | 动图像解码装置以及动图像解码方法 |
CN108235032B (zh) * | 2012-01-18 | 2022-01-07 | Jvc 建伍株式会社 | 动图像解码装置以及动图像解码方法 |
CN104754345A (zh) * | 2013-12-27 | 2015-07-01 | 展讯通信(上海)有限公司 | 视频编码方法及视频编码器 |
CN111343503A (zh) * | 2020-03-31 | 2020-06-26 | 北京金山云网络技术有限公司 | 视频的转码方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
KR20050053469A (ko) | 2005-06-08 |
CN1906945B (zh) | 2012-12-05 |
US20050117647A1 (en) | 2005-06-02 |
KR100596706B1 (ko) | 2006-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1906945A (zh) | 用于可缩放视频编码和解码的方法和装置 | |
CN1961582A (zh) | 在多层结构中有效压缩运动向量的方法和装置 | |
KR100597402B1 (ko) | 스케일러블 비디오 코딩 및 디코딩 방법, 이를 위한 장치 | |
RU2329615C2 (ru) | Способ масштабируемого кодирования и декодирования видеосигнала и устройство для его осуществления | |
CN1914921A (zh) | 在编码器中提供可分级性的可分级视频编码设备和方法 | |
CN1722838A (zh) | 使用基础层的可伸缩性视频编码方法和设备 | |
CN1943244A (zh) | 视频编码中的帧间预测方法、视频编码器、视频解码方法和视频解码器 | |
CN1910924A (zh) | 视频编码设备和用于自适应插入关键帧的方法 | |
CN1722831A (zh) | 对包括基本层的比特流预解码和解码的方法和设备 | |
CN1926874A (zh) | 对视频流传输业务进行视频编码、预解码和视频解码的方法和设备以及图像滤波方法 | |
CN101036388A (zh) | 对混合比特流进行预解码的方法和设备 | |
CN1461564A (zh) | 图像编码方法与装置、图像解码方法与装置以及图像处理系统 | |
CN1951122A (zh) | 支持可变画面组大小的可伸缩视频编码方法和可伸缩视频编码器 | |
CN1658673A (zh) | 视频压缩编解码方法 | |
CN1722836A (zh) | 视频编码和解码方法以及视频编码器和解码器 | |
JP2005295561A (ja) | 動画データを符号化および復号する方法、前記方法を用いて符号化された画像シーケンスの表現、前記方法を実施する装置、コンピュータプログラム、および記憶媒体 | |
CN1930890A (zh) | 用于可缩放视频编码和解码的方法和设备 | |
CN101049026A (zh) | 采用栅格运动估计和补偿的可扩展视频编码 | |
JP2008536438A (ja) | 基準ピクチャを用いてビデオ信号をデコードする方法及び装置 | |
JP2008079326A (ja) | スケーラブルビデオコーディング及びデコーディング方法、並びにその装置 | |
CN1922881A (zh) | 再现可伸缩视频流的方法及设备 | |
CN1926883A (zh) | 使用感兴趣区域的视频/图像编码方法和系统 | |
CN1698386A (zh) | 编码方法、解码方法、编码装置及解码装置 | |
CN101127900A (zh) | 利用基本层的图像信号的编码/解码方法及装置 | |
CN100466735C (zh) | 视频编码和解码方法以及视频编码器和解码器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20121205 Termination date: 20141118 |
|
EXPY | Termination of patent right or utility model |