专利名称:标志编码方法、标志解码方法、及其装置的制作方法
技术领域:
本发明涉及视频压缩技术,更具体地,涉及一种有效的标志编码(flag-coding)方法与装置,其利用编码视频帧的各个标志之间的空间相关性。
背景技术:
诸如因特网等通信技术的进展已经导致了除文本与语音通信之外的视频通信的增加。但是,对于现有的基于文本的通信方案,客户并不满意。为了满足各种客户要求,人们越来越多地提供包含文本、图像、音乐等等的多媒体数据服务。多媒体数据一般数量较大,并且要求大容量存储介质。另外,传送多媒体数据要求宽的带宽。相应地,当传送多媒体数据时,需要压缩编码方案。
数据压缩的基本原理为消除数据中的冗余。可以通过去除空间冗余、时间冗余、或者感知视觉冗余来压缩数据,空间冗余为图像中相同颜色或对象的复制,时间冗余为在运动画面相邻帧之间的很少或者没有的变化、或者音频中相同声音的连续重复,感知视觉冗余考虑到人类视觉的限制、以及人类无法听到高频。在一般视频编码中,通过基于运动补偿的时间过滤来去除时间冗余,并且通过空间变换来去除空间冗余。
利用预定的量化步长,将没有冗余的数据再次经过量化以用于有损编码。量化后的数据最终经过熵编码(无损编码)。
ISO/IEC(国际标准化组织/国际电工委员会)以及ITU(国际电信联盟)的联合视频组(JVT)正在积极开展使用H.264标准的、基于多层的编码技术的实现的标准化工作。
当前用于H.264标准的熵编码技术包括CAVLC(上下文自适应变长编码)、CABAC(上下文自适应二进制算术编码)、以及Exp_Golomb(指数Golomb)。
表1显示用于H.264标准中参数的熵编码技术。
表1H.264参数的编码技术
根据表1,如果entropy_coding_mode(熵编码模式)标志为0,则在编码指示相应宏块为帧间预测模式还是帧内预测模式的宏块类型(macroblocktype)、指明形成宏块子块的类型的宏块模式(macroblock pattern)、为确定量化步长的索引的量化参数(quantization parameter)、指明帧间预测模式所参照的帧号的基准帧索引(reference frame index)、以及运动矢量(motion vector)时,使用Exp_Golomb;而在编码定义原始图像与预测图像之间的差异的残差数据(residual data)时,使用CAVLC。
如果entropy_coding_mode标志为1,则利用CABAC编码所有参数。
因为相对于具有高复杂度的参数、CABAC显示高性能,所以设置基于VLC(变长编码)的熵编码(例如CAVLC)为基本简档(profile)。
目前ISO/IEC(国际标准化组织/国际电工委员会)以及ITU(国际电信联盟)的联合视频组(JVT)正在积极开展使用H.264标准的、基于多层的编码技术的实现的标准化工作。
发明内容
设想本发明来满足以上需求,并且提供一种用于在考虑到空间相关性的情况下、有效编码用于视频编解码器的各种标志的方法与装置。
看到以下描述、附图以及权利要求,本领域技术人员将清楚本发明的这个以及其他目的、特征、以及优点。
根据本发明的一方面,提供了一种编码用来编码由多个块构成的视频帧的标志的装置,该装置包括标志组合单元,其根据所述块的空间相关性,收集分配给每个块的标志值并且产生标志比特串;最大游程确定单元,其确定标志比特串的最大游程;以及转换单元,其通过利用预定的码字表,将在标志比特串中包含的比特转换为具有不大于最大游程的尺寸的码字。
根据本发明的另一方面,提供了一种解码用来编码由多个块构成的视频帧的标志的装置,该装置包括逆转换单元,其参照预定的码字表,从在输入的比特流中包含的码字重构标志比特串;以及标志恢复单元,其读出在所重构的标志比特串中包含的各个比特,并且关于所述多个块恢复标志。
根据本发明的另一方面,提供了一种编码用来编码由多个块构成的视频帧的标志的装置,该装置包括标志组合单元,其根据所述块的空间相关性,收集分配给每个块的标志值并且产生标志比特串;比特阵列划分单元,其将标志比特串划分为预定尺寸的组;跳过比特设置单元,其设置指示所划分的标志比特串的每个值是否为0的跳过比特;以及切换单元,其根据所设置的跳过比特,在比特流中记录或者跳过所划分的标志比特串。
根据本发明的另一方面,提供了一种解码用来编码由多个块构成的视频帧的标志的装置,该装置包括跳过比特读取单元,其从输入的比特流中读取跳过比特;组尺寸读取单元,其从输入的比特流中读出组尺寸;以及标志恢复单元,其根据所读取的跳过比特,从包含于所述比特流中的标志比特串中的与组尺寸一样大的比特关于所述块恢复各个标志。
从以下结合附图的详细描述,可以看出本发明的以上与其他目的、特征、以及优点,其中图1为显示根据量化参数的在VLC与CABAC之间的比特率的变化的图;图2为显示分别相对于VLC与CABAC的各种标志的比特率的曲线图;图3显示帧中包含的宏块;图4显示各个宏块头部中包含的特定标志之间的空间相关性;图5为显示通过收集相同标志的值的熵编码的概念图;图6显示说明游程值的相对比率分布的图;图7显示根据第二实施例的比特流的配置;图8显示比较本发明的第一实施例、第二实施例、以及常规联合可分层视频模型(JSVM)的容量;图9为显示根据本发明第一实施例的视频编码装置的配置的方框图;图10为显示根据本发明第一实施例的视频解码装置的配置的方框图;图11为显示根据本发明第二实施例的视频编码装置的配置的方框图;和图12为显示根据本发明第二实施例的视频解码装置的配置的方框图。
具体实施例方式
现在将参照其中显示本发明的优选实施例的附图更全面地描述本发明。
本发明的出发点为对于每个宏块独立执行的变长编码(VLC)方案的低效率。对于连续宏块中具有很强相关性的标志,该问题尤其严重。但是,用于当前SVC的VLC方案允许独立地编码各个宏块的标志。结果,当邻近宏块的标志具有类似值时,VLC与CABAC的操作的差异较大。因为已知CABAC的性能一般好于VLC的性能,所以优选地使用CABAC。但是,由于CABAC的计算复杂度,当编码标志时,SVC使用VLC。
图1为显示根据量化参数的在VLC与CABAC之间的比特率的变化的图。比特率指示特定标志(图1中的Cbp)占据整个比特流的比率。随着量化参数(QP)增加,已编码的纹理数据(texture data)减少。因此,自然地随着QP增加,比特率增加。但是,随着QP增加,VLC与CABAC之间的比特率差异增大,这就是对宏块独立执行的VLC没有覆盖大部分Cbp为0的情况的原因。因此,需要改进用于SVC的当前的VLC。
图2为显示分别相对于VLC与CABAC的各种标志的比特率的曲线图。在大部分其他标志中,VLC与CABAC之间的比特率不大。但是,在Cbp与ResPred(残差预测标志)中,VLC的比特率比CABAC的比特率大很多,这显示常规VLC方案对于Cbp与ResPred标志不足。因此,提出了以下方法收集在空间相邻的宏块中包含的标志(具体地为Cbp与ResPred标志),然后对其施加VLC。
在视频编码处理中,该处理一般以16×16像素的宏块单位进行。如图3所示,将单个帧或者分片划分为多个宏块(MBn“n”为整数)。通过预定的有损编码处理以及无损编码处理,每个宏块变为视频流。在将头部(宏块头部)添加到每个编码后的宏块的前面之后,编码后的宏块(MBn)可以配置单个视频流20,如图4所示。头部包括各种标志(A_flagn,B_flagn)。但是,虽然每个头部具有相同类型的标志,但是标志具有的值可以根据每个宏块不同。但是,因为空间相邻的宏块之间的空间相关性与近似性较大,所以很有可能相邻宏块中包含的标志可能具有相同值。
由于以上事实,在本发明中,在收集特定标志的值并且建立比特串之后,该编码处理继续。例如,如图5所示,在收集A_flag标志具有的值(A_flag1,A_flag2,...A_flagN)之后,进行编码处理,并且在收集称为B_flag的标志具有的值(B_flag1,B_flag2,...B_flagN)之后,进行熵编码(VLC)处理。这样,当在收集特定标志值之后进行编码处理时,可以容易地预测由于这些值的相似性,提高了压缩效率。如图5所示,将一组所收集的特定标志定义为“标志比特串”。
根据本发明,可以将编码通过收集标志而生成的标志比特串的方法分为两个实施例。第一实施例为收集标志,并且将其用于VLC方案。第二实施例为引入分离的标志,其指示按预定单位收集的所有标志为0。
如果相对于在分片或者帧中包含的全部宏块收集标志,则最大游程与全部宏块的数目相同。另外,随着游程(直至0以上的数目出现为止的持续的连续零的数目)提高,如图6所示,现有的比率一般呈指数减少。在这种情况下,因为难于设计VLC表,所以需要将最大游程限于特定值(N)。然后,将具有超过N的游程的码元游程映射到N。结果,预计当游程被变为N时比率将增加,并且因此可以向具有游程N的码元分配较短的码字。码元为转换为码字的单位,并且是标志比特串的一部分。
通过各种试验,当本发明中最大游程为8时,获得了良好的结果。这样,表2显示具有最大游程8的码字表。
表2不同游程的码字
根据表2,一般向具有较小游程的码元分配较短的码字。但是,具有最大游程8的码元具有最短的码字,这考虑到了以下事实由于大于或等于最大游程的码元都被映射为最大游程,所以最大运行长度的生成比率增加。另外,因为随着越来越靠近上层或者上时间层、诸如Cbp或者残差预测标志等标志具有0生成的越来越高的频率,所以可以有效地利用如表2那样的码字表。
但是,与Cbp标志相比,残差预测标志具有更合理的预测值。例如可以使用较低层(基本层)的残差能量、即较低层的Cbp,作为预测值。当对应于当前宏块的较低层宏块的残差能量为0时,很可能当前宏块的残差预测标志为0。当残差能量为1时,残差预测标志为1的可能性也较高。这是基于以下事实当对应的较低层的残差能量为0时,利用残差预测的可能性几乎为零,这是因为从残差预测得不到好处。当不使用残差预测时,残差预测标志被显示为0。
因此,利用如上所述的与施加到各层的预测值的相似性,可以更有效地利用码字表。更具体地,首先在标志比特串中进行如等式1的异或逻辑运算,然后将如表2的码字表用于该计算的结果。
X=residual_predition_flag^base-layer residual energy(1)此处,X指计算结果,residual_predition_flag(残差预测标志)指残差预测标志,并且base-layer residual energy(基本层残差能量)指相应较低层的Cbp。利用如表2的码字表,可以更有效地编码运算结果X,这是因为由于residual_predition_flag与base-layer residual energy之间的相似性、其为0的可能性非常高。
在熵编码处理中,大部分有效压缩依赖于连续零被表达得如何短,为此设想了本发明的第二实施例,以利用比第一实施例简单的方法解决该问题。在第二实施例中,将标志比特串划分为预定尺寸(此后称为“组尺寸”),其中标志(此后称为“跳过比特”)指示新定义了所划分的比特(此后称为“比特组”)。当跳过比特为1时,指示相应比特组中包含的比特为0。当该标志为0时,指示在相应比特组中包含的比特中存在非零。
当跳过比特为1时,相应比特组中包含的比特都被跳过,并且不包含在比特流中。当跳过比特为0时,以与常规SVC相同的方式,不特殊地编码各个标志,并且将各个标志原样嵌入比特流中。
表3总结了以下第二实施例。
表3第二实施例的码字与跳过比特
即,当比特组的每个比特为0时(或者游程具有与比特组相同的尺寸),跳过比特为1,并且码字不存在。如果在比特组中存在非零比特,则跳过比特为0,并且码字与原始输入的值(abcdefgh)相同。即,如果跳过比特为1,则跳过码元。当跳过比特为0时,不对码元编码。
在本发明中,可以检查当组尺寸为8时可以获得一般令人满意的结果。因此,虽然在表3例示了当组尺寸为8时的情况,但是可以根据输入图像、层的系数、以及所允许的比特比率,改变组尺寸的最优值。可以由视频编码器方计算最优值。即,通过比较根据各种组尺寸实际编码的结果,可以选择指示较少比特量的组尺寸。但是,在极限情况下当组尺寸为1时,使用与用于常规SVC中的方法相同的方法。如果在编码器与解码器之间没有预先确定组尺寸为固定值,则需要在比特流中包含编码器所计算的组尺寸。在这种情况下,在具有与分片头部一样大的尺寸或者组尺寸的宏块(此后称为“宏块组”)中的初始宏块的头部中,记录组尺寸,并且将其传送到解码器方。
图7显示根据第二实施例的比特流的配置。
比特流50包括对于每个层的比特流51与比特流52。对于每个层的比特流51与比特流52包括多个帧或者分片53、54、55、以及56。一般地,在H.264或者SVC中,按分片单位而非帧单位编码比特流。分片可以与单个帧或者单个宏块相同。
单个分片55包括分片头部60和分片数据70,分片数据70包括一个或多个宏块(MB)71到74。
单个宏块73包括宏块(MB)头部81、运动矢量字段82、以及已编码残差字段83。在宏块头部81中,记录关于相应宏块的额外的信息,并且在运动矢量字段82中,记录每个块的运动矢量。另外,在已编码残差字段83中,记录相对于相应宏块的量化结果、即已编码纹理数据。
需要稍微修正语法与语义,以将第二实施例用于常规SVC。表4显示记录在分片头部60中包含的语法的算法。在表4以及随后的表中,根据施加第二实施而修改的部分为粗体。
表4
参照图4,如果entropy_coding_mode_flag(熵编码模式标志)不是1,则在比特流中包含以Cbp指示组尺寸的参数(Cbp_groupsize_minus1,Cbp组尺寸减1)。entropy_coding_mode_flag指示特定熵编码方法(VLC或CABAC)。如果该值为1,则将利用CABAC编码标志;如为0,则将利用VLC编码标志。
同时,如果对应与当前宏块的基本层存在、并且分片类型不是“帧内”型(EI)而是“帧间”型(EB或EP),则在比特流中包含指示当从残差预测标志中的组尺寸中减去1时所获得的值的参数(respredflag_groupsize_minus1)。
表5显示当将本发明的第二实施例用于Cbp标志时的记录在宏块头部81中包含的语法的算法。
表5
在该算法中,如果entropy_coding_mode_flag不是1,则检查Cbp_groupsize_minus1(当从Cbp组尺寸中减1时获得的值)。如果所检查的值为0,即当Cbp组尺寸为1时,则以常规方式独立地记录coded_block_pattern(已编码块模式)。如果所检查的值不为0,则记录Cbp_skip_flag(跳过标志)。在宏块组中的第一宏块(FirstMbInCbpGroup)中记录Cbp_skip_flag。当Cbp_skip_flag为1时,在包含于宏块组中的每个宏块的头部中,跳过coded_block_pattern。然后,当Cbp_skip_flag为0时,在宏块的各个头部中,记录coded_block_pattern。
表6显示当将本发明的第二实施例用于残差预测标志时的记录在宏块头部81中包含的语法的算法。表6可以以与表5相同方式理解。在表6中,residual_prediction_flag指示残差预测标志,respredflag_skip_flag指示关于残差预测标志的跳过比特。
表6
图8显示本发明的第一实施例、第二实施例、以及常规联合可分层视频模型(JSVM)的容量的比较。此处所使用的视频序列为foreman CIF序列。实现具有相同亮度的峰值信噪比(Y-PSNR)所消耗的比特比率与第一实施例及第二实施例的相同,与JSVM具有大约5到10%的较大差异。这样,如果第一实施例及第二实施例的容量几乎类似,则可以更有效地使用计算方式较不复杂的第二实施例。
图9为显示根据本发明第一实施例的视频编码装置100与标志编码装置120的配置的方框图。
视频编码装置100包括视频编码单元110、标志编码装置120、以及比特流生成单元130。
视频编码单元110从输入的视频帧生成运动矢量以及已编码残差。此时,视频编码单元110通过各种标志,显示关于运动矢量以及已编码残差的另外的信息,并且这些标志被输入到标志编码装置120。可以为在视频帧中包含的每个块(例如每个宏块)设置标志。
视频编码单元110执行本领域公知的预测处理、DCT转换处理、以及量化处理,以获得运动矢量以及已编码残差。在当前的SVC中,基于运动预测以及运动补偿的帧间预测、在单个帧中利用邻近像素作为预测信号的方向性帧内预测、利用对应较低层的图像作为预测信号的帧内基本预测,以及关于帧间预测的信号对各层执行的残差预测。
标志编码装置120可以被进一步分为标志组合单元121、最大游程确定单元122、扫描单元123、码字表124、转换单元125、以及计算单元126。
在基于在视频帧中包含的块的空间相关性、收集了为每个块分配的标志值之后,标志组合单元121生成标志比特串。空间相关性暗示在单个视频帧中各个块的位置是否相互邻近。例如,当确定沿对角线方向的宏块顺序时,如图3所示,MB1与MB2为空间相邻。
最大游程确定单元122确定标志比特串的最大游程。根据本发明的第一实施例,通过限制当施加码字时的最大游程,减少了不必要比特的浪费。最大游程可以被确定为具有最终比特流的最小尺寸的值。同时,在标志编码装置120中不用逐一地确定最大游程,可以预先确定已经在视频编码装置与视频解码装置之间固定的值(例如8)。
扫描单元123通过扫描标志比特串,向转换单元125提供从连续零到第一非零值的比特(此后称为“掩码”)作为单个码元。
转换单元125通过使用表2所示的码字表124,将嵌入标志比特串中的、具有低于最大连接长度的尺寸的比特转换为码字。
码字表124将与对应于所确定的最大连接长度的数目一样多的0映射为具有最短长度的码字,具有最短长度的码字优选为0。
标志编码技术可以用于SVC所提供的其他各种标志,但是,尤其当用于已编码块模式(Cbp)或者残差预测标志时,可以预计更高的有效性。
同时,如上所述,当标志编码技术用于残差预测标志时,可以通过计算单元126,获得残差预测标志、与指示较低层对应于包含该标志值的块的块的残差能量在生成标志比特串之前是否存在的值的逻辑异或和。可以通过较低层块的已编码块模式(Cbp),发现是否存在残差能量。通过另外引入获得该逻辑异或和的处理,可以生成更多的0,这会使编码效率增加。
最后,比特流生成单元130生成由转换单元125提供的码字、由提供的视频编码单元110提供的运动矢量、以及包含已编码残差的比特流。
图10为显示根据本发明第一实施例的视频解码装置200以及标志解码装置220的配置的方框图。
视频解码装置200包括比特流分析器210、标志解码装置220、以及视频解码单元230。
首先,比特流分析器210从输入的比特流中读出运动矢量、已编码残差、最大游程以及码字。
标志解码装置220解码用于编码由多个块构成的视频帧的标志,包括码字表221、逆转换单元222、标志恢复单元223、以及计算单元224。
逆转换单元222参照预定的码字表,从在输入比特流中包含的码字构成标志比特串。
码字表221对应于图9的码字表124,其将码字映射为具有预定尺寸的最大游程内的码元。具体地,码字表221将码字中具有最短长度的码字映射为对应于最大游程的数目的0。此时,具有最短长度的码字为0。可以从比特流中读取最大游程,但是可以使用预定值(例如8)。
标志恢复单元223通过读出在所重新构造的标志比特串中包含的各个比特,关于多个块恢复标志。即,将各个比特改变为各个比特的标志。在所读取的比特中对应于相互邻近的比特的块具有视频帧中空间相邻的位置。
当要恢复的标志为残差预测标志时,标志解码装置220可以进一步包括计算单元224,其获得由逆转换单元222重构的标志比特串、与指示对应于包含该标志串的块的较低层块的残差能量是否存在的值的逻辑异或和。此时,将获得该逻辑异或和的结果改变为残差预测标志。
最后,视频解码单元230通过利用所恢复的标志、以及从比特流分析器210提供的运动矢量以及已编码残差,重构视频帧。可以通过与图10的视频帧编码处理相逆执行的常规方法,进行该视频帧重构处理。
图11为显示根据本发明第二实施例的视频编码装置300以及标志编码装置320的配置的方框图。
视频编码装置300可以包括视频编码单元310、标志编码装置320、以及比特流生成单元330。
首先,与视频编码单元110一样,视频编码单元310从输入的视频帧生成运动矢量以及已编码残差。
标志编码装置320编码用于编码由多个块构成的视频帧的标志,包括标志组合单元321、比特阵列划分单元322、组尺寸确定单元323、跳过比特设置单元324、以及切换单元325。
标志组合单元321根据所述块的空间相关性,在收集了分配给每个块的标志之后,生成标志比特串。
比特串划分单元322将标志比特串划分为预定的组尺寸。该组尺寸可以预先在视频编码装置与视频解码装置之间确定,或者其可以在可变的确定最优组尺寸之后、被从视频编码装置传送给视频解码装置。在后一种情况下,组尺寸确定单元323确定组尺寸为使比特流尺寸最小的值。
跳过比特设置单元324设置表示所划分的标志比特串的每个值是否为0的跳过比特。
切换单元325根据所设置的跳过比特,通过或者跳过所划分的标志比特串。关于切换单元325的切换操作的控制信号为由跳过比特设置单元324提供的跳过比特。更具体地,如果跳过比特为比特1(例如为1),则控制切换单元325开路,并且跳过所划分的标志比特串。如果跳过比特为比特2(例如为2),则控制切换单元325闭路,并且通过所划分的标志比特串,然后将其记录到比特流中。
如上表4所述,希望在比特流的分片头部中记录组尺寸。如表5与表6所述,希望在具有与比特流一样大的尺寸的块中的第一块的头部中记录跳过比特。但是,出可以收集跳过比特,并且将其记录在分片头部中。
图12为显示根据本发明第二实施例的视频解码装置400以及标志解码装置420的配置的方框图。
视频解码装置400可以包括比特流分析器410、标志解码装置420、以及视频解码单元430。
比特流分析器410从输入的比特流中读出运动矢量、已编码残差、以及标志比特串。
标志解码装置420解码用于编码由多个块构成的视频帧的标志,包括跳过比特读取单元421、标志恢复单元422、以及组尺寸读取单元423。
首先,跳过比特读取单元421从输入的比特流中读出跳过比特,并且组尺寸读取单元423从比特流中读出组尺寸。组尺寸记录在比特流的分片头部中,并且跳过比特记录在具有与比特流组一样大的尺寸的块中的第一块的头部中、或者在分片头部中。
标志恢复单元422根据包含在比特流中的标志比特串中具有与组尺寸一样大的尺寸的比特,恢复相对于各个块的每个标志。更具体地,当跳过比特为第一比特(例如1)时,标志恢复单元422设置与组尺寸一样大的比特为所恢复的标志。因为当跳过比特为第二比特(例如0)时、在标志编码装置320中跳过了与具有与组尺寸一样大的尺寸的标志比特串一样多的连续0,所以将组尺寸的0设置为所恢复的标志。
向视频解码单元430提供由标志恢复单元422设置的、对于每个块恢复的标志。视频解码单元430通过利用从比特流分析器410提供的运动矢量与已编码残差,重构所恢复的标志、以及视频帧。该视频帧恢复处理不能通过常规技术中公知的方法达到,其与图11的视频帧编码处理相逆地执行。
在以上实施例中,为每个宏块设置或者恢复各个标志,但是以上实施例只是简单的例子。本领域技术人员完全可以理解可以在大于宏块的切换单元、或者小于宏块的子块(8×8或4×4块)单元中设置标志。
此后,用于图2到图6中每个组件都可以由软件组件实现,例如任务、类、子例程、进程、对象、执行线程、程序,其在存储器的预定区域上执行,或者可以由硬件组件实现,例如现场可编程门阵列(FPGA)或者应用专用集成电路(ASIC),或者可以由软件与硬件组件的组合实现。这些组件可以包含在计算机可读存储介质中,或者分布在多个计算中。
如上所述,根据本发明,可以提高用于可扩展视频编解码器的各种标志的编码效率。
具体地,可以进一步提高编码具有空间上的紧密关系或者各层之间的紧密关系的标志的编码效率。
出于说明的目的描述了本发明的优选实施例,本领域技术人员应该理解在不脱离权利要求所限定的本发明的范围与精神的前提下,可以有各种修改、添加、以及替换。因此,本发明的范围应该由权利要求及其等价物限定。
权利要求
1.一种编码用来编码由多个块构成的视频帧的标志的装置,该装置包括标志组合单元,其根据所述块的空间相关性,收集分配给每个块的标志值并且产生标志比特串;最大游程确定单元,其确定标志比特串的最大游程;和转换单元,其通过利用预定的码字表,将在标志比特串中包含的比特转换为具有不大于最大游程的尺寸的码字。
2.如权利要求1所述的编码标志的装置,其中最大游程被设置为使最终比特流最小的值。
3.如权利要求1所述的编码标志的装置,其中对应于最大游程的数目的数目的0被映射为具有最短长度的码字。
4.如权利要求4所述的编码标志的装置,其中具有最短长度的码字为0。
5.如权利要求3所述的编码标志的装置,其中最大游程为8。
6.如权利要求1所述的编码标志的装置,其中所述块为宏块、8×8块、或4×4块。
7.如权利要求1所述的编码标志的装置,其中所述标志为已编码块模式(Cbp)或者残差预测标志。
8.如权利要求7所述的编码标志的装置,其中如果所述标志为残差预测标志,则该装置还包括计算单元,其获得标志值与指示较低层与包含该标志值的块对应的块的残差能量在生成标志比特串之前是否存在的值的逻辑异或和。
9.如权利要求8所述的编码标志的装置,其中所述指示残差能量是否存在的值为较低层的Cbp。
10.一种解码用来编码由多个块构成的视频帧的标志的装置,该装置包括逆转换单元,其参照预定的码字表,根据在输入的比特流中包含的码字重构标志比特串;和标志恢复单元,其读出在所重构的标志比特串中包含的各个比特,并且关于所述多个块恢复标志。
11.如权利要求10所述的解码标志的装置,其中在所读取的比特中对应于相互邻近的比特的块在视频帧中具有空间上相邻的位置。
12.如权利要求10所述的解码标志的装置,其中所述码字表将码字映射为具有预定尺寸的最大游程内的码元。
13.如权利要求12所述的解码标志的装置,其中所述码字表将码字中具有最短长度的码字映射为对应于最大游程的数目的0。
14.如权利要求13所述的解码标志的装置,其中具有最短长度的码字为0。
15.如权利要求13所述的解码标志的装置,其中最大游程为8。
16.如权利要求10所述的解码标志的装置,其中所述标志为Cbp或者残差预测标志。
17.如权利要求16所述的解码标志的装置,其中如果所述标志为残差预测标志,则该装置还包括计算单元,其获得所重构的标志比特串与指示较低层与包含该标志比特串的块对应的块的残差能量在重构标志比特串标志比特串之前是否存在的值的逻辑异或和。
18.如权利要求17所述的解码标志的装置,其中所述指示残差能量是否存在的值为较低层的Cbp。
19.一种编码用来编码由多个块构成的视频帧的标志的装置,该装置包括标志组合单元,其根据所述块的空间相关性,收集分配给每个块的标志值并且产生标志比特串;比特阵列划分单元,其将标志比特串划分为预定尺寸的组;跳过比特设置单元,其设置指示所划分的标志比特串的每个值是否为0的跳过比特;和切换单元,其根据所设置的跳过比特,在比特流中记录或者跳过所划分的标志比特串。
20.如权利要求19所述的编码标志的装置,其中所述块为宏块、8×8块、或4×4块。
21.如权利要求19所述的编码标志的装置,其中所述标志为已编码块模式(Cbp)或者残差预测标志。
22.如权利要求19所述的编码标志的装置,其中所述组尺寸被记录在比特流的分片头部中。
23.如权利要求19所述的编码标志的装置,其中所述跳过比特被记录在比特流的分片头部中,或者在具有与组一样大的尺寸的块中的第一块的头部中。
24.如权利要求19所述的编码标志的装置,还包括组尺寸确定单元,其确定所述组尺寸为具有最小尺寸的值。
25.一种解码用来编码由多个块构成的视频帧的标志的装置,该装置包括跳过比特读取单元,其从输入的比特流中读取跳过比特;组尺寸读取单元,其从输入的比特流中读出组尺寸;以及标志恢复单元,其根据所读取的跳过比特,从包含于所述比特流中的标志比特串中的与组尺寸一样大的比特中关于所述块恢复各个标志。
26.如权利要求25所述的解码标志的装置,其中当跳过比特为第一比特时,标志恢复单元分别设置所述与组尺寸一样大的比特为所恢复的标志,并且当跳过比特为第二比特时,设置与组尺寸一样大的数目的0为所恢复的标志。
27.如权利要求26所述的解码标志的装置,其中第一比特为1,并且第二比特为0。
28.如权利要求25所述的解码标志的装置,其中所述块为宏块、8×8块、或4×4块。
29.如权利要求25所述的解码标志的装置,其中所述标志为Cbp或者残差预测标志。
30.如权利要求25所述的解码标志的装置,其中所述组尺寸被包括在比特流的分片头部中。
31.如权利要求25所述的解码标志的装置,其中所述跳过比特被记录在比特流的分片头部中,或者在具有与组一样大的尺寸的块中的第一块的头部中。
全文摘要
本发明涉及视频压缩技术,更具体地,涉及一种有效的标志编码方法及其装置,其利用用于编码视频帧的各个标志之间的空间相关性。为了实现这个目的,提供了一种编码用来编码由多个块构成的视频帧的标志的装置,该装置包括标志组合单元,其根据所述块的空间相关性,收集分配给每个块的标志值并且产生标志比特串;最大游程确定单元,其确定标志比特串的最大游程;以及转换单元,其通过利用预定的码字表,将在标志比特串中包含的比特转换为具有不大于最大游程的尺寸的码字。
文档编号H04N7/30GK101094405SQ20071011207
公开日2007年12月26日 申请日期2007年6月22日 优先权日2006年6月22日
发明者韩宇镇, 李培根, 塔米·李, 李敎爀 申请人:三星电子株式会社