CN102547277A - 质量可缩放视频数据流 - Google Patents
质量可缩放视频数据流 Download PDFInfo
- Publication number
- CN102547277A CN102547277A CN2011104121177A CN201110412117A CN102547277A CN 102547277 A CN102547277 A CN 102547277A CN 2011104121177 A CN2011104121177 A CN 2011104121177A CN 201110412117 A CN201110412117 A CN 201110412117A CN 102547277 A CN102547277 A CN 102547277A
- Authority
- CN
- China
- Prior art keywords
- scanning position
- subclass
- coefficient values
- transform coefficient
- quality
- 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/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/129—Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
-
- 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/34—Scalability techniques involving progressive bit-plane based encoding of the enhancement layer, e.g. fine granular scalability [FGS]
-
- 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/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/154—Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
-
- 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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Systems (AREA)
- Picture Signal Circuits (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
- Control Of Indicators Other Than Cathode Ray Tubes (AREA)
- Closed-Circuit Television Systems (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
Abstract
本发明描述了一种用于产生质量可缩放视频数据流(36)的设备,该设备包括:使用逐块变换来对视频信号(18)进行编码,以获得所述视频信号的画面(140)的变换系数值的变换块(146、148)的装置(42),在所述变换块内的变换系数值间定义具有可能扫描位置的预定扫描顺序(154、156、164、166),使得在每个变换块中,对于每个可能扫描位置,相应变换块内至少一个变换系数值属于相应的可能扫描位置;以及针对多个质量层中的每一个来形成视频子数据流(30;28、30)的装置(44),所述视频子数据流包含扫描范围信息和变换系数信息,所述扫描范围信息指示所述可能扫描位置的子集,所述变换系数信息与属于所述可能扫描位置的子集的变换系数值相关,使得每个质量层的所述子集包括所述多个质量层中的任何其他质量层的所述子集未包括的至少一个可能扫描位置。
Description
本申请是PCT国际申请日为2007年4月18日、PCT国际申请号为PCT/EP2007/003411、中国国家申请号为200780050109.4的发明名称为《质量可缩放视频数据流》的申请的分案申请。
技术领域
本发明涉及质量可缩放视频数据流、质量可缩放数据流的产生和解码,例如使用逐块变换获得的视频数据流的产生和解码。
背景技术
当前,ISO/IEC运动图象专家组(MPEG)中的ITU-T视频编码专家组的当前联合视频小组(JVT)正在制定H.264/MPEG4-AVC视频编码标准的可缩放扩展。与传统的单层编码相比,可缩放视频编码(SVC)的主要特征在于,在单个比特流内提供了视频源的具有不同分辨率、帧率和/或比特率的表示。可以通过如分组丢弃之类的简单流操作来从全局SVC比特流中提取具有特定空间-时间分辨率和比特率的视频表示。作为SVC设计的重要特征,按照标准中所指定的那样来使用H.264/MPEG4-AVC的大多数组件。这包括运动补偿和帧内预测、变换和熵编码、解块以及NAL单元分组化(NAL=网络抽象层)。一般地,依照H.264MPEG-4-AVC来对SVC比特流的基础层进行编码,因此,每个符合标准的H.264-MPEG4-AVC解码器在被提供以SVC比特流时都能够对基础层表示进行解码。仅为支持空间和SNR可缩放性而添加了新的工具。
对于SNR可缩放性,在当前的工作草案中,对粗颗粒度/中等颗粒度可缩放性(CGS/MGS)和细颗粒度可缩放性(FGS)进行了区分。使用与空间可缩放性类似的概念来实现粗颗粒度或中等颗粒度SNR可缩放编码。使用层专用的运动参数,对不同SNR层的画面独立进行编码。然而,与联播相比,为了提高增强层的编码效率,已经引入了附加的层间预测机制。这些预测机制已经成为可切换的,使得编码器可以自由选择对于高效增强层编码应当利用哪些基础层信息。由于所使用的层间预测概念包括运动参数和残差预测的技术,因此,应当在时间上将SNR层的时间预测结构对齐,以高效利用层间预测。应注意,一个时刻的所有NAL单元形成了多余的单元,并因此必须在SVC比特流内彼此衔接。在SVC设计中包括了以下3种层间预测技术。
第一种技术被称为层间运动预测。为了采用基础层运动数据来进行增强层编码,已经将一种附加的宏块模式引入SNR增强层中。通过对基础层中位于相同位置的宏块的划分进行拷贝,获得了宏块的划分。从位于相同位置的基础层块拷贝得到参考画面索引以及相关联的运动向量。此外,可以使用基础层的运动向量作为传统宏块模式的运动向量预测符。
第二种技术用于减小各质量层间的冗余,被称为层间残差预测。通过针对所有帧间编码的宏块而传送的标记(residual_prediction_flag)来信号指示层间残差预测的使用。当该标记为真时,使用位于相同位置的块的基础层信号作为对当前宏块的残差信号的预测,从而仅对相应的差值信号进行编码。
最后,使用层间帧内预测,以利用层之间的冗余。在帧内宏块模式中,通过位于相同位置的基础层的重构信号来建立预测信号。对于层间帧内预测,一般而言需要对基础层进行完全解码,这种完全解码包括运动补偿预测和解块的计算复杂的操作。然而,已经表明,当层间帧内预测被限制在较低层画面中被帧内编码的部分时,可以绕过这一问题。由于这种限制,可以使用单个运动补偿环来对每个所支持的目标层进行解码。在可缩放的H.264-MPEG4-AVC扩展中,这种单环解码模式是强制性的。
由于仅当位于相同位置的宏块是帧内编码时才可以应用层间帧内预测,并且仅当基础层宏块是帧间编码时才可以应用对宏块类型进行推断的层间运动预测,因此,在宏块级经由单个语法元素base_mode_flag来信号指示这两种模式。当该标记等于1时,在基础层宏块是帧内编码的情况下选择层间帧内预测。否则,从基础层宏块拷贝得到宏块模式以及参考索引和运动向量。
为了支持比CGS/MGS编码更细的颗粒度,已经引入了所谓的渐进细化片,以实现更细颗粒的SNR可缩放编码(FGS)。每个渐进细化片表示与量化步长(QP增加6)的二等分相对应的残差信号的细化。以在解码器侧仅需对每个变换块执行单次逆变换的方式来表示这些信号。变换系数水平在渐进细化片中的排序使得能够在任何任意字节对齐点处将相应NAL单元截断,由此可以以细颗粒的方式来细化SNR基础层的质量。除了对残差信号进行细化之外,还可以将运动参数的细化作为渐进细化片的一部分来传送。
在当前的SVC草案中,FGS编码的一个缺点在于,与CGS/MGS编码相比,它显著增加了解码器的复杂度。一方面,使用对变换块的多次扫描来对渐进细化片中的变换系数进行编码,并且,在每次扫描中仅传送一些变换系数水平。对于解码器,由于需要更高的存储带宽而增加了复杂度,这是由于在可以执行逆变换之前,需要收集来自不同扫描的所有变换系数水平。另一方面,针对渐进细化片的解析过程依赖于相应基础层片的语法元素。语法元素的顺序以及用于VLC编码的码字表,或用于算术编码的概率模型选择依赖于基础层的语法元素。由于在对增强层进行解析期间需要访问基础层的语法元素,因此这进一步增加了解码所需的存储带宽。
此外,在现今的分组交换网络中,难以使用渐进细化片可以被截断的特殊属性。通常,媒体知道网络设备将传递或丢弃可缩放比特流的分组。并且,在应用层可见的唯一错误是分组丢失。
因此,不仅对于上述H.264-MPEG4-AVC,而且对于其他视频压缩技术,期望具有一种更适于现今需要的编码方案,表现出分组丢失而不是逐字节截断问题。
发明内容
根据本发明的实施例,一种用于产生质量可缩放视频数据流的设备,该设备包括:使用逐块变换来对视频信号进行编码,以获得所述视频信号的画面的变换系数值的变换块的装置,在所述变换块内的变换系数值间定义具有可能扫描位置的预定扫描顺序,使得在每个变换块中,对于每个可能扫描位置,相应变换块内至少一个变换系数值属于相应的可能扫描位置;以及针对多个质量层中的每一个来形成视频子数据流的装置,所述视频子数据流包含扫描范围信息和变换系数信息,所述扫描范围信息指示所述可能扫描位置的子集,所述变换系数信息与属于所述可能扫描位置的子集的变换系数值相关,使得每个质量层的所述子集包括所述多个质量层中的任何其他质量层的所述子集未包括的至少一个可能扫描位置。
此外,根据本发明的实施例,一种用于根据质量可缩放视频数据流来重构视频信号的设备,所述质量可缩放视频数据流针对多个质量层中的每一个包括视频子数据流,所述设备包括:用于对所述多个质量层的视频子数据流进行解析的装置,以针对每个质量层获得扫描范围信息和与不同变换块的变换系数值相关的变换系数信息,在所述变换块内的变换系数值间定义具有可能扫描位置的预定扫描顺序,使得在每个变换块中,对于每个可能扫描位置,相应变换块内至少一个变换系数值属于相应的可能扫描位置,并且所述扫描范围信息指示所述可能扫描位置的子集;使用所述扫描范围信息,针对每个质量层,通过将来自所述变换系数信息的、相应变换块的变换系数值与所述可能扫描位置的子集相关联,来构造所述变换块的装置;以及通过对所述变换块进行反变换来重构所述视频信号的画面的装置。
附图说明
下面将基于附图更详细描述本发明的一些实施例。具体地:
图1示出了根据实施例的用于产生质量可缩放视频数据流的编码器的框图;
图2示出了根据实施例的图1的高层混合编码器的框图;
图3示出了根据实施例的图1的基础层混合编码器的框图;
图4示出了根据实施例的图1的较高质量层的层编码单元的框图;
图5示出了示意根据实施例的画面的结构及其逐块变换的示意图;
图6a-6g示出了根据多个实施例的变换块的已扫描部分及其划分为子层的划分方式的示意图;
图7示出了示意根据实施例的子数据流的构造的示意图;
图8示出了示意根据实施例的对属于指定子数据流的变换系数水平进行编码的伪代码;
图9示出了示意对属于指定子数据流的变换系数水平进行编码的另一示例的伪代码;
图10是根据另一实施例的解码器的框图;以及
图11是图10中的解码单元的实施例的框图。
具体实施方式
图1示出了用于产生质量可缩放比特流的编码器。示例性地,图1的编码器10专门用于产生支持两个不同空间层和N+1个SNR层的可缩放比特流。为此,将编码器10构造为基础层部分12和空间增强层部分14。编码器10的质量降低单元16接收表示画面序列20的原始或较高质量视频18,并降低其质量——在图1的示例中的空间分辨率的意义上——以获得原始视频18的、由画面序列24构成的较低质量版本22,较低质量版本22输入至基础层部分12。
例如,质量降低单元16使用子采样因子2来对画面进行子采样。然而,应理解,尽管图1示出了支持两个空间层12、14的示例,但是,可以容易地将图1的实施例应用至在原始视频18与较低质量视频22之间执行的质量降低确实不包括子采样、而包括例如像素值的表示的比特深度的减小、或者质量降低单元仅仅将输入信号拷贝至输出信号的应用中。
在基础层部分12接收较低质量视频22的同时,将原始视频18输入较高质量部分14,使部分12、14均对分别输入的执行混合编码。基础层部分12接收较低质量视频22,并产生基础层比特流26。另一方面,较高质量部分14在其输入处接收原始视频18,并在产生空间增强层比特流28之外还产生N个SNR细化层比特流30。以下将更详细描述该产生过程和比特流28与26之间的相互关系。仅作为一种预防措施,应注意,基础层部分12也可以使用多个SNR细化层32来伴随基础层比特流26。然而,为了便于示意本实施例的原理,假定SNR可缩放性限制在增强层部分14。然而,以下讨论将表明,以下关于较高质量层部分14对SNR细化层的描述可以容易转移至基础层部分14。在图1中通过虚线32指出了这一点。
将所有比特流26至32输入到复用器34,如以下更详细描述的,复用器34根据其输入处的数据流来产生可缩放比特流36,最终将可缩放比特流36布置为分组。
基础层部分12内部包括混合编码器38和层编码单元40,混合编码器38和层编码单元40以所提及的顺序串联连接在一方面施加低质量视频24的输入与另一方面复用器34之间。类似地,较高质量层部分14包括混合编码器42和层编码单元44,混合编码器42和层编码单元44连接在施加原始视频18的输入与复用器44之间。每个混合编码器42和38分别通过混合编码(即将运动补偿的预测与对预测残差的逐块变换一起使用)来对其视频输入信号进行编码。因此,每个混合编码器38和42分别将运动信息数据46和48以及残差数据50和52分别输出至后续的层编码单元40和44的输入。
自然,在一方面运动数据46与另一方面运动数据48之间,以及残差数据50与残差数据52之间存在冗余。混合编码器42利用这种层间冗余。具体地,以宏块为基础,混合编码器42可以在多个层间预测选项之间进行选择。例如,混合编码器42可以决定使用或采用基础层运动数据46作为较高质量层的运动数据48。备选地,混合编码器42可以决定使用基础层运动数据46作为运动数据48的预测符。作为另一备选,混合编码器42可以完全重新(即独立于基础层运动数据)地对运动数据48进行编码。
类似地,混合编码器42可以以预测方式将较高质量层的残差数据42编码为相对于作为预测符的基础层残差数据50的预测残差。
然而,混合编码器42也可以使用基础层画面内容的重构作为原始视频数据画面内容的预测符,使得在这种情况下,运动数据和/或残差数据48和52分别仅对相对于重构的基础层数据的残差进行编码。如关于图2描述的,基础层混合编码器38或耦合在基础层编码单元40与较高质量层混合编码器42之间的专用重构单元54可以接收重构的基础层画面信息。
以下将更详细描述混合编码器38和42以及层编码单元44的内部结构和功能。对于层编码单元40,以下假定其仅仅产生基础层数据流26。然而,如上所述,根据以下关于层编码单元44的描述,可以容易地导出一种备选实施例,根据该备选实施例,层编码单元40也产生SNR细化层数据流32。
首先描述基础层混合编码器38的内部结构和功能。如图3所示,基础层混合编码器38包括:输入56,用于接收较低质量视频信号24;输出58,用于输出运动数据46;输出60,用于输出残差数据50;输出62,用于将运动数据58耦合至混合编码器42;输出64,用于将重构的基础层画面数据耦合至混合编码器42;以及输出66,用于将残差数据50耦合至混合编码器42。
混合编码器38内部包括:变换单元68、反变换单元70、减法器72、加法器74以及运动预测单元76。减法器72和变换单元68以所提及的顺序耦合在输入56与输出60之间。减法器72从输入视频信号中减去从运动预测单元76接收到的运动预测的视频内容,并将差值信号转发至变换单元68。变换单元68对该差值/残差信号执行逐块变换,并可选地对变换系数进行量化。变换单元68将变换结果输出至输出60以及反变换单元70的输入。反变换单元70对变换系数的变换块执行逆变换(最终,在之前进行解量化)。结果是重构的残差信号,加法器74将该残差信号与运动预测单元76输出的运动预测的视频内容进行加性组合。加法器74执行的加法的结果是具有基础质量的重构视频。加法器74的输出耦合至运动预测单元76的输入以及输出64。运动预测单元76基于重构的画面来执行运动补偿的预测,以预测输入至输入56的视频中的其他画面。运动预测单元76在执行运动预测的同时产生运动数据(包括例如运动向量和运动画面参考索引),并将该模式运动数据输出至输出62以及输出58。变换单元68的输出也耦合至输出66,以将变换残差数据转发至较高质量层的混合编码器42。如上所述,图1的混合编码器38和42的功能相类似。然而,较高质量层的混合编码器42还使用层间预测。因此,图2所示的混合编码器42的结构与图3所示的混合编码器38的结构相似。具体地,混合编码器42包括用于原始视频信号18的输入86、用于运动数据48的输出88、用于残差数据52的输出90以及与基础层混合编码器38的相应输出62、64和66耦合的3个输入92、94和96。混合编码器42内部包括两个开关或选择器98和100,用于连接输入86与输出90之间的两条路径102和104之一。具体地,路径104包括减法器106、变换单元108和残差预测编码器110,减法器106、变换单元108和残差预测编码器110以所提及的顺序经由开关98和100连接在输入86与输出90之间。减法器106和变换单元108与反变换单元112、加法器114和运动预测单元116一起形成预测环路,如图3的混合编码器38中的元件68至76所形成的环路。相应地,在变换单元108的输出处,得到运动预测的残差结果的变换版本,将该变换版本输入至残差预测编码器110。残差预测编码器110也连接至输入96,以接收基础层残差数据。残差预测编码器110使用该基础层残差数据作为预测符来将变换单元108输出的残差数据的一部分编码为相对于输入96处的残差数据的预测残差。例如,残差预测编码器110对基础层残差数据进行上采样,并从变换单元108输出的残差数据中减去上采样的残差数据。当然,残差预测符编码器110可以仅对变换单元108输出的残差数据的一部分执行预测。其他路径通过残差预测编码器110而不改变。这些部分的颗粒度可以为宏块。换言之,可以基于宏块来判定输入96处的残差数据是否可以用作预测符,并且可以使用相应的语法元素residual_prediction_flag来指示该判定结果。
类似地,混合编码器42包括运动参数预测编码器118,以在输入92处接收来自基础层的运动数据以及从运动预测单元116获得的运动信息,并基于宏块在以下操作之间进行切换:将来自运动预测单元116的运动数据不改变地传送至输出88,或者使用输入92处来自基础层的运动信息作为预测符来对该运动数据进行预测编码。例如,运动参数预测编码器118可以将来自运动预测单元116的运动向量编码为偏移向量,该偏移向量是相对于输入92处的基础层运动数据中包含的运动向量。备选地,运动参数预测编码器118将来自输入92的基础层信息传送至运动预测单元116,以用于较高质量层中的运动预测。在这种情况下,不需要针对较高质量层视频信号的相应部分来传送任何运动数据。作为另一备选,运动参数预测编码器118忽略输入92处的运动数据的存在,并将来自运动预测单元116的运动数据直接编码为输出88。将这些可能性中的判决编码到所产生的质量可缩放性比特流。
最后,在路径102上提供预测编码器120,并将其与输入94耦合。预测编码器120基于重构的基础层视频信号的相应部分来对较高质量层的部分进行预测,使得在预测编码器120的输出处仅转发相应残差或差值。预测编码器120也与开关98和100协作来进行逐宏块操作。
从图4可以看到,较高质量层的层编码单元44包括:输入122,用于从输出90接收残差数据的变换系数;以及输入124,用于从输出88接收运动数据。分发单元126接收变换系数并,将其分发至多个增强层。将所分发的变换系数输出至形成单元128。与分发的变换系数一起,形成单元128从输入124接收运动数据。形成单元128将这两种数据组合,并基于这些数据输入来形成零阶增强层数据流28以及细化层数据流30。
为了对分发单元126和形成单元128的功能进行更详细地描述,以下将关于图5更详细地描述变换单元108执行的变换所基于的块基础及其与分发单元126执行的分发的相互关系。图5表示了画面140。画面140是例如高质量视频数据18(图1)的一部分。在画面140中,将像素例如布置为行和列。例如,将画面140划分为宏块142,宏块142也可以规则地布置为行和列。例如,每个宏块142可以在空间上覆盖矩形画面区域,以包括例如画面的亮度分量的16×16个采样。甚至更准确地,可以将宏块142组织为宏块对。具体地,垂直相邻的一对宏块142可以形成这种宏块对,并且在空间上可以假设画面140中的宏块对区域144。混合编码器42(图1)可以基于宏块对,以场模式或帧模式来对相应区域144内的宏块142进行处理。在场模式的情况下,假定视频18包含两个交错的场:顶场和底场,其中顶场包含偶数行的像素,底场包含奇数行的像素(从画面140的第二行开始)。在这种情况下,区域144的顶宏块与区域144内的顶场行的像素值相关,而区域144的底宏块与其余行的内容相关。因此,在这种情况下,两个宏块在空间上实质上以减小的垂直分辨率占据了区域144的整个区域。在帧模式的情况下,将顶宏块定义为在空间上包含区域144内的上半部的行,而底宏块包括区域144中的其余画面采样。
如上所述,变换单元108对减法器106输出的残差信号执行逐块变换。因此,在变换单元108内的变换的块基础可以不同于宏块142的宏块大小。具体地,可以将每个宏块142划分为4(即2×2)个变换块146或16(即4×4)个变换块148。使用上述针对16×16个画面采样的宏块大小的示例,变换单元108可以将画面140的宏块142逐块变换为大小为4×4像素采样或8×8像素采样的块。因此,对于特定宏块142,变换单元108分别输出若干变换块146和148,即16个4×4变换系数块或4个8×8变换系数块146。
在图5的150处,示意了帧编码宏块的8×8变换系数块的示例。具体地,在150处,将每个变换系数分配给扫描位置编号并由扫描位置编号表示,这些编号的范围从0至63。如轴152所示,将相应变换系数与不同空间频率分量相关联。具体地,从变换块150的左上角至右下角,与相应的一个变换系数相关联的频率的幅度依次增大。按照由变换块150的变换系数间的扫描位置所定义的扫描顺序,从左上角至右下角以Z字形方式对变换系数进行扫描,该Z字形扫描以箭头154来示意。
仅为完整起见,注意,在场编码宏块的变换块的变换系数间,可以以不同的方式来定义在变换系数间的扫描。例如,如图5中的156处所示,在场编码宏块的情况下,变换系数扫描158从左上角至右下角以Z字形方式对变换系数进行扫描,与150处的帧编码宏块的情况下使用的45°Z字形方向相比,所述Z字形方式具有更陡的往复式或Z字形方向。具体地,系数扫描158沿列方向以沿行方向两倍的速度来对系数进行扫描,以考虑场编码宏块包含列间距为水平或行间距两倍的画面采样的事实。因此,如系数扫描154的情况一样,系数扫描158以使频率随位置扫描编号增大而增大的方式来对变换系数进行扫描。
在150和158处,示出了8×8变换系数块的系数扫描的示例。然而,如上所述,也可以存在具有更小大小(即4×4)的变换系数的变换块。对于这些情况,在图5中的160和162处分别示出了相应的位置扫描,在160的情况下扫描164专门用于帧编码宏块,而162处所示的扫描166专门用于场编码宏块。
应强调,图5中关于宏块和变换块的大小和布置所示的具体示例仅是示意性质的,并且可以容易地应用不同的变型。在开始描述后续附图之前,注意,可以基于宏块将画面140子划分为多个片168。图5中示例性示出了一个这种片168。片168是宏块142的序列。可以将画面140分割为一个或多个片168。
在描述了将画面分别子划分为宏块对区域、宏块和变换块以及片之后,以下更详细描述分发单元126和形成单元128的功能。从图5可以看出,在变换系数间定义的扫描顺序使得能够将二维布置的变换系数排序为变换系数的线性序列,序列中的变换系数所涉及的内容具有单调递增的频率。分发单元126操作用于将若干宏块142的变换系数分发至不同的质量层,即与数据流28相关联的零阶层和细化层30中的任一个。具体地,分发单元126尝试以如下方式来将变换系数分发至数据流28和30:随着贡献层的数目从0或层28增加至最高质量细化层30,可根据相应数据流重构的视频的SNR质量提高。一般而言,这将导致这样一种分发,其中将与较低扫描位置相对应的较低频率变换系数分发至较低质量层,而将较高频率变换系数分发至较高质量层。另一方面,分发单元126倾向于将具有更高变换系数值的变换系数分发至较低质量层,并将具有较低变换系数值或能量的变换系分发至较高质量层。可以以将每个变换系数分发至单个层的方式来执行分发单元126所形成的分发。然而,也可以以如下方式来执行分发单元126所执行的分发:也可以将变换系数的数量按部分分发至不同质量层,使得所分发的部分之和为变换系数值。以下将关于图6a-g来详细描述分发单元126所执行的分发的不同可能性。形成单元128使用由分发单元126产生的分发,以形成相应子数据流28和30。如上所述,子数据流28形成最低质量层细化子数据流,并包含例如输入124处输入的运动数据。零阶子数据流128也可以具有第一分发部分的变换系数值。因此,子数据流28允许将基础质量层数据流26细化为较高质量——在图1的示例中为较高空间质量——但是可以通过使另外的较高质量细化子数据流30伴随子数据流28来获得另外的SNR质量增强。这些细化质量子数据流30的数目为N,其中N可以是1或大于1。从而例如将变换系数(例如根据SNR质量的重要性递增顺序)分发至这些子数据流28和30。
图6a示出了对8×8变换块的前26个变换系数值进行分发的示例。具体地,图6a示出的表中,表的第一行分别根据扫描顺序154和158(图5)列出了相应扫描位置。可以看到,所示的扫描位置示例性地从0延伸至25。针对各变换系数值,以下3行分别示出了并入相应子数据流28和30的对应贡献值。具体地,第二行与例如零阶子数据流28相对应,而倒数第二行属于下一较高细化层30,最后一行涉及甚至下一质量层细化数据流。根据图6a的示例,将“122”编码到子数据流128中作为DC分量,即属于扫描位置0的变换系数值。如相应表条目的无用信息(hashing)所示,在以下两个子数据流30中,将针对该具有扫描位置0的变换系数的贡献值设置为0。按照这种方式,根据图6a的示例,零阶增强层子数据流28针对每个变换系数值包括分发值。然而,在图6a的变换块内,仅有扫描位置0至6、8和9的变换系数值属于零阶质量层。其他变换系数值设置为0。应强调,在其他变换块中,属于零阶质量层的变换系数值可以属于其他扫描位置。类似地,扫描位置7、10至12、15至18和21的变换系数值属于下一较高质量层。其余变换系数值设置为0。将其余扫描位置的其余系数值包括在下一更高质量层子数据流中。可以看到,特定变换系数值实际上可能是0。在图6a的示例中,对于扫描位置23就是这种情况。将前一质量层内的对应贡献值设置为0,在针对扫描位置23的最后一个质量层(最后一行)中,扫描位置23的变换系数值本身是0。
因此,对于每个扫描位置,各质量层子比特流28和30中包括的贡献值之和为实际变换系数值,使得在解码器侧,可以通过将不同质量层中针对各扫描位置的贡献值相加来重构实际变换块。
根据图6a的实施例,子数据流28和30中的每一个包括分别针对所有变换系数和针对所有扫描位置的贡献值。然而并不必须如此。首先,如上所述,零阶子数据流28不需要包含任何变换系数或贡献值。因此,在后一种情况中,图6a的表中的最后3行可以被视为属于第一细化层子数据流30,而零阶子数据流28仅包括来自输入124的运动信息。
此外,注意,仅为更容易理解信息单元128的功能起见,使用无用的表条目来区分图6a中已被设置为0的贡献值和实际为0的实际变换系数值。然而,子数据流28和30可以被解释为使得刚刚提及的已被设置为0的贡献值和天然为0的贡献值之间的区分对于解码器是透明的。更准确地,相应扫描位置的一些相应贡献值(即图6a的第一行中的相应扫描位置下的第二至第四行中的数字)表明了独立于和值中被设置为0或天然为0的各贡献值的变换系数值。
在图6a的实施例中,形成单元128将针对每个扫描位置的贡献值分别编码到子数据流28和30中的相应的一个。这不是必需的。根据图6b的实施例,例如,连续质量层子数据流仅包括属于相应质量层的变换系数值。
在图6a和图6b的实施例中,将贡献值和变换系数值分别编码入子数据流28和30的顺序可以变化。例如,子数据流28和30可以是分组化的数据流,其中每个分组与一个片168相对应。在一个片168中,可以将变换系数值逐宏块地编码为相应分组。这就是说,可以在片168内的宏块142间定义扫描顺序,使得在按照宏块扫描顺序的宏块的第一个变换系数值之前,将预定宏块142的变换系数值完全编码为相应分组。在每个宏块内,可以分别在相应宏块内的相应变换块146和148间定义扫描顺序。再一次,可以通过形成单元128分别将变换系数值编码为子数据流28和30中相应的一个,使得在将下一变换块的第一个变换系数值编码为子数据流之前,将变换块中的相应一个变换块的变换系数值全部被编码为相应子数据流。在每个变换块内,可以以下面关于图8或9所说明的方式来分别对变换系数值和贡献值进行编码。
根据图6a和6b的实施例,片168中属于相应的一个质量层的不同变换块的变换系数值延伸至扫描顺序的不同部分上。更准确地,尽管在图6a和6b示例性示出的指定变换块中,扫描位置0至6、8和9属于零阶扫描质量层,但是在另一变换块中,属于该层的扫描位置集合可以不同。然而,根据图6c的实施例,分发单元126在片168内对不同变换块的变换系数值进行分发,使得对于所有变换块,相同扫描位置集合的变换系数值属于相同质量层。例如,在图6c中,从0至11的扫描位置的变换系数值属于零阶子数据流28,并且对于片168内的所有变换块均是如此。
此外,根据图6c的实施例,属于指定的一个质量层的变换系数值延伸至连续扫描位置的连续序列上。然而,不必须是这种情况。具体地,如图6b所示,对于属于指定质量层的第一个和最后一个扫描位置之间的扫描位置,属于该扫描位置的变换系数值可以属于其他质量层之一。然而,在图6c的实施例的情况下,仅使用两个语法元素,可以指示分别并入质量层子数据流28和30中任一子数据流的扫描位置,所述两个语法元素中一个指示相应质量层的第一个扫描位置(即scan_idx_start),另一个指示该相应质量层的最后一个扫描位置(即scan_idx_end)。
如以下实施例所示,可以将以下两方面进行混合:一方面是将指定扫描位置集合预留给相应的一个质量层的操作,另一方面是将变换系数根据质量重要性来分发至各质量层的操作。例如,图6d示出的实施例中,分发单元126已经如关于图6a所示将变换系数分发至质量层上。这种分发依变换块而不同。然而,另一方面,将扫描位置中对所有变换块公共的指定部分分配给每个质量层。例如,将从扫描位置0至扫描位置63的扫描位置全集分配给最低质量层。因此,对于每个变换块,最低质量层包括64个贡献值。下一较高质量层子数据流包括针对指定扫描位置范围内的所有变换块的贡献值或变换系数值,该扫描位置范围从扫描位置6延伸至63。下一质量层的扫描位置范围从扫描位置13延伸至63。再一次,解码器不需要知道指定的一个贡献值是否是被设置为0(无用的条目)或实际指示0变换系数值或无效变换系数值。然而,需要知道语法元素scan_idx_start,该语法元素指示了针对相应片168要从哪个扫描位置开始使用相应子数据流中所包含的变换系数值或贡献值。更准确地,在图6d的实施例中,例如,与倒数第二行相对应的子数据流包括针对单个变换块58的变换系数值或贡献值。在图6d的变换块的情况下,第一个值为0,而第二个值为22。在解码器侧,使用语法元素scan_idx_start,可以知道相应质量层的第一个变换系数值与扫描位置6相对应,而该质量层的其余变换系数值涉及之后的扫描位置。与图6d的实施例类似,图6e示出的实施例中,语法元素scan_idx_end指示了各子数据流的最后扫描位置,直至该最后扫描位置,相应质量层子数据流包括子系数或贡献值。
图6f示出了图6d和6e的实施例的组合。根据该实施例,属于指定的一个质量层的相应扫描位置集合从由语法元素scan_idx_start指示的第一扫描位置延伸至由语法元素scan_idx_end指示的最后扫描位置。例如,在与倒数第二行相对应的质量层中,相应扫描位置集合从扫描位置6延伸至扫描位置21。最后,图6g的实施例示出,对语法元素scan_idx_start和/或scan_idx_end的使用可以与图6c的实施例的关注点进行组合,根据图6c的实施例,片168内的不同变换块的各个变换系数值的分发操作对这些变换块是共同的。相应地,根据图6g的实施例,在指定的一个质量层内,将scan_idx_start至scan_idx_end内的所有变换系数值分发至相应质量层。因此,与图6f的实施例不同,在图6g的实施例中,将扫描位置6至扫描位置21内的所有变换系数值分配至与图6g中的倒数第二行相对应的质量层。与此不同,在图6f的实施例中,可以将从6至21的位置扫描范围内的若干个贡献值设置为0,其中,在从6至21的该位置扫描范围内,被设置为0的变换系数值与未被设置为0的变换系数值的分发可以不同于当前片内的其他变换块中的任一个。
下面将关于图7来示意性描述混合编码器42、层编码单元44、分发单元126以及形成单元128之间的协作,图7分别示出了子数据流28和30的结构的示例。根据图7的实施例,形成单元28被设计为对各子数据流28和30分别进行分组化,即,使其包括一个或多个分组。具体地,形成单元28可以被设计为对画面140内的每个片168在每个子比特流28和30内分别产生分组。如图7所示,分组可以一方面包括片首部170,另一方面包括残差数据172,但是子比特流28可选地仅在每个分组内包括片首部。
关于残差数据172的描述,即残差数据#1,残差数据#2,…,残差数据#N,参考以上关于图6a至6g的描述,其中例如这些表中的第二至第四行与例如残差数据#1、残差数据#2和残差数据#3相对应。换言之,图7中所示的残差数据172包括在图6a至6g中讨论的变换系数值,这里不再描述这些变换系数值在相应子数据流28和30间的分发。然而,图7示出了片首部170和残差数据172(来自混合编码器42)中包含的其他语法元素。如上所述,混合编码器42基于宏块在若干个层间预测模式之间进行切换,以依赖于来自基础层的运动信息,或产生较高细化层的相应运动块的新运动信息(将该运动信息预测编码为对来自基础层的运动信息的残差或重新编码该运动信息)。因此,如图7所示,针对每个宏块,残差数据172可以包括指示运动参数、宏块模式(如场或帧编码)或推断模式(指示基础层的运动参数对相应宏块的重新使用)的语法元素。对于0或子数据流28尤为如此。然而,在随后的细化层和随后的较高质量子数据流301至30N中不再对该运动信息进行细化,因此,形成单元28被设计为不考虑这些子数据流301至30N的残差数据中与宏块模式、运动参数和推断模式指示相关的这些宏块级的语法元素,或将这些子数据流301至30N中的语法元素设置为等于子数据流28中包含的相应宏块的宏块模式和运动参数或设置为指示相应宏块的推断模式,以便指示要在相应细化层中使用相同的设置。根据本发明的实施例,使用相同的语法结构来传送各子数据流28和301至30N内的所有残差数据172,使得细化子数据流301至30N内的残差数据也包括逐宏块定义的、与宏块模式、运动参数和/或推断模式激活/去激活相关的信息。
从图7还可以导出,形成单元128可以被设计为给片首部170提供语法元素scan_idx_start和/或scan_idx_end。备选地,片首部数据170可以包括其他语法元素,用于针对每个单独片或分组来定义与对应于相应片首部数据的残差数据相关的扫描位置集合。如上所述,在子数据流28不包括任何残差数据的情况下,子数据流28的分组的片首部数据可以不包括与层专用扫描位置的定义相关的这种语法元素,而仅分别包括与宏块模式和/或运动参数和推断模式指示相关的语法元素。此外,如上所述,片首部数据170可以仅包括scan_idx_start和scan_idx_end之一。最后,可以针对每个变换块大小种类(即4×4和8×8)提供一次scan_idx_start和/或scan_idx_end,或对每个片/画面/子数据流,针对所有变换块大小种类仅公共地提供一次scan_idx_start和/或scan_idx_end,其中如以下所述采用相应措施来将scan_idx_start和scan_idx_end转移至其他块大小。
此外,片首部数据可以包括指示质量水平的语法元素。为此,形成单元128可以被设计为使得该语法元素或质量指示符仅仅在一方面零阶质量水平28与另一方面细化层301至30N之间进行区分。备选地,该质量指示符可以在细化层28和301至30N间对所有质量层进行区分。在后两种情况下,该质量指示符可以实现在子数据流301至30N的分组内省略任何逐块定义的宏块模式、运动参数和/或推断模式,这是由于在这种情况下,在解码器侧已知这些细化层子数据流301至30N仅使用来自零模式子数据流28的宏块模式、运动参数和推断模式来细化变换系数。
尽管未在以上进行更详细描述,但是,形成单元28可以被设计为对子数据流28和301至30N内的分组进行熵编码。在本实施例中,图8和9示出了根据两个实施例的用于对残差数据内属于一个变换块的变换系数进行编码的可能示例。图8示出了用于对任何残差数据172中的变换块内的变换系数进行的可能的编码的第一示例的伪代码。假想应用以下示例:
扫描位置 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |
系数编号 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
变换系数水平 | 7 | 6 | -2 | 0 | -1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
以下基于该示例来解释图8的伪代码,图8示出了形成单元128可以将一个变换块内的残差数据编码为任何子数据流的方式。
根据图8,为了传递变换系数的信息,首先提供240参数coeff_token。参数coeff_token是指示以下内容的码字:非零系数数目,即total_coeff(coeff_token);以及在非零变换系数序列的结尾处绝对值等于1的变换系数的游程中的变换系数数目,即trailing_ones(coeff_token)。在我们的示例中,total_coeff(coeff_token)为5(变换系数编号0、1、2、4和7),trailing_ones(coeff_token)为2(变换系数编号4和7)。因此,通过提供参数coeff_token 240,将有效变换系数的位置确定为不存在多于total_coeff(coeff_token)个非零变换系数的范围。
因此,提供这些非零变换系数的水平的值。这是以反扫描顺序来完成的。更具体地,首先检查242非零变换系数的总数是否大于零。在上述示例中,由于total_coeff(coeff_token)为5,因此检查结果为是。
然后,以反扫描顺序单步调试244这些非变换系数。仅通过查看for循环244中的计数参数增量i++,该反扫描顺序尚不明显,但是通过以下计算将变得清楚。以反扫描顺序单步调试这些非变换系数时,对于这些非零变换系数中的第一个系数,仅提供248其变换系数符号。当以反扫描顺序单步调试这些非零变换系数时,对这些非零变换系数的trailing_ones(coeff_token)的第一个编号进行上述操作,这是由于,对于这些变换系数,已知这些变换系数的绝对值为1(参照上述trailing_ones(coeff_token)的定义)。所提供的系数符号用于临时存储在辅助向量系数level[i]中,level[i]用于绝对值为1的非零变换系数水平的变换系数水平,其中i是以反扫描顺序来扫描时这些非零变换系数的编号(250)。在我们的示例中,在前两轮for循环244之后,得到level[0]=1以及level[1]=-1。
接下来,以反扫描顺序来提供(252)其余非零变换系数的系数水平coeff_level,并将coeff_level临时存储在辅助向量系数level[i]中(254)。其余for循环产生level[2]=-2,level[3]=6以及level[4]=7。
现在,为了呈现对有效变换系数的位置的唯一确定,除非total_coeff(coeff_token)已经等于变换块中变换系数的最大编号,即等于maxNumCoeff,否则还提供了两个另外的参数,称为total_zeros和run_before。更具体地,检查total_coeff(coeff_token)是否等于maxNumCoeff(256)。如果不是,则提供参数total_zeros(258),并且将辅助参数zerosLeft初始化为total_zeros的值(260)。参数total_zeros指定按照扫描顺序在最后一个非零系数与扫描起始处之间的零的数目。在上述示例中,total_zeros为3(系数编号3、5和6)。因此,将zerosLeft初始化为3。
对于除相对于反扫描顺序的最后一个非零变换系数(系数编号0)之外的每个非零变换系数,从相对于扫描顺序的最后一个非零变换系数(系数编号7)开始(62),提供参数run_before(64),该参数指示:当按照扫描顺序来看时,直接布置在相应非零变换系数之前的零水平变换系数的游程长度。例如,对于等于0的i,相对于扫描顺序的最后一个非零变换系数是所讨论的非零变换系数。在我们的示例中,这是编号为7且水平为1的变换系数。在该变换系数之前的零的游程长度为2,即变换系数5和6。因此,在我们的示例中,第一个run_before参数为2。将该参数临时存储在辅助向量系数run[0]中(266)。以反扫描顺序对run[i]重复该操作,其中i是以反扫描顺序扫描时的非零变换系数的计数。通过在每一轮for循环中将辅助参数zerosLeft减小参数run_before(261),针对每一轮来确定还剩下多少零水平变换系数。如果zerosLeft为0,则不再提供run_before参数(270),并将该向量的其余系数设置为0(272)。在任何情况下,当以反扫描顺序单步调试时,不对最后一个非零变换系数提供run_before参数,即相对于扫描顺序的第一个非零变换系数没有run_before参数。如辅助参数zerosLeft所示(274),通过剩余的零水平变换系数的数目来推定该参数。在我们的示例中,向量run的辅助向量系数为run[0]=2,run[1]=1,run[2]=0,run[3]=0以及run[4]=0。
最后,在276处所示的for循环中,通过将向量level的系数的值拷贝至一维数组coeffLevel中的相应位置,将存储在辅助向量level中的变换系数水平的值分配给其位置。更具体地,在第一轮for循环276中,i=4,通过run[4]+1=0+1=1来增加已经被初始化为0(278)的coeffNum,得到coeffNum=0,并将level[4]=7的值分配给coeffLevel[0]。对于随后的辅助向量系数level[3]至level[0]重复该操作。由于已经将数组coeffLevel的其余位置初始化为0值(280),因此已经对所有变换系数进行了编码。
可以通过例如可变长编码来将图8中粗体书写的语法元素编码为相应子数据流。
图9示出了用于对变换块进行编码的另一示例。在本示例中,扫描顺序以while循环310内的“i++”来表明其自身,“i++”指示每次while循环迭代,计数参数i增加。
按照扫描顺序,对每个系数提供1比特符号significant_coeff_flag(312)。如果significant_coeff_flag符号为1(314),即如果在该扫描位置i处存在非零系数,则提供另一1比特符号last_significant_coeff_flag(316)。该符号指示当前有效系数是否是块内的最后一个有效系数,或按照扫描顺序,之后是否有另外的有效系数。因此,如果last_significant_coeff_flag符号为1(318),则表明系数数目(即numCoeff)为i+1(320),并且可以推定后续变换系数的水平为0(322)。至此,可以将语法元素last_significant_coeff_flag和significant_coeff_flag视为有效性映射。然后,对于按照扫描顺序的最后一个变换系数,提供(324)其水平的绝对值减1(即coeff_abs_level_minus1)及其符号(即coeff_sign_flag),从而指示该最后一个有效变换系数的变换系数水平(326)。按照反扫描顺序(332),对其余有效(330)变换系数重复执行这些步骤324、326(328),其中所述反扫描顺序以i--(即i=i-1)来表明其自身,i--指示在for循环中每一轮计数参数i减小。对语法元素coeff_abs_level_minus1的解析从导出该语法元素的可能值的二进制化开始。该二进制化方案可以是UEG0,即级联一元/第0阶Exp-Golomb二进制化过程。根据可能的二进制化,可以逐箱(bin)地对相应语法元素进行二进制算术编码。为此,可以使用上下文自适应的二进制算术编码方案用于coeff_abs_level_minus1的二进制化的前缀部分,同时使用没有自适应性的解码旁路过程用于后缀部分。
为完整性起见,注意,从图5中可以清楚地看到,在8×8变换块内可区分的扫描位置数目为64,而在4×4变换块内可区分的扫描位置数目仅为16。相应地,可以以实现在所有64个扫描位置之间进行区分的精度,或者仅以在16个扫描位置之间进行区分的精度来定义上述语法元素scan_idx_start和scan_idx_end。在后一种情况下,例如,可以将这些语法元素应用至8×8变换块内的每一四元组的连续变换系数。更准确地,可以使用以下操作来对8×8变换块进行编码:
residual_block(LumaLevel8x8,
4*scan_idx_start,4*scan_ids_end+3,64)
并且,在4×4变换块的情况下,可以使用以下操作来进行编码:
residual_block(LumaLevel4x4,
scan_idx_start,scan_idx_end,16)
其中residual_block是residual_block_cavlc或residual_block_cabac,LumaLevel4x4和LumaLevel8x8分别指示相应4×4和8×8变换块的亮度采样的数组。可以看到,scan_idx_start和scan_idx_end被定义为在16个扫描位置之间进行鉴别,使得它们可以精确指示4×4块中的位置范围。然而,在8×8块中,这些语法元素的精度不够,因此在这些块中以逐四元组的方式来调整该范围。
此外,通过将8×8块的64个系数划分为4个16个系数的集合,例如通过将每4个系数中的一个放入从系数n开始的第n个集合,其中n在0至3(含0和3)的范围之内,并使用4×4块的残差块语法来对每一16个系数的集合进行编码,也可以对8×8变换系数块进行编码。在解码器侧,将这4个16个系数的集合重新组合,以形成表示8×8块的64个系数的集合。
在描述了编码器的实施例之后,关于图10和11来说明用于对质量可缩放数据流进行解码的解码器。图10示出了解码器400的总体构造。解码器400包括解复用器402,解复用器402具有用于接收可缩放比特流36的输入404。解复用器402将输入信号36解复用为数据流26至32。为此,解复用器可以执行解码和/或解析功能。例如,解复用器402可以对图8和9中的变换块编码进行解码。此外,回想图6a-6g。相应地,在对当前子数据流进行解析时,解复用器402可以使用先前子数据流的信息来知道指定变换块预期要有多少变换系数值或贡献值。解码单元406接收所得到的数据流,解码单元406基于这些数据流来重构视频18,并在相应输出410处输出相应重构的视频408。
图11中更详细示出了解码单元406的内部结构。如其中所示,解码单元406包括:基础层运动数据输入412、基础层残差数据输入414、零阶细化层运动数据输入416、可选变换系数零阶细化变换系数数据输入418以及用于子数据流30的输入420。如图所示,输入412和414用于接收数据流26,而输入416和418协作来接收数据流28。此外,解码单元406包括:较低质量重构视频信号输出422、较高质量层间编码的重构视频信号输出424以及内部编码的重构视频信号输出426,后两者提供了较高质量视频信号的信息。
组合器428的输入连接至输入418和420,组合器428的输出用于输出通过收集来自各质量层的对应贡献值而获得的针对各变换块的变换系数水平。该收集过程可以包括对若干数据流30和28内的指定变换系数的贡献值进行求和。然而,组合器428也可以将所有变换系数值预先设置为0,并仅在相应扫描位置的贡献值不等于0的情况下对这些0中的任一个进行替换。通过这种措施,组合器收集与各变换块的变换系数相关的信息。各个层内的贡献值或变换系数值的关联可以包括使组合器使用当前层的扫描位置信息,如scan_idx_start和/或scan_idx_end。备选地,组合器可以使用目前从较低质量或SNR层接收到的、各变换块内的变换系数值的知识。
残差预测解码器430和加法器432接收组合器428所输出的变换块。
在残差预测解码器430与输入414之间连接有反变换或逆变换单元432,以将反变换后的残差数据转发至残差预测解码器430。最终在执行上采样或另一质量适配之后,残差预测解码器430使用该反变换后的残差数据来获得预测符,该预测符要与组合器428所输出的变换块的变换系数相加。另一方面,运动预测单元434连接在输入412与加法器436的输入之间。加法器436的另一输入连接至反变换单元432的输出。通过这种措施,运动预测单元434使用输入412上的运动数据来产生针对反变换单元432所输出的反变换后的残差信号的预测信号。在加法器436的输出处,加法器436的结果是重构的基础层视频信号。加法器436的输出连接至输出432以及预测解码器432的输入。预测解码器432最终通过使用上采样来使用重构的基础层信号作为对组合器428所输出的视频内容的层内编码部分的预测。另一方面,加法器436的输出也连接至运动预测单元434的输入,以使运动预测单元434能够使用输入412处的运动数据,基于根据基础层数据流而重构的信号来向加法器436的第二输入产生预测信号。反变换单元438对残差预测解码器430所输出的预测解码的变换系数值进行反变换。在反变换单元438的输出处,得到较高质量残差视频信号数据。加法器440将该较高质量残差数据视频信号与运动预测单元442所输出的运动预测的视频信号相加。在加法器440的输出处,得到重构的高质量视频信号,该信号到达输出424以及运动预测单元442的另一输入。运动预测单元442基于加法器440所输出的重构视频信号以及运动参数预测解码器444所输出的运动信息来执行运动预测,该运动参数预测解码器444连接在输入416与运动预测单元442的相应输入之间。运动参数预测解码器444基于宏块选择的基础,使用来自基础层运动数据输入412的运动数据作为预测符,并根据该数据,使用例如输入416处的运动向量作为对输入412处运动向量的偏移向量,将该运动数据输出至运动预测单元442。
与背景部分中描述的CGS/MGS编码相比,上述实施例实现了在画面/片级的SNR可缩放编码的颗粒度的提高,但是对FGS编码中存在的复杂度没有明显提高。此外,由于认为FGS可以对分组进行截断的特征将不会广泛使用,因此可以通过简单的分组丢弃来进行比特流适配。
上述实施例具有共同的基本思想:将当前在SVC草案中规定的传统CGS/MGS分组的变换系数水平划分为子集,在不同分组和不同SNR细化层中传送这些子集。作为示例,上述实施例涉及具有一个基础层和一个增强层的CGS/MGS编码。取代针对每个画面包括宏块模式、帧内预测模式、运动向量、参考画面索引、其他控制参数以及所有宏块的变换系数水平在内的增强层,为了提高SNR可缩放编码的颗粒度,将这些数据分发至不同片、不同分组和不同增强层上。在第一增强层中,传送宏块模式、运动参数、其他控制参数,以及可选地传送变换系数水平的第一子集。在下一增强层中,使用相同的宏块模式和运动向量,但是对变换系数水平的第二子集进行编码。在第二和所有后续增强层中,可以将第一增强层中已经传送的所有变换系数设置为0。在所有后续增强层(第三增强层等)中,再次使用第一增强层的宏块模式和运动参数,但是对另外的变换系数水平子集进行编码。
应注意,与当前SVC草案中规定的传统CGS/MGS编码相比,这种划分不增加或仅仅非常微小地增加复杂度。可以并行地对所有SNR增强进行解析,并且不需要从对画面/片的不同扫描中收集变换系数。这意味着,例如,解码器可以根据所有SNR增强来对块的所有变换系数进行解析,然后可以对该块应用逆变换,而不用将变换系数水平存储在临时缓存中。当完整地对宏块中的所有块进行了解析时,可以应用运动补偿的预测,并且可以获得该宏块的最终重构信号。应注意,逐宏块地传送片中的所有语法元素,在宏块内,逐变换块地传送变换系数值。
可以在片级对标记进行编码,该标记信号指示了所有宏块模式和运动参数是否是根据基础层来推断得到的。给定CGS/MGS分组的当前语法,这尤其意味着:所有语法元素mb_skip_run和mb_skip_flag均不传送的,而是推断为等于0;所有语法元素mb_field_decoding_flag均不传送而是推断为等于其在位于相同位置的基础层宏块中的值;所有语法元素base_mode_flag和residual_prediction_flag均不传送而是推断为等于1。在第一SNR增强层中,该标记通常应设置为0,这是由于,对于该实施例,应当可以传送与基础层不同的运动向量,以提高编码效率。但是,在所有其他增强层中,将该标记设置为等于1,这是由于这些增强层仅表示在先前的SNR增强层中未编码的扫描位置的变换系数水平的细化。并且,对于这种情况,通过将该标记设置为1,可以提高编码效率,这是由于不需要传送不需要的语法元素,并因此节省了相关联的比特率。
此外,如上所述,可以在片级对各变换块中的变换系数水平的第一扫描位置x进行传送,而在宏块级,对于具有小于x的扫描位置的变换系数不传送语法元素。除了上述描述之外,其中仅对指定变换大小传送第一扫描位置,并基于所传送的值来推断其他变换大小的第一扫描位置,可以针对所支持的所有变换大小传送第一扫描位置。
类似地,可以在片级对各变换块中的变换系数水平的最后扫描位置y进行传送,而在宏块级,对于具有大于y的扫描位置的变换系数不传送语法元素。再一次,可以针对所支持的所有变换大小传送最后扫描位置,或可以仅对指定变换大小传送最后扫描位置,并基于所传送的值来推断其他变换大小的最后扫描位置。
备选地,可以基于在先前的增强层中传送的变换系数来推断SNR增强层中的每个变换块的第一扫描位置。可以对所有变换块独立地应用推断规则,并且,在每个块中,例如可以由组合器428来导出不同的第一变换系数。
此外,可以对第一扫描位置的信号指示和推断进行组合。这意味着,基本上,可以基于在先前的SNR增强层中传送的变换系数水平来推断第一扫描位置,但是为此要使用第一扫描位置不能小于x的附加知识,x是在片首部中传送的。根据这一概念,仍可以在每个变换块中具有不同的第一扫描索引,可以选择第一扫描索引来最大化编码效率。
作为另一替代方案,第一扫描位置的信号指示、第一扫描位置的推断或其组合可以与最后扫描位置的信号指示进行组合。
至此,以上描述实现了一种允许SNR可缩放性的可能方案,其中,在不同SNR增强层中,仅传送变换系数水平的子集,并且通过一个或多个片首部语法元素来信号指示该模式,这些语法元素指定:针对所有宏块类型来推断宏块模式和运动参数,和/或在变换块级不存在针对多个扫描位置的变换系数。可以使用一种片级的语法元素来信号指示:针对所有宏块的宏块模式和运动参数都是根据位于相同位置的基础层宏块推断得到的。具体地,可以使用相同的宏块模式和运动参数,可以不在片级传送对应的语法元素。可以通过片首部语法元素来信号指示针对所有变换块的第一扫描位置x。在宏块级,对于扫描位置小于x的变换系数值不传送语法元素。备选地,可以基于所传送的基础层变换系数水平来推断变换块的第一扫描位置。可以将后面两种替代方案进行组合。类似地,可以通过片首部语法元素来信号指示针对所有变换块的最后扫描位置y,其中,在宏块级,对于扫描位置大于y的变换系数值不传送语法元素。
如上所述,可以以各种方式对图1-11中详细描述的实施例进行改变。例如,尽管关于两个空间层的环境例示了上述实施例,但是,可以容易地将上述实施例转移至仅具有一个质量层或具有多于一个质量层、但具有N+1个SNR可缩放细化层的实施例。例如,假想图1中没有部分12。在这种情况下,混合编码器42用作编码装置,用于使用逐块变换来对视频信号18进行编码,以获得视频信号的画面140的变换系数值的变换块146、148,同时单元44用作针对多个质量层中的每一个形成视频子数据流30或28加30的装置,所述视频子数据流包含扫描范围信息和变换系数信息,所述扫描范围信息指示可能扫描位置的子集,而所述变换系数信息与属于该可能扫描位置子集的变换系数值相关。将不涉及层间预测。此外,可以将编码器42简化为不执行运动预测,而仅执行逐块变换。类似地,在一个质量层的情况下,解复用器402将用作解析装置,用于对多个质量层的视频子数据流进行解析,以获得针对每个质量层的扫描范围信息和变换系数信息;并且,组合器428可以用作:使用该扫描范围信息,针对每个质量层,通过将来自该变换系数信息的相应变换块的变换系数值与可能扫描位置的子集相关联来构造变换块的装置;同时反变换单元438通过对变换块进行反变换来重构视频信号的画面。
此外,可以以以下方式来改变图1中的实施例:基础层编码器12以与增强层编码器14相同的空间分辨率和相同的比特深度来操作。在这种情况下,该实施例使用标准的基础层26和包含对变换系数的划分在内的各增强层28、30来表示SNR可缩放编码。
根据实际实现方式,可以以硬件或软件来实现本发明的方案。因此,本发明也涉及一种计算机程序,该计算机程序可以存储在计算机可读介质上,如CD、盘或任何其他数据载体。因此,本发明也是一种具有程序代码的计算机程序,当在计算机上执行时,所述程序代码执行与上述附图相关的本发明的方法。
此外,应注意,可以使用编码器中的相应装置来实现在流程图中示出的所有步骤或功能,这种实现方式可以包括在CPU、ASIC的电路部件等上运行的子例程。
Claims (19)
1.一种用于产生质量可缩放视频数据流(36)的设备,包括:
使用逐块变换来对视频信号(18)进行编码,以获得所述视频信号的画面(140)的二维布置的变换系数值的变换块(146、148)的装置(42),其中,具有可能扫描位置的预定扫描顺序(154、156、164、166)将所述变换系数值排序为变换系数值的线性序列;以及
针对多个质量层中的每一个来形成视频子数据流(30;28、30)的装置(44),所述视频子数据流包含扫描范围信息和变换系数信息,所述扫描范围信息指示所述可能扫描位置的子集,所述子集形成所述可能扫描位置的连续序列,所述变换系数信息与属于所述可能扫描位置的子集的变换系数值相关,使得每个质量层的所述子集包括所述多个质量层中的任何其他质量层的所述子集未包括的至少一个可能扫描位置,
其中,用于形成的装置(44)被配置为使得,针对所述多个质量层中的每一个,所述扫描范围信息包括两个语法元素,其中一个语法元素指示所述可能扫描位置的子集内的可能扫描位置中按照所述预定扫描顺序的第一扫描位置;其中另一个语法元素指示所述可能扫描位置的子集内的可能扫描位置中按照所述预定扫描顺序的最后一个扫描位置。
2.根据权利要求1所述的设备,其中,针对多个质量层中的每一个来形成视频子数据流(30;28、30)的装置(44)被配置为,形成所述视频子数据流(30;28、30),使得所述多个质量层中的每一个质量层的所述子集包括所述多个质量层中的任何其他质量层的所述子集未包括的至少一个可能扫描位置,并且,所述质量层的所述子集中多于一个子集包括所述可能扫描位置之一,所述变换系数信息与属于相应质量层的所述可能扫描位置的子集的变换系数值相关,所述变换系数信息针对所述相应质量层的可能扫描位置的子集中的每个可能扫描位置包含贡献值,使得能够基于所述质量层的所述多于一个子集中的每一个子集中的一个可能扫描位置的贡献值之和来导出所述一个可能扫描位置的变换系数值。
3.一种用于根据质量可缩放视频数据流(36)来重构视频信号的设备,所述质量可缩放视频数据流针对多个质量层中的每一个包括视频子数据流(30;28、30),所述设备包括:
用于对所述多个质量层的视频子数据流进行解析,以针对每个质量层获得扫描范围信息和与不同变换块的二维布置的变换系数值相关的变换系数信息的装置(402),其中,具有可能扫描位置的预定扫描顺序将所述变换系数值排序为变换系数值的线性序列,并且所述扫描范围信息指示所述可能扫描位置的子集,所述子集形成所述可能扫描位置的连续序列;
使用所述扫描范围信息,针对每个质量层,通过将来自所述变换系数信息的、相应变换块的变换系数值与所述可能扫描位置的子集相关联,来构造所述变换块的装置(428);以及
通过对所述变换块进行反变换来重构所述视频信号的画面的装置(438),其中
用于解析的装置(402)被配置为,针对所述多个质量层中的每一个,预期所述扫描范围信息包括两个语法元素,其中一个语法元素指示所述可能扫描位置的子集内的可能扫描位置中按照所述预定扫描顺序的第一扫描位置;其中另一个语法元素指示所述可能扫描位置的子集内的可能扫描位置中按照所述预定扫描顺序的最后一个扫描位置。
4.如权利要求3所述的设备,其中,在所述变换块中,至少一个第一变换块(148)包括4×4个变换系数值,至少一个第二变换块(146)包括8×8个变换系数值,个其中,用于解析的装置被配置为预期所述多个质量层中的每一个质量层的扫描范围信息以能够在所述至少一个第一变换块的全部16个可能扫描位置之间进行区分的精度来指示所述至少一个第一变换块(148)的可能扫描位置的子集,并且以能够在所述至少一个第二变换块的全部16个连续变换系数四元组之间进行区分的精度来指示所述至少一个第二变换块(148)的可能扫描位置的子集。
5.如权利要求3所述的设备,其中,用于解析的装置(402)被配置为预期属于所述可能扫描位置的子集的变换系数值被逐块编码为所述变换系数信息,使得预定变换块的变换系数值形成所述变换系数信息的连续部分。
6.如权利要求4所述的设备,其中,用于解析的装置(402)被配置为通过以下步骤来对所述连续部分进行解码:
将有效性映射(significant_coeff_flag、last_significant_coeff_flag)解码入所述视频子数据流,所述有效性映射指定了所述预定变换块内的变换系数值中不等于0、并属于所述可能扫描位置的子集的部分,以及随后
按照相对于所述预定扫描顺序反转的反扫描顺序,从所述预定变换块内的不等于0、并属于所述可能扫描位置的子集的最后一个变换系数值开始,对所述预定变换块内的不等于0、并属于所述可能扫描位置的子集的变换系数值进行解码。
7.如权利要求6所述的设备,其中,用于解析的装置被配置为通过以下步骤来对所述有效性映射进行解码:
按照所述预定扫描顺序,针对属于所述可能扫描位置的子集的、从属于所述可能扫描位置的子集的第一个变换系数值至属于所述可能扫描位置的子集、并且不等于0的最后一个变换系数值中的每个变换系数值,将有效性标记(significant_coeff_flag)解码,所述有效性标记依赖于相应变换系数值为0或不等于0,以及
在不等于0的相应变换系数值的每个有效性标记之后,依赖于相应变换系数值是否是所述预定变换块内的属于所述可能扫描位置的子集的最后一个非零变换系数值,对最后标记(last_significant_coeff_flag)进行解码。
8.如权利要求5所述的设备,其中,用于解析的装置被配置为通过以下步骤对所述连续部分进行解码:
对有效性信息进行解码,所述有效性信息指定了所述预定变换块内的不等于0、并属于所述可能扫描位置的子集的变换系数值的数目,以及在所述预定变换块内的所述不等于0、并属于所述可能扫描位置的子集的变换系数值的数目中绝对值为1的连续拖尾变换系数值的数目;
对所述连续拖尾变换系数值和所述预定变换块内的不等于0、并属于所述可能扫描位置的子集的其余变换系数值的符号进行解码;
对所述预定变换块内的等于0、并属于所述可能扫描位置的子集直至不等于0并属于所述可能扫描位置的子集的最后一个变换系数值的变换系数的总数进行解码;
对按照反扫描顺序在所述预定变换块内的所述不等于0并属于所述可能扫描位置的子集的所述数目个变换系数值中的任一个紧接之前的等于0并属于所述可能扫描位置的子集的连续变换系数值的数目进行解码。
9.如权利要求3所述的设备,其中,所述预定扫描顺序对变换块的变换系数值进行扫描,使得按照所述预定扫描顺序属于较高扫描位置的变换系数值与较高空间频率相关。
10.如权利要求3所述的设备,其中,用于重构的装置被配置为:使用基于运动信息的运动预测并通过将运动预测结果与运动预测残差进行组合来对所述视频信号进行重构,所述运动预测残差是通过对变换系数值的变换块进行逐块反变换来获得的。
11.如权利要求10所述的设备,其中,用于解析的装置(402)被配置为:预期每个子数据流包含针对相应质量层来指示运动信息存在或运动信息不存在的指示,并且,所述质量层中的第一质量层的子数据流包含所述运动信息,并具有指示运动信息存在的指示,或者,所述第一质量层的子数据流内的所述指示指示所述运动信息不存在而所述质量可缩放视频数据流中与所述子数据流不同的部分包括所述运动信息,以及,预期其他质量层的子数据流具有指示运动信息不存在的指示。
12.如权利要求11所述的设备,其中,用于解析的装置被配置为:预期所述第一质量层的子数据流具有指示运动信息存在的指示,所述运动信息等于较高质量运动信息或等于细化信息,所述细化信息允许基于较低质量运动信息来重构所述较高质量运动信息,并且所述质量可缩放视频数据流的所述部分还包含所述较低质量运动信息。
13.如权利要求11所述的设备,其中,用于解析的装置被配置为使得所述运动信息和所述指示与所述画面的宏块相关。
14.如权利要求3所述的设备,其中,用于解析的装置被配置为:在解析结果方面独立于其他子数据流来对每个子数据流单独进行解析。
15.如权利要求13所述的设备,其中,用于重构的装置被配置为将相应变换系数信息与变换系数值相关联,关联结果独立于其他子数据流。
16.如权利要求15所述的设备,其中,在所述质量层间定义层顺序,并且,所述层顺序中的第一质量层的子数据流独立于随后质量层的子数据流来实现相应变换系数信息与变换系数值的关联,而所述层顺序中的所述随后质量层的子数据流仅与相应质量层之前的质量层的子数据流相结合来实现相应变换系数信息与变换系数值的关联,用于重构的装置被配置为使用相应质量层和相应质量层之前的质量层的子数据流来将相应质量层的变换系数信息与变换系数值相关联。
17.根据权利要求3所述的设备,其中,用于解析的装置被配置为使得多于一个质量层的变换系数信息包含与一个变换系数值相关的贡献值;用于重构的装置被配置为基于与所述一个变换系数值相关的贡献值之和来导出所述一个变换系数值的值。
18.一种用于产生质量可缩放视频数据流(36)的方法,包括:
使用逐块变换来对视频信号(18)进行编码,以获得所述视频信号的画面(140)的二维布置的变换系数值的变换块(146、148),其中,具有可能扫描位置的预定扫描顺序(154、156、164、166)将所述变换系数值排序为变换系数值的线性序列;以及
针对多个质量层中的每一个来形成视频子数据流(30;28、30),所述视频子数据流包含扫描范围信息和变换系数信息,所述扫描范围信息指示所述可能扫描位置的子集,所述子集形成所述可能扫描位置的连续序列,所述变换系数信息与属于所述可能扫描位置的子集的变换系数值相关,使得每个质量层的所述子集包括所述多个质量层中的任何其他质量层的所述子集未包括的至少一个可能扫描位置,
其中,形成步骤(44)被执行为使得,针对所述多个质量层中的每一个,所述扫描范围信息包括两个语法元素,其中一个语法元素指示所述可能扫描位置的子集内的可能扫描位置中按照所述预定扫描顺序的第一扫描位置;其中另一个语法元素指示所述可能扫描位置的子集内的可能扫描位置中按照所述预定扫描顺序的最后一个扫描位置。
19.一种用于根据质量可缩放视频数据流(36)来重构视频信号的方法,所述质量可缩放视频数据流针对多个质量层中的每一个包括视频子数据流(30;28、30),所述方法包括:
对所述多个质量层的视频子数据流进行解析,以针对每个质量层获得扫描范围信息和与不同变换块的二维布置的变换系数值相关的变换系数信息,其中,具有可能扫描位置的预定扫描顺序将所述变换系数值排序为变换系数值的线性序列,并且所述扫描范围信息指示所述可能扫描位置的子集,所述子集形成所述可能扫描位置的连续序列;
使用所述扫描范围信息,针对每个质量层,通过将来自所述变换系数信息的、相应变换块的变换系数值与所述可能扫描位置的子集相关联,来构造所述变换块;以及
通过对所述变换块进行反变换来重构所述视频信号的画面,其中
在对视频子数据流进行解析时,针对所述多个质量层中的每一个,预期所述扫描范围信息包括两个语法元素,其中一个语法元素指示所述可能扫描位置的子集内的可能扫描位置中按照所述预定扫描顺序的第一扫描位置;其中另一个语法元素指示所述可能扫描位置的子集内的可能扫描位置中按照所述预定扫描顺序的最后一个扫描位置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US88553407P | 2007-01-18 | 2007-01-18 | |
US60/885,534 | 2007-01-18 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800501094A Division CN101606391B (zh) | 2007-01-18 | 2007-04-18 | 质量可缩放视频数据流 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102547277A true CN102547277A (zh) | 2012-07-04 |
CN102547277B CN102547277B (zh) | 2014-12-03 |
Family
ID=38698325
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800501094A Active CN101606391B (zh) | 2007-01-18 | 2007-04-18 | 质量可缩放视频数据流 |
CN201110412117.7A Active CN102547277B (zh) | 2007-01-18 | 2007-04-18 | 产生质量可缩放视频数据流的设备及其方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800501094A Active CN101606391B (zh) | 2007-01-18 | 2007-04-18 | 质量可缩放视频数据流 |
Country Status (18)
Country | Link |
---|---|
US (2) | US20130051472A1 (zh) |
EP (1) | EP2123052B1 (zh) |
JP (1) | JP5014438B2 (zh) |
KR (4) | KR101341111B1 (zh) |
CN (2) | CN101606391B (zh) |
AT (1) | ATE489808T1 (zh) |
BR (1) | BRPI0720806B1 (zh) |
CA (1) | CA2675891C (zh) |
CY (1) | CY1111418T1 (zh) |
DE (1) | DE602007010835D1 (zh) |
DK (1) | DK2123052T3 (zh) |
ES (1) | ES2355850T3 (zh) |
HK (1) | HK1135827A1 (zh) |
PL (1) | PL2123052T3 (zh) |
PT (1) | PT2123052E (zh) |
SI (1) | SI2123052T1 (zh) |
TW (1) | TWI445412B (zh) |
WO (1) | WO2008086828A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108076343A (zh) * | 2016-11-15 | 2018-05-25 | 索尼公司 | 细化p-相位数据的编码的方法和系统 |
CN109257607A (zh) * | 2012-11-21 | 2019-01-22 | 杜比国际公司 | 在参数集中发信号通知可扩缩性信息 |
CN114222138A (zh) * | 2016-05-28 | 2022-03-22 | 世宗大学校产学协力团 | 视频信号的解码装置 |
US11689733B2 (en) | 2012-11-21 | 2023-06-27 | Dolby International Ab | Signaling scalability information in a parameter set |
Families Citing this family (80)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2420023C1 (ru) * | 2007-03-13 | 2011-05-27 | Нокиа Корпорейшн | Система и способ кодирования и декодирования видеосигналов |
US8599921B2 (en) * | 2009-03-27 | 2013-12-03 | Vixs Systems, Inc | Adaptive partition subset selection module and method for use therewith |
CN102197656A (zh) * | 2008-10-28 | 2011-09-21 | Nxp股份有限公司 | 对流数据进行缓冲的方法以及终端设备 |
US8867616B2 (en) * | 2009-02-11 | 2014-10-21 | Thomson Licensing | Methods and apparatus for bit depth scalable video encoding and decoding utilizing tone mapping and inverse tone mapping |
CN104270635B (zh) * | 2009-05-29 | 2018-12-11 | 三菱电机株式会社 | 图像解码装置以及图像解码方法 |
WO2010143853A2 (ko) * | 2009-06-07 | 2010-12-16 | 엘지전자 주식회사 | 비디오 신호의 디코딩 방법 및 장치 |
US9635368B2 (en) | 2009-06-07 | 2017-04-25 | Lg Electronics Inc. | Method and apparatus for decoding a video signal |
DK3435674T3 (da) * | 2010-04-13 | 2023-08-21 | Ge Video Compression Llc | Kodning af signifikanskort og transformationskoefficientblokke |
US9106933B1 (en) | 2010-05-18 | 2015-08-11 | Google Inc. | Apparatus and method for encoding video using different second-stage transform |
US9215470B2 (en) | 2010-07-09 | 2015-12-15 | Qualcomm Incorporated | Signaling selected directional transform for video coding |
ES2820437T3 (es) * | 2010-07-20 | 2021-04-21 | Ntt Docomo Inc | Método de codificación predictiva de imágenes, dispositivo de decodificación predictiva de imágenes, método de decodificación predictiva de imágenes y programa de decodificación predictiva de imágenes |
KR101373814B1 (ko) * | 2010-07-31 | 2014-03-18 | 엠앤케이홀딩스 주식회사 | 예측 블록 생성 장치 |
KR101483179B1 (ko) * | 2010-10-06 | 2015-01-19 | 에스케이 텔레콤주식회사 | 주파수 마스크 테이블을 이용한 주파수변환 블록 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치 |
JP2012095053A (ja) * | 2010-10-26 | 2012-05-17 | Toshiba Corp | ストリーム伝送システム、送信装置、受信装置、ストリーム伝送方法及びプログラム |
US9288496B2 (en) | 2010-12-03 | 2016-03-15 | Qualcomm Incorporated | Video coding using function-based scan order for transform coefficients |
US8976861B2 (en) | 2010-12-03 | 2015-03-10 | Qualcomm Incorporated | Separately coding the position of a last significant coefficient of a video block in video coding |
US9042440B2 (en) | 2010-12-03 | 2015-05-26 | Qualcomm Incorporated | Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding |
US20120163456A1 (en) | 2010-12-22 | 2012-06-28 | Qualcomm Incorporated | Using a most probable scanning order to efficiently code scanning order information for a video block in video coding |
US20120163472A1 (en) * | 2010-12-22 | 2012-06-28 | Qualcomm Incorporated | Efficiently coding scanning order information for a video block in video coding |
US10992958B2 (en) | 2010-12-29 | 2021-04-27 | Qualcomm Incorporated | Video coding using mapped transforms and scanning modes |
US9490839B2 (en) | 2011-01-03 | 2016-11-08 | Qualcomm Incorporated | Variable length coding of video block coefficients |
SG191869A1 (en) * | 2011-01-07 | 2013-08-30 | Agency Science Tech & Res | Method and an apparatus for coding an image |
US9210442B2 (en) | 2011-01-12 | 2015-12-08 | Google Technology Holdings LLC | Efficient transform unit representation |
US9380319B2 (en) | 2011-02-04 | 2016-06-28 | Google Technology Holdings LLC | Implicit transform unit representation |
WO2012118358A2 (ko) * | 2011-03-03 | 2012-09-07 | 한국전자통신연구원 | 변환 계수 스캔 방법 및 그 장치 |
US11102494B2 (en) * | 2011-03-03 | 2021-08-24 | Electronics And Telecommunication Research Institute | Method for scanning transform coefficient and device therefor |
US9106913B2 (en) | 2011-03-08 | 2015-08-11 | Qualcomm Incorporated | Coding of transform coefficients for video coding |
US10142637B2 (en) * | 2011-03-08 | 2018-11-27 | Texas Instruments Incorporated | Method and apparatus for parallelizing context selection in video processing |
US10397577B2 (en) | 2011-03-08 | 2019-08-27 | Velos Media, Llc | Inverse scan order for significance map coding of transform coefficients in video coding |
CN102685503B (zh) * | 2011-03-10 | 2014-06-25 | 华为技术有限公司 | 变换系数的编码方法、变换系数的解码方法,和装置 |
US10148974B2 (en) * | 2011-03-10 | 2018-12-04 | Sharp Kabushiki Kaisha | Image decoding device, image encoding device, and data structure of encoded data |
CN105791875B (zh) * | 2011-06-10 | 2018-12-11 | 联发科技股份有限公司 | 可伸缩视频编码方法及其装置 |
ES2711671T3 (es) * | 2011-06-28 | 2019-05-06 | Samsung Electronics Co Ltd | Procedimiento de decodificación de vídeo usando decodificación |
US9167253B2 (en) | 2011-06-28 | 2015-10-20 | Qualcomm Incorporated | Derivation of the position in scan order of the last significant transform coefficient in video coding |
US9516316B2 (en) | 2011-06-29 | 2016-12-06 | Qualcomm Incorporated | VLC coefficient coding for large chroma block |
AU2012275745A1 (en) * | 2011-06-30 | 2014-02-20 | Vidyo, Inc. | Scalable video coding techniques |
US9338456B2 (en) | 2011-07-11 | 2016-05-10 | Qualcomm Incorporated | Coding syntax elements using VLC codewords |
WO2013063800A1 (en) * | 2011-11-04 | 2013-05-10 | Mediatek Inc. | Methods and apparatuses of solving mdcs parsing issue |
FR2982447A1 (fr) | 2011-11-07 | 2013-05-10 | France Telecom | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants |
FR2982446A1 (fr) | 2011-11-07 | 2013-05-10 | France Telecom | Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants |
US9888261B2 (en) * | 2011-11-08 | 2018-02-06 | Samsung Electronics Co., Ltd. | Method and device for arithmetic coding of video, and method and device for arithmetic decoding of video |
WO2013115942A1 (en) * | 2012-02-01 | 2013-08-08 | Vidyo, Inc. | Techniques for multiview video coding |
KR20130107861A (ko) * | 2012-03-23 | 2013-10-02 | 한국전자통신연구원 | 인터 레이어 인트라 예측 방법 및 장치 |
TW201401891A (zh) | 2012-03-26 | 2014-01-01 | Jvc Kenwood Corp | 影像編碼裝置、影像編碼方法、影像編碼程式、送訊裝置、送訊方法、及送訊程式、以及影像解碼裝置、影像解碼方法、影像解碼程式、收訊裝置、收訊方法、及收訊程式 |
JP6681609B2 (ja) * | 2012-04-09 | 2020-04-15 | サン パテント トラスト | 画像符号化方法および画像復号化方法 |
US10129540B2 (en) * | 2012-04-10 | 2018-11-13 | Texas Instruments Incorporated | Reduced complexity coefficient transmission for adaptive loop filtering (ALF) in video coding |
US9219913B2 (en) | 2012-06-13 | 2015-12-22 | Qualcomm Incorporated | Inferred base layer block for TEXTURE—BL mode in HEVC based single loop scalable video coding |
JP6182719B2 (ja) | 2012-06-29 | 2017-08-23 | ヴェロス メディア インターナショナル リミテッドVelos Media International Limited | 符号化装置および符号化方法 |
CN104335584B (zh) * | 2012-06-29 | 2019-06-18 | 英特尔公司 | 用于基于系数采样的可扩展视频编码的系统、方法和计算机程序产品 |
US20140003504A1 (en) * | 2012-07-02 | 2014-01-02 | Nokia Corporation | Apparatus, a Method and a Computer Program for Video Coding and Decoding |
CN110035286B (zh) | 2012-07-09 | 2021-11-12 | Vid拓展公司 | 用于多层视频编码的编解码器架构 |
US10194158B2 (en) | 2012-09-04 | 2019-01-29 | Qualcomm Incorporated | Transform basis adjustment in scalable video coding |
GB2496015B (en) * | 2012-09-05 | 2013-09-11 | Imagination Tech Ltd | Pixel buffering |
US20140086328A1 (en) * | 2012-09-25 | 2014-03-27 | Qualcomm Incorporated | Scalable video coding in hevc |
JP6274108B2 (ja) * | 2012-09-28 | 2018-02-07 | ソニー株式会社 | 符号化装置および符号化方法 |
WO2014053518A1 (en) * | 2012-10-01 | 2014-04-10 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Scalable video coding using subblock-based coding of transform coefficient blocks in the enhancement layer |
US10097825B2 (en) * | 2012-11-21 | 2018-10-09 | Qualcomm Incorporated | Restricting inter-layer prediction based on a maximum number of motion-compensated layers in high efficiency video coding (HEVC) extensions |
US9756613B2 (en) | 2012-12-06 | 2017-09-05 | Qualcomm Incorporated | Transmission and reception timing for device-to-device communication system embedded in a cellular system |
CN103916670B (zh) * | 2013-01-07 | 2017-08-04 | 华为技术有限公司 | 一种图像的编码、解码方法及装置 |
US9219915B1 (en) | 2013-01-17 | 2015-12-22 | Google Inc. | Selection of transform size in video coding |
US9967559B1 (en) | 2013-02-11 | 2018-05-08 | Google Llc | Motion vector dependent spatial transformation in video coding |
US9544597B1 (en) | 2013-02-11 | 2017-01-10 | Google Inc. | Hybrid transform in video encoding and decoding |
US9681155B2 (en) * | 2013-03-15 | 2017-06-13 | Sony Interactive Entertainment America Llc | Recovery from packet loss during transmission of compressed video streams |
US9674530B1 (en) | 2013-04-30 | 2017-06-06 | Google Inc. | Hybrid transforms in video coding |
US9432667B2 (en) * | 2013-06-11 | 2016-08-30 | Qualcomm Incorporated | Processing bitstream constraints relating to inter-layer prediction types in multi-layer video coding |
US10516898B2 (en) | 2013-10-10 | 2019-12-24 | Intel Corporation | Systems, methods, and computer program products for scalable video coding based on coefficient sampling |
JP6462119B2 (ja) | 2014-09-30 | 2019-01-30 | マイクロソフト テクノロジー ライセンシング,エルエルシー | コンピューティングデバイス |
US9565451B1 (en) | 2014-10-31 | 2017-02-07 | Google Inc. | Prediction dependent transform coding |
US10306229B2 (en) | 2015-01-26 | 2019-05-28 | Qualcomm Incorporated | Enhanced multiple transforms for prediction residual |
US9769499B2 (en) | 2015-08-11 | 2017-09-19 | Google Inc. | Super-transform video coding |
US10277905B2 (en) | 2015-09-14 | 2019-04-30 | Google Llc | Transform selection for non-baseband signal coding |
US9807423B1 (en) | 2015-11-24 | 2017-10-31 | Google Inc. | Hybrid transform scheme for video coding |
WO2017159901A1 (ko) * | 2016-03-18 | 2017-09-21 | 엘지전자 주식회사 | 비디오 코딩 시스템에서 블록 구조 도출 방법 및 장치 |
US10623774B2 (en) | 2016-03-22 | 2020-04-14 | Qualcomm Incorporated | Constrained block-level optimization and signaling for video coding tools |
TWI635740B (zh) * | 2017-06-12 | 2018-09-11 | 元智大學 | 平行化階層式無失真壓縮方法及其架構 |
US11606569B2 (en) * | 2018-09-25 | 2023-03-14 | Apple Inc. | Extending supported components for encoding image data |
US11323748B2 (en) | 2018-12-19 | 2022-05-03 | Qualcomm Incorporated | Tree-based transform unit (TU) partition for video coding |
US11122297B2 (en) | 2019-05-03 | 2021-09-14 | Google Llc | Using border-aligned block functions for image compression |
CN113473139A (zh) | 2020-03-31 | 2021-10-01 | 华为技术有限公司 | 一种图像处理方法和图像处理装置 |
CN116800968A (zh) * | 2022-03-17 | 2023-09-22 | 中兴通讯股份有限公司 | 编码方法及装置、解码方法及装置、存储介质、电子装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030118243A1 (en) * | 2001-09-18 | 2003-06-26 | Ugur Sezer | Largest magnitude indices selection for (run, level) encoding of a block coded picture |
US20050030205A1 (en) * | 2002-03-19 | 2005-02-10 | Fujitsu Limited | Hierarchical encoding and decoding devices |
CN1623332A (zh) * | 2001-12-21 | 2005-06-01 | 皇家飞利浦电子股份有限公司 | 用于精细粒度视频编码(fgs)的复杂度可缩放性 |
CN1640146A (zh) * | 2002-03-05 | 2005-07-13 | 皇家飞利浦电子股份有限公司 | 用于分层视频编码的方法和系统 |
US20060233255A1 (en) * | 2005-04-13 | 2006-10-19 | Nokia Corporation | Fine granularity scalability (FGS) coding efficiency enhancements |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5253055A (en) | 1992-07-02 | 1993-10-12 | At&T Bell Laboratories | Efficient frequency scalable video encoding with coefficient selection |
US5953506A (en) * | 1996-12-17 | 1999-09-14 | Adaptive Media Technologies | Method and apparatus that provides a scalable media delivery system |
JPH1141600A (ja) * | 1997-07-24 | 1999-02-12 | Nippon Telegr & Teleph Corp <Ntt> | 画像階層符号化・復号方法および装置並びに記録媒体 |
JP4593720B2 (ja) * | 2000-03-10 | 2010-12-08 | パナソニック株式会社 | 剰余数係数の動的表示方法および装置 |
PT1467491E (pt) * | 2002-05-02 | 2007-03-30 | Fraunhofer Ges Forschung | Codificação aritmética de coeficientes de transformação |
CN1685731A (zh) | 2002-09-27 | 2005-10-19 | 皇家飞利浦电子股份有限公司 | 可分级视频编码 |
US6795584B2 (en) * | 2002-10-03 | 2004-09-21 | Nokia Corporation | Context-based adaptive variable length coding for adaptive block transforms |
US7995656B2 (en) * | 2005-03-10 | 2011-08-09 | Qualcomm Incorporated | Scalable video coding with two layer encoding and single layer decoding |
KR20070096751A (ko) * | 2006-03-24 | 2007-10-02 | 엘지전자 주식회사 | 영상 데이터를 코딩/디코딩하는 방법 및 장치 |
FR2896117A1 (fr) * | 2006-01-06 | 2007-07-13 | France Telecom | Procedes de codage et de decodage d'une sequence d'images, dispositifs , programmes d'ordinateur, et signal correspondants |
US8315308B2 (en) * | 2006-01-11 | 2012-11-20 | Qualcomm Incorporated | Video coding with fine granularity spatial scalability |
US8401082B2 (en) * | 2006-03-27 | 2013-03-19 | Qualcomm Incorporated | Methods and systems for refinement coefficient coding in video compression |
US20070230564A1 (en) * | 2006-03-29 | 2007-10-04 | Qualcomm Incorporated | Video processing with scalability |
-
2007
- 2007-04-18 BR BRPI0720806-5A patent/BRPI0720806B1/pt active IP Right Grant
- 2007-04-18 JP JP2009545822A patent/JP5014438B2/ja active Active
- 2007-04-18 CA CA2675891A patent/CA2675891C/en active Active
- 2007-04-18 KR KR1020117006484A patent/KR101341111B1/ko active IP Right Grant
- 2007-04-18 SI SI200730518T patent/SI2123052T1/sl unknown
- 2007-04-18 DK DK07724348.3T patent/DK2123052T3/da active
- 2007-04-18 AT AT07724348T patent/ATE489808T1/de active
- 2007-04-18 CN CN2007800501094A patent/CN101606391B/zh active Active
- 2007-04-18 US US12/523,308 patent/US20130051472A1/en not_active Abandoned
- 2007-04-18 KR KR1020117006485A patent/KR101190227B1/ko active IP Right Grant
- 2007-04-18 WO PCT/EP2007/003411 patent/WO2008086828A1/en active Application Filing
- 2007-04-18 KR KR1020117006483A patent/KR101168294B1/ko active IP Right Grant
- 2007-04-18 ES ES07724348T patent/ES2355850T3/es active Active
- 2007-04-18 PL PL07724348T patent/PL2123052T3/pl unknown
- 2007-04-18 PT PT07724348T patent/PT2123052E/pt unknown
- 2007-04-18 CN CN201110412117.7A patent/CN102547277B/zh active Active
- 2007-04-18 DE DE602007010835T patent/DE602007010835D1/de active Active
- 2007-04-18 KR KR1020097015099A patent/KR101175593B1/ko active IP Right Grant
- 2007-04-18 EP EP07724348A patent/EP2123052B1/en active Active
-
2008
- 2008-01-16 TW TW097101622A patent/TWI445412B/zh active
-
2009
- 2009-07-29 US US12/511,875 patent/US9113167B2/en active Active
-
2010
- 2010-04-21 HK HK10103889.6A patent/HK1135827A1/xx unknown
-
2011
- 2011-02-23 CY CY20111100219T patent/CY1111418T1/el unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030118243A1 (en) * | 2001-09-18 | 2003-06-26 | Ugur Sezer | Largest magnitude indices selection for (run, level) encoding of a block coded picture |
CN1623332A (zh) * | 2001-12-21 | 2005-06-01 | 皇家飞利浦电子股份有限公司 | 用于精细粒度视频编码(fgs)的复杂度可缩放性 |
CN1640146A (zh) * | 2002-03-05 | 2005-07-13 | 皇家飞利浦电子股份有限公司 | 用于分层视频编码的方法和系统 |
US20050030205A1 (en) * | 2002-03-19 | 2005-02-10 | Fujitsu Limited | Hierarchical encoding and decoding devices |
US20060233255A1 (en) * | 2005-04-13 | 2006-10-19 | Nokia Corporation | Fine granularity scalability (FGS) coding efficiency enhancements |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109257607A (zh) * | 2012-11-21 | 2019-01-22 | 杜比国际公司 | 在参数集中发信号通知可扩缩性信息 |
CN109257607B (zh) * | 2012-11-21 | 2022-03-11 | 杜比国际公司 | 在参数集中发信号通知可扩缩性信息 |
US11689733B2 (en) | 2012-11-21 | 2023-06-27 | Dolby International Ab | Signaling scalability information in a parameter set |
CN114222138A (zh) * | 2016-05-28 | 2022-03-22 | 世宗大学校产学协力团 | 视频信号的解码装置 |
CN108076343A (zh) * | 2016-11-15 | 2018-05-25 | 索尼公司 | 细化p-相位数据的编码的方法和系统 |
CN108076343B (zh) * | 2016-11-15 | 2020-05-01 | 索尼公司 | 细化p-相位数据的编码的方法和系统 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101606391B (zh) | 质量可缩放视频数据流 | |
CN103765899B (zh) | 用于编码和解码可伸缩视频的方法以及使用其的设备 | |
CN101040533B (zh) | 复杂性可伸缩的视频编码和解码方法和设备 | |
CN101601300B (zh) | 用自适应增强层预测对位深度可分级视频数据进行编码和/或解码的方法和设备 | |
CN104221373B (zh) | 用于采样自适应偏移代码化和/或信号通知的设备和方法 | |
CN104270645B (zh) | 用于并行视频编码和解码的方法、设备和系统 | |
CN102835106B (zh) | 用于视频的数据压缩 | |
CN106131576B (zh) | 使用四叉树结构的视频解码方法、编码设备和解码设备 | |
RU2411689C2 (ru) | Способ и устройство для адаптивного к макроблоку межслойного предсказания внутренней текстуры | |
CN105611296B (zh) | 视频解码设备、视频解码方法 | |
CN108322751B (zh) | 视频编码和解码方法和使用该方法的装置 | |
CN108141588A (zh) | 图像编码系统中的帧间预测方法和装置 | |
CN107105236A (zh) | 视频解码设备 | |
CN107580230A (zh) | 视频解码方法和视频编码方法 | |
CN101578870A (zh) | 用于精细化系数译码的基于块类型统计的可变长度译码表选择 | |
CN102007768A (zh) | 位深度可分级性 | |
CN101627636A (zh) | 可缩放视频译码增强层中的精细化和有效系数的组合式游程长度译码 | |
CN102484701A (zh) | 用于空间变化残差编码的方法和设备 | |
CN100588259C (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 |