视频图像的编码方法及视频比特流的解码方法_3

文档序号:9847206阅读:来源:国知局
小的CU以进行更有效的处理。用于H.264的基于宏块的条带分割可被扩展至用于HEVC的基于IXU的条带分割。图2是用于HEVC的基于IXU的条带分割的示意图,其中24个LCU被分割成为3个条带,LCUOO?LCU07被分配至条带0(Slice O),标号210,LCU08?LCU15被分配至条带l(Slice 1),标号220,LCU16?LCU23被分配至条带2(Slice 2),标号230。如图2所示,条带的边界与最大编码单元对齐。然而,由于LCU对齐的条带分割容易实施,且LCU的尺寸要比的宏块大的多,LCU对齐的条带可能无法提供足够的粒度来支持动态环境的编码系统。因此,在HEVC标准的开发中提出了利用非LCU对齐的条带分割的设想。
[0039]图3是包含分数LCU的条带分割范例的示意图,其中分割边界可穿过LCU。标号为310的条带0(Slice O)包含LCUOO?LCU06,其末端在LCU07中的叶CU处。LCU07被分割并分别包含于标号为310的条带0(Slice O)中及标号为320的条带l(Slice I)中。标号为320的条带l(Slice I)包含LCU07中未被标号为310的条带0(Slice O)包含的叶CU,且包含LCU08?1^^15以及1^0]16的一部分。标号为320的条带1(51化6 I)的末端在IXU16中的叶⑶处。IXU16被分割并分别包含于标号为320的条带USlice I)中及标号为330的条带2(Slice2)中,其中标号为330的条带2(Slice 2)包含LCU16中未被标号为320的条带I (Slice I)包含的叶CU,且包含 LCUl 7 ?LCU23。
[0040]在当前的HEVC中,每一LCU皆有自己的QP,且为每一LCU选择的QP被传送至解码器端,以使解码器能够利用相同的QP值执行正确的解码程序。为了减少与QP相关的信息,当前编码使用的QP与参考QP的差值被传送以取代传送QP的做法。因此,可为每一 LCU传送deltaQP,其中delta QP被定义为当前编码LCU的QP与参考QP的差值。若当前LCU是所在条带的第一个LCU,则条带的QP被视为参考QP。依据不同的设计需求,条带中非第一个LCU的其他LCU的参考QP也可以设定为是条带QP、预设QP值、或前一LCU的QP值。一个IXU的delta QP通常是LCU数据的最后语法元素。当LCU的预测模式(PredMode)为跳过(SKIP)模式时,delta QP不会被传送。与H.264/AVC的基于宏块的编码相比,用于HEVC的编码单元可大至64 X 64像素,也就是IXU的尺寸。由于IXU比AVC/H.264中的宏块大得多,因此,利用每一LCU—个delta QP的做法可导致率控制(rate control)无法快速适应比特率,从而需要在比LCU更小的编码单元中采用delta QP以提供粒度更佳的率控制。进而,需要开发一种利用更灵活的QP处理的系统。
[0041]当允许在比LCU更小的编码单元中采用deltaQP时,随着编码单元尺寸的减小,在每一像素(per-pixel)基础上的与delta QP相关的信息会增加。因此,可定义QP最小⑶的尺寸(QP minimum CU size),以使delta QP仅在⑶的尺寸大于或等于QP最小⑶的尺寸时传送。进一步来说,为了提供灵活的delta QP,QP最小⑶的尺寸可在序列标头、条带标头、或图像标头中定义。举例来说,序列标头中的语法元素sps_qp_max_depth,SPS定义如图4所示。相比于传统的HEVC来说需要额外增加的语法元素如区块410所示。语法元素SpS_qp_maX_depth定义了 LCU中QP最小⑶的尺寸的深度。因此,QP最小⑶的尺寸可依据sps_qp_max_depth由LCU的尺寸得出。类似地,亦可在图像标头中利用语法元素来定义QP最小CU的尺寸的深度。如图5所示,在每一条带标头中定义了另一语法元素sh_cip_max_depth。相比于传统的HEVC来说需要额外增加的语法元素如区块410所示。语法元素sh_qp_max_depth定义了LCU中 QP 最小⑶的尺寸的深度 QpMinCuSi ze,且 QpMinCuSi ze 可依据 sh_qp_max_depth 由 LCU的尺寸得出。对于每一条带来说,可选择序列级定义的QP最小CU的尺寸或者条带级定义的QP最小⑶的尺寸来作为当前条带的QpMinCuSize。区块510中所示的语法元素change_qp_max_depth_f lag可用来指示QP最小⑶的尺寸是从序列级或者条带级选出。举例来说,change_qp_max_depth_flag的值等于O表示用于传送delta QP的最小⑶的尺寸是由sps_qp_max_depth得出,而change_qp_max_depth_f I ag的值等于I则表示用于传送de I ta QP的最小⑶的尺寸是由sh_cip_max_depth得出。传送de I ta QP的一般规则如下所述。对于尺寸大于或等于QpMin CuSi ze的一个叶CU来说,传送一个delta QP。对于多个尺寸皆小于QpMinCuSize且具有尺寸等于QpMinCuSize的同一个父⑶(parent CU)的多个叶⑶来说,为上述多个叶⑶传送一个delta QP以共享QP信息。当使用非LCU对齐的条带时,通常为所述条带的第一个叶⑶传送一个delta QP,而不管所述的第一个叶⑶的尺寸多大。
[0042]图6是依本发明与delta量化参数处理相关的条带数据语法范例的示意图。相比于传统的HEVC来说需要额外增加的语法元素如区块610所示。语法元素FirstCuFlag是用来指示⑶是否为所在条带的第一个⑶的旗标,在区块610中,FirstCuFlag被初始化为I。语法元素SendQpFlag是用来指示是否为CU传送了delta QP的旗标,在区块610中,SendQpFlag被初始化为O。后续执行的程序coding_unit()可导致FirstCuFlag和SendQpFlag值的改变。在为条带中的第一个⑶传送一delta QP之后,FirstCuFlag在程序coding_unit()中被重置为O。
[0043I图7A、7B是依本发明与delta量化参数处理相关的编码单元语法范例的示意图。相比于传统的HEVC来说需要额外增加的语法元素如区块710、7 20所示。在区块710中,SendQpFlag被重置为I,以表明若当前CU的尺寸CurrrCuSize等于QP最小CU的尺寸QpMinCuSize时,则传送一delta QP的需求。在区块720中测试了三种条件:当前CU是否为所在条带中的第一个⑶(FirstCuFlag) ; SendQpFlag是否被设置;以及CurrrCuSize是否与QpMinCuSize相等。若上述三个条件中任何一个被声明(asserted),贝IjdeIta QP(delta_qp)会被传送,且SendQpFlag和Fir s tCuFlag皆被重置为O。通过图4至图7B中所示语法元素描述的依据本发明的实施例,其允许delta QP处理基于比LCU更小的单元来进行,且为具有分数IXU的系统提供了delta QP处理方式。而且,通过图4至图7B中所示语法元素描述的依据本发明的实施例,其还允许系统可适应性地选择于序列标头、图像标头、或者条带标头中指示的QP最小⑶尺寸。
[0044]虽然图4至图7B中的语法设计描述了依据本发明的实施例,但其所使用的特定语法元素仅用来举例说明如何实施本发明,本领域的技术人员亦可修改所述语法元素以实现相同的发明。依据图4至图7B中所示的语法元素,解码器可得到所需的QP信息以用于解码比特流。举例来说,解码器可撷取语法元素change_qp_max_dep th_f I ag以决定QP最小⑶的尺寸是在条带标头或是序列标头中指示。从而,QP最小CU的尺寸可以被决定。叶CU的尺寸可由比特流解码中得到,且条带中所述叶CU的顺序可被决定。若叶CU的尺寸大于或等于QP最小CU的尺寸,或者叶CU是非LCU对齐的条带中的第一个CU,则在编码单元数据中存在deltaQP。解码器相应地撷取所述的delta QP值,并将所述的delta QP应用至编码单元数据以解码所述编码单元。
[0045]当上述的QP处理允许QP在比LCU更佳的粒度级别变化,且适应性地选择于序列标头或者条带标头中指示的QP最小CU的尺寸时,将会存在进一步提升与QP信息相关的传送效率的空间。相应地,本发明的第一个变化例描述如下。当一delta QP被发送,可能的状况是,所述的delta QP覆盖的(covered)区域并不具有非零的量化转化系数。由于QP是用于量化非零转化系数并反量化非零转化系数,因此,没有必要为不具有非零量化转化系数的区域传送QP或者delta QP。从而,对于这些区域来说,与QP或者delta QP相关联的信息可被省略(saved)。为了支持上述特点,需要对coding_unit()和transform_unit()进行语法上的修改,为简单起见,仅以LCU对齐的条带为例进行说明。序列标头及条带标头的语法与图4及图5中所示相同。另外,sI ice_data()的语法与传统的HEVC相同,如图8所示,其中对于LCU对齐的条带来说,图6所示的FirstCuFlag和SendQ
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1