CN1266649C - 视频编码方法 - Google Patents

视频编码方法 Download PDF

Info

Publication number
CN1266649C
CN1266649C CNB018034950A CN01803495A CN1266649C CN 1266649 C CN1266649 C CN 1266649C CN B018034950 A CNB018034950 A CN B018034950A CN 01803495 A CN01803495 A CN 01803495A CN 1266649 C CN1266649 C CN 1266649C
Authority
CN
China
Prior art keywords
bit
coefficient
piece
macro block
dimensional
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.)
Expired - Fee Related
Application number
CNB018034950A
Other languages
English (en)
Other versions
CN1460231A (zh
Inventor
R·恩菲茨奥德
B·佩斯奎特-波佩斯库
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN1460231A publication Critical patent/CN1460231A/zh
Application granted granted Critical
Publication of CN1266649C publication Critical patent/CN1266649C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • H04N19/615Methods 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/645Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission by grouping of coefficients into blocks after the transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/13Adaptive 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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明涉及一种可应用于帧序列并且基于三维(3D)子波分解的视频编码方法,该分解利用的是对帧对的运动估计和补偿。该方法包括的步骤是:组织宏块结构以及块中由所述分解产生的子波系数,这些宏块由分辩率标记分离,每个块的尺寸适合该分解的最低近似子带;按照与每个块的位置和空间定向相关的预定顺序扫描每个3D宏块的系数;并且逐比特面编码所述扫描的系数。而且,所述编码步骤包括通过整体失真最小化的方式在宏块之间执行的整体比特率分配的子步骤。

Description

视频编码方法
技术领域
本发明涉及一种可应用于帧序列并且基于三维(3D)子波分解的视频编码方法,该分解利用的是对帧对(couple)的运动估计和补偿,所述分解是一种子波变换,它把原始帧像素组变换为构成分层金字塔的系数,并且一种时空定向树用于定义所述分层金字塔内的时空关系,在该时空定向树中,根是以3D子波变换产生的近似子带的像素形成的,另外,这些像素中的每个像素的后代是以与这些根像素定义的图像体相对应的较高子带的像素形成的。
背景技术
当前,在视频压缩领域中,尤其是在多媒体领域中,主要的研究方向是可测量性和逐级传输。利用这种功能,一个传输过程可以仅仅发送原始信号的一个子集,以实现所希望的级别的分辩率和/或保真度。最重要的信息被首先发送,随后它被尽可能地精炼(refined),直至接收机所允许的带宽。嵌入比特流是要实现的另一个重要特征:由于有效传输的数据被有效地用于了重建尽可能多的信息,因此,编码和解码过程随后可用在一些可能会出现传输中断或信息损失的网络中。而且,解码比特流中较短的一部分所需的全部必要信息必须是自给自足的。
通过应用诸如比特面编码这样的众所周知的技术可实现上面提及的特点中的一些:最高有效比特面被首先编码,而且,在每次传送时,下面的比特面被传输。在这种逐级传输方案中,最高比特面可包括许多零值,而且它通过熵编码器可以得到很好地压缩。如果我们在静止图像的情况下对此作进一步地分析,那么使用子波分解将会产生良好的系数相关性,因而也会获得良好的压缩比。对于视频(运动图像)压缩方案来说,时间多分辩率分析可用来减少冗余,但它必须与运动估计(ME)和运动补偿(MC)技术相结合,目的是考虑到大的位移,并且也是为了提高编码效率。
分解过程可由图1所示的二叉树表示,图1所示为视频信息的时间子带分解。利用运动补偿的所示3D子波分解被应用到了标识为F1-F8的一组帧(GOF)。在该3D子带分解方案中,输入视频的每个GOF首先进行运动补偿(MC),这样将允许处理具有大运动的图像序列,并在随后使用Haar子波进行时间滤波(TF)(虚线箭头对应的是高通时间滤波,而另一种箭头对应的是低通时间滤波)。图1显示了三级分解(L和H=第一级;LL和LH=第二级;LLL和LLH=第三级)。
在这个时空分解过程之后,包含在低频子带中的数据通常呈现出高绝对值。这些值往往在向着最高频率扫描系数时减小。如果子波系数被重新排序而获得具有大致相同的数值的系数组的话,那么逐级编码会更有效。应用该原理可以获得较长行程的零值和更好的压缩比。
目前已有了用于产生这种系数组的有效算法。例如,所谓的“嵌入零-树子波(EZW)”方法就提供了在几个分辩率下具有强相关性的系数树。它利用的是以下的事实,即:如果在一个特定空间分辩率和位置的子波系数(所述的“父”系数)具有低于一个给定阈值的数值,那么其后代(最高分辩率和相同的空间位置)非常有可能也具有低于该阈值的数值。
另一种成组技术由A.Said和W.A.Pearlman在“一种基于分层树中的组分割(SPIHT)的快速有效的新型图像编解码器”(《关于视频技术的电路和系统的IEEE会刊》,vol.6,n°3,June 1996,pp.243-250)中提出,该技术直接基于EZW方法,但使用不同的成组处理。在任意一个特定比特面群聚零值系数时,这种方法非常有效,当与一种算术编码相结合时,该方法实际上就是已知的最有效的图像压缩算法中的一种。这种算法对视频序列的三维(3D)应用在“一种使用三维分层树组分割(SPIHT)的嵌入子波视频编码器”(《数据压缩会议会刊》,March 25-27,1997,Snowbird,Utah,USA,pp251-260)中进行了描述。尽管极其有效(该有效性在要编码数据的分析中考虑了它的源),但该技术有一个非常明显的缺陷:它的实施方案的计算复杂性可能会是很大的限制。它需要非常多的时间和资源,因而难以直接把所述技术用在实时应用中,或者是在低成本的小型系统上实施。
在L.Bottou等人的“Z-编码器自适应编码器”(《数据压缩会议会刊》,Snowbird,Utah,USA,March 30-April 1,1998,pp18-32)中提出了一种效率较低但计算复杂性也较低的编码处理,它是另一种比特面编码方法。它在时空域中使用简单的相邻关系,而不是使用树来利用父-子关系并编码有效映射。随后,根据不同的数据,相邻系数被分为四种不同的“类型”。这些类型的系数或系数组通过基于Golomb码的长程编码器进行编码。应当指出,诸如长程编码器的熵编码器用以编码长行程的零值是有效的。这种行程可在逐比特面工作的逐级编码过程中产生,这是因为,两上连续的高数值系数可被分为几个低数值的系数。但是,在低频率下,几乎所有的子波系数都具有高数值,这是因为绝大多数的能量都是在此成组的。在已经提出的欧洲专利申请中已经提出了一种更为有效的计算方案,它把差分脉码调制(DPCM)用于编码呈现这种数值特性的子带,而不是在编码之前简单地减去子带的平均值。
以上介绍的技术的效率在要编码数据的分析中采用了它的源。但是,相应实施方案的复杂性有时会成为限制因素。
发明内容
本发明的目的是提供另一种方法,根据该方法,编码过程的实施与数据无关。
因此,本发明涉及一种可应用于帧序列并且基于三维分解的视频编码方法,该分解利用的是对帧对的运动估计和补偿,所述分解是一种子波变换,它把原始帧像素组变换为构成分层金字塔的系数,并且一种时空定向树用于定义所述分层金字塔内的时空关系,在该时空定向树中,根是以三维子波变换产生的近似子带的系数形成的,另外,这些系数中的每个系数的后代是以与这些根系数定义的图像体相对应的较高子带的系数形成的,所述方法的特征在于:为了获得信噪比、时空分辩率可测的编码比特流,它包括以下的步骤:
(A)组织三维宏块结构以及块中的所述树的变换系数,这些宏块由分别与每个宏块的开始部分相关的分辩率标记分隔开,每个块的尺寸适合最低近似子带,该最低近似子带在最粗分辩率中包括所有变换系数,并且每个三维宏块中的每一个块都属于一特定的空间分解级,并且是由在一个特定的时间分解级下的所有帧在相应的空间分解级下对应的二维块组成;
(B)按照在每个块中由所述块的空间定向定义的预定顺序扫描每个三维宏块的系数,并且在三维宏块中是由在一个时间分解级的所有帧中具有相同位置的块的相关性所定义的顺序来进行相应的扫描;
(C)逐比特面编码所述扫描的系数。
所推荐使用的结构—逐级子波三维编码器—看来是一种用于获得嵌入可测视频编码方案的令人满意的方法,其主要功能将在随后作更详细的描述。
附图说明
参考附图,本发明将以实例的形式详细描述,其中:
图1表示在使用运动补偿的3D子带分解中,视频信息(在此情况下是八个帧的组,或GOF)的时间子带分解;
图2表示每个时空子带中的每帧被分为块,并且在二维(2D)情况下宏块内的块搜索顺序;
图3表示在与第三空间分解相对应的宏块中的两帧情况下的块交错;
图4表示水平、垂直和对角线子带的扫描顺序;
图5表示一个宏块首部的结构;
图6表示比特流中的宏块结构;
图7表示GOF首部的结构;
图8是与本发明的一个实施例有关的流程图。
具体实施方式
根据本发明的编码器的主要模块向所述编码器提供了以下一些功能:
(1)利用运动估计和运动补偿的3D子带分解;
(2)宏块组织,它用于根据系数的数值对这些系数进行重新排序:在时空树中的系数被结合成决,而且,在给定时间分辩率级的所有帧中,除了宏块0之外,宏块中的每个块均大致表示一个时空分辩率级中的详细子带的所有系数;
(3)宏块0中的矢量DPCM预测:具有特定统计特性的近似子带使用DPCM技术单独编码,目的是减少该子带的系数间的剩余相关性(预测误差利用与细节(detail)系数相同的算法进行编码);
(4)宏块间的比特率分配,这是通过一种使整体失真最小化的算法来进行的;
(5)比特面编码:以预定顺序扫描的每个宏块的系数被逐比特面编码,在每个比特面级中要执行两个过程;
(a)有效映射编码:它使用一种自适应行程长度编码器,以用于编码在该级别变得有效的系数;
(b)精炼过程:此步骤的目的是使“0”行程的长度尽可能的长,每个块中的系数的扫描的实现遵循该块所属的子带中的细节的空间定向,而且,在较高一级中发现有效的系数的精炼比特不经过任何编码就被置于比特流中。
根据本发明的编码器首先包括一个宏块结构,它受到了H.S.Malvar的“快速逐级子波编码”(《数据压缩会议会刊》,Snowbird,Utah,USA,March 29-31,1999,pp336-343)中的相关内容的启发。从所述文献中呈现的结构开始,子波系数首先被组织为块。每个块的尺寸的选择要能够使其精确地符合最低近似子带,它在最粗分辩率下包括所有的子波系数(图2中的块0,图2表示每个帧被分成了块(0,1,2,3,4,5等)以及在2D情况下宏块内的所述块的扫描顺序)。
每个帧现在在每个时空子带中被分成块,由于数据的读取/群聚,读出这些块的方式将产生冗余,以确保提高压缩比。在利用比特面编码的逐级方案中,在给定比特面具有几乎相同的数值的数据(即,子波系数)自然存在一些冗余。子带被分成块,其目的是搜索一个接一个存在一些相似性的块;通常,这些块从相同的位置发出(要不然就假设在大多数情况下的子波系数在一个块中没有重要的变化)。在2D情况下,如图2所示,一帧中含有的块的扫描顺序在水平细节子带和垂直细节子带之间交替,在相同的分辩率级下以对角线细节子带(48,49,59等)结束;它考虑了系数的数值顺序。最粗的分辩率决定块的尺寸并以块0相配合。在这种2D的情况下,每个宏块表示一个空间分辩率精炼。宏块0是块0,被看作是一个特定时空级,宏块1包括块1-3,宏块2包括块4-15,而宏块3包括块16-63。
除了比特面重新排序之外,这种宏块结构必须允许空间和时间的可测量性。为了实现这种功能(即,把有关一个宏块的信息加到比特流中必须精炼空间和时间分辩率),对于一个特定时间级的所有帧来说,一个宏块内的所有块属于一个特定的空间分解级(该宏块的空间分辩率)。因此,参考图2,通过在一个特定时间级的所有帧中把所有相应的2D宏块结成组可以简单地实现该宏块的3D扩展(此扩展可见图3,图3表示在与第三空间分解相对应的宏块中的两个帧的情况下的块交错):例如,在2D情况下包含块16-63的宏块3包括第一帧中的块16-63、第二帧中的块16-63,对于剩余的帧来说,也如此类推。
为了在3D扩展时执行有效的嵌入,这些块的扫描顺序在每个帧之间交错,而不是要逐帧计算它们(例如,在第一帧中,第16个块被首先扫描,随后在第二帧中,第17帧以相同的方式被扫描,如此类推),这将允许考虑一个确定时间级的不同帧之间的时间相关性以及系数的数值排序。而且,还建议利用空间子带的一些特性:例如,在水平细节子带中的两个水平连续系数可能具有相同的数值。为了考虑这种冗余,每个块内的系数的扫描由所述块的空间定向来确定:如图4所示,属于水平和对角线细节子带的块中的系数沿着水平方向扫描,属于垂直细节子带的块内的系数被垂直扫描。
上述的重新排序法基于对系数值的相当一般的假设,它完全与数据无关并且容易实现,而且还具有低复杂性。它的另外的特征在于下述的数据组织。
为了容易地实现分辩率的可测量性,就必须把每个空间和时间级分离。举例来说,如果要求重建小两倍的编码序列,则必须去除每个时间分辩率中的最高空间级。宏块由于其构成的原因而与一个特定的时空级相对应,因此,为了提供可测量的特性,每个宏块要通过以一个标记来标识其开始部分来区分,即具有在比特流的剩余部分中不允许的唯一的顺序。图5表示一个宏块首部的结构,如图5所示,允许实现可测量比特流的该分辩率标记在本例中以首部的前17个比特来表示:1比特的“1”和16比特的“0”。
该分辩率标记之后是被称为Nbits_Y和Nbits_C的两个比特数。将在随后进行解释的这些数目表示用于编码亮度Y和色度C(U或V)的比特面数。它们也表示用于编码分别用于亮度和色度的一个宏块内的任意子波系数的总比特数。它们的值如下计算:
Nbits _ Y = [ lo g 2 ( max E Y | coef _ Y | ) ] + 1
Nbits _ C = [ lo g 2 ( max E U ∪ E V | coef _ C | ) ] + 1
其中,函数x→[x]映射数值x至其整数部分,并且Ey,Eu,Ev分别是当前宏块中的Y,U,V平面的系数集合。由于这些值只涉及一个宏块,因此,它们被附加在比特流首部中的宏块标记之后的位置上。编码这两个值所需的比特数由于宏块的不同而会有所不同,通常,对于最低时空频率子带来说,该比特数较高。
如果仅仅编码子波系数的整数部分,那么在非常高的比特率下也不可能容易地获得良好的PSNR(峰值信噪比),正因如此,其精度可通过在其编码之前以每个子波系数乘以一个常数值来精炼,该常数值分别是用于亮度和色度平面的C_Y和C_C。通过调节这两个常数值可以确定子波系数的最大精度(例如,如果C_Y等于16,则Y的系数被化整为最接近1/16)。利用这些常数,Nbits_Y和Nbits_X的值变为:
Nbits _ Y = [ lo g 2 ( max E Y | coef _ Y | ) ] + [ lo g 2 | C _ Y | ] + 1
Nbits _ C = [ lo g 2 ( max E U ∪ E V | coef _ C | ) ] + [ lo g 2 | C _ C | ] + 1
用于编码这两个值的比特数“n”也可以根据每个子波系数希望的精度的不同而有所变化。在本实施例中,4比特足以进行精度为一的编码,5比特可用于1/16的精度;通常,8比特足以用于任意的实施方案。无论是怎样的情况(即,把Nbits_Y和Nbits_C看作是有或没有进行精炼),在小子波系数的情况下(通常在高频子带),这些值都表示用于仅仅编码Y和C的相关数据所需的比特面,同时又避免了在宏块开始时的无用的长行程零值。
至于数据本身(通过逐级比特面编码产生),它们附加在比特流中紧接着首部之后的位置上。由于主要的限制是比特率的可测量性(以能够使用不同于编码图像序列时的比特率将其解码),因此,三种彩色面(Y-平面,U-平面,V-平面)的嵌入通过彩色面与块组的交错而在一个宏块中执行。比特流中的这种宏块和块结构在图6中示出,在一个宏块有n块k帧的情况下,详细的结构如下:所述图6的第一行表示Y,U和V-平面的嵌入(利用Y,U和V数据间的结束比特EB),第二行详细表示Y数据的内容(比特面B的连续行程长度码RLC(B),以及相应的精炼比特REF(B);随后是RLC(B-1)和REF(B-1);……;RLC(B-N)),第三行表示块0-n,对于它们来说,这些行程长度码和相应的精炼比特是已知的,第四行表示每块(0,1,2,……,n)的帧0-k。
由于编码步骤是自适应的,所以并不能确切知道有多少个比特在下一次比特被编码时将附加在比特流上,但至少可以确定在编码(和解码)处理的任意一级的最大比特数,它等于k+2。为了执行良好的比特率控制,如果有足够的预算来至少编码必须附加的下一个RLR码的(k+2)个比特时,那么每次编码RLR码时最好进行检验。如果情况并不是这样,则可附加无用的比特(它被称作“结束比特EB”),以便对最近的比特执行比特控制。
在开始编码一组帧(GOF)的开始部分时,可以考虑其它一些特点。实际上,我们必须能够分离每个宏块和每个GOF。除了包含最粗时空分辩率之外,其首部还必须包括所有GOF所需的信息(在线性预测的情况下,在解码器侧,预测系数是必须的)。而且,在尽可能正确解码该信息时,我们必须准确地确定编码每个宏块的信息所用的比特率,并且它们中的每一个的方差也在GOF的首部中传输(所述方差不能附加在比特流中前面所述的首部中,这是因为,用于确定比特率的方法需要所有宏块的方差)。所述GOF首部在图7中示出。
另外,前面所述的宏块的标记可用来表示前个宏块的结束和一个新宏块的开始。为了区分宏块的开始和GOF的开始,可以注意到,最不可能具有只包含零值的宏块。除了Nbits_Y和Nbits_C被自动设置为零以外,被选择用于标记GOF开始的结构与宏块的标记相同。GOF标记的检测的实现几乎与宏块相同:一旦遇到一个标记,则Nbits_Y和Nbits_C的一个简单检验就可以表明是一个宏块还是一个GOF的开始。
如此提出的编码方法也可通过简化预算分配得到改进。为了进行这种简化,受到前面提及的文献“快速逐级子波编码”中所述的相应部分启发的宏块结构被介绍并应用到3D子波分解中。这种宏块结构的主要特点在于排列数据的顺序以在熵编码期间获得较好的压缩比,下面将描述该宏块结构。首先,子波系数被组织为“块”。每个块的尺寸的选择要使其精确地适合于最低近似子带,该最低近似子带在最粗分辩率下包含所有子波系数。因而,在每个时空子带中的每一帧被分为块。读取这些块的方式将会产生冗余:在使用比特面编码的逐级方案中,可以注意到,在一个给定的比特面,具有几乎相等的数值的数据自然呈现出一些冗余。子带被分成块,其目的是扫描一个接一个呈现出某些相似性的块。通常,这些块从相同的空间位置发出。否则就假设在大部分情况下的子波系数在一个块中不出现重要的变化。这些块的扫描顺序在水平细节子带和垂直细节子带之间交替,它结束于相同分辩率级下的对角线细节子带。这个顺序考虑了系数的数值排序。最粗分辩率确定块的尺寸并且适合于块0。在这种2D情况下,每个宏块表示一个空间分辩率精炼。宏块0是块0(被看作是一个特定的时空级)。
除了比特面重新排序之外,该宏块结构的第二个主要特点是允许空间和时间的可测量性。为了实现这种功能,主要的一点就是:把与一个宏块有关的信息加到比特流中必须要精炼空间和时间分辩率。因此,对于一个特定时间级的所有帧来说,一个宏块内的所有块属于一个特定的空间分解级(该宏块的空间分辩率)。以此方式,通过在一个特定时间级的所有帧中把所有相应的2D宏块结成组可以简单地实现宏块的3D扩展。例如,在2D情况下包含块16-63的宏块3包含第一帧的块16-63、第二帧的块16-63,对于剩余的帧来说,也如此类推。
为了在3D扩展时执行有效的嵌入,这些块的扫描顺序随后在每个帧之间交错,而不是要逐帧计算它们,这将允许考虑一个确定时间级的不同帧之间的时间相关性以及系数的数值排序。上面提出的重新排序法完全与数据无关,而是仅仅基于关于系数数值的相当一般的假设。利用这种方式,并不能获得与3D-SPIHT所实现的相同的效率。但是,这种方法的长处在于它易于实施,并且算法的复杂性低。
比特分配在下述两级中进行:
-首先,整体比特预算在Y,U和V平面之间分配;
-第二,对于每个彩色平面来说,剩余的比特预算在宏块之间分配。
(a)彩色面之间的比特分配
如上所述,色度面的分辩率比亮度面的分辩率小两倍(尺寸除以4)。而且,在这些面中存在的空间细节较少。因此,编码色度系数所需的比特预算远小于亮度系数所需的比特预算。如果在编码过程中考虑到亮度和色度的相关性,则还可以进一步简化。为了确定彩色平面之间的最佳比特分配,以下的方法可以被使用:整体比特预算R在Ry,Ru,Rv之间分配,Ry,Ru,Rv分别是Y,U和V平面的比特预算。
R=RY+RU+RV,其中,RY=α·R且 R U = R V = 1 - α 2 · R
参数α∈[0,1]控制该分配过程(其最佳值通过一种二分法确定:在本例中,测试表明它可在0.6到0.9之间变化)。
(b)宏块之间的比特分配
现在描述的算法给出了一种用于分配每个宏块的比特预算的方法,目的是尽可能减小编码过程中的整体失真。现在示出以下的一些标记:
-‘N’是整个GOF的像素数(或者,也可以是这些宏块的系数数目之和);
-‘Mi’是第i个宏块,‘σi’是Mi的方差,‘ni’是其包含的点数,‘bi’是这个第i宏块中使用的每个系数的比特数,而‘I’是宏块数;
-‘Di’是Mi的失真,‘Dg’是所有宏块的整体失真。设定宏块Mi的均匀量化,则该宏块的失真‘Di’由下式计算:
Di=σi·2-2·bi
整个编码过程的整体失真‘Dg’计算如下:
D g = Σ j ⊆ I D j = Σ j ⊆ I σ j · 2 - 2 - δ j
编码序列的整体比特率 计算如下:
b ‾ = Σ j ⊆ I b j · n j N
通过使用拉格朗日乘数的方法,可以写出要被最小化的标准,即:
J λ = D g + λ · ( Σ j ⊆ I b j · n j N - b ‾ )
由于对每个宏块预算没有任何限制,因此这将简化为一种熟知的比特分配法,它的解如下:
R K ~ = b ‾ + 1 2 · lo g 2 ( σ k 2 Π K = 1 1 ( σ k 2 ) n g N )
在目前的情况下,直接应用该方法将会产生非常差的结果,尤其是在低比特率的情况下(事实上,大部分宏块分配了负预算)。为了克服此问题,就要通过增加额外的限制来改变优化标准,这对该解是有积极意义的。该标准变为:
J λ = D g + λ · ( Σ j ⊆ I b j · n j N - b ‾ ) / Vj ∈ I , b j ≥ 0
最后,在下文描述(且在图8中示出)且应用于上述宏块组织(MB-ORG)的算法给出了建议采用的解,它与后一个公式有关:
1.在计算所述方差之后(步骤CPVAR),以降低的方差来对宏块进行排序(步骤DCVA)
+∞≥σ1≥σ2≥…≥σl≥0
2.设l=1
3.计算M1(步骤CPML)和λ1(步骤CPLD):
公式1
λ l = - 2 · log ( 2 ) · 2 - 2 · N M l · b ‾ · Π k = I l [ ( σ k 2 ) n i M l ] 其中 M l = Σ i = 1 l n i
4.如果λ1证实了下面的不相等性(步骤TSTLD)
公式2 - 2 &CenterDot; log ( 2 ) &CenterDot; &sigma; l 2 < &lambda; l &le; - 2 &CenterDot; log ( 2 ) &CenterDot; &sigma; l + 1 2
那么设l=1+1(回答YES),并且到达步骤0(直至最大值)。
5.如果对该检验的回答是NO,则使用下面的公式计算每个宏块k的比特数
Figure C0180349500145
(步骤CPBBM):
公式3
R k , l ~ = N M l &CenterDot; b &OverBar; + 1 2 lo g 2 ( &sigma; k 2 &Pi; k = I i ( &sigma; k 2 ) n i M l ) for k &Element; { 1 , &CenterDot; &CenterDot; &CenterDot; , l } 0 for k &Element; ( l + 1 , &CenterDot; &CenterDot; &CenterDot; , I )

Claims (5)

1.一种可应用于帧序列并且基于三维分解的视频编码方法,该分解利用的是对帧对的运动估计和补偿,所述分解是一种子波变换,它把原始帧像素组变换为构成分层金字塔的系数,并且一种时空定向树用于定义所述分层金字塔内的时空关系,在该时空定向树中,根是以三维子波变换产生的近似子带的系数形成的,另外,这些系数中的每个系数的后代是以与这些根系数定义的图像体相对应的较高子带的系数形成的,所述方法的特征在于:为了获得信噪比、时空分辩率可测的编码比特流,它包括以下的步骤:
(A)组织三维宏块结构以及块中的所述树的变换系数,这些宏块由分别与每个宏块的开始部分相关的分辩率标记分隔开,每个块的尺寸适合最低近似子带,该最低近似子带在最粗分辩率中包括所有变换系数,并且每个三维宏块中的每一个块都属于一特定的空间分解级,并且是由在一个特定的时间分解级下的所有帧在相应的空间分解级下对应的二维块组成;
(B)按照在每个块中由所述块的空间定向定义的预定顺序扫描每个三维宏块的系数,并且在三维宏块中是由在一个时间分解级的所有帧中具有相同位置的块的相关性所定义的顺序来进行相应的扫描;
(C)逐比特面编码所述扫描的系数。
2.根据权利要求1的编码方法,其特征在于该比特面编码在两个步骤中执行:
(a)有效映射编码,它使用一种自适应行程长度编码器,以用于编码在该级别变得有效的系数;
(b)精炼过程,此步骤的目的是使“0”行程的长度尽可能的长,每个块中的系数的扫描的实现遵循该块所属的子带中的细节的空间定向,而且,在较高一级中发现有效的系数的精炼比特不经过任何编码就被置于比特流中。
3.根据权利要求1的编码方法,还包括整体比特率分配子步骤,该步骤本身包括的操作有:
在三个亮度和色度面Y,U,V之间分配整体比特预算R;
对于每个彩色面Y,U,V来说,在三维宏块之间分配剩余的比特。
4.根据权利要求3的编码方法,其中,根据以下的关系,整体比特预算R被分成与三个平面Y,U,V分别对应的三个比特预算R(Y),R(U),R(V):
R=R(Y)+R(U)+R(V)
R(Y)=α·R
R(U)=R(V)=((1-α)/2)R
α∈[0,1],
其中α是控制比特预算分配过程的一个参数。
5.根据权利要求4的编码方法,其中用于控制三个平面之间的比特预算分配的参数α的最佳值在0.6-0.9之间,并且通过一种整体二分法来确定。
CNB018034950A 2000-09-12 2001-08-29 视频编码方法 Expired - Fee Related CN1266649C (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
EP00402511 2000-09-12
EP00402511.0 2000-09-12
EP00403591 2000-12-19
EP00403591.1 2000-12-19

Publications (2)

Publication Number Publication Date
CN1460231A CN1460231A (zh) 2003-12-03
CN1266649C true CN1266649C (zh) 2006-07-26

Family

ID=26073577

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB018034950A Expired - Fee Related CN1266649C (zh) 2000-09-12 2001-08-29 视频编码方法

Country Status (6)

Country Link
US (1) US6728316B2 (zh)
EP (1) EP1320831A2 (zh)
JP (1) JP2004509531A (zh)
KR (1) KR20020064803A (zh)
CN (1) CN1266649C (zh)
WO (1) WO2002023475A2 (zh)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050069212A1 (en) * 2001-12-20 2005-03-31 Koninklijke Philips Electronics N.V Video encoding and decoding method and device
US7177477B2 (en) * 2002-03-07 2007-02-13 Aware, Inc. Selective group modeling
US6795584B2 (en) * 2002-10-03 2004-09-21 Nokia Corporation Context-based adaptive variable length coding for adaptive block transforms
KR20050085571A (ko) * 2002-12-11 2005-08-29 코닌클리케 필립스 일렉트로닉스 엔.브이. 비디오 부호화 방법 및 대응하는 컴퓨터 프로그램
WO2004068410A1 (fr) * 2002-12-31 2004-08-12 France Telecom Procédé et dispositif de détection de points d'intérêt dans une image numérique source, programme d'ordinateur et support de données correspondants.
US7471726B2 (en) 2003-07-15 2008-12-30 Microsoft Corporation Spatial-domain lapped transform in digital media compression
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7369709B2 (en) 2003-09-07 2008-05-06 Microsoft Corporation Conditional lapped transform
KR100631714B1 (ko) 2004-06-30 2006-10-09 엘지전자 주식회사 휴대단말기의 개선된 영상신호 레이트 콘트롤 장치 및 방법
FR2872989A1 (fr) * 2004-07-06 2006-01-13 Thomson Licensing Sa Procede et dispositif pour choisir un vecteur mouvement pour le codage d'un ensemble de blocs
US8340177B2 (en) * 2004-07-12 2012-12-25 Microsoft Corporation Embedded base layer codec for 3D sub-band coding
US7471850B2 (en) * 2004-12-17 2008-12-30 Microsoft Corporation Reversible transform for lossy and lossless 2-D data compression
US7305139B2 (en) * 2004-12-17 2007-12-04 Microsoft Corporation Reversible 2-dimensional pre-/post-filtering for lapped biorthogonal transform
US7428342B2 (en) * 2004-12-17 2008-09-23 Microsoft Corporation Reversible overlap operator for efficient lossless data compression
EP1727372A1 (en) * 2005-05-27 2006-11-29 Thomson Licensing Method and apparatus for encoding and decoding video data,
US8036274B2 (en) * 2005-08-12 2011-10-11 Microsoft Corporation SIMD lapped transform-based digital media encoding/decoding
US7860327B2 (en) * 2005-10-06 2010-12-28 Sony Corporation Systems and methods for enhanced coding gain
US20070201550A1 (en) * 2006-01-09 2007-08-30 Nokia Corporation Method and apparatus for entropy coding in fine granularity scalable video coding
JP4424522B2 (ja) * 2006-07-13 2010-03-03 日本電気株式会社 符号化及び復号化装置ならびに符号化方法及び復号方法
KR101246115B1 (ko) * 2006-09-02 2013-03-20 세종대학교산학협력단 3차원 웨이블릿 기반 영상 부호화/복호화 방법 및 장치
US8208554B2 (en) 2006-12-07 2012-06-26 Qualcomm Incorporated Line-based video compression
US9031129B2 (en) * 2007-06-15 2015-05-12 Microsoft Technology Licensing, Llc Joint spatio-temporal prediction for video coding
US8369638B2 (en) 2008-05-27 2013-02-05 Microsoft Corporation Reducing DC leakage in HD photo transform
US8447591B2 (en) * 2008-05-30 2013-05-21 Microsoft Corporation Factorization of overlapping tranforms into two block transforms
TW201016017A (en) * 2008-10-08 2010-04-16 Univ Nat Taiwan Memory management method and system of video encoder
US8275209B2 (en) * 2008-10-10 2012-09-25 Microsoft Corporation Reduced DC gain mismatch and DC leakage in overlap transform processing
US8355057B2 (en) * 2009-10-14 2013-01-15 Sony Corporation Joint scalar embedded graphics coding for color images
KR20120035096A (ko) * 2010-10-04 2012-04-13 한국전자통신연구원 쿼드 트리 변환 구조에서 부가 정보의 시그널링 방법 및 장치
US8532413B2 (en) * 2010-10-13 2013-09-10 Samsung Electronics Co., Ltd. Entropy encoding/decoding method and apparatus for hierarchical image processing and symbol encoding/decoding apparatus for the same
WO2013109126A1 (ko) * 2012-01-20 2013-07-25 한국전자통신연구원 비디오 정보 전송 방법, 비디오 복호화 방법, 비디오 부호화기 및 비디오 복호화기
US10063889B2 (en) 2014-10-28 2018-08-28 Sony Corporation Image processing system with conditional coding and method of operation thereof
US9674554B2 (en) 2014-10-28 2017-06-06 Sony Corporation Image processing system with coding mode and method of operation thereof
US9357232B2 (en) * 2014-10-28 2016-05-31 Sony Corporation Image processing system with binary decomposition and method of operation thereof
US10356410B2 (en) * 2014-10-28 2019-07-16 Sony Corporation Image processing system with joint encoding and method of operation thereof
US9357237B2 (en) * 2014-10-28 2016-05-31 Sony Corporation Image processing system with bitstream reduction and method of operation thereof
EP3182704B1 (en) * 2015-12-15 2018-01-31 Axis AB A bit rate controller and a method for limiting output bit rate
CN112188216B (zh) * 2019-07-05 2024-07-19 腾讯美国有限责任公司 视频数据的编码方法、装置、计算机设备及存储介质
US11863786B2 (en) * 2021-05-21 2024-01-02 Varjo Technologies Oy Method of transporting a framebuffer
CN118348941B (zh) * 2024-06-17 2024-10-01 山西管家营法兰锻造股份有限公司 一种高精度法兰的处理系统

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5764807A (en) * 1995-09-14 1998-06-09 Primacomp, Inc. Data compression using set partitioning in hierarchical trees
US6160846A (en) * 1995-10-25 2000-12-12 Sarnoff Corporation Apparatus and method for optimizing the rate control in a coding system
AU1062999A (en) * 1997-09-29 1999-04-23 Rockwell Semiconductor Systems, Inc. System and method for compressing images using multi-threshold wavelet coding
US6208692B1 (en) * 1997-12-31 2001-03-27 Sarnoff Corporation Apparatus and method for performing scalable hierarchical motion estimation
US6560371B1 (en) * 1997-12-31 2003-05-06 Sarnoff Corporation Apparatus and method for employing M-ary pyramids with N-scale tiling
US6148111A (en) * 1998-04-27 2000-11-14 The United States Of America As Represented By The Secretary Of The Navy Parallel digital image compression system for exploiting zerotree redundancies in wavelet coefficients
US6253165B1 (en) * 1998-06-30 2001-06-26 Microsoft Corporation System and method for modeling probability distribution functions of transform coefficients of encoded signal
US6137915A (en) * 1998-08-20 2000-10-24 Sarnoff Corporation Apparatus and method for error concealment for hierarchical subband coding and decoding
US6553147B2 (en) * 1998-10-05 2003-04-22 Sarnoff Corporation Apparatus and method for data partitioning to improving error resilience
US6487319B1 (en) * 1998-11-18 2002-11-26 Sarnoff Corporation Apparatus and method for identifying the location of a coding unit
WO2001006794A1 (en) * 1999-07-20 2001-01-25 Koninklijke Philips Electronics N.V. Encoding method for the compression of a video sequence

Also Published As

Publication number Publication date
US20020118759A1 (en) 2002-08-29
KR20020064803A (ko) 2002-08-09
JP2004509531A (ja) 2004-03-25
CN1460231A (zh) 2003-12-03
US6728316B2 (en) 2004-04-27
EP1320831A2 (en) 2003-06-25
WO2002023475A3 (en) 2002-12-27
WO2002023475A2 (en) 2002-03-21

Similar Documents

Publication Publication Date Title
CN1266649C (zh) 视频编码方法
CN1181690C (zh) 用于压缩视频序列的编码方法
CN1189038C (zh) 嵌入的离散余弦变换式静止图像编码算法
CN1145363C (zh) 静画和动画编码的量化矩阵
CN1383684A (zh) 彩色视频编码与解码方法
CN1951122A (zh) 支持可变画面组大小的可伸缩视频编码方法和可伸缩视频编码器
CN1719904A (zh) 自适应编码的方法和设备
CN1794818A (zh) 可伸缩视频编码中的高性能三维码率控制方法
CN1225910C (zh) 一种视频编码方法
CN101002476A (zh) 用于编码和解码的方法以及用于视频编码的编码和解码装置
CN1665299A (zh) 可伸缩视频编解码器体系结构设计方法
Raja et al. Image compression using WDR & ASWDR techniques with different wavelet codecs
CN1878304A (zh) 编码和解码图像序列的方法和设备
CN1871858A (zh) 规格化视觉品质的比特率控制方法与装置
CN1885945A (zh) 分级编码和解码方法
EP1037468B1 (en) Image coding using embedded zerotree patterns and bitplanes
Jeong et al. A DCT-based embedded image coder using wavelet structure of DCT for very low bit rate video codec
KR100323701B1 (ko) 영상부호화장치
KR101421231B1 (ko) 웨이블릿 변환을 이용한 영상 압축 장치
Li et al. An efficient underwater color image coding method based on improved wavelet difference reduction
Lamsrichan A fast algorithm for low-memory embedded wavelet-based image coding without list
CN1816828A (zh) 将信号编码成位流的方法
Moccagatta et al. Wavelet-based image coding: comparison of MPEG-4 and JPEG-2000
Cai et al. Embedded image coding with context partitioning and quantization
Jérôme et al. Embedded zerotree wavelet coding of image sequence

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
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee