视频译码中用信号发送无损译码模式和脉码调制(pcm)模式的统一的制作方法

文档序号:7793534阅读:485来源:国知局
视频译码中用信号发送无损译码模式和脉码调制(pcm)模式的统一的制作方法
【专利摘要】本文描述的技术涉及协调视频译码中的译码模式和滤波的信令。在一个实例中,提供一种对视频数据进行解码的方法,其包含对第一语法元素进行解码以确定是否PCM译码模式用于一或多个视频块,其中所述PCM译码模式指代将像素值译码为PCM样本的模式。所述方法进一步包含对第二语法元素进行解码以确定是否环路内滤波应用于所述一或多个视频块。响应于指示使用了所述PCM译码模式的所述第一语法元素,所述方法进一步包含至少部分地基于所述第二语法元素将环路内滤波应用于所述一或多个视频块,以及至少部分地基于所述第一和第二语法元素对所述一或多个视频块进行解码。
【专利说明】视频译码中用信号发送无损译码模式和脉码调制(PCM)模 式的统一
[0001] 本申请案主张2012年6月18日申请的第61/661,242号美国临时申请案和2012 年6月29日申请的第61/666, 632号美国临时申请案的权益,以上申请案中的每一者的整 个内容以引用方式并入本文。

【技术领域】
[0002] 本发明涉及视频译码,且更特定来说涉及用信号发送视频译码模式。

【背景技术】
[0003] 数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广 播系统、个人数字助理(PDA)、膝上型或桌上型计算机、数码相机、数字记录装置、数字媒体 播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电电话、视频电话会议装置,及 其类似物。数字视频装置实施视频压缩技术,例如在由MPEG-2、MPEG-4、ITU-T H. 263、ITU-T H. 264/MPEG-4第10部分高级视频译码(AVC)、当前在开发的高效视频译码(HEVC)标准所 定义的标准和这些标准的扩展中所描述的技术,以更有效地发射、接收和存储数字视频信 息。
[0004] 视频压缩技术执行空间(图片内)预测和/或时间(图片间)预测以减少或移除 视频序列中固有的冗余。针对基于块的视频译码,视频切片可分割为若干视频块,所述视频 块也可被称为树块、译码单元(CU)和/或译码节点。图片的经帧内译码(I)切片中的视频 块是相对于同一图片中的相邻块中的参考样本使用空间预测来编码。图片的经帧间译码(P 或B)切片中的视频块可相对于同一图片中的相邻块中的参考样本使用空间预测,或相对 于其它参考图片中的参考样本使用时间预测。图片可称为帧,且参考图片可称为参考帧。
[0005] 空间或时间预测针对待译码的块产生预测性块。残余数据表示在待译码的原始块 与预测性块之间的像素差。经帧间译码块是根据指向形成预测性块的参考样本的块的运动 向量及指示在经译码块与预测性块之间的差的残余数据来编码。经帧内译码块是根据帧内 译码模式及残余数据来编码。为进行进一步压缩,可将残余数据从像素域变换到变换域,从 而产生接着可被量化的残余变换系数。最初以二维阵列布置的经量化变换系数可经扫描, 以便产生变换系数的一维向量,且可应用熵译码以实现甚至更多的压缩。


【发明内容】

[0006] 大体上,本发明描述视频译码中用于无损译码和脉码调制(PCM)译码模式的信令 的技术。在一些实例中,所述技术可通过例如用信号发送或解译用以彼此结合地用信号发 送无损和PCM译码模式的语法元素,来提供用信号发送与译码模式相关联的信息的改善的 效率。
[0007] 在一个实例中,本发明中描述的技术涉及用于对视频数据进行解码的方法。所述 方法包含对第一语法元素进行解码以确定是否PCM译码模式用于一或多个视频块,其中所 述PCM译码模式指代将像素值译码为PCM样本的模式。所述方法进一步包括对第二语法元 素进行解码以指示是否环路内滤波应用于所述一或多个视频块。响应于指示使用了所述 PCM译码模式的所述第一语法元素,所述方法进一步包括至少部分地基于所述第二语法元 素将环路内滤波应用于所述一或多个视频块。所述方法还包括至少部分地基于第一语法元 素和第二语法元素对所述一或多个视频块进行解码。
[0008] 在一个实例中,本发明中描述的技术涉及用于对视频数据进行编码的方法。所述 方法包含对第一语法元素进行编码以指示是否PCM译码模式用于一或多个视频块,其中所 述PCM译码模式指代将像素值译码为PCM样本的模式。所述方法还包含对第二语法元素进 行编码以指示是否环路内滤波应用于所述一或多个视频块。响应于指示使用了所述PCM译 码模式的所述第一语法元素,所述方法进一步包含至少部分地基于所述第二语法元素将环 路内滤波应用于所述一或多个视频块。所述方法还包含至少部分地基于第一语法元素和第 二语法元素对所述一或多个视频块进行编码。
[0009] 在另一实例中,本发明中描述的技术涉及视频译码装置。所述视频译码装置包含 视频译码器,所述视频译码器经配置以对指示是否脉码调制(PCM)模式用于一或多个视频 块的第一语法元素进行译码,其中所述PCM译码模式指代将像素值译码为PCM样本的模式。 所述视频译码器进一步经配置以对指示是否环路内滤波应用于所述一或多个视频块的第 二语法元素进行译码。所述视频译码器进一步经配置以响应于指示使用了所述PCM译码模 式的所述第一语法元素,至少部分地基于所述第二语法元素将环路内滤波应用于所述一或 多个视频块。
[0010] 在又一实例中,本发明中描述的技术涉及计算机可读存储媒体。所述计算机可读 存储媒体其上存储有指令,所述指令在执行时致使用于对视频数据进行译码的装置的处理 器对指示是否脉码调制(PCM)模式用于一或多个视频块的第一语法元素进行译码,其中所 述PCM译码模式指代将像素值译码为PCM样本的模式。所述指令进一步致使所述处理器对 指示是否环路内滤波应用于所述一或多个视频块的第二语法元素进行译码。所述指令进一 步致使所述处理器响应于指示使用了所述PCM译码模式的所述第一语法元素,至少部分地 基于所述第二语法元素将环路内滤波应用于所述一或多个视频块。
[0011] 在另一实例中,本发明中描述的技术涉及视频译码装置。所述视频译码装置包含 用于对指示是否脉码调制(PCM)模式用于一或多个视频块的第一语法元素进行译码的装 置,其中所述模式指代将像素值译码为PCM样本的PCM译码模式。所述视频译码装置进一 步包含用于对指示是否环路内滤波应用于所述一或多个视频块的第二语法元素进行译码 的装置。所述视频译码装置进一步包含用于响应于指示使用了所述PCM译码模式的所述第 一语法元素至少部分地基于所述第二语法元素将滤波应用于所述一或多个视频块的装置。
[0012] 在一个实例中,本发明中描述的技术涉及用于对视频数据进行解码的方法。所述 方法包含对第一语法元素进行解码以确定是否无损译码模式用于一或多个视频块或PCM 译码模式用于所述一或多个视频块,其中所述无损译码模式指代在译码过程中绕过变换、 量化和环路内滤波的模式,且其中所述PCM译码模式指代将像素值译码为PCM样本的模式。 所述方法进一步包含响应于指示真值的所述第一语法元素,对指示使用了所述无损译码模 式或所述PCM模式中的哪一者的第二语法元素进行解码。
[0013] 在另一实例中,本发明中描述的技术涉及用于对视频数据进行编码的方法。所述 方法包含对第一语法元素进行编码以确定是否无损译码模式用于一或多个视频块或PCM 译码模式用于所述一或多个视频块,其中所述无损译码模式指代在译码过程中绕过变换、 量化和环路内滤波的模式,且其中所述PCM译码模式指代将像素值译码为PCM样本的模式。 所述方法进一步包含响应于指示真值的所述第一语法元素,对第二语法元素进行编码以指 示使用了所述无损译码模式或所述PCM模式中的哪一者。
[0014] 在另一实例中,本发明中描述的技术涉及视频译码装置。所述视频译码装置包含 视频译码器,所述视频译码器经配置以对指示是否无损译码模式用于一或多个视频块或 PCM译码模式用于所述一或多个视频块的第一语法元素进行译码,其中所述无损译码模式 指代在译码过程中绕过变换、量化和环路内滤波的模式,且其中所述PCM译码模式指代将 像素值译码为PCM样本的模式。所述视频译码器进一步经配置以响应于指示真值的所述第 一语法元素,对指示使用了所述无损译码模式或所述PCM模式中的哪一者的第二语法元素 进行译码。
[0015] 在又一实例中,本发明中描述的技术涉及计算机可读存储媒体。所述计算机可读 存储媒体其上存储有指令,所述指令在执行时致使用于对视频数据进行译码的装置的处理 器对指示是否无损译码模式用于一或多个视频块或PCM译码模式用于所述一或多个视频 块的第一语法元素进行译码,其中所述无损译码模式指代在译码过程中绕过变换、量化和 环路内滤波的模式,且其中所述PCM译码模式指代将像素值译码为PCM样本的模式。所述 指令进一步致使所述处理器响应于指示真值的所述第一语法元素,对指示使用了所述无损 译码模式或所述PCM模式中的哪一者的第二语法元素进行译码。
[0016] 在另一实例中,本发明中描述的技术涉及视频译码装置。所述视频译码装置包含 用于对指示是否无损译码模式用于一或多个视频块或脉码调制(PCM)译码模式用于所述 一或多个视频块的第一语法元素进行译码的装置,其中所述无损译码模式指代在译码过程 中绕过变换、量化和环路内滤波的模式,且其中所述PCM译码模式指代将像素值译码为PCM 样本的模式。所述视频译码装置进一步包含用于响应于指示真值的所述第一语法元素对指 示使用了所述无损译码模式或所述PCM模式中的哪一者的第二语法元素进行译码的装置。
[0017] 在附图和以下描述中陈述一或多个实例的细节。从描述和附图以及从权利要求书 将明了其它特征、目标和优点。

【专利附图】

【附图说明】
[0018] 图1是说明可经配置以利用本发明的技术的实例性视频译码系统的框图。
[0019] 图2是说明可经配置以实施本发明的技术的实例性视频编码器的框图。
[0020] 图3是说明可经配置以实施本发明的技术的实例性视频解码器的框图。
[0021] 图4是说明根据本发明中描述的技术的用于对语法元素进行解码以基于视频数 据的另一语法元素确定是否应用滤波的实例性方法的流程图。
[0022] 图5是说明根据本发明中描述的技术的用于对语法元素进行编码以基于视频数 据的另一语法元素指示是否应用滤波的实例性方法的流程图。
[0023] 图6是说明根据本发明中描述的技术用于基于指示视频数据的无损译码模式的 使用的语法元素对指示脉码调制(PCM)译码模式的使用的语法元素进行译码的实例性方 法的流程图。
[0024] 图7是说明根据本发明中描述的技术用于结合无损译码模式语法元素使用PCM译 码模式语法元素来确定是否针对视频数据应用PCM译码模式或无损译码模式的实例性方 法的流程图。

【具体实施方式】
[0025] 大体上,本发明描述视频译码中用于统一无损译码和脉码调制(PCM)译码模式的 信令的技术。更具体来说,在一些实例中,本发明的技术联合地或彼此结合地通过使用旗标 来用信号发送针对相同块大小的无损和PCM模式。旗标可在译码单元(CU)层级用信号发 送,且可在用于一或多个视频块的CU群组中。本文描述的技术改善了无损和PCM模式的信 令的效率且协调了所述信令。所述技术界定无损译码模式旗标与PCM译码模式旗标之间的 交互,以便协调和改善用信号发送旗标的效率。本发明中描述的一些技术进一步界定无损 译码模式旗标、PCM译码模式旗标与指示环路内滤波是否经启用的第三旗标之间的交互。
[0026] 数字视频能力可并入到广泛范围的装置中,包含数字电视、数字直播系统、无线广 播系统、个人数字助理(PDA)、膝上型或桌上型计算机、平板计算机、电子书阅读器、数码相 机、数字记录装置、数字媒体播放器、视频游戏装置、视频游戏控制台、蜂窝式或卫星无线电 电话、所谓的"智能电话"、视频电话会议装置、视频流式传输装置,及其类似物。数字视频装 置实施视频译码技术,例如在由 MPEG-2、MPEG-4、ITU-T H. 263、ITU-T H. 264/MPEG-4 第 10 部分高级视频译码(AVC)、当前在开发的HEVC标准所定义的标准和这些标准的扩展中所描 述的技术。视频装置可通过实施此类视频译码技术来更有效地发射、接收、编码、解码和/ 或存储数字视频信息。
[0027] 视频译码技术包含空间(图片内)预测和/或时间(图片间)预测以减少或移除 视频序列中固有的冗余。针对基于块的视频译码,视频切片(例如,视频帧或视频帧的一部 分)可分割为若干视频块,所述视频块也可被称为树块、译码单元(CU)和/或译码节点。视 频块可相对于同一图片中的相邻块中的参考样本使用空间预测或相对于其它参考图片中 的参考样本使用时间预测来编码。空间或时间预测针对待译码的块产生预测性块。残余数 据表示在待译码的原始块与预测性块之间的像素差。为进行进一步压缩,可将残余数据从 像素域变换到变换域,从而产生接着可被量化的残余变换系数。最初以二维阵列布置的经 量化变换系数可经扫描,以便产生变换系数的一维向量,且可应用熵译码以实现视频位流 中的甚至更多的压缩。
[0028] HEVC的工作草案7 (本文称为"HEVC WD7")介绍了在⑶层级的用以用信号发送无 损译码的显示旗标。无损译码模式(本文也称为"无损模式")可指代其中绕过引入损失的 译码过程的译码模式。变换、量化和环路内滤波是对经编码位流引入损失的译码过程的实 例。因此,无损译码模式可绕过变换和量化和环路内滤波视频译码过程。布罗斯(Bross)等 人的文献HCTVC-11003 "高效视频译码(HEVC)文字规范草案7) "(ITU-T SG16WP3和ISO/ IEC JTC1/SC29/WG11的视频译码联合合作组(JCT-VC)第9次会议,瑞士日内瓦,2012年4 月27日到2012年5月7日),其从2013年6月17日起可从http ://phenix. int-evrv. fr/ict/doc end user/documents/9 Geneva/wgll,TCTVC-I1003-v6. zip下裁。
[0029] 虽然本发明中包含的技术是相对于HEVC WD7来描述,但所述技术也同样适用于 且适合于最终HEVC草案(称为"HEVC版本1")规范。举例来说,突发PCM模式已从最终 HEVC (版本1)规范移除。布罗斯等人的文献JCTVC-L1003_v34 "高效视频译码(HEVC)文 字规范草案 1〇(用于 FDIS 和最后呼叫)"(ITU-T SG16WP3 和 ISO/IEC JTC1/SC29/WG11 的 视频译码联合合作组(JCT-VC)第12次会议,瑞士日内瓦,2013年1月14日到2013年1月 23 日),其从 2013 年 6 月 17 日起可从 http ://phenix. int-evrv. fr/ict/doc end user/ documents/12 Geneva/wgll,TCTVC-L1003-v34. zip下裁。
[0030] 在产生WD7的第9次JCT-VC会议之前的HEVC草案的先前版本中,无损译码是隐 式地用信号发送。也就是说,当用信号发送的量化参数(QP)值是最小可允许QP值(例如, 用于8位主简档的0)时无损译码用于CU。在瑞士日内瓦的第9次JCT-VC会议期间,修改 用于无损译码模式的信令方案以显式地用信号发送无损译码模式。替代于此先前隐式信令 (即,当用信号发送的QP值是最小可允许QP值时执行无损译码),第9次JCT-VC会议介绍 了在译码单元(CU)层级的用以用信号发送无损译码的显式旗标。介绍了在CU层级的旗标 (例如,transquant_bypass_enable_flag)以启用无损译码模式。
[0031] 当无损译码模式启用时,则在⑶层级,用信号发送旗标(例如,cu_transquant_ bypass_flag),其指示无损译码模式是否用于所述特定CU。如果cu_transquant_bypass_ flag为1(例如,真值),那么停用所有环路内滤波。环路内滤波可包含解块、自适应环路滤 波器(ALF)和样本自适应偏移(SAO)过程。变换和量化也被绕过。
[0032] HEVC WD7还包含在SPS层级的用以用信号发送PCM模式是否经启用或停用的显式 旗标(pem_enabled_flag)。PCM译码模式是不同于上文提到的无损译码模式的译码模式。 PCM译码模式指代将像素值译码为PCM样本的模式。举例来说,在PCM译码模式中将样本直 接译码为PCM样本。在一些实例中,PCM模式可为有损的,在此情况下针对每一样本丢弃某 一数目的最低有效位。在一些实例中,PCM译码模式也可称为帧内脉码调制(IPCM)。
[0033] PCM译码模式(本文也称为"PCM模式")可在SPS层级处启用或停用(例如,通过 设定pcm_enabled_flag)。如果PCM模式经启用,那么用信号表示其中可使用PCM模式的最 小和最大⑶大小。⑶层级旗标(pcm_flag)指示PCM模式是否正用于特定⑶。也可用信 号发送PCM模式块样本的延伸长度。另一旗标(pcm_loop_filter_disable_flag)在SPS 层级处使用且指示是否应将环路内滤波应用于PCM模式块。
[0034] PCM译码模式与无损译码模式之间的交互未在HEVC WD7中较好地界定。举例来 说,如果如当前界定的无损译码模式和PCM译码模式同时启用,那么PCM译码模式占优。本 发明的技术包含协调无损和PCM模式的信令以及与环路内滤波器的交互的修改方案。
[0035] 本发明中描述用于在编码和/或解码过程中协调或统一无损和PCM模式的信令的 三种替代技术。第一技术包含使用语法元素 cu_transquant_bypass_flag来启用用于PCM 模式的环路内滤波。在HEVC WD7中,pcm_loop_filter_disable_flag可经设定以针对整 个图片序列启用或停用用于PCM译码块的环路滤波。然而,为了针对个别PCM译码视频块 启用或停用环路滤波,cu_transquant_bypass_flag可用以确定或指示环路滤波用于特定 PCM译码视频块。
[0036] 举例来说,如果 pcm_flag 等于 0 且 cu_transquant_bypass_flag 存在且等于 1, 那么针对"无损"译码单元绕过变换、量化和所有环路滤波。否则,如果pcm_flag等于0且 cu_transquant_bypass_flag等于0,那么针对译码单元执行变换、量化和所有环路滤波。 如果pcm_flag等于1且cu_transquant_bypass_flag存在且等于1,那么针对PCM译码块 绕过所有环路滤波器(即,环路滤波器未应用于PCM译码块)。否则,如果CU_tranSqUant_ bypass_f lag不存在或等于O,那么环路滤波器应用于PCM译码块。
[0037] 旗标 pcm_loop_filter_disable_flag 可从 SPS 移除或不移除。如果 pcm_loop_ filter_disable_flag经移除,那么针对整个图片序列的PCM译码块将不会启用或停用环 路滤波。如果 pcm_loop_f ilter_disable_f lag 存在且等于 0,那么 cu_transquant_bypass_ flag针对PCM译码块样本继续接通或断开环路内滤波。否则,如果pcm_loop_filter_ disable_flag存在且等于1,那么cu_transquant_bypass_flag对PCM译码块样本的环路 内滤波没有影响,且针对PCM译码块样本停用所有环路内滤波。
[0038] 替代技术包含仅当cu_transquant_bypass_flag为0或假时使用和用信号发送 PCM译码模式。在HEVC WD7中,无论cu_transquant_bypass_flag的值如何,都用信号发送 PCM模式。也就是说,在HEVC WD7中,当视频块使用PCM模式时,语法元素 cu_transquant_ bypass_flag浪费。因此,通过仅当cu_transquant_bypass_flag为0时用信号发送PCM模 式,视频译码过程的效率增加且位流大小可减小。
[0039] 描述第三替代技术,其中一个语法元素(cu_transquant_bypass_flag)的存在界 定将第二语法元素(pcm_flag)解译为选择无损或PCM译码模式。由此,pcm_flag可视为处 于在阶层上比 cu_transquant_bypass_flag 低的层级。仅当 cu_transquant_bypass_flag 等于1时用信号发送旗标pcm_flag。在此技术中,如果视频块使用PCM模式或无损模式,那 么将cu_transquant_bypass_flag设定为1。接着,将用信号发送pcm_flag以指示或读取 以确定针对视频块是否应用了 PCM模式或无损模式。如果pcm_f lag为1,那么使用了 PCM 模式。如果pcm_flag为0,那么使用了无损译码模式。在cu_transquant_bypass_flag为 〇的情况下,不用信号发送pcm_flag,且针对视频块执行具有变换、量化和环路内滤波的译 码。
[0040] 图1是说明可利用本发明的技术的实例性视频译码系统10的框图。如本文使用 描述,术语"视频译码器"一般指代视频编码器和视频解码器两者。在本发明中,术语"视频 译码"或"译码"可一般指代视频编码和视频解码。
[0041] 如图1中所示,视频译码系统10包含源装置12和目的地装置14。源装置12产生 经编码视频数据。因此,源装置12可称为视频编码装置。目的地装置14可对由源装置12 产生的经编码视频数据进行解码。因此,目的地装置14可称为视频解码装置。源装置12 和目的地装置14可为视频译码装置的实例。
[0042] 源装置12和目的地装置14可包括广范围的装置,包含桌上型计算机、移动计算装 置、笔记本(例如,膝上型)计算机、平板计算机、机顶盒、例如所谓的"智能"电话等电话手 持机、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、车内计算机或类似物。在 一些实例中,源装置12和目的地装置14可经配备以用于无线通信。
[0043] 目的地装置14可经由信道16从源装置12接收经编码视频数据。信道16可包括 能够将经编码视频数据从源装置12移动到目的地装置14的一类媒体或装置。在一个实例 中,信道16可包括使得源装置12能够实时地将经编码视频数据直接发射到目的地装置14 的通信媒体。在此实例中,源装置12可根据例如无线通信协议等通信标准调制经编码视频 数据,且可将经调制视频数据发射到目的地装置14。通信媒体可包括无线或有线通信媒体, 例如射频(RF)频谱或一或多个物理传输线。通信媒体可形成例如局域网、广域网或全球网 (例如,因特网)的基于包的网络的部分。所述通信媒体可包含路由器、交换器、基站,或促 进从源装置12到目的地装置14的通信的其它设备。
[0044] 在另一实例中,信道16可对应于存储由源装置12产生的经编码视频数据的存储 媒体。在此实例中,目的地装置14可经由磁盘存取或卡存取而存取所述存储媒体。所述存 储媒体可包含多种局部存取的数据存储媒体,例如蓝光光盘、DVD、CD-ROM、快闪存储器或用 于存储经编码视频数据的其它合适数据存储媒体。在又一实例中,信道16可包含文件服务 器或存储由源装置12产生的经编码视频的另一中间存储装置。在此实例中,目的地装置 14可经由流式传输或下载来存取存储在所述文件服务器或其它中间存储装置处的经编码 视频数据。文件服务器可为能够存储经编码视频数据且将经编码视频数据发射到目的地装 置14的一类服务器。实例性文件服务器包含网络服务器(例如,用于网站)、文件传送协议 (FTP)服务器、网络附接存储(NAS)装置以及本地磁盘驱动器。目的地装置14可通过包含 因特网连接的标准数据连接来存取经编码视频数据。数据连接的实例性类型可包含无线信 道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等等),或适合于存取存储 在文件服务器上的经编码视频数据的两者的组合。经编码视频数据从文件服务器的发射可 为流式传输发射、下载发射或两者的组合。
[0045] 本发明的技术不限于无线应用或设定。所述技术可应用于视频译码以支持多种多 媒体应用中的任一者,例如空中电视广播、电缆电视发射、卫星电视发射、流式传输视频发 射(例如,经由因特网)、用于存储在数据存储媒体上的数字视频的编码、存储在数据存储 媒体上的数字视频的解码,或其它应用。在一些实例中,视频译码系统10可经配置以支持 单向或双向视频发射以支持例如视频流式传输、视频重放、视频广播和/或视频电话等应 用。
[0046] 在图1的实例中,源装置12包含视频源18、视频编码器20和输出接口 22。在一 些情况下,输出接口 22可包含调制器/解调器(调制解调器)和/或发射器。在源装置12 中,视频源18可包含例如以下各项的源:视频俘获装置(例如摄像机),含有先前俘获视频 数据的视频存档,用以从视频内容提供者接收视频数据的视频馈送接口,和/或用于产生 视频数据的计算机图形系统,或此类源的组合。
[0047] 视频编码器20可对所俘获、预俘获或计算机产生的视频数据进行编码。经编码视 频数据可经由源装置12的输出接口 22直接发射到目的地装置14。经编码视频数据也可存 储到存储媒体或文件服务器上用于目的地装置14稍后存取以用于解码和/或重放。
[0048] 在图1的实例中,目的地装置14包含输入接口 28、视频解码器30和显示装置32。 在一些情况下,输入接口 28可包含接收器和/或调制解调器。目的地装置14的输入接口 28经由信道16接收经编码视频数据。经编码视频数据可包含由视频编码器20产生的表示 视频数据的多种语法元素。此些语法元素可与在通信媒体上发射的经编码视频数据一起包 含,存储在存储媒体上,或存储到文件服务器。
[0049] 显示装置32可与目的地装置14集成或可在所述目的地装置的外部。在一些实例 中,目的地装置14可包含集成显示装置且还可经配置以与外部显示装置介接。在其它实例 中,目的地装置14可为显示装置。大体上,显示装置32向用户显示经解码视频数据。显示 装置32可包括多种显示装置中的任一者,例如液晶显示器(IXD)、等离子显示器、有机发光 二极管(OLED)显示器,或另一类型的显示装置。
[0050] 视频编码器20和视频解码器30可根据视频压缩标准操作,例如当前在开发的高 效视频译码(HEVC)标准,且可符合HEVC测试模型(HM)。HEVC标准正由ITU-T视频译码专 家组(VCEG)和ISO/IEC动画专家组(MPEG)的视频译码联合合作组(JCT-VC)开发。称为 "HEVC工作草案7"或"WD7"的HEVC标准的最近草案在布罗斯等人的文献JCTVC-I1003 "高 效视频译码(HEVC)文字规范草案7"(ITU-T SG16WP3和ISO/IEC JTC 1/SC29/WG11的视 频译码联合合作组(JCT-VC)第9次会议,瑞士日内瓦,2012年4月27日到2012年5月7 日)中描述,其从 2013 年 6 月 11 曰起.可从 http ://phenix· it-sudparis. eu/ict/doc end user/documents/9 Geneva/wgll/.TCTVC-I1003_v3· zip下裁。
[0051] 替代地,视频编码器20和视频解码器30可根据其它专门或行业标准来操作,例如 ITU-T H. 264标准,替代地称为MPEG-4第10部分高级视频译码(AVC),或此些标准的扩展。 然而本发明的技术可不限于任一特定译码标准或技术。视频压缩标准和技术的其它实例包 含MPEG-2、ITU-T H. 263和专门或开源压缩格式,例如VP8和相关格式,或对其的扩展。
[0052] 虽然图1的实例中未图示,但视频编码器20和视频解码器30可各自与音频编码 器和解码器集成,且可包含适当的MUX-DEMUX单元或其它硬件和软件,以处置共同数据流 或单独数据流中的音频和视频两者的编码。如果适用,那么在一些实例中,MUX-DEMUX单元 可符合ITU H. 223多路复用器协议,或例如用户数据报协议(UDP)等其它协议。
[0053] 又,图1仅为实例且本发明的技术可应用于不一定包含编码与解码装置之间的任 何数据通信的视频译码设定(例如,视频编码或视频解码)。在其它实例中,数据可从局部 存储器检索,经由网络流式传输,或类似操作。编码装置可对数据进行编码且存储到存储 器,和/或解码装置可从存储器检索数据且对数据进行解码。在许多实例中,编码和解码由 不彼此通信但仅将数据编码到存储器和/或从存储器检索且解码数据的装置执行。
[0054] 可将视频编码器20和视频解码器30各自实施为多种合适的电路中的任一者,例 如一或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列 (FPGA)、离散逻辑、硬件,或其任何组合。当所述技术部分地以软件实施时,装置可将用于所 述软件的指令存储在合适的非暂时性计算机可读存储媒体中,且可使用一或多个处理器以 硬件执行所述指令以执行本发明的技术。可将视频编码器20和视频解码器30中的每一者 包含于一或多个编码器或解码器中,其中任一者可集成为相应装置中的组合式编码器/解 码器(CODEC)的部分。
[0055] 如上文简要提到,视频编码器20对视频数据进行编码。视频数据可包括一或多 个图片。图片中的每一者为形成视频的部分的静止图像。在一些实例中,图片可称为视频 "帧"。当视频编码器20对视频数据进行编码时,视频编码器20可产生位流。位流可包含 形成视频数据的经译码表示的位序列。位流可包含经译码图片和相关联数据。经译码图片 为图片的经译码表示。
[0056] 为了产生位流,视频编码器20可对视频数据中的每一图片执行编码操作。当视 频编码器20对图片执行编码操作时,视频编码器20可产生一系列经译码图片和相关联数 据。相关联数据可包含序列参数集、图片参数集、调适参数集和其它语法结构。序列参数集 (SPS)可含有适用于零个或多个图片序列的参数。图片参数集(PPS)可含有适用于零个或 多个图片的参数。调适参数集(APS)可含有适用于零个或多个图片的参数。APS中的参数 可为比PPS中的参数更可能改变的参数。
[0057] 为了产生经译码图片,视频编码器20可将图片分割为相等大小的视频块。视频块 可为样本的二维阵列。视频块中的每一者与树块相关联。在一些实例中,树块可称为最大 译码单元(LCU)。HEVC的树块可广义地类似于例如H.264/AVC等先前标准的宏块。然而, 树块不一定限于特定大小,且可包含一或多个译码单元(CU)。视频编码器20可使用四叉树 分割来将树块的视频块分割为与CU相关联的视频块,因此名为"树块"。
[0058] 在一些实例中,视频编码器20可将图片分割为多个切片。切片中的每一者可包含 整数数目的CU。在一些实例中,切片包括整数数目的树块。在其它实例中,切片的边界可在 树块内。
[0059] 作为对图片执行编码操作的部分,视频编码器20可对图片的每一切片执行编码 操作。当视频编码器20对切片执行编码操作时,视频编码器20可产生与所述切片相关联 的经编码数据。与切片相关联的经编码数据可称为"经译码切片"。
[0060] 为了产生经译码切片,视频编码器20可对切片中的每一树块执行编码操作。当视 频编码器20对树块执行编码操作时,视频编码器20可产生经译码树块。经译码树块可包 括表示树块的经编码版本的数据。
[0061] 当视频编码器20产生经译码切片时,视频编码器20可根据光栅扫描次序对切片 中的树块执行编码操作(即,编码)。换句话说,视频编码器20可以一次序对切片的树块进 行编码,所述次序是在所述切片中的树块的最顶部行上从左到右前进,随后在树块的下一 较低行上从左到右前进,以此类推直到视频编码器20已对切片中的树块中的每一者进行 编码为止。
[0062] 由于根据光栅扫描次序对树块进行编码,在给定树块上方和左边的树块可能已经 编码,但在给定树块的下方和右边的树块可能尚未经编码。因此,视频编码器20可能够在 对给定树块进行编码时存取通过对给定树块上方和左边的树块进行编码而产生的信息。然 而,视频编码器20可能不能在对给定树块进行编码时存取通过对给定树块下方和右边的 树块进行编码而产生的信息。
[0063] 为了产生经译码树块,视频编码器20可对树块的视频块递归地执行四叉树分割 以将视频块划分为逐渐变小的视频块。较小的视频块中的每一者可与不同CU相关联。举 例来说,视频编码器20可将树块的视频块分割为四个相等大小的子块,将所述子块中的一 或多者分割为四个相等大小的子子块,等等。经分割CU可为其视频块经分割为与其它CU 相关联的视频块的CU。未经分割CU可为其视频块未经分割为与其它CU相关联的视频块的 CUo
[0064] 位流中的一或多个语法元素可指示视频编码器20可将树块的视频块分割的最大 次数。CU的视频块可正方形形状。CU的视频块的大小(S卩,CU的大小)的范围可从8x8像 素直到具有最大64x64像素或更大的树块的视频块的大小(即,树块的大小)。
[0065] 视频编码器20可根据z扫描次序对树块的每一 CU执行编码操作(S卩,编码)。换 句话说,视频编码器20可对左上方⑶、右上方⑶、左下方⑶且随后右下方⑶以此次序进 行编码。当视频编码器20对经分割CU执行编码操作时,视频编码器20可根据z扫描次序 对与经分割CU的视频块的子块相关联的CU进行编码。换句话说,视频编码器20可对与左 上方子块相关联的CU、与右上方子块相关联的CU、与左下方子块相关联的CU且随后与右下 方子块相关联的CU以此次序进行编码。
[0066] 由于根据z扫描次序对树块的⑶进行编码,给定⑶的上方、左上方、右上方和左 下方的⑶可能已经编码。给定⑶下方和右边的⑶尚未经编码。因此,视频编码器20可 能够在对给定CU进行编码时存取通过对相邻于给定CU的一些CU进行编码而产生的信息。 然而,视频编码器20可能不能在对给定CU进行编码时存取通过对相邻于给定CU的其它CU 进行编码而产生的信息。
[0067] 当视频编码器20对未经分割⑶进行编码时,视频编码器20可产生所述⑶的一 或多个预测单元PU。CU的PU中的每一者可与CU的视频块内的不同视频块相关联。视频 编码器20可产生CU的每一 PU的预测视频块。PU的预测视频块可为样本块。视频编码器 20可使用帧内预测或帧间预测来产生的预测视频块。
[0068] 当视频编码器20使用帧内预测来产生PU的预测视频块时,视频编码器20可基于 与所述PU相关联的图片的经解码样本来产生所述的预测视频块。如果视频编码器20使 用帧内预测来产生CU的PU的预测视频块,那么所述CU是帧内预测CU。当视频编码器20 使用帧间预测来产生PU的预测视频块时,视频编码器20可基于除了与所述PU相关联的图 片之外的一或多个图片的经解码样本来产生所述PU的预测视频块。如果视频编码器20使 用帧间预测来产生CU的PU的预测视频块,那么所述CU是帧间预测CU。
[0069] 此外,当视频编码器20使用帧间预测来产生PU的预测视频块时,视频编码器20 可产生PU的运动信息。PU的运动信息可指示PU的一或多个参考块。PU的每一参考块可 为参考图片内的视频块。参考图片可为除了与PU相关联的图片之外的图片。在一些实例 中,PU的参考块也可称为PU的"参考样本"。视频编码器20可基于PU的参考块产生PU的 预测视频块。
[0070] 在视频编码器20产生⑶的一或多个PU的预测视频块之后,视频编码器20可基 于CU的PU的预测视频块产生CU的残余数据。CU的残余数据可指示CU的PU的预测视频 块与CU的原始视频块中的样本之间的差。
[0071] 此外,作为对未经分割CU执行编码操作的部分,视频编码器20可对CU的残余数 据执行递归四叉树分割以将CU的残余数据分割为与CU的变换单元(TU)相关联的一或多 个残余数据块(即,残余视频块)。CU的每一 TU可与不同残余视频块相关联。
[0072] 视频译码器20可将一或多个变换应用于与TU相关联的残余视频块以产生与TU 相关联的变换系数块(即,变换系数的块)。概念上,变换系数块可为变换系数的二维(2D) 矩阵。
[0073] 在产生变换系数块之后,视频编码器20可对变换系数块执行量化过程。量化一般 指代其中对变换系数进行量化以可能减少用以表示变换系数的数据量从而提供进一步压 缩的过程。量化过程可减少与变换系数中的一些或全部相关联的位深度。举例来说,η位 变换系数可在量化期间舍入到m位变换系数,其中η大于m。
[0074] 视频编码器20可使每一⑶与量化参数(QP)值相关联。与⑶相关联的QP值可 确定视频编码器20如何量化与CU相关联的变换系数块。视频编码器20可通过调整与CU 相关联的QP值来调整应用于与CU相关联的变换系数块的量化程度。
[0075] 在视频编码器20量化变换系数块之后,视频编码器20可产生表示经量化变换系 数块中的变换系数的语法元素集合。视频编码器20可将例如上下文自适应二进制算术译 码(CABAC)操作等熵编码操作应用于这些语法元素中的一些。也可使用其它熵译码技术, 例如内容自适应可变长度译码(CAVLC)、概率区间分割熵(PIPE)译码或其它二进制算术译 码。
[0076] 由视频编码器20产生的位流可包含一系列网络抽象层(NAL)单元。NAL单元中 的每一者可为语法结构,其含有NAL单元中的数据类型的指示和含有数据的字节。举例来 说,NAL单元可含有表示以下各项的数据:序列参数集、图片参数集、经译码切片、补充增强 信息(SEI)、存取单元定界符、填充数据或另一类型的数据。NAL单元中的数据可包含各种 语法结构。
[0077] 视频解码器30可接收由视频编码器20产生的位流。所述位流可包含由视频编码 器20编码的视频数据的经译码表示。当视频解码器30接收到位流时,视频解码器30可对 位流执行剖析操作。当视频解码器30执行剖析操作时,视频解码器30可从位流提取语法 元素。视频解码器30可基于从位流提取的语法元素来重构视频数据的图片。用以基于语 法元素重构视频数据的过程可一般与由视频编码器20执行以产生语法元素的过程互逆。
[0078] 在视频解码器30提取与⑶相关联的语法元素之后,视频解码器30可基于语法元 素产生CU的PU的预测视频块。另外,视频解码器30可对与CU的TU相关联的变换系数块 进行逆量化。视频解码器30可对变换系数块执行逆变换以重构与CU的TU相关联的残余 视频块。在产生预测视频块且重构残余视频块之后,视频解码器30可基于预测视频块和残 余视频块重构CU的视频块。以此方式,视频解码器30可基于位流中的语法元素重构CU的 视频块。
[0079] 根据本发明,视频编码器20和视频解码器30可经配置以实施本发明的一或多个 技术。本发明的技术包含协调无损和PCM译码模式的信令以及这些译码模式与环路内滤波 器的交互的修改方案。
[0080] 第一技术包含使用语法元素 cu_transquant_bypass_flag来启用用于PCM模式的 环路内滤波。在HEVC WD7中,pcm_loop_filter_disable_flag可经设定以针对整个图片 序列启用或停用对PCM译码块的环路滤波。然而,为了针对个别PCM译码视频块启用或停 用环路滤波,cu_transquant_bypass_flag可用以确定或指示环路滤波用于特定PCM译码 视频块。
[0081] 举例来说,用信号发送语法元素 cu_transquant_bypass_flag以启用用于PCM译 码模式的环路内滤波。如果pcm_flag等于0且cu_transquant_bypass_flag存在且等于1, 那么针对"无损"译码单元绕过变换、量化和所有环路滤波。对于视频编码器20未以PCM译 码模式编码但绕过CU的变换、量化和环路滤波的CU,视频编码器20用信号发送pcm_flag 为等于0且cu_transquant_bypass_flag等于1。否则,如果视频编码器20未使用PCM译 码模式对CU进行编码(例如,pcm_f lag等于0),且执行CU的变换、量化和环路滤波,那么 视频编码器20用信号发送等于0的cu_transquant_bypass_flag〇
[0082] 如果视频编码器20使用PCM译码模式对⑶进行编码(例如,pcm_flag等于 1),且未对PCM译码块样本使用环路滤波,那么视频编码器20用信号发送等于1的cu_ transquant_bypass_flag。如果视频编码器20使用PCM译码模式对⑶进行编码(例如, pcm_f lag等于1),且对PCM译码块样本使用环路滤波,那么视频编码器20用信号发送等于 0 1?]cu_transquant_bypass_flag〇
[0083] 类似地,如果视频解码器30针对经编码⑶确定pcm_flag等于0且cu_ transquant_bypass_flag存在且等于1,那么视频解码器30对所述经编码⑶进行解码 而无需经编码CU的逆变换、逆量化或环路内滤波。否则,如果视频解码器30确定经编 码⑶不是以PCM译码模式编码(例如,pcm_flag等于0)且视频解码器30确定旗标cu_ transquant_bypass_flag等于0,那么视频解码器30执行逆变换、逆量化和环路内滤波以 对经编码⑶进行解码。
[0084] 同样,如果视频解码器30确定经编码⑶是以PCM译码模式编码(例如,pcm_flag 等于1)且确定cu_transquant_bypass_flag等于1,那么视频解码器30对经编码PCM模式 CU进行解码而无需所述经编码PCM模式CU的环路内滤波。否则,如果视频解码器30确定 经编码⑶是以PCM译码模式编码(例如,pcm_flag等于1)但确定cu_transquant_bypass_ flag等于0,那么视频解码器30执行环路内滤波以对经编码PCM模式⑶进行解码。
[0085] 在一些实例中,在视频译码规范中从SPS移除了旗标pcm_loop_filter_disable_ flag。因此,视频编码器20将不用信号发送pcm_loop_filter_disable_flag。然而,如果 规范中包含pcm_loop_filter_disable_flag且如果视频编码器20确实用信号发送pcm_ loop_filter_disable_flag 且其等于 0,那么旗标 cu_transquant_bypass_flag 可针对 PCM译码块样本接通或断开环路内滤波。举例来说,当视频解码器30将pcm_loop_filter_ disable_flag读取为等于0时,视频解码器30至少部分地基于cu_transquant_bypass_ flag的值而对PCM块样本使用环路内滤波。
[0086] 在其中视频编码器20确实在SPS中用信号发送旗标pcm_loop_filter_disable_ flag 且 pcm_loop_filter_disable_flag 等于 1 或真的其它实例中,cu_transquant_ bypaSS_f lag对PCM块样本的环路内滤波没有影响,且针对PCM译码块样本停用所有环路内 滤波。
[0087] 在第二替代实例中,视频编码器20仅当cu_transquant_bypass_flag为0或假 时用信号发送pcm_flag。同样,视频解码器30在决定是否应读取pcm_flag之前确定cu_ transquant_bypass_flag是否为1或真。在HEVC WD7中,如果对于特定⑶来说pcm_flag 为1,那么无论cu_transquant_bypass_flag如何都使用PCM模式。因此,通过仅当cu_ transquant_bypass_flag为0时用信号发送PCM模式,视频译码过程比HEVC WD7中更有 效,在HEVC WD7中无论cu_transquant_bypass_flag的值如何都用信号发送PCM模式。
[0088] 在第三替代技术中,cu_transquant_bypass_flag的存在将pcm_flag的意义界定 为识别视频块是否在无损或PCM译码模式中编码。仅当cu_transquant_bypass_flag等于 1时用信号发送旗标pcm_flag。在此技术中,如果视频块使用PCM模式或无损模式(例如, 如果针对视频块绕过变换、量化和环路内滤波),那么将cu_transquant_bypass_flag设定 为1。用信号发送旗标pcm_flag,其指示针对视频块是否应用了 PCM模式或无损模式。
[0089] 举例来说,视频编码器20使用PCM模式对视频块进行译码或绕过视频块的变换、 量化和环路内滤波(例如,无损译码模式),视频编码器20用信号发送 CU_tranSqUant_ bypass_flag为等于1。视频编码器20仅当cu_transquant_bypass_flag等于1时用信号 发送旗标pcm_f lag。当视频编码器20使用PCM译码模式对视频块进行编码时,视频编码器 20将pcm_f lag设定为等于1。当视频编码器20使用无损译码模式对视频块进行编码时,视 频编码器20将pcm_flag设定为等于0。如果视频编码器20用信号表示cu_transquant_ bypass_f lag为等于0,那么视频编码器20不用信号表示pcm_f lag且视频块是在其中应用 了变换、量化和环路内滤波的有损模式中编码。
[0090] 同样,当视频解码器30确定cu_transquant_bypass_flag等于1时,视频解码器 30使用PCM模式对经编码视频块进行解码或绕过视频块的逆变换、逆量化和环路内滤波 (例如,无损译码模式)。视频解码器30仅在确定cu_transquant_bypass_flag等于1之 后读取旗标pcm_f lag。视频解码器30在pcm_f lag等于1时使用PCM译码模式对经编码视 频块进行解码。视频解码器30在pcm_flag等于0时使用无损译码模式对经编码视频块进 行解码。如果视频解码器30确定cu_transquant_bypass_flag等于0,那么视频解码器30 可不寻找或读取pcm_f lag。在此实例中,视频解码器30使用逆变换、逆量化对视频块进行 解码,且应用环路内滤波。
[0091] 图2是说明可经配置以实施本发明的技术的实例性视频编码器20的框图。图2 是为了阐释的目的提供,且不应视为对本发明中广泛例示且描述的技术的限制。为了阐释 的目的,本发明在HEVC译码的上下文中描述视频编码器20。然而,本发明的技术可适用于 其它译码标准或方法。
[0092] 在图2的实例中,视频编码器20包含多个功能组件。视频编码器20的功能组件 包含预测模块100、残余产生模块102、变换模块104、量化模块106、逆量化模块108、逆变 换模块110、重构模块112、滤波器模块113、经解码图片缓冲器114,和熵编码模块116。预 测模块100包含帧间预测模块121、运动估计模块122、运动补偿模块124,和帧内预测模块 126。在其它实例中,视频编码器20可包含更多、更少或不同的功能组件。此外,运动估计 模块122与运动补偿模块124可为高度集成的,但在图2的实例中为了阐释目的而单独表 示。对于一些译码模式,图2中所示的单元或模块中的一或多者可被绕过以例如用于无损 译码。图2中未具体说明的一或多个组件、单元或模块也可在一些译码模式中使用以例如 支持PCM样本的直接译码,其也可为一类无损译码,或可通过从每一样本丢弃某一数目的 最低有效位而将某种量化应用于所述PCM样本。
[0093] 视频编码器20可接收视频数据。视频编码器20可从各种源接收视频数据。举例 来说,视频编码器20可从图1的视频源18或另一源接收视频数据。视频数据可表示一系 列图片。为了对视频数据进行编码,视频编码器20可对图片中的每一者执行编码操作。作 为对图片执行编码操作的部分,视频编码器20可对图片的每一切片执行编码操作。作为对 切片执行编码操作的部分,视频编码器20可对切片中的树块执行编码操作。
[0094] 作为对树块执行编码操作的部分,预测模块100可对树块的视频块执行四叉树分 割以将视频块划分为逐渐变小的视频块。较小的视频块中的每一者可与不同CU相关联。举 例来说,预测模块100可将树块的视频块分割为四个相等大小的子块,将所述子块中的一 或多者分割为四个相等大小的子子块,等等。
[0095] 与CU相关联的视频块的大小的范围可从8x8样本直到具有最大64x64样本或更 大的树块的大小。在本发明中," NxN"和"N乘N"可以可互换地使用以在垂直和水平尺寸方 面指代视频块的样本尺寸,例如16x16样本或16乘16样本。大体上,16x16视频块在垂直 方向上具有16个样本(y = 16)且在水平方向上具有16个样本(X = 16)。同样,NxN块通 常在垂直方向上具有N个样本且在水平方向上具有N个样本,其中N表示非负整数值。样 本可指代像素值或可能用于视频数据表示的另一样本格式。
[0096] 此外,作为对树块执行编码操作的部分,预测模块100可产生用于树块的阶层式 四叉树数据结构。举例来说,树块可对应于四叉树数据结构的根节点。如果预测模块100 将树块的视频块分割为四个子块,那么根节点在四叉树数据结构中具有四个子代节点。子 代节点中的每一者对应于与子块中的一者相关联的CU。如果预测模块100将子块中的一者 分割为四个子子块,那么对应于与子块相关联的CU的节点可具有四个子代节点,其每一者 对应于与子子块中的一者相关联的CU。
[0097] 四叉树数据结构的每一节点可含有用于对应树块或CU的语法数据(例如,语法元 素)。举例来说,四叉树中的节点可包含分裂旗标,其指示对应于所述节点的CU的视频块是 否经分割(即,分裂)为四个子块。用于CU的语法元素可以递归方式界定,且可取决于CU 的视频块是否经分裂为若干子块。其视频块未经分割的CU可对应于四叉树数据结构中的 叶节点。经译码树块可包含基于用于对应树块的四叉树数据结构的数据。
[0098] 视频编码器20对树块的每一未经分割⑶执行编码操作。当视频编码器20对未 经分割⑶执行编码操作时,视频编码器20产生表示未经分割⑶的经编码表示的数据。
[0099] 作为对CU执行编码操作的部分,预测模块100可在CU的一或多个PU当中对CU的 视频块进行分割。视频编码器20和视频解码器30可支持各种PU大小。假定特定CU的大 小为2Nx2N,视频编码器20和视频解码器30可支持2Nx2N或NxN的PU大小,以及2Nx2N、 2NxN、Nx2N、NxN、2NxnU、nLx2N、nRx2N或类似的对称PU大小中的帧间预测。视频编码器20 和视频解码器30还可支持2NxnU、2NxnD、nLx2N和nRx2N的PU大小的不对称分割。在一些 实例中,预测模块100可执行几何分割以沿着不以直角会合CU的视频块的侧的边界在CU 的I3U当中分割CU的视频块。
[0100] 帧间预测模块121可对CU的每一 PU执行帧间预测。帧间预测可提供时间压缩。 为了对PU执行帧间预测,运动估计模块122可产生PU的运动信息。运动补偿模块124可 基于运动信息以及除了与CU相关联的图片之外的图片(S卩,参考图片)的经解码样本来产 生PU的预测视频块。在本发明中,由运动补偿模块124产生的预测视频块可称为帧间预测 视频块。
[0101] 切片可为I切片、P切片或B切片。运动估计模块122和运动补偿模块124可取 决于CU的PU是在I切片、P切片还是B切片中来执行针对所述PU的不同操作。在I切片 中,所有PU经帧内预测。因此,如果PU在I切片中,那么运动估计模块122和运动补偿模 块124不对PU执行帧间预测。
[0102] 如果PU在P切片中,那么含有PU的图片与称为"列表0"的参考图片列表相关联。 列表0中的参考图片中的每一者含有可用于其它图片的帧间预测的样本。当运动估计模块 122关于P切片中的PU执行运动估计操作时,运动估计模块122可在列表0中搜索参考图 片是否有用于I 3U的参考块。PU的参考块可为最接近地对应于PU的视频块中的样本的样 本集合(例如,样本块)。运动估计模块122可使用多种量度来确定参考图片中的样本集 合对应于的视频块中的样本的接近程度。举例来说,运动估计模块122可通过绝对差和 (SAD)、平方差和(SSD)或其它差量度来确定参考图片中的样本集合对应于PU的视频块中 的样本的接近程度。
[0103] 在识别P切片中的PU的参考块之后,运动估计模块122可产生指示列表0中含有 参考块的参考图片的参考索引以及指示PU与参考块之间的空间位移的运动向量。在各种 实例中,运动估计模块122可按各种程度的精度产生运动向量。举例来说,运动估计模块 122可以四分之一样本精度、八分之一样本精度或其它分数样本精度来产生运动向量。在 分数样本精度的情况下,可从参考图片中的整数位置样本值内插参考块值。运动估计模块 122可输出参考索引和运动向量作为PU的运动信息。运动补偿模块124可基于由PU的运 动信息识别的参考块来产生PU的预测视频块。
[0104] 如果PU在B切片中,那么含有PU的图片可与称为"列表0"和"列表1"的两个参 考图片列表相关联。在一些实例中,含有B切片的图片可与作为列表0和列表1的组合的 列表组合相关联。
[0105] 此外,如果I3U在B切片中,那么运动估计模块122可执行PU的单向预测或双向预 测。当运动估计模块122执行PU的单向预测时,运动估计模块122可搜索列表0或列表1 的参考图片是否有用于PU的参考块。运动估计模块122可随后产生指示列表0或列表1 中含有参考块的参考图片的参考索引,以及指示PU与参考块之间的空间位移的运动向量。 运动估计模块122可输出参考索引、预测方向指示符和运动向量作为PU的运动信息。预测 方向指示符可指示参考索引是否指示列表〇或列表1中的参考图片。运动补偿模块124可 基于由PU的运动信息指示的参考块来产生PU的预测视频块。
[0106] 当运动估计模块122执行PU的双向预测时,运动估计模块122可搜索列表0中的 参考图片是否有用于PU的参考块,且还可搜索列表1中的参考图片是否有用于的另一 参考块。运动估计模块122可随后产生指示列表0和列表1中含有参考块的参考图片的参 考索引,以及指示参考块与PU之间的空间位移的运动向量。运动估计模块122可输出参考 索引和PU的运动向量作为PU的运动信息。运动补偿模块124可基于由PU的运动信息指 示的参考块来产生PU的预测视频块。
[0107] 在一些实例中,运动估计模块122不将PU的运动信息的完整集合输出到熵编码模 块116。而是,运动估计模块122可参考另一 PU的运动信息用信号发送PU的运动信息。举 例来说,运动估计模块122可确定PU的运动信息充分类似于相邻PU的运动信息。在此实 例中,运动估计模块122可在与PU相关联的语法结构中指示一值,所述值向视频解码器30 指示PU具有与相邻PU相同的运动信息。在另一实例中,运动估计模块122可在与PU相关 联的语法结构中识别相邻PU和运动向量差(MVD)。运动向量差指示PU的运动向量与所指 示相邻PU的运动向量之间的差。视频解码器30可使用所指示相邻PU的运动向量和运动 向量差来确定PU的运动向量。通过在用信号发送第二PU的运动信息时参考第一 PU的运 动信息,视频编码器20可能够使用较少的位来用信号发送第二PU的运动信息。
[0108] 作为对CU执行编码操作的部分,帧内预测模块126可对CU的PU执行帧内预测。 帧内预测可提供空间压缩。当帧内预测模块126对PU执行帧内预测时,帧内预测模块126 可基于同一图片中的其它PU的经解码样本来产生的预测数据。PU的预测数据可包含预 测视频块和各种语法元素。帧内预测模块126可对I切片、P切片和B切片中的PU执行帧 内预测。
[0109] 为了对PU执行帧内预测,帧内预测模块126可使用多个帧内预测模式来产生PU 的预测数据的多个集合。当帧内预测模块126使用帧内预测模式来产生PU的预测数据集合 时,帧内预测模块126可在与帧内预测模式相关联的方向和/或梯度上在PU的视频块上延 伸来自相邻I 3U的视频块的样本。相邻PU可在PU的上方、右上方、左上方或左边,假定PU、 CU和树块的从左到右、从上到下编码次序。帧内预测模块126可取决于PU的大小使用各种 数目的帧内预测模式,例如33个方向性帧内预测模式。
[0110] 预测模块100可从由运动补偿模块124为PU产生的预测数据或由帧内预测模块 126为PU产生的预测数据当中选择PU的预测数据。在一些实例中,预测模块100基于预测 数据集合的速率/失真量度来选择PU的预测数据。
[0111] 如果预测模块100选择由帧内预测模块126产生的预测数据,那么预测模块100 可用信号发送曾用以产生PU的预测数据的帧内预测模式,即选定的帧内预测模式。预测模 块100可以各种方式用信号发送选定的帧内预测模式。举例来说,可能选定的帧内预测模 式与相邻PU的帧内预测模式相同。换句话说,相邻的帧内预测模式可为当前PU的最可 能模式。因此,预测模块100可产生语法元素以指示选定的帧内预测模式与相邻PU的帧内 预测模式相同。
[0112] 在预测模块100选择⑶的的预测数据之后,残余产生模块102可通过从⑶的 视频块减去CU的PU的预测视频块而产生CU的残余数据。CU的残余数据可包含对应于CU 的视频块中的样本的不同样本分量的2D残余视频块。举例来说,残余数据可包含对应于CU 的PU的预测视频块中的样本的亮度分量与CU的原始视频块中的样本的亮度分量之间的差 的残余视频块。另外,CU的残余数据可包含对应于CU的PU的预测视频块中的样本的色度 分量与CU的原始视频块中的样本的色度分量之间的差的残余视频块。
[0113] 预测模块100可执行四叉树分割以将CU的残余视频块分割为若干子块。每一未 经划分残余视频块可与CU的不同TU相关联。与CU的TU相关联的残余视频块的大小和位 置可或可不基于与CU的PU相关联的视频块的大小和位置。称为"残余四叉树"(RQT)的四 叉树结构可包含与残余视频块中的每一者相关联的节点。CU的TU可对应于RQT的叶节点。
[0114] 变换模块104可通过将一或多个变换应用于与TU相关联的残余视频块来产生⑶ 的每一 TU的一或多个变换系数块。变换系数块中的每一者可为变换系数的2D矩阵。变换 模块104可将各种变换应用于与TU相关联的残余视频块。举例来说,变换模块104可将离 散余弦变换(DCT)、方向性变换或概念上类似的变换应用于与TU相关联的残余视频块。
[0115] 在变换模块104产生与TU相关联的变换系数块之后,量化模块106可量化变换系 数块中的变换系数。量化模块106可基于与CU相关联的QP值对与CU的TU相关联的变换 系数块进行量化。
[0116] 视频编码器20可以各种方式使QP值与⑶相关联。举例来说,视频编码器20可 对与CU相关联的树块执行速率-失真分析。在速率-失真分析中,视频编码器20可通过 对树块多次执行编码操作来产生树块的多个经译码表示。当视频编码器20产生树块的不 同经编码表示时,视频编码器20可使不同QP值与CU相关联。当给定QP值与具有最低位 率和失真量度的树块的经译码表示中的CU相关联时,视频编码器20可用信号发送所述给 定QP值与CU相关联。
[0117] 在一些实例中,视频编码器20针对一或多个视频块绕过变换模块104和量化模块 106。当视频编码器20针对视频块绕过变换模块104和量化模块106时,视频编码器20针 对所述视频块不执行变换和量化。
[0118] 在其中视频编码器20绕过变换模块104和量化模块106的实例中,视频解码器30 可类似地绕过逆量化模块108和逆变换模块110。否则,逆量化模块108和逆变换模块110 可分别将逆量化和逆变换应用于变换系数块,以从变换系数块重构残余视频块。重构模块 112可将经重构残余视频块加到来自由预测模块100产生的一或多个预测视频块的对应样 本以产生与TU相关联的经重构视频块。通过以此方式重构CU的每一 TU的视频块,视频编 码器20可重构⑶的视频块。
[0119] 在重构模块112重构⑶的视频块之后,滤波器模块113可执行解块操作以减少与 CU相关联的视频块中的成块假象。滤波器模块113还可执行其它类型的滤波(如果需要), 例如样本自适应偏移(SAO)滤波、自适应环路滤波(ALF)或其它类型的环路内或环路后滤 波。在一些实例中,视频编码器20绕过滤波器模块113。在此实例中,视频编码器20不对 经重构视频块执行环路内滤波,例如解块、SAO或ALF滤波。
[0120] 在执行或不执行一或多个滤波操作之后,滤波器模块113可将⑶的经重构视频块 存储在经解码图片缓冲器114中。运动估计模块122和运动补偿模块124可使用含有经重 构视频块的参考图片来对后续图片的PU执行帧间预测。另外,帧内预测模块126可使用经 解码图片缓冲器114中的经重构视频块来对与CU在同一图片中的其它PU执行帧内预测。
[0121] 熵编码模块116可从视频编码器20的其它功能组件接收数据。举例来说,熵编码 模块116可从量化模块106接收变换系数块且可从预测模块100接收语法元素。当熵编码 模块116接收到数据时,熵编码模块116可执行一或多个熵编码操作以产生经熵编码数据。 举例来说,视频编码器20可对数据执行上下文自适应可变长度译码(CAVLC)操作、CABAC操 作、可变到可变(V2V)长度译码操作、基于语法的上下文自适应二进制算术译码(SBAC)操 作、概率区间分割熵(PIPE)译码操作,或另一类型的熵编码操作。熵编码模块116可输出 包含经熵编码数据的位流。
[0122] 作为对数据执行熵编码操作的部分,熵编码模块116可选择上下文模型。如果熵 编码模块116正在执行CABAC操作,那么上下文模型可指示特定二进位具有特定值的概率 的估计。在CABAC的上下文中,术语"二进位"用以指代语法元素的经二进制化版本的位。
[0123] 视频编码器20可经配置以实施本文描述的技术中的一或多者作为视频编码过程 的部分。在本文描述的一个技术中,视频编码器20用信号发送语法元素 CU_tranSqUant_ bypass_flag以启用PCM模式的环路内滤波。视频编码器20对第一语法元素(例如,pcm_ flag)进行编码以指示PCM译码模式是否用于一或多个视频块,其中PCM模式指代将像 素值译码为PCM样本的模式。视频编码器20还可经配置以对第二语法元素(例如,cu_ transquant_bypass_flag)进行编码以指示当使用PCM译码模式时是否应用了环路内滤波 且指示当PCM译码模式未用于一或多个视频块时是否使用了无损译码模式,其中无损译码 模式指代在译码过程中绕过变换、量化和环路内滤波的模式。响应于指示使用了 PCM译码 模式的第一语法元素(例如,pcm_flag),视频编码器20至少部分地基于第二语法元素(例 如,cu_transquant_bypass_flag)应用环路内滤波。视频编码器20还可经配置以无论第 一语法元素如何均对第二语法元素进行编码。
[0124] 如果 pcm_flag 等于 0 且 cu_transquant_bypass_flag 等于 1,那么针对"无损"译 码单元绕过变换、量化和环路内滤波。对于视频编码器20未以PCM译码模式编码但绕过 ⑶的变换、量化和环路内滤波的⑶,视频编码器20用信号发送pcm_flag为等于0且cu_ transquant_bypass_flag等于1。否则,如果视频编码器20未使用PCM译码模式对⑶进 行编码(例如,pcm_f lag等于0),且执行CU的变换、量化和环路内滤波,那么视频编码器20 用信号发送等于 〇 的 cu_transquant_bypass_flag〇
[0125] 如果视频编码器20使用PCM译码模式对⑶进行编码(例如,pcm_f lag等于I), 且未执行CU的环路内滤波(例如,绕过),那么视频编码器20用信号发送等于1的cu_ transquant_bypass_flag。如果视频编码器20使用PCM译码模式对⑶进行编码(例如, pcm_f lag等于1),且执行CU的环路内滤波(例如,未绕过),那么视频编码器20用信号发 送等于0的cu_transquant_bypass_f lag。也就是说,当使用PCM译码模式时,总是绕过变 换,可或可不绕过量化,且环路内滤波由cu_transquant_bypass_flag控制。
[0126] 在另一实例性技术中,视频编码器20经配置以对语法元素(例如,cu_ transquant_bypass_flag)进行译码以指示无损译码模式是否用于一或多个视频块,其中 无损译码模式指代在译码过程中绕过变换、量化和环路内滤波的模式,且在所述语法元素 指示使用了无损译码模式的情况下针对所述一或多个视频块停用PCM模式,其中PCM模式 指代将像素值译码为PCM样本的模式。
[0127] 举例来说,视频编码器20仅当cu_transquant_bypass_flag为0或假时用信 号发送pcm_flag。在HEVC WD7中,如果对于特定⑶来说pcm_flag为1,那么无论cu_ transquant_bypass_flag如何都使用PCM模式。因此,根据本发明的实例,视频编码器20 仅当cu_transquant_bypass_flag为0时用信号发送PCM模式与HEVC WD7相比改善了视 频译码过程的效率,在HEVC WD7中无论cu_transquant_bypass_flag的值如何都用信号发 送PCM模式。
[0128] 举例来说,视频编码器20经配置以对第一语法元素(例如,pcm_flag)进行译码 以指示PCM译码模式是否用于一或多个视频块。PCM译码模式指代将一或多个视频块的像 素值译码为PCM样本的模式。视频编码器20进一步经配置以对第二语法元素(例如,cu_ transquant_bypass_flag)进行译码以指示环路内滤波是否应用于所述一或多个视频块。 如果第一语法元素指示使用了 PCM译码模式,那么解译第二语法元素以指示是否将应用环 路内滤波。
[0129] 在替代技术中,视频编码器20可使用pcm_flag来指示PCM译码模式或无损译码 模式是否用于所述一或多个视频块。在此实例中,将pcm_flag视为处于在阶层上比cu_ transquant_bypass_flag 低的层级。也就是说,cu_transquant_bypass_flag 控制 cu_ transquant_bypass_f lag 和 pcm_f lag 两者。视频编码器 20 基于两个旗标 cu_transquant_ bypass_flag和pcm_flag的组合来用信号发送所述一或多个视频块是否是使用无损译码 模式或PCM译码模式来编码。
[0130] 举例来说,如果视频编码器20用信号发送cu_transquant_bypass_flag为等于1, 那么这意味着无损译码模式或PCM译码模式用以对所述一或多个视频块进行编码。为了识 别视频编码器20使用哪一译码模式对所述一或多个视频块进行编码,视频编码器20用信 号发送pcm_f lag。举例来说,视频编码器20用信号发送等于0的pcm_f lag以指示使用了 无损译码模式。类似地,视频编码器20用信号发送等于1的pcm_flag以指示使用了 PCM 译码模式。因此,作为两个旗标的组合来推导无损译码条件以及PCM译码条件。在其它实 例中,可使用旗标和值的不同组合来实现类似功能性。
[0131] 举例来说,视频编码器20经配置以对第一语法元素(例如,cu_transquant_ bypaSS_flag)进行译码以指示是否无损译码模式用于一或多个视频块或脉码调制(PCM) 模式用于所述一或多个视频块,其中无损译码模式指代在译码过程中绕过变换、量化和环 路内译码的模式,且其中PCM模式指代将像素值译码为PCM样本的模式。如果第一语法元 素设定为真,那么视频编码器20可经配置以对第二语法元素(例如,pcm_flag)进行译码 以指示是否使用了无损译码模式或使用了 PCM模式。在此实例中,视频编码器20可基于第 一语法元素、第二语法元素和第三语法元素(例如,pcm_l〇〇p_disabl e_flag)来启用或停 用环路内滤波操作。
[0132] 图3是说明可经配置以实施本发明的技术的实例性视频解码器30的框图。图3 是为了阐释的目的提供,且不是对本发明中广泛例示且描述的技术的限制。为了阐释的目 的,本发明在HEVC译码的上下文中描述视频解码器30。然而,本发明的技术可适用于其它 译码标准或方法。
[0133] 在图3的实例中,视频解码器30包含多个功能组件。视频解码器30的功能组件 包含熵解码模块150、预测模块152、逆量化模块154、逆变换模块156、重构模块158、滤波器 模块159以及经解码图片缓冲器160。预测模块152包含运动补偿模块162和帧内预测模 块164。在一些实例中,视频解码器30可执行与相对于图2的视频编码器20所述的编码遍 次大体上互逆的解码遍次。在其它实例中,视频解码器30可包含更多、更少或不同的功能 组件。
[0134] 视频解码器30可接收包括经编码视频数据的位流。位流可包含多个语法元素。 当视频解码器30接收到位流时,熵解码模块150可对位流执行剖析操作。由于对位流执行 剖析操作,熵解码模块150可从位流提取语法元素。作为执行剖析操作的部分,熵解码模块 150可对位流中的经熵编码语法元素进行熵解码。预测模块152、逆量化模块154、逆变换模 块156、重构模块158和滤波器模块159可基于从位流提取的语法元素来执行产生经解码视 频数据的重构操作。
[0135] 如上文论述,位流可包括一系列NAL单元。位流的NAL单元可包含序列参数集NAL 单元、图片参数集NAL单元、SEI NAL单元等等。作为对位流执行剖析操作的部分,j:商解码 模块150可执行剖析操作,其提取和熵解码来自序列参数集NAL单元的序列参数集、来自图 片参数集NAL单元的图片参数集、来自SEI NAL单元的SEI数据等等。
[0136] 另外,位流的NAL单元可包含经译码切片NAL单元。作为对位流执行剖析操作的部 分,熵解码模块150可执行从经译码切片NAL单元提取和熵解码经译码切片的剖析操作。经 译码切片中的每一者可包含切片标头和切片数据。切片标头可含有关于切片的语法元素。 切片标头中的语法元素可包含识别与含有切片的图片相关联的图片参数集的语法元素。熵 解码模块150可对经译码切片标头中的语法元素执行例如CABAC解码操作等熵解码操作以 恢复切片标头。
[0137] 作为从经译码切片NAL单元提取切片数据的部分,熵解码模块150可执行从切片 数据中的经译码⑶提取语法元素的剖析操作。所提取语法元素可包含与变换系数块相关 联的语法元素。熵解码模块150可随后对语法元素中的一些执行CABAC解码操作。
[0138] 在熵解码模块150对未经分割⑶执行剖析操作之后,视频解码器30可对未经分 割⑶执行重构操作。为了对未经分割⑶执行重构操作,视频解码器30可对⑶的每一 TU 执行重构操作。通过对⑶的每一 TU执行重构操作,视频解码器30可重构与⑶相关联的 残余视频块。
[0139] 作为对TU执行重构操作的部分,逆量化模块154可对与TU相关联的变换系数块 进行逆量化(即,解量化)。逆量化模块154可以类似于针对HEVC建议或由Η. 264解码标 准界定的逆量化过程的方式来逆量化变换系数块。逆量化模块154可使用由视频编码器20 为变换系数块的CU计算的量化参数QP来确定量化程度且同样确定逆量化模块154将应用 的逆量化程度。
[0140] 在逆量化模块154逆量化变换系数块之后,逆变换模块156可产生与变换系数块 相关联的TU的残余视频块。逆变换模块156可将逆变换应用于变换系数块以便产生TU 的残余视频块。举例来说,逆变换模块156可将逆DCT、逆整数变换、逆卡忽南-拉维变换 (KLT)、逆旋转变换、逆方向性变换或另一逆变换应用于变换系数块。
[0141 ] 在一些实例中,逆变换模块156可基于来自视频编码器20的信令确定将应用于变 换系数块的逆变换。在此些实例中,逆变换模块156可基于在与变换系数块相关联的树块 的四叉树的根节点处的用信号发送的变换来确定逆变换。在其它实例中,逆变换模块156 可从例如块大小、译码模式等一或多个译码特性推断逆变换。在一些实例中,逆变换模块 156可应用级联逆变换。
[0142] 然而在一些实例中,视频解码器30将确定所述一或多个视频块是使用无损译码 模式编码的。在此实例中,视频解码器30将在对所述一或多个视频块进行解码时绕过逆量 化模块154、逆变换模块156和滤波模块159。
[0143] 在一些实例中,运动补偿模块162可通过基于内插滤波器执行内插而精炼PU的预 测视频块。用于将用于具有子样本精度的运动补偿的内插滤波器的识别符可包含在语法元 素中。运动补偿模块162可使用在PU的预测视频块的产生期间由视频编码器20使用的相 同内插滤波器来计算参考块的子整数样本的经内插值。运动补偿模块162可根据所接收语 法信息确定由视频编码器20使用的内插滤波器且使用内插滤波器来产生预测视频块。
[0144] 如果PU是使用帧内预测来编码,那么帧内预测模块164可执行帧内预测以产生PU 的预测视频块。举例来说,帧内预测模块164可基于位流中的语法元素确定PU的帧内预测 模式。位流可包含帧内预测模块164可用来确定PU的帧内预测模式的语法元素。
[0145] 在一些实例中,语法元素可指示帧内预测模块164将使用另一 PU的帧内预测模式 来确定当前I3U的帧内预测模式。举例来说,可能当前PU的帧内预测模式与相邻PU的帧内 预测模式相同。换句话说,相邻PU的帧内预测模式可为当前的最可能模式。因此,在此 实例中,位流可包含指示PU的帧内预测模式与相邻PU的帧内预测模式相同的小语法元素。 帧内预测模块164可随后使用帧内预测模式来基于空间相邻PU的视频块而产生PU的预测 数据(例如,预测样本)。
[0146] 重构模块158可在适用时使用与⑶的TU相关联的残余视频块以及⑶的PU的预 测视频块(即,帧内预测数据或帧间预测数据)来重构CU的视频块。因此,视频解码器30 可基于位流中的语法元素产生预测视频块和残余视频块,且可基于预测视频块和残余视频 块产生视频块。
[0147] 在重构模块158重构⑶的视频块之后,滤波器模块159可执行一或多个滤波操 作。滤波器模块159包含解块滤波器170、样本自适应偏移(SAO)滤波器172,且可包含自 适应环路滤波(ALF)滤波器174。解块滤波器170执行解块操作以减少与CU相关联的成块 假象。滤波器模块159还可执行其它类型的滤波(如果需要),例如SAO滤波、ALF或其它 类型的环路内或环路后滤波。视频解码器30可基于针对所述一或多个视频块在CU层级处 用信号发送的一或多个语法元素来应用环路滤波。在一些实例中,视频解码器30绕过滤波 器模块159且不应用环路滤波来对视频块进行解码。
[0148] 在滤波器模块159执行一或多个滤波操作之后,视频解码器30可将CU的视频块 存储在经解码图片缓冲器160中。经解码图片缓冲器160可提供参考图片以用于后续运动 补偿、帧内预测和在显示装置(例如图1的显示装置32)上的呈现。举例来说,视频解码器 30可基于经解码图片缓冲器160中的视频块对其它CU的PU执行帧内预测或帧间预测操 作。
[0149] 根据本发明,视频解码器30可经配置以实施本文描述的技术中的一或多者作为 视频解码过程的部分。在一个实例中,视频解码器30经配置以对第一语法元素(例如,pcm_ flag)进行解码以确定PCM译码模式是否用于一或多个视频块,其中所述模式指代将像素 值译码为PCM样本的模式。视频解码器30进一步经配置以对第二语法元素(例如,cu_ transquant_bypass_flag)进行解码以确定无损译码模式是否用于一或多个视频块,其中 无损译码模式指代在译码过程中绕过变换、量化和环路内滤波的模式。响应于指示使用了 PCM译码模式的第一语法元素,视频解码器30至少部分地基于第二语法元素应用环路内滤 波。视频解码器30可基于cu_transquant_bypass_flag的值来应用或绕过滤波模块159〇
[0150] 举例来说,如果pcm_flag等于0且cu_transquant_bypass_flag存在且等于1,那 么视频解码器30针对所述一或多个视频块绕过变换、量化和所有环路内滤波。当视频解码 器30确定pcm_f lag等于0且cu_transquant_bypass_f lag等于1时,视频解码器30在无 损译码模式中对所述一或多个视频块进行解码,从而针对所述一或多个视频块绕过变换、 量化和环路内滤波。否则,如果视频解码器30确定所述一或多个视频块不是以PCM译码模 式编码(例如,pcm_flag等于0)且确定cu_transquant_bypass_flag等于0,那么视频解 码器 30在对所述一或多个视频块进行解码中执行变换、量化和环路内滤波。
[0151] 如果视频解码器30确定PCM译码模式用以对视频块进行编码(例如,pcm_f lag等 于1)且cu_transquant_bypass_flag等于1,那么视频解码器30针对所述视频块不执行 环路内滤波(例如,绕过)。如果视频解码器30确定PCM译码模式用以对视频块进行编码 (例如,pcm_flag等于1)且cu_transquant_bypass_flag等于0,那么视频解码器30执行 环路内滤波(例如,未绕过)以对所述一或多个视频块进行解码。
[0152] 在另一实例中,视频解码器30经配置以对语法元素(例如,cu_transquant_ bypaSS_flag)进行解码以确定无损译码模式是否用于一或多个视频块,其中无损译码模式 指代在译码过程中绕过变换、量化和环路内滤波的模式,且在所述语法元素指示使用了无 损译码模式的情况下针对所述一或多个视频块停用PCM模式,其中PCM模式指代将像素值 译码为PCM样本的模式。
[0153] 语法元素可包括第一语法元素,在此情况下视频解码器30还可经配置以在第一 语法元素指示未使用无损译码模式时对第二语法元素(例如,pcm_flag)进行解码,所述第 二语法元素向译码模式视频编码器指示PCM模式是否用于所述一或多个视频块。视频解码 器30还可经配置以无论第一语法元素如何均对第二语法元素进行解码。
[0154] 在另一实例中,视频解码器30经配置以对第一语法元素(例如,cu_transquant_ bypaSS_flag)进行解码以指示是否无损译码模式用于一或多个视频块或脉码调制(PCM) 模式用于所述一或多个视频块。如果第一语法元素设定为真或1,那么视频解码器30可经 配置以对第二语法元素(例如,pcm_flag)进行解码以确定视频块是否是以无损译码模式 或PCM译码模式来编码。而且,在此实例中,视频解码器30可基于第一语法元素、第二语法 元素和第三语法元素(例如,pcm_l 〇〇p_disable_flag)来启用或停用环路内滤波操作。
[0155] 图4是说明根据本发明中描述的技术的用于对语法元素进行解码以基于视频数 据的另一语法元素确定是否应用滤波的实例性方法200的流程图。方法200可由例如图3 的视频解码器30执行。方法200利用语法元素 cu_transquant_bypass_flag来启用用于 PCM模式的环路内滤波。
[0156] 在HEVC WD7中,在不同视频块大小下执行无损模式和PCM模式的信令。无损译码 模式是在CU层级用信号发送,而PCM译码模式可仅用于大小满足最大和最小视频块大小约 束的视频块。然而,用信号发送PCM和无损模式的大小可经统一。这可通过针对CU群组 用信号发送两个模式来实现。在此情形中,可能需要停用连续PCM模式块的数目(由num_ SUbseqUent_pcm用信号发送)。除非另外说明,否则对于下文的技术,可假定两个模式是 针对相同块大小用信号发送。此外,通过在SPS或PPS中用信号发送transquant_bypass_ enable_flag和pcm_enabled_flag两者,协调是可能的。在HEVC版本1中,移除了 num_ subsequent-pcm〇
[0157] 方法200可由视频解码器30执行。如图4中所示,方法200包含对第一语法元素进 行解码以确定是否脉码调制(PCM)译码模式用于一或多个视频块,其中所述PCM模式指代 将像素值译码为PCM样本的模式(202)。第一语法元素可为例如pcm_flag。方法200进一步 包含对第二语法元素进行解码以确定是否无损译码模式用于一或多个视频块,其中所述无 损译码模式指代在译码过程中绕过变换、量化和环路内滤波的模式(204)。第二语法元素可 名为例如 cu_transquant_bypass_flag,或较描述性地名为 cu_transquant_loopfilter_ bypass_fIag0
[0158] 方法200进一步包含响应于指示使用了 PCM译码模式的第一语法元素,至少部分 地基于第二语法元素应用滤波(206)。方法200还包含至少部分地基于第一语法元素和第 二语法元素对所述一或多个视频块进行解码(208)。
[0159] 在此实例的一个替代例中,所述技术从SPS移除了 HEVC WD7中包含的pcm_loop_ filter_disable_flag。在 HEVC WD7 中,pcm_loop_filter_disable_flag 可经设定以针对 整个图片序列启用或停用用于PCM译码块的环路滤波。然而,为了针对个别视频块启用或 停用环路滤波,cu_transquant_bypass_flag可用以确定或指示环路滤波用于特定视频块。
[0160] 如下使用cu_transquant_bypass_flag来启用或停用PCM模式译码块的环路内滤 波。在此实例中,pcm_flag和cu_transquant_bypass_flag可同时为1。如果此情况发生, 那么使用cu_transquant_bypass_flag来在块层级而非在整个序列上启用或停用PCM模 式块的环路内滤波。因此,是否将环路内滤波应用于PCM译码块将取决于cu_transquant_ bypass_flag的值。以下表(表1)展示在所得的环路内滤波的情况下pcm_flag和cu_ transquant_bypass_flag 的可能组合:
[0161] 表 1
[0162]

【权利要求】
1. 一种对视频数据进行解码的方法,所述方法包括: 对第一语法元素进行解码W确定是否脉码调制PCM译码模式用于一或多个视频块,其 中所述PCM译码模式指代将像素值译码为PCM样本的模式; 对第二语法元素进行解码W确定是否环路内滤波应用于所述一或多个视频块; 响应于指示使用了所述PCM译码模式的所述第一语法元素,至少部分地基于所述第二 语法元素将环路内滤波应用于所述一或多个视频块;W及 至少部分地基于所述第一语法元素和所述第二语法元素对所述一或多个视频块进行 解码。
2. 根据权利要求1所述的方法,其中如果所述第一语法元素指示使用了所述PCM译码 模式且所述第二语法元素指示假值,那么对所述一或多个视频块进行解码进一步包括使用 PCM译码模式和环路内滤波对所述一或多个视频块进行解码,且其中如果所述第一语法元 素指示使用了所述PCM译码模式且所述第二语法元素指示真值,那么对所述一或多个视频 块进行解码进一步包括使用PCM译码模式而不使用环路内滤波对所述一或多个视频块进 行解码。
3. 根据权利要求1所述的方法,其中所述第一语法元素包括译码单元CU语法层级中的 pcm_flag语法元素,且其中所述第二语法元素包括所述CU语法层级中的cu_transquant_ loopfilter_bypass_flag i吾法元素。
4. 根据权利要求3所述的方法,其中所述州_transquant_loopfilter_bypass_flag语 法元素朝向所述CU语法的末尾定位,但在no_resi化al_data_flag语法元素之前。
5. 根据权利要求1所述的方法,其进一步包括: 对第S语法元素(pcm_loop_f i 11er_di S油1 e_f 1 ag)进行解码W确定滤波是否经启 用; 响应于指示滤波经启用的所述第=语法元素,至少部分地基于所述第二语法元素应用 所述滤波;W及 响应于指示滤波经停用的所述第S语法元素,针对具有PCM译码模式的一或多个视频 块停用滤波。
6. 根据权利要求5所述的方法,其中所述第=语法元素包括所述一或多个视频块的序 列参数集SPS、图片参数集PPS和切片标头中的一者中的pcm_loop_filter_dis油le_flag 语法元素。
7. -种对视频数据进行编码的方法,所述方法包括: 对第一语法元素进行编码W指示是否脉码调制PCM译码模式用于一或多个视频块,其 中所述PCM译码模式指代将像素值译码为PCM样本的模式; 对第二语法元素进行编码W指示是否环路内滤波应用于所述一或多个视频块; 响应于指示使用了所述PCM译码模式的所述第一语法元素,至少部分地基于所述第二 语法元素将环路内滤波应用于所述一或多个视频块;W及 至少部分地基于所述第一语法元素和所述第二语法元素对所述一或多个视频块进行 编码。
8. 根据权利要求7所述的方法,其中如果所述第一语法元素指示使用了所述PCM译码 模式且所述第二语法元素指示假值,那么对所述一或多个视频块进行编码进一步包括使用 PCM译码模式和环路内滤波对所述一或多个视频块进行编码,且其中如果所述第一语法元 素指示使用了所述PCM译码模式且所述第二语法元素指示真值,那么对所述一或多个视频 块进行编码进一步包括使用PCM译码模式而不使用环路内滤波对所述一或多个视频块进 行编码。
9. 根据权利要求7所述的方法,其中所述第一语法元素包括译码单元CU语法层级中的 pcm_flag语法元素,且其中所述第二语法元素包括所述CU语法层级中的cu_transquant_ loopfilter_bypass_flag i吾法元素。
10.根据权利要求9所述的方法,其中所述州_transquant_loopfilter_bypass_flag 语法元素朝向所述CU语法的末尾定位,但在no_resi化al_data_f lag语法元素之前。
11. 根据权利要求7所述的方法,其进一步包括: 对第S语法元素(pcm_loop_filter_dis油le_flag)进行编码W指示滤波是否经启 用; 响应于指示滤波经启用的所述第=语法元素,至少部分地基于所述第二语法元素应用 滤波;化及 响应于指示滤波经停用的所述第S语法元素,针对具有PCM译码模式的一或多个视频 块停用滤波。
12. 根据权利要求11所述的方法,其中所述第=语法元素包括所述一或多个视频块 的序列参数集SPS、图片参数集PPS和切片标头中的一者中的pcm_loop_filter_dis油le_ flag语法元素。
13. -种包括视频译码器的视频译码装置,所述视频译码器经配置W : 对指示是否脉码调制PCM模式用于一或多个视频块的第一语法元素进行译码,其中所 述PCM译码模式指代将像素值译码为PCM样本的模式; 对指示是否环路内滤波应用于所述一或多个视频块的第二语法元素进行译码;W及 响应于指示使用了所述PCM译码模式的所述第一语法元素,至少部分地基于所述第二 语法元素将环路内滤波应用于所述一或多个视频块。
14. 根据权利要求13所述的视频译码装置,其中如果所述第一语法元素指示使用了所 述PCM译码模式且所述第二语法元素指示假值,那么所述视频译码器进一步经配置W使用 PCM模式和环路内滤波对所述一或多个视频块进行译码。
15. 根据权利要求13所述的视频译码装置,其中所述第一语法元素包括译码单元CU语 法层级中的pcm_f lag语法元素,且其中所述第二语法元素包括所述CU语法层级中的cu_ transquant-loopf i 1 ter_bypass_f lag i吾法兀素。
16.根据权利要求15所述的视频译码装置,其中所述cu_transquant_loopfilter_ bypass_flag语法元素朝向所述CU语法的末尾定位,但在no_residual_data_flag语法元 素之前。
17. 根据权利要求13所述的视频译码装置,其进一步包括: 对指示滤波是否经启用的第S语法元素(pcm_loop_filter_dis油le_flag)进行译 码; 响应于指示滤波经启用的所述第=语法元素,至少部分地基于所述第二语法元素应用 滤波M及 响应于指示滤波经停用的所述第S语法元素,针对具有PCM译码模式的一或多个视频 块停用滤波。
18. 根据权利要求17所述的视频译码装置,其中所述第=语法元素包括所述一或多 个视频块的序列参数集SPS、图片参数集PPS和切片标头中的一者中的pcm_loop_filter_ dis油le_flag语法元素。
19. 根据权利要求13所述的视频译码装置,其中所述视频译码装置是视频解码器,其 中对所述第一语法元素进行译码包括对所述第一语法元素进行解码W确定是否脉码调制 PCM模式用于所述一或多个视频块,其中对所述第二语法元素进行译码包括对所述第二语 法元素进行解码W确定是否无损译码模式用于一或多个视频块,所述视频解码器进一步经 配置W: 至少部分地基于所述第一语法元素和所述第二语法元素对所述一或多个视频块进行 解码。
20. 根据权利要求13所述的视频译码装置,其中所述视频译码装置是视频编码器,其 中对所述第一语法元素进行译码包括对指示是否脉码调制PCM模式用于所述一或多个视 频块的所述第一语法元素进行编码,其中对所述第二语法元素进行译码包括对指示是否无 损译码模式用于一或多个视频块的所述第二语法元素进行编码,所述视频编码器进一步经 配置W : 至少部分地基于所述第一语法元素和所述第二语法元素对所述一或多个视频块进行 编码。
21. -种其上存储有指令的计算机可读存储媒体,所述指令在执行时致使用于对视频 数据进行译码的装置的处理器进行W下操作: 对指示是否脉码调制PCM模式用于一或多个视频块的第一语法元素进行译码,其中所 述PCM译码模式指代将像素值译码为PCM样本的模式; 对指示是否环路内滤波应用于所述一或多个视频块的第二语法元素进行译码;W及 响应于指示使用了所述PCM译码模式的所述第一语法元素,至少部分地基于所述第二 语法元素将环路内滤波应用于所述一或多个视频块。
22. 根据权利要求21所述的计算机可读存储媒体,其中如果所述第一语法元素指示使 用了所述PCM译码模式且所述第二语法元素指示假值,那么所述指令进一步致使所述用于 对视频数据进行译码的装置的所述处理器使用PCM模式和环路内滤波对所述一或多个视 频块进行译码。
23. 根据权利要求21所述的计算机可读存储媒体,其中所述第一语法元素包括译码单 元CU语法层级中的pcm_f lag语法元素,且其中所述第二语法元素包括所述CU语法层级中 的 cu_transquant_loopfilter_bypass_flag i吾法兀素。
24. 根据权利要求21所述的计算机可读存储媒体,所述指令进一步致使所述用于对视 频数据进行译码的装置的所述处理器: 对指示滤波是否经启用的第S语法元素(pcm_loop_filter_dis油le_flag)进行译 码; 响应于指示滤波经启用的所述第=语法元素,至少部分地基于所述第二语法元素应用 滤波M及 响应于指示滤波经停用的所述第S语法元素,针对具有PCM译码模式的一或多个视频 块停用滤波。
25. -种视频译码装置,其包括: 用于对指示是否脉码调制PCM模式用于一或多个视频块的第一语法元素进行译码的 装置,其中所述PCM译码模式指代将像素值译码为PCM样本的模式; 用于对指示是否环路内滤波应用于所述一或多个视频块的第二语法元素进行译码的 装置;W及 用于响应于指示使用了所述PCM译码模式的所述第一语法元素至少部分地基于所述 第二语法元素将滤波应用于所述一或多个视频块的装置。
26. 根据权利要求25所述的视频译码装置,其中如果所述第一语法元素指示使用了所 述PCM译码模式且所述第二语法元素指示假值,那么所述视频译码装置进一步包含用于使 用PCM模式和环路内滤波对所述一或多个视频块进行译码的装置。
27. 根据权利要求25所述的视频译码装置,其中所述第一语法元素包括译码单元CU语 法层级中的pcm_f lag语法元素,且其中所述第二语法元素包括所述CU语法层级中的cu_ transquant-loopf i 1 ter_bypass_f lag i吾法兀素。
28. 根据权利要求25所述的视频译码装置,其进一步包括: 用于对指示滤波是否经启用的第^语法元素(9畑1_1〇〇9_門1161'_(113油16_'13肖)进行 译码的装置; 用于响应于指示滤波经启用的所述第=语法元素至少部分地基于所述第二语法元素 应用滤波的装置;W及 用于响应于指示滤波经停用的所述第S语法元素针对具有PCM译码模式的一或多个 视频块停用滤波的装置。
29. -种对视频数据进行解码的方法,所述方法包括: 对第一语法元素进行解码W确定是否无损译码模式用于一或多个视频块或脉码调制 PCM译码模式用于所述一或多个视频块,其中所述无损译码模式指代在译码过程中绕过变 换、量化和环路内滤波的模式,且其中所述PCM译码模式指代将像素值译码为PCM样本的模 式;化及 响应于指示真值的所述第一语法元素,对第二语法元素进行解码W确定使用了所述无 损译码模式或所述PCM模式中的哪一者。
30. 根据权利要求29所述的方法,其进一步包括: 对指示是否环路内滤波操作用于所述一或多个PCM样本的第S语法元素进行解码;W 及 基于所述第一语法元素、所述第二语法元素和所述第=语法元素将环路内滤波操作应 用于所述一或多个PCM样本。
31. 根据权利要求30所述的方法,其中所述第一语法元素包括译码单元CU语法层级 中的州_transquant_bypass_f lag语法元素,其中所述第二语法元素包括所述CU语法层级 中的pcm_flag语法元素,且其中所述第S语法元素包括所述CU语法层级中的pcm_loop_ disable_flag i吾法元素。
32. 根据权利要求29所述的方法,其进一步包括: 响应于指示假值的所述第一语法元素,w变换和量化过程对所述一或多个视频块进行 解码且不对所述第二语法元素进行解码。
33. 根据权利要求29所述的方法,其进一步包括: 至少部分地基于所述第一语法元素和所述第二语法元素对所述一或多个视频块进行 解码。
34. 根据权利要求33所述的方法,其进一步包括: 响应于确定所述第二语法元素指示使用了所述无损译码模式,使用所述无损译码模式 对所述一或多个视频块进行解码;W及 响应于确定所述第二语法元素指示使用了所述PCM译码模式,使用所述PCM译码模式 对所述一或多个视频块进行解码。
35. -种对视频数据进行编码的方法,所述方法包括: 对第一语法元素进行编码W指示是否无损译码模式用于一或多个视频块或脉码调制 PCM译码模式用于所述一或多个视频块,其中所述无损译码模式指代在译码过程中绕过变 换、量化和环路内滤波的模式,且其中所述PCM译码模式指代将像素值译码为PCM样本的模 式;化及 响应于指示真值的所述第一语法元素,对第二语法元素进行编码W指示使用了所述无 损译码模式或所述PCM模式中的哪一者。
36. 根据权利要求35所述的方法,其进一步包括: 对第S语法元素进行编码W指示是否环路内滤波操作用于所述一或多个PCM样本;W 及 基于所述第一语法元素、所述第二语法元素和所述第=语法元素将环路内滤波操作应 用于所述一或多个PCM样本。
37. 根据权利要求36所述的方法,其中所述第一语法元素包括译码单元CU语法层级 中的州_transquant_bypass_f lag语法元素,其中所述第二语法元素包括所述CU语法层级 中的pcm_flag语法元素,且其中所述第S语法元素包括所述CU语法层级中的pcm_loop_ disable_flag i吾法元素。
38. 根据权利要求35所述的方法,其进一步包括: 响应于指示假值的所述第一语法元素,W变换和量化过程对所述一或多个视频块进行 编码且不对所述第二语法元素进行编码。
39. 根据权利要求35所述的方法,其进一步包括: 至少部分地基于所述第一语法元素和所述第二语法元素对所述一或多个视频块进行 编码。
40. 根据权利要求39所述的方法,其进一步包括: 其中对所述第二语法元素进行编码进一步包括对所述第二语法元素进行编码W指示 当W所述无损译码模式对所述一或多个视频块进行编码时使用了所述无损译码模式,且其 中对所述第二语法元素进行编码进一步包括对所述第二语法元素进行编码W指示当W所 述PCM译码模式对所述一或多个视频块进行编码时使用了所述PCM译码模式。
41. 一种包括视频译码器的视频译码装置,所述视频译码器经配置W : 对指示是否无损译码模式用于一或多个视频块或脉码调制PCM译码模式用于所述一 或多个视频块的第一语法元素进行译码,其中所述无损译码模式指代在译码过程中绕过变 换、量化和环路内滤波的模式,且其中所述PCM译码模式指代将像素值译码为PCM样本的模 式;化及 响应于指示真值的所述第一语法元素,对指示使用了所述无损译码模式或所述PCM模 式中的哪一者的第二语法元素进行译码。
42. 根据权利要求41所述的视频译码装置,所述视频译码器进一步经配置W : 对指示是否环路内滤波操作用于所述一或多个PCM样本的第S语法元素进行译码;W 及 基于所述第一语法元素、所述第二语法元素和所述第=语法元素将环路内滤波操作应 用于所述一或多个PCM样本。
43. 根据权利要求42所述的视频译码装置,其中所述第一语法元素包括译码单元CU语 法层级中的州_transquant_bypass_f lag语法元素,其中所述第二语法元素包括所述CU语 法层级中的pcm_flag语法元素,且其中所述第S语法元素包括所述CU语法层级中的pcm_ loop_disable_flag i吾法元素。
44. 根据权利要求41所述的视频译码装置,所述视频译码器进一步经配置W : 响应于指示假值的所述第一语法元素,W变换和量化过程对所述一或多个视频块进行 译码且不对所述第二语法元素进行译码。
45. 根据权利要求41所述的视频译码装置,其中所述译码装置包括视频解码器,其中 对所述第一语法元素进行译码包括对所述第一语法元素进行解码,其中对所述第二语法元 素进行译码包括响应于指示真值的所述第一语法元素对指示是否使用了所述无损译码模 式或使用了所述PCM模式的第二语法元素进行解码,所述视频解码器进一步经配置W : 至少部分地基于所述第一语法元素和所述第二语法元素对所述一或多个视频块进行 解码。
46. 根据权利要求41所述的视频译码装置,其中所述译码装置包括视频编码器,其中 对所述第一语法元素进行译码包括对所述第一语法元素进行编码,其中对所述第二语法元 素进行译码包括响应于指示真值的所述第一语法元素对指示是否使用了所述无损译码模 式或使用了所述PCM模式的第二语法元素进行编码,所述视频编码器进一步经配置W : 至少部分地基于所述第一语法元素和所述第二语法元素对所述一或多个视频块进行 编码。
47. -种其上存储有指令的计算机可读存储媒体,所述指令在执行时致使用于对视频 数据进行译码的装置的处理器进行W下操作: 对指示是否无损译码模式用于一或多个视频块或脉码调制PCM译码模式用于所述一 或多个视频块的第一语法元素进行译码,其中所述无损译码模式指代在译码过程中绕过变 换、量化和环路内滤波的模式,且其中所述PCM译码模式指代将像素值译码为PCM样本的模 式;化及 响应于指示真值的所述第一语法元素,对指示使用了所述无损译码模式或所述PCM模 式中的哪一者的第二语法元素进行译码。
48. 根据权利要求47所述的计算机可读存储媒体,所述指令进一步致使用于对视频数 据进行译码的装置的处理器: 对指示是否环路内滤波操作用于所述一或多个PCM样本的第S语法元素进行译码;W 及 基于所述第一语法元素、所述第二语法元素和所述第=语法元素将环路内滤波操作应 用于所述一或多个PCM样本。
49. 一种视频译码装置,其包括: 用于对指示是否无损译码模式用于一或多个视频块或脉码调制PCM译码模式用于所 述一或多个视频块的第一语法元素进行译码的装置,其中所述无损译码模式指代在译码过 程中绕过变换、量化和环路内滤波的模式,且其中所述PCM译码模式指代将像素值译码为 PCM样本的模式;W及 用于响应于指示真值的所述第一语法元素对指示使用了所述无损译码模式或所述PCM 模式中的哪一者的第二语法元素进行译码的装置。
50. 根据权利要求49所述的视频译码装置,其进一步包括: 用于对指示是否环路内滤波操作用于一或多个PCM样本的第S语法元素进行译码的 装置;化及 用于基于所述第一语法元素、所述第二语法元素和所述第=语法元素将环路内滤波操 作应用于所述一或多个PCM样本的装置。
【文档编号】H04N19/82GK104471946SQ201380031716
【公开日】2015年3月25日 申请日期:2013年6月18日 优先权日:2012年6月18日
【发明者】瑞珍·雷克斯曼·乔许, 格尔特·范德奥维拉, 马尔塔·卡切维奇 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1