首页 / 专利库 / 专利权 / 专利合作条约 / 第I章 / 国际申请 / 修改 / 用于下一代视频译码的、利用经修改的参考的内容自适应预测性图片和功能预测性图片

用于下一代视频译码的、利用经修改的参考的内容自适应预测性图片和功能预测性图片

阅读:302发布:2020-11-30

专利汇可以提供用于下一代视频译码的、利用经修改的参考的内容自适应预测性图片和功能预测性图片专利检索,专利查询,专利分析的服务。并且描述了关于针对下一代视频译码的、利用经 修改 的参考的内容自适应预测性图片和功能预测性图片的技术。用于视频译码的计算机实现的方法包括:接收针对 像素 数据的 帧 序列的数据,序列具有显示顺序,并且其中每一帧与该显示顺序的时域 位置 相关联;使用帧间预测生成该帧序列中的至少一张当前的F-图片,包括:提供从至少一个先前的预测参考帧和/或至少一个后续的预测参考帧中形成当前的F-图片的至少一部分的选项,其中,先前的和所述后续的预测参考帧相对于当前的F-图片的位置,并且在该序列之内;以及生成针对至少一张当前的F-图片的部分的运动数据,包括:将至少一个经修改的预测参考帧用于生成针对当前的F-图片的部分的运动数据,并且通过使用 变形 技术和/或合成技术来修改该至少一个经修改的预测参考帧。,下面是用于下一代视频译码的、利用经修改的参考的内容自适应预测性图片和功能预测性图片专利的具体信息内容。

1.一种用于视频译码的计算机实现的方法,包括:
接收针对像素数据的序列的数据,所述序列具有显示顺序,并且其中每一帧与所述显示顺序的时域位置相关联;
使用帧间预测生成所述帧序列中的至少一张当前的F-图片,包括:提供从至少一个先前的预测参考帧、至少一个后续的预测参考帧或所述至少一个先前的预测参考帧和所述至少一个后续的预测参考帧两者中形成所述当前的F-图片的至少一部分的选项,其中,所述先前的和所述后续的相对于所述当前的F-图片的位置,并且在所述序列之内;以及生成针对所述至少一张当前的F-图片的所述部分的运动数据,包括:将至少一个经修改的预测参考帧用于生成针对所述当前的F-图片的所述部分的所述运动数据,并且通过使用变形技术或合成技术或所述变形技术和所述合成技术两者来修改所述至少一个经修改的预测参考帧。
2.如权利要求1所述的方法,其特征在于,包括:形成具有用于生成针对F-图片的所述运动数据的非F预测参考帧的所述序列,并且其中,所述F-图片被间隔在所述非F预测参考帧之间,并且其中,在所述非F预测参考帧之间的所述F-图片的数量沿着所述序列发生变化。
3.如权利要求1所述的方法,其特征在于,包括:通过提供从沿所述序列的多个先前的预测参考帧中的至少一个先前的预测参考帧中生成所述P-图片的至少部分的选项,在所述序列中生成至少一张P-图片。
4.如权利要求1所述的方法,其特征在于,包括:除了沿所述序列并且相对于所述F-图片的所述位置的一个先前的预测参考帧和一个后续的预测参考帧之外,还提供从至少一个附加的预测参考帧中形成所述F-图片中的至少一张的选项。
5.如权利要求1所述的方法,其特征在于,通过从被提供以至少部分地在帧间模式中形成所述F-图片的多个参考帧中选择多个结果中的最佳结果来形成所述F-图片。
6.如权利要求1所述的方法,其特征在于,通过使用多个参考帧的数据形成所述F-图片,所述多个参考帧用于有助于促成至少部分地在“多个模式”中形成所述F-图片的结果。
7.如权利要求1所述的方法,其特征在于,包括:将至少一张F-图片用作用于另一F-图片的预测参考帧。
8.如权利要求1所述的方法,其特征在于,包括:沿所述序列形成连续或不连续的参考帧链,使得多张F-图片是下一张后续F-图片的参考帧。
9.如权利要求8所述的方法,其特征在于,除了针对所述F-图片中的至少一张的任何其他参考帧之外,还提供参考链。
10.如权利要求1所述的方法,其特征在于,包括:使用金字塔参考帧结构,其中,参考F-图片具有沿所述序列的先前参考帧和后续参考帧,并且所述参考F-图片自身是另一F-图片的参考帧。
11.如权利要求1所述的方法,其特征在于,合成技术包括投影插值,其中,取代用于预测的所述当前的F-图片,并且通过取决于沿所述序列的、相对于所述当前的F-图片的所述位置的时域距离的两个参考帧的加权数据来形成投影插值帧或帧部分。
12.如权利要求1所述的方法,其特征在于,合成技术包括修改帧的分辨率
13.如权利要求1所述的方法,其特征在于,变形技术包括:经修改的参考帧从下列至少一项的另一参考帧中修改而来:
(1)模糊补偿,
(2)配准补偿,
(3)全局运动补偿
(4)主运动补偿
(5)亮度增益补偿,以及
(1)到(5)的全部。
14.如权利要求1所述的方法,其特征在于,将所述经修改的预测参考帧用于预测,但是不显示所述经修改的预测参考帧。
15.如权利要求1所述的方法,其特征在于,包括:
形成具有用于生成针对F-图片的所述运动数据的非F预测参考帧的所述序列,并且其中,所述F-图片被间隔在所述非F预测参考帧之间,并且其中,在所述非F预测参考帧之间的所述F-图片的数量沿着所述序列发生变化;
通过提供从沿所述序列的多个先前的预测参考帧中的至少一个先前的预测参考帧中生成所述P-图片的至少部分的选项,在所述序列中生成至少一张P-图片;
除了沿所述序列并且相对于所述F-图片的所述位置的一个先前的预测参考帧和一个后续的预测参考帧之外,还提供从至少一个附加的预测参考帧中形成所述F-图片中的至少一张的选项;
其中下列情况中的至少一个:
通过从被提供以至少部分地在帧间模式中形成所述F-图片的多个参考帧中选择多个结果中的最佳结果,以形成所述F-图片,以及
通过使用多个参考帧的数据形成所述F-图片,所述多个参考帧用于有助于促成至少部分地在“多个模式”中形成所述F-图片的结果;
包括下列至少一项:
将至少一张F-图片用作用于另一F-图片的预测参考帧;
沿所述序列形成连续或不连续的参考帧链,使得多张F-图片是下一张后续F-图片的参考帧;其中,除了针对所述F-图片中的至少一张的任何其他参考帧之外,还提供参考链;
使用金字塔参考帧结构,其中,参考F-图片具有沿所述序列的先前参考帧和后续参考帧,并且所述参考F-图片自身是另一F-图片的参考帧;其中,下列情况中的至少一个:
合成技术包括投影插值,其中,取代用于预测的所述当前的F-图片,并且通过取决于沿所述序列的、相对于所述当前的F-图片的所述位置的时域距离的两个参考帧的加权数据来形成投影插值帧或帧部分;
合成技术包括修改帧的分辨率;
其中,变形技术包括:经修改的参考帧从下列至少一项的另一参考帧中修改而来:
(1)模糊补偿,
(2)配准补偿,
(3)全局运动补偿
(4)主运动补偿
(5)亮度增益补偿,以及
(1)到(5)的全部;并且
其中,将所述经修改的预测参考帧用于预测,但不显示所述经修改的预测参考帧。
16.一种用于视频译码的计算机实现的方法,包括:
接收针对像素数据的帧序列的数据,序列具有显示顺序,并且其中每一帧与所述显示顺序的时域位置相关联;
使用帧间预测生成所述帧序列中的至少一张当前的P-图片,包括:提供从至少一个先前的预测参考帧中形成当前的P-图片的至少一部分的选项,其中,所述先前的相对于所述当前的P-图片的位置,并且在所述序列之内;以及
生成针对所述至少一张当前的P-图片的所述部分的运动数据,包括:将至少一个经修改的预测参考帧用于生成针对所述当前的P-图片的所述部分的所述运动数据,并且通过使用变形技术或合成技术或所述变形技术和所述合成技术两者来修改所述至少一个经修改的预测参考帧。
17.如权利要求16所述的方法,其特征在于,包括:
通过提供从沿所述序列的多个先前的预测参考帧中的至少一个先前的预测参考帧中生成所述P-图片的至少部分的选项,在所述序列中生成至少一张P-图片;
其中,下列情况中的至少一个:
通过从被提供以至少部分地在帧间模式中形成所述P-图片的多个参考帧中选择多个结果中的最佳结果,以形成所述P-图片,以及
通过使用多个参考帧的数据形成所述P-图片,所述多个参考帧用于有助于促成至少部分地在“多个模式”中形成所述P-图片的结果;
其中,下列情况中的至少一个:
合成技术包括投影插值,其中,取代用于预测的所述当前的P-图片,并且通过取决于沿所述序列的、相对于所述当前的P-图片的所述位置的时域距离的两个参考帧的加权数据来形成投影插值帧或帧部分;
合成技术包括修改帧的分辨率;
其中,变形技术包括:经修改的参考帧从下列至少一项的另一参考帧中修改而来:
(1)模糊补偿,
(2)配准补偿,
(3)全局运动补偿
(4)主运动补偿
(5)亮度增益补偿,以及
(1)到(5)的全部;并且
其中,将所述经修改的预测参考帧用于预测,但不显示所述经修改的预测参考帧。
18.一种译码器,包括:
图像缓冲器
图形处理单元,通信地耦合至所述图像缓冲器,并且包括至少一个变形分析器或至少一个合成分析器或所述至少一个变形分析器和所述至少一个合成变形器两者,所述图形处理单元配置成用于:
接收针对像素数据的帧序列的数据,序列具有显示顺序,并且其中每一帧与所述显示顺序的时域位置相关联;
生成下列至少一个:
使用帧间预测生成当前的F-图片,包括:提供从先前的预测参考帧、后续的预测参考帧或所述先前的预测参考帧和所述后续的预测参考帧两者中形成所述当前的F-图片的至少一部分的选项,其中,所述先前的和所述后续的相对于所述当前的F-图片的位置,并且在所述序列之内,以及
使用帧间预测的帧序列的当前的P-图片,包括:提供从至少一
个先前的预测参考帧中形成所述当前的P-图片的至少一部分的选项,其中,先前的相对于所述当前的P-图片的位置,并且在所述序列之内;以及
生成针对所述至少一张当前的P-图片或F-图片的部分的运动数据包括:将至少一个经修改的预测参考帧用于生成针对所述当前的P-图片或F-图片的部分的运动数据,其中,下列情况中的至少一个:
所述变形分析器配置成用于使用变形技术,
所述合成分析器配置成用于使用合成技术,以及
所述变形分析器配置成使用变形技术,并且所述合成分析器配置成使用合成技术。
19.如权利要求18所述的译码器,其特征在于,所述序列包括用于生成针对所述F-图片的所述运动数据的非F预测参考帧,并且其中,所述F-图片被间隔在所述非F预测参考帧之间,并且其中,在所述非F预测参考帧之间的所述F-图片的数量沿着所述序列发生变化。
20.如权利要求18所述的译码器,其特征在于,包括:通过提供从沿所述序列的多个先前的预测参考帧中的至少一个先前的预测参考帧中生成所述P-图片的至少部分的选项,在所述序列中形成至少一张P-图片。
21.如权利要求18所述的译码器,其特征在于,包括:通过除了沿所述序列并且相对于所述F-图片的所述位置的一个先前的预测参考帧、一个后续的预测参考帧或所述一个先前的预测参考帧和一个后续的预测参考帧两者之外,还提供从至少一个附加的预测参考帧中形成所述F-图片中的至少部分的选项,以形成所述序列中的至少一张F-图片。
21.如权利要求18所述的方法,其特征在于,通过从被提供以至少部分地在帧间模式中形成所述P-图片或F-图片的多个参考帧中选择多个结果中的最佳结果,以形成所述P-图片或F-图片。
22.如权利要求18所述的方法,其特征在于,通过使用多个参考帧的数据形成所述P-图片或F-图片,所述多个参考帧用于有助于促成至少部分地在“多个”模式中形成所述P-图片或F-图片的结果。
23.如权利要求18所述的译码器,其特征在于,至少一张F-图片是用于另一F-图片的预测参考帧。
24.如权利要求18所述的译码器,其特征在于,包括沿所述序列的连续或不连续的参考帧链,使得多张F-图片是下一张后续F-图片的参考帧。
25.如权利要求24所述的译码器,其特征在于,除了针对所述F-图片中的至少一张的任何其他参考帧之外,还提供参考链。
26.如权利要求18所述的译码器,其特征在于,包括金字塔参考帧结构,其中,参考F-图片具有沿所述序列的先前参考帧和后续参考帧,并且所述参考F-图片自身是另一F-图片的参考帧。
27.如权利要求18所述的译码器,其特征在于,合成技术包括投影插值,其中,取代用于预测的所述当前的F-图片,并且通过取决于沿所述序列的、相对于所述当前的F-图片的所述位置的时域距离的两个参考帧的加权数据来形成投影插值帧或帧部分。
28.如权利要求18所述的译码器,其特征在于,合成技术包括修改帧的分辨率。
29.如权利要求18所述的译码器,其特征在于,变形技术包括:经修改的参考帧从下列至少一项的另一参考帧中修改而来:
(1)模糊,
(2)配准,
(3)全局运动,
(4)主运动,
(5)亮度增益,以及
(1)到(5)的全部。
30.如权利要求18所述的译码器,其特征在于,将所述经修改的预测参考帧用于预测,但是不显示所述经修改的预测参考帧。
31.如权利要求18所述的译码器,包括:在解码器循环内的、用于重构帧的至少一个变形分析器或合成分析器;以及在解码循环外的、用于基于原始的未经解码的图像数据生成用于运动估计的数据的至少一个变形分析器或合成分析器。
32.如权利要求18所述的译码器,其特征在于,
其中,所述序列包括用于生成针对所述F-图片的所述运动数据的非F预测参考帧,并且其中,所述F-图片被间隔在所述非F预测参考帧之间,并且其中,在所述非F预测参考帧之间的所述F-图片的数量沿着所述序列发生变化;
包括:通过提供从沿所述序列的多个先前的预测参考帧中的至少一个先前的预测参考帧中生成所述P-图片的至少部分的选项形成的所述序列中非至少一张P-图片;
包括:通过除了沿所述序列并且相对于所述F-图片的所述位置的一个先前的预测参考帧、一个后续的预测参考帧或所述一个先前的预测参考帧和所述一个后续的预测参考帧两者之外,还提供从至少一个附加的预测参考帧中形成所述F-图片中的至少部分的选项,以形成所述序列中的至少一张F-图片;
其中,下列情况中的至少一个:
通过从被提供以至少部分地在帧间模式中形成所述P-图片或F-图片的多个参考帧中选择多个结果中的最佳结果,以形成所述P-图片或F-图片,以及
通过使用多个参考帧的数据形成所述P-图片或F-图片,所述多个参考帧用于有助于促成至少部分地在“多个模式”中形成所述P-图片或F-图片的结果;
所述序列包括下列至少一个:
至少一张F-图片是用于另一F-图片的预测参考帧;
沿所述序列的连续或不连续的参考帧链,使得多张F-图片是下一张后续F-图片的参考帧,其中,除了针对所述F-图片中的至少一张的任何其他参考帧之外,还提供参考链,以及
金字塔参考帧结构,其中,参考F-图片具有沿所述序列的先前参考帧和后续参考帧,并且所述参考F-图片自身是另一F-图片的参考帧;
其中,合成技术包括下列之一:
投影插值,其中,取代用于预测的所述当前的F-图片,并且通过取决于沿所述序列的、相对于所述当前的F-图片的所述位置的时域距离的两个参考帧的加权数据来形成投影插值帧或帧部分,以及
超分辨率帧,所述超分辨率帧具有带有经修改的分辨率的帧;
其中,变形技术包括:经修改的参考帧从下列至少一项的另一参考帧中修改而来:
(1)模糊,
(2)配准,
(3)全局运动,
(4)主运动,
(5)亮度增益,以及
(1)到(5)的全部。
其中,将所述经修改的预测参考帧用于预测,但不显示所述经修改的预测参考帧;并且包括:在解码器循环内的、用于重构帧的至少一个变形分析器或合成分析器;以及在解码循环外的、用于基于原始的未经解码的图像数据生成用于运动估计的数据的至少一个变形分析器或合成分析器。
33.至少一种机器可读介质,包括:
多条指令,响应于在计算设备上执行所述多条指令,所述多条指令使所述计算设备执行如权利要求1-15中任意一项所述的方法。
34.一种设备,包括:
用于执行如权利要求1-15中的任意一项所述的方法的装置。

说明书全文

用于下一代视频译码的、利用经修改的参考的内容自适应

预测性图片和功能预测性图片

[0001] 相关申请
[0002] 本申请要求2013年1月30日提交的题为“下一代视频译码”的美国临时申请No.61/758,314的权益,该美国临时申请通用地被结合在此。

背景技术

[0003] 视频编码器压缩视频信息,使得能够在给定的带宽上发送更多的信息。然后,可将被压缩的信号传送到接收机,该接收机具有解码器,该解码器在显示之前对信号进行解码或解压缩。
[0004] 高效视频译码(HEVC)是最新的视频压缩标准,由ISO/IEC移动图片专家组(MPEG)和ITU-T视频译码专家组(VCEG)形成的视频译码联合协作团队(JCT-VC)正在开发该标准。响应于先前的H.264/AVC(高级视频译码)标准不能为演进的更高分辨率视频应用提供足够的压缩,正在开发HEVC。与先前的视频译码标准类似,HEVC包括基本的功能模,例如,内/帧间预测、变换、量化、循环内(in-loop)过滤和熵译码。
[0005] 不断发展的HEVC标准可尝试改善对H.264/AVC标准的限制,例如,针对所允许的预测分区和译码分区的有限选择、有限的所允许的多个参考和预测生成、有限的变换块尺寸和实际变换、用于减少译码伪像的有限机制以及低效率的熵编码技术。然而,不断发展的HEVC标准可使用迭代方法来解决此类问题。
[0006] 例如,伴随着分辨率不断增加的视频要被压缩以及对高视频质量的预期,针对使用现有的视频译码标准(如,H.264)或甚至演进的标准(如,H.265/HEVC)来进行译码所要求的对应的位率/带宽是相对高的。上述标准使用传统方式的扩展形式以隐式地解决压缩/质量不足的问题,但是通常结果是有限的。
[0007] 在下一代视频(NGV)编解码器项目的情境中展开的本说明书解决了设计高级视频编解码器的普遍问题,使可实现的压缩效率最大化,同时保持在设备上实施的充分的实用性。例如,由于好的显示设备的可用性,随着视频的分辨率日益增加,并且期望高视频质量,使用现有的视频译码标准(如,较早的MPEG标准)以及甚至更新的H.264/AVC标准所要求的对应的位率/带宽是相对高的。并不认为H.264/AVC能够为演进的更高分辨率视频应用提供充分高的压缩。
[0008] 附图简述
[0009] 本文中所描述的资料通过示例方式而非限制性方式在所附附图中示出。为了使说明简单和清楚,附图中示出的元件不一定是按比例绘制的。例如,为了清楚起见,可将一些元件的尺寸相对于其他元件扩大。此外,在被认为合适的情况下,在多个附图之间重复多个附图标记以指示对应或类似的元件。在附图中:
[0010] 图1是示例下一代视频编码器的示图;
[0011] 图2是示例下一代视频解码器的示图;
[0012] 图3(a)是示例下一代视频编码器和子系统的示图;
[0013] 图3(b)是示例下一代视频解码器和子系统的示图;
[0014] 图4是具有经修改的参考帧的帧序列的示图;
[0015] 图5是具有经修改的参考帧的超分辨率过程的示图;
[0016] 图6是示出根据本文的各实现方案的用于提供经修改的参考帧的过程的流程图
[0017] 图7是示例编码器子系统的示图;
[0018] 图8是示例解码器子系统的示图;
[0019] 图9是说明链式预测和其他预测技术的帧序列的示图;
[0020] 图10是示例编码器子系统的示图;
[0021] 图11是示例解码器子系统的示图;
[0022] 图12是说明投影插值和其他预测技术的帧序列的示图;
[0023] 图13是说明各种类型的参考帧的帧序列的示图;
[0024] 图14是说明各种类型的参考帧的另一帧序列的示图;
[0025] 图15是示例编码器子系统的示图;
[0026] 图16是示例解码器子系统的示图;
[0027] 图17-21是示出沿着帧序列的多个帧之间的依赖关系和分层结构的图;
[0028] 图22是用于本文中的视频译码系统的示例经修改的参考帧的图示;
[0029] 图23是示例视频译码系统的示图;
[0030] 图24是示例系统的示图;以及
[0031] 图25示出完全根据本公开至少一些实现方案而安排的示例设备。

具体实施方式

[0032] 现在参考所附附图描述一个或多个实现方案。虽然讨论了特定配置和安排,但是应当理解,这样做只是出于说明性目的。相关领域内的技术人员将认可,可采用其他配置和安排而不背离本说明书的精神和范围。对相关领域内的技术人员显而易见的是,也可在本文所描述内容以外的各种其他系统和应用中采用本文所描述的多种技术和/或安排。
[0033] 尽管以下描述陈述了可在诸如例如芯片上系统(SoC)架构之类的架构中显示的各种实现方案,但是本文所述的多种技术和/或安排的实现方案不限于特定的架构和/或计算系统,并且可由用于类似目的的任何架构和/或计算系统来实现。例如,采用例如多个集成电路(IC)芯片和/或封装的各种架构和/或各种计算设备和/或诸如机顶盒、智能电话等之类的消费者电子(CE)设备可实现本文所述的多种技术和/或安排。此外,尽管下列描述可能陈述了诸如逻辑实现、系统组件的类型和相互关系、逻辑分区/集成选择等之类的多个具体细节,但是可以不利用此类具体细节来实施要求保护的主题。在其他实例中,可能不详细地示出诸如例如控制结构和完整的软件指令序列之类的某些资料,从而避免使本文所公开的内容不清楚。
[0034] 本文所公开的内容可实现在硬件固件、软件或它们的任意组合中。也可以将本文所公开的内容实现为存储在机器可读介质上的指令,可由一个或多个处理器读取并执行这些指令。机器可读介质可包括用于以机器(如,计算设备)可读的形式存储或传送信息的任何介质和/或机制。例如,机器可读介质可包括只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质、闪存设备、电、光、声或其他形式的传播信号(例如,载波、红外信号、数字信号等)等等。在另一形式中,诸如非瞬态计算机或机器可读介质之类的非瞬态制品可以与上述示例或其他示例中的任何一个一起使用,只是非瞬态制品自身不包括瞬态信号。非瞬态制品包括除信号本身之外的、可按诸如RAM等之类的“瞬态”方式临时保存数据的那些元件。
[0035] 在说明书中提到“一个实现方案”、“实现方案”、“示例实现方案”等表明所描述的实现方案可包括特定特征、结构或特性,但每个实现方案可能不一定都包括该特定特征、结构或特性。此外,此类的短语不一定是指同一个实现方案。此外,当结合实现方案描述特定特征、结构或特性时,认为结合无论是否在本文中明确描述的其他实现方案以实现此类特征、结构或特性是在本领域技术人员的知识范围之内的。
[0036] 下文所描述的系统、装置、制品和方法关于用于下一代视频译码的、具有经修改的参考的内容自适应预测性图片和功能预测性图片。
[0037] 如上文中所讨论的那样,H.264/AVC标准可能具有各种限制,并且不断地尝试改善该标准,诸如例如,HEVC标准可使用迭代方法来解决此类限制。例如,伴随着不断增加分辨率的视频要被压缩以及对高视频质量的预期,针对使用现有的视频译码标准(如,H.264)或甚至演进的标准(如,H.265/HEVC)来进行译码所要求的对应的位率/带宽是相对高的。上述标准可使用传统方式的扩展形式来隐式地解决压缩/质量不足的问题,但是通常结果是有限的。例如,传统的帧间译码通常包括这些标准所使用的运动补偿预测。相应地,通常仅通过使用视频的帧间译码时的局部运动补偿预测来隐式地解决此类压缩/质量不足的问题。
[0038] 此外,当前正在尝试一些专的(ad hoc)方式。此类尝试通常可采用多个过去的帧或多个过去的和将来的帧。通常希望在过去或未来的帧中,可能存在一些相比于过去的帧(针对P-图片/切片)中的区域或过去和未来的帧(针对B-图片/切片)中的区域,与正在被预测的当前帧的区域更相似的区域,从而采用多个过去帧或多个过去和未来帧的此类使用方式。
[0039] 然而,由于此类压缩/质量不充分的问题中的许多问题不仅是由于运动引起的,还由于其他特性引起,因此,仅运动补偿预测使用来自先前的参考帧(在P-图片/切片的情况下)以及先前的和之后的参考帧(在B-图片/切片的情况下)的预测不能够完全解决此类压缩/质量不充分的问题。相应地,下文描述下一代视频(NGV)系统、装置、制品和方法。NGV视频译码可包括视频译码过程中显著的基于内容的自适应性以实现更高的压缩。在NGV编解码器的情境中所展开的此类实现方案解决了如何改善预测信号(该预测信号转而允许实现视频译码时的高压缩效率)的问题。
[0040] 更确切地说,在本公开中,通过开发在本公开中被称为内容自适应预测性P-图片、内容自适应功能预测性F-图片和使用这些图片类型的改进型高级图片结构的改进版本,我们提出了传统预测性P-图片和双向预测性B-图片以及在其中使用这些图片的图片结构中的显著进步。
[0041] 如本文中所使用的那样,术语“译码器(coder)”可以指编码器(encoder)和/或解码器(decoder)。类似地,如本文中所使用的那样,术语“译码”(coding)可以指经由编码器执行视频编码(encoding)和/或经由解码器执行视频解码(decoding)。例如,视频编码器和视频解码器可以两者都是能够译码视频数据的译码器的示例。此外,如本文中所使用的那样,术语“编解码器”(“codec”)可以指任何过程、程序或操作集,诸如,可实现编码器和/或解码器的软件、固件和/或硬件的任意组合。此外,如本文中所使用的那样,短语“视频数据”可以指与视频译码相关联的任何类型的数据,诸如,视频帧、图像数据、经编码的比特流数据,等等。
[0042] 图1是根据本公开至少一些实现方案而安排的示例下一代视频编码器100的示图。如所示出的那样,编码器100可接收输入视频101。输入视频101可包括供编码的任何合适的输入视频,诸如例如,视频序列的输入帧。如所示出的那样,可经由内容预分析器模块102来接收输入视频101。可将内容预分析器模块102配置成执行对输入视频101的视频帧的内容进行的分析,从而确定各种类型的参数,以改善视频译码效率和速度性能。例如,内容预分析器模块102可确定平和垂直梯度信息(如,Rs、Cs)、方差、每张图片的空间复杂度、每张图片的时域复杂度(tpcpx)、场景改变检测、运动范围估计、增益检测、预测距离估计(pdist)、对象数量估计、区域边界检测、空间复杂度映射计算、焦距估计、胶片粒度估计,等等。可由编码器100(例如,经由编码控制器103)使用内容预分析器模块102所生成的这些参数,并且/或者量化这些参数,并将这些参数传递到解码器。如所示出的那样,可将视频帧和/或其他数据从内容预分析器模块102传送到自适应图片组织器模块104(也被称为分层的图片组结构组织器)。该自适应组织器模块104确定图片组结构和该组中每张图片的图片类型,并且根据需要,按编码顺序对图片进行重排序。自适应组织器模块104输出指示图片组结构和图片类型的控制信号(用于系统100上所示的输出/输入控制的缩略语陈述如下)。本文中所描述的NGV译码使用I-图片(帧内译码)、P-图片(通过根据过去的/先前的参考帧进行的帧间预测而形成的)和F-图片(下文中所描述的功能的),在下文中更详细地进行描述。在一些示例中,自适应图片组织器模块104可包括配置成生成多个帧部分的帧部分生成器。在一些示例中,可将内容预分析器模块102和自适应图片组织器模块104一起认为是编码器100的预分析器子系统。
[0043] 如所示出的那样,可将视频帧和/或其他数据从自适应图片组织器模块104传送到预测分区生成器模块105。在一些示例中,预测分区生成器模块105首先可将帧或图片划分为多个图块或超片段等(在本文中,术语“帧”、“图片”和“图像”可交换使用,除非另外指出,或者除非将帧用于一般地指不一定被分派到特定图片类型(例如,I-图片、P-图片、F-图片或B-图片)的帧)。在一些示例中,可提供附加模块(例如,在模块104和105之间),用于将帧划分为多个图块或超片段等。作为NGV译码的一个示例,可将帧划分为32x32像素或64x64像素的图块,其中,64x64用于针对所有图片类型(I-、P-或F-类型)的译码的所有标清和更高分辨率视频。对于低分辨率序列,64x64仍用于对I-图片和F-图片的译码操作,而32x32用于P-图片。
[0044] 作为一个示例,预测分区生成器模块(也被称为预测Kd树/二叉树分区生成器)105可随后将每一个图块或超片段划分为潜在的预测分割区(partioning)或分区(partition)。在一些示例中,可使用诸如k-d树分区技术、二叉树分区技术等分区技术来确定潜在的预测分割区,可基于单独的视频帧的图片类型(如,I-图片、P-图片或F-图片)、被分区的帧部分的特性等来确定分区技术。作为一个示例,如果正在对作为I-图片的图片进行译码,则进一步将每一个图块或几乎所有图块划分为基于Kd树的分区,该基于Kd树的分区可划分空间,直到达到所设置的最小尺寸为止,并且每次在一个维度上进行划分。划分空间的选项可包括:不进行进一步划分,划分为相等的两半,划分为空间的1/4和3/4的两部分或者划分为空间的3/4或1/4的两部分。因此,由于I-图片将64x64用作最大的尺寸(并且允许4x4的最小尺寸),如果不施加其他约束,可产生非常大量的图块的分区。例如,一个约束将设定:将用于64x64图块的第一对切割预先确定为在水平和垂直两个维度上平分空间,使得形成四个32x32的子图块,随后通过Kd树分区操作对每一个32x32的子图块进行子分区操作。减少可能的分区组合的数量的其他限制也是可能的。
[0045] I-图片图块的这些分区被称为预测分区,因为可将每一个图块分区用于空间预测(方向度预测或其他类型的预测)以及预测差异的译码操作。同样地,可以用这种方式来分割P-图片图块以进行预测,不同之处在于,对于较低的分辨率,P-图片分区从32x32的图块开始,使用更简单的二叉树分区而不使用基于Kd树的分区。二叉树分区操作将空间划分为两个相等的部分,一次在一个维度上进行,在两个维度之间交替进行。尽管一些子分区可使用帧内空间预测以处理例如所揭示的背景,但是主要使用运动预测(利用一个或多个参考)而非空间预测来预测进一步的P-图片分区。对于标清到更高分辨率的图片尺寸,P-图片在被划分之前从64x64的图块开始。最后,F-图片也使用二叉树分区操作,并且从64x64的图块开始以生成主要使用运动预测(利用一个或多个分区)的预测分区,然而一些子分区也可使用空间预测(针对帧内译码)。
[0046] 在NGV译码中,如本文中别处所讨论的那样,相比简单地使用运动向量来生成预测,生成帧间预测数据所需要的内容要多得多。在P-图片和F-图片译码中,通过包括预测模式来标识每个子分区的预测。这些预测模式包括跳过(skip)、自动(auto)、帧内(intra)、帧间(inter)、多个(multi)和切分(split)。“跳过”模式用于在例如从参考帧到正在被重构的当前帧之间不存在变化或存在相对少的变化,使得不需要对像素数据进行编码而仅需要在解码时将像素数据从一个帧复制到其他帧的时候,跳过预测译码。在仅需要部分数据,使得例如可能不需要运动向量但仍使用变换系数以对数据进行译码的时候使用“自动”模式。“帧内”模式意味着以空间方式对帧或分区进行译码。“切分”意味着在译码之前,需要将帧或分区切分为更小的部分或分区。“帧间”模式意味着需要针对当前帧确定多个参考帧,并且通过单独地使用每个参考来获取运动估计,随后将最佳结果用于运动预测数据。“多个”模式也使用多个参考帧,但是在这种情况下,组合来自多个参考帧的运动估计数据,例如,平均的或加权平均的,以获取用于预测的单个结果。
[0047] 预测分区生成器模块105的输出之一可以是图块的数百个潜在的分割区(并且取决于对分区操作的限制,而更多或更少)。将这些分割区编索引为1、……、m,并且将它们提供给编码控制器103以选择最佳的可能的预测分割区来使用。如所指出的那样,所确定的潜在的预测分割区可以是用于预测(如,帧间或帧内预测)的分区,并且可将所确定的潜在的预测分割区描述为预测分区或预测块等。
[0048] 在一些示例中,可从这些潜在的预测分割区中确定所选择的预测分割区(如,预测分区)。例如,所选择的预测分割区可基于:对于每个潜在的预测分割区,使用基于特性和运动的多参考预测或帧内预测来进行预测;以及确定预测参数。对于每一个潜在的预测分割区,可通过比较原始像素和预测像素的差异来确定潜在的预测差错,并且所选择的预测分割区可以是预测差错最小的潜在的预测分割区。在其他示例中,可基于率失真优化来确定所选择的预测分割区,率失真优化包括基于用于对分割区进行译码的位(bit)数量以及与该预测分割区相关联的预测差错的加权打分。
[0049] 如所示出的那样,在差别器(differencer)106处,可比较所选择的预测分割区(例如,当前帧的预测分区)的原始像素和所预测的分区(例如,基于一个或多个参考帧以及诸如帧间或帧内预测数据之类的其他预测性数据对当前帧的预测分区的预测)的差异。将在下文中进一步描述对所预测的分区的确定,并且该确定可包括图1中所示的解码循环
135。对于这些差异,也比较经原始分区的块和预测块的差异以确定是否存在保证编码操作的任何残差信号。由此,实际上并不需要(例如使用变换译码)对图块的所有子分区进行译码,因为对于某些子分区,预测可能已经足够。
[0050] 在其他方面,可将来自该差异比较的、指示分区不能够仅由预测(如,仅由运动补偿)来补偿的任何残差或残差数据(例如,分区预测差错数据)传送到译码分区生成器模块(或者作为一个示例,译码二叉树分区生成器)107,以便进一步将其细分为更小的分区以进行变换译码(译码分区),并且作为一个示例,尤其是适于P-图片和F-图片。在P-或F-图片或帧中,在存在非常简单的内容和/或大的量化器步骤尺寸的一些情况下,译码分区可以等于整个图块的尺寸,或者在这些情况下,译码分区和预测分区可具有相同的尺寸。由此,一些P-图片和F-图片图块可能不含有译码分割区,可能含有一个或多个译码分割区。将这些译码分区编索引为1、……、n,并且将它们提供给编码控制器103以从给定的选择中选出预测和译码分割区最佳的可能组合。
[0051] 另外,在这些示例中的一些示例中(例如,对于以任何图片类型(I-图片、F-图片或P-图片)的预测分区的帧内预测或以其他方式不进一步将预测分区划分为译码分区(其中跳过译码分区)的其他情况下),可经由交换机107a和107b绕过译码分区生成器模块107。在此类示例中,可执行仅单个层级的分区操作。可将其中仅存在单个层级的分区操作的此类分割区描述为预测分割区(如讨论的那样)或译码分割区或这两者。在各种示例中,可经由预测分区生成器模块105(如所讨论的那样)执行此类分区操作,或者,如将在本文中进一步讨论的那样,可通过经由译码分区生成器模块107而实现的k-d树帧内预测/译码分割器模块或二叉树帧内预测/译码分割器模块来执行此类分区操作。
[0052] 在一些示例中,分区预测差错数据(如果存在任何分区预测差错数据)可能不够显著,不足以保证编码操作。在其他示例中,在期望对分区预测差错数据进行编码以及该分区预测差错数据与帧内预测等相关联等的情况下,译码分区生成器模块107可确定这些预测分区的译码分区。在一些示例中,可能不需要译码分区生成器模块107,因为可不利用译码分区操作对该分区进行编码(例如,如所示出的那样,经由通过交换机107a和107b可用的旁路路径)。无论有没有译码分区操作,假如残差或残差数据要求进行编码,则可将分区预测差错数据(随后可在任一事件中将该分区预测差错数据描述为译码分区)传送到自适应变换模块108。在一些示例中,可将预测分区生成器模块105和译码分区生成器模块107一起认为是编码器100的分割器子系统。在各种示例中,译码分区生成器模块107可对分区预测差错数据、原始像素数据、残差数据或小波数据进行操作。译码分区生成器模块107可使用二叉树和/或k-d树分区技术等来生成例如分区预测差错数据的、潜在的译码分割区(如,译码分区)。
[0053] 在分区操作之后(在形成了针对I-图片的预测分区,并且形成了针对P-图片和F-图片的译码分区(以及在一些示例中潜在的译码分区)之后),可经由自适应变换模块108(作为一种形式,也被称为自适应多尺寸矩形混合参数哈尔变换(HPHT)/离散余弦变换(DCT)单元),使用具有各种块尺寸的自适应或固定变换对分区进行变换。作为一种方式,自适应变换模块108可对矩形块执行正向HPTH或正向DCT。作为一个示例,可基于率失真优化(RDO)或其他基础来确定分区/块尺寸和所选择的变换(例如,自适应或固定的,HPHT或DCT)。在一些示例中,可基于预先确定的选择方法,以译码分区的尺寸等为基础来确定所选择的译码分割区和/或所选择的变换两者。例如,自适应变换模块108可包括:第一部分或组件,其用于执行参数变换以允许对小至中尺寸的块进行局部优化变换;以及第二部分或组件,其用于使用固定变换来执行全局稳定的、低开销变换译码,该固定变换诸如DCT或来自包括参数变换的多种变换中的基于图片的变换,或任何其他配置。在一些示例中,可针对局部优化变换译码操作执行HPTH。在一些示例中,可对在大约4x4像素和64x64像素之间的矩形尺寸的2D块执行变换,实际的尺寸取决于诸多因素,例如,所变换的数据是亮度还是色度,是帧间的还是帧内的,或者所确定使用的变换是PHT还是DCT,等等。
[0054] 对于HPHT变换,支持小至中型块尺寸,而对于DCT变换,支持大量的块尺寸。对于HPHT变换,需要一些开销以标识方向(应用DCT的水平或垂直的方向,同时在正交方向上应用PHT)和模式(至少针对帧内译码,其中模式可基于经解码的像素或预测差异像素)。用于变换特定块的实际的PHT变换基础可能是内容自适应的,因为该实际的PHT变换基础取决于经解码的相邻像素。由于编码器和解码器两者都要求计算相同的基矩阵,通过允许可从中选择的有限数量的(为编码器和解码器两者)所知的优良变换,可将该计算的复杂度保持在低水平上。
[0055] 如所示出的那样,可将所得到的变换系数传送到自适应量化模块109中,而编码控制器103处的量化器适配器控制133可执行对内容的分析以提出局部自适应的量化参数,随后可由多层级映射来表示这些参数,并且可高效地对这些参数进行译码并将其包括在比特流中。可由自适应量化器模块109将所计算的量化器集(qs以及应用于系数块的矩阵)用于执行对所得到的变换系数的缩放。此外,可根据需要,将与参数变换相关联的任何数据传送到自适应量化模块109(如果期望进行量化)或自适应熵编码模块110中。同样如图1中所示,可扫描经量化的系数,并将其传送到自适应熵编码器模块110中。自适应熵编码器模块110可对这些经量化的系数进行熵编码,并且将它们包括在输出比特流111中。在一些示例中,可将自适应变换模块108和自适应量化模块109一起认为是编码器100的变换编码器子系统。
[0056] 同样如图1中所示,编码器100包括用于形成所预测的分区(或帧)以便与上述预测分区进行比较的局部解码循环135。初步来说,取决于RDO操作,诸如当对位计数的查找充分时,并不需要对上述数百或更多个图块分区的全部进行完全译码。然而,一旦确定了图块的最佳分割区,则在那种情况下可提供完整译码。
[0057] 该局部解码循环135可从自适应逆量化模块112处开始。可将自适应逆量化模块112配置成执行与自适应量化模块109相反的操作,从而可执行逆扫描,并且可对经量化的系数去缩放(de-scale)以确定变换系数。例如此类自适应量化操作可能是有损的。如所示出的那样,可将这些变换系数传送到自适逆变换模块113中。自适应逆变换模块113可执行自适应变换模块108所执行的变换的逆变换,从而例如生成与译码分区相关联的残差或残差值或者分区预测差错数据(或如所讨论那样的原始数据或小波数据)。在一些示例中,可将自适应逆量化模块112和自适应逆变换模块113一起认为是编码器100的变换解码器子系统。
[0058] 如所示出的那样,可将针对P-图片和F-图片的分区预测差错数据(或诸如此类)传送到可选的译码分区组合器114中。译码分区组合器114可根据需要将译码分区组合为经解码的预测分区(如所示出的那样,在一些示例中,可诸如针对I-图片图块分区操作、经由交换机114a和114b跳过译码分区组合器114,使得可在自适应逆变换模块113处已经生成了经解码的预测分区),从而生成预测差错数据的预测分区或经解码的残差预测分区等。如所示出的那样,可在加法器115处将经解码的残差预测分区(帧间的或帧内的)加到所预测的分区(例如,预测像素数据)中以生成重构的预测分区。可将这些重构的预测分区传送到预测分区组合器116中。预测分区组合器116可组合这些重构的预测分区以生成重构的图块或超片段。在一些示例中,可将译码分区组合器模块114和预测分区组合器模块
116一起认为是编码器100的反分割器(un-partitioner)子系统。
[0059] 下一组步骤涉及过滤以及过滤和预测生成的混合(intermingling)。示出全部四种类型的过滤。具体来说,在图1中,由块度分析器和解块过滤模块(也表示为重构块度分析器和解块抖动过滤生成器(Recon Blockiness Analyzer&DD Filt Gen))117对重构分区进行解块和抖动。得到的用于分析的参数ddi用于过滤操作,并且也对其进行译码,并经由比特流111发送到解码器中。然后,将经解块的重构输出移交到质量分析器和质量恢复过滤模块(或在本文中也被称为重构质量分析器和质量恢复过滤生成器(Recon Quality Analyzer&QR Filt Gen)的质量改进过滤器)118中,该模块118计算QR过滤参数,并将这些参数用于过滤。也可对这些参数进行译码,并经由比特流111将其发送到解码器中。经该QR过滤的输出是经最终重构的帧,也用作用于译码未来帧的预测。
[0060] 更具体地说,当可将重构的图块或超片段传送到块度分析器和解块过滤模块117时,该块度分析器和解块过滤模块117可对这些重构的图块或超片段(或者图块或超片段的预测分区)解块或抖动。可将所生成的解块和抖动过滤器参数用于当前的过滤器操作,并且/或者可在比特流111中对所生成的解块和抖动过滤器参数进行译码,以供例如解码器使用。可将块度分析器和解块过滤模块117的输出传送到质量分析器和质量恢复过滤模块118。质量分析器和质量恢复过滤模块118可确定QR过滤参数(例如,对于QR分解),并且将所确定的参数用于过滤。也可在比特流111中对这些QR过滤参数进行译码,以供解码器使用。在一些示例中,可将块度分析器和解块过滤模块117和质量分析器和质量恢复过滤模块118一起认为是编码器100的过滤子系统。在一些示例中,质量分析器和质量恢复过滤模块118的输出可以是最终重构的帧,它可用于对其他帧的译码操作的预测(例如,该最终重构的帧可以是参考帧等)。由此,如所示出的那样,可将质量分析器和质量恢复过滤模块118的输出传送到多参考帧存储和帧选择器(或多参考控制)119,该选择器119可被称为或可包括解码后图片存储或缓冲器。依赖性(dependency)逻辑模块128(在一个示例中,也被称为用于分层图片组结构中的模式多参考预测的依赖性逻辑)可提供用于列举参考帧和这些帧之间的关系的索引,这些帧之间的关系诸如帧依赖关系,或更具体地说,分区依赖关系,这些依赖关系用于合适的排序,并且由多参考控制119在要选择某些帧用于预测另一个帧时将这些以来关系用于这些帧。这可包括提供用于图片组结构的依赖性逻辑,例如,多参考预测、链式预测、分层结构和/或下文所描述的其他预测技术。
[0061] 接下来,编码器100可执行帧间和/或帧内预测操作。如图1中所示,可由一个或多个模块执行帧间预测,一个或多个模块包括变形生成和局部缓冲器模块120(在一个示例中被称为变形生成和本地缓冲器(Morph Gen&Loc Buf),或在此被称为环内变形生成模块)、合成生成和局部缓冲器模块121(在一个示例中被称为合成生成和图片缓冲器(Synth Gen&Pic Buffer),或在此被称为环内合成生成模块)、运动估计器122、特性和运动过滤和预测器模块123(在一些示例中也可被称为特性和运动自适应精确过滤器分析器和1/4&1/8像素补偿预测器)、变形分析器和生成模块(或环外变形分析器模块)130以及合成分析器和生成模块(或环外合成分析器模块)132,其中,将变形和合成生成器120和121认为是环内的(在编码器的解码循环之内),并且将变形和合成分析器130和132认为是环外的(在编码器处的解码循环之外)。注意,虽然将一者称为分析器,而将另一者称为生成器,但是,环内和环外模块两者都可执行相同或相似的任务(形成用于变形和/或合成的修改参数以及经修改的帧)。使用这些组件,变形生成模块120或变形分析器130可允许各种形式的变形,并且可分析当前的图片以确定变形参数,这些变形参数针对相比于要借助其进行译码的一个或多个参考帧的、并且在运动补偿预测之前的:(1)增益变化;(2)主(或全局)运动变化;(3)配准变化;和/或(4)模糊变化。
[0062] 环外变形分析器130和合成分析器132接收来自自适应图片组织器104的图片组结构数据,并且与编码器控制器103通信,从而基于未经量化的、未经解码的、原始的帧数据形成变形和合成参数(mop,syp)和经修改的参考帧。通过环外变形和合成分析器130和132形成经修改的参考帧和修改参数可能比通过解码循环135所提供的方式快得多,这对于实时编码操作是尤其有利的。然而,应当由编码器的解码循环侧的环内变形和合成生成器120和121执行对用于诸如由解码器在另一位置处执行补偿的、经修改的帧和参数的使用,从而可当在解码器处重构帧的时候重复正确的补偿。由此,由环内变形和合成生成器120和121将来自环外分析器130和132的、所得到的修改参数用于形成经修改的参考帧,并且由运动估计器122用于运动估计,从而计算运动向量。因此,可量化/去量化并使用(例如,通过变形生成模块120)所计算的变形和合成参数(mop和syp)以生成经变形的参考帧,可由运动估计器模块122使用该经变形的参考帧以计算运动向量,从而对当前帧进行高效的运动(和特性)补偿预测。合成生成模块121使用若干类型经合成的帧,包括超分辨率(SR)图片、投影插值(PI)图片等,其中,运动补偿预测可通过确定运动向量以在这些帧中进行高效的运动补偿预测来产生甚至更高的增益。下文中提供用于执行变形或合成操作的一些示例的细节。
[0063] 运动估计器模块122可至少部分地基于经变形的参考帧和/或连同当前帧一起的超分辨率(SR)图片和投影插值(PI)图片来生成运动向量数据。在一些示例中,可将运动估计器模块122认为是帧间预测模块。例如,可将该运动向量数据用于帧间预测。如果应用了帧间预测,则特性和运动过滤预测器模块123可将运动补偿作为所讨论的局部解码循环的部分来应用。同样,特性和运动过滤预测器模块123可包括自适应精确(AP)过滤,其中,可交织过滤和预测。可对过滤参数(api)进行译码,并可经由比特流111将其发送到解码器中。
[0064] 可由帧内有向预测分析器和预测生成模块124来执行帧内预测。可将帧内有向预测分析器和预测生成模块124配置成用于执行空间有向预测,并且该帧内有向预测分析器和预测生成模块124可使用经解码的相邻分区。在一些示例中,可由帧内有向预测分析器和预测生成模块124执行确定方向和生成预测两者。在一些示例中,可将帧内有向预测分析器和预测生成模块124认为是帧内预测模块。
[0065] 如图1中所示,预测模式和参考类型分析器模块125可允许针对图块(或超片段)的每个预测分区,从“跳过”、“自动”、“帧间”、“切分”、“多个”和“帧内”中选出上文所介绍的预测模式,这些预测模式全部应用于P-图片和F-图片(以及B-图片(当B-图片存在时))。应当注意,虽然该系统考虑I-图片、P-图片和F-图片可用的配置,但是,在没有可用于B-图片的变形或合成的情况下,仍然提供B-图片也是可能的。除了预测模式之外,它还允许选择参考类型,取决于“帧内”模式或“多个”模式以及针对P-图片和F-图片,这些参考类型可以是不同的。可由预测分析器和预测融合过滤模块126过滤预测模式和参考类型分析器模块125的输出处的预测信号。预测分析器和预测融合(fusion)过滤模块126可确定要用于过滤的参数(例如,过滤系数、频率、开销),并可以执行该过滤。在一些示例中,过滤该预测信号可融合表示不同模式(例如,帧内、帧间、多个、切分、跳过和自动)的不同类型的信号。在一些示例中,帧内预测信号可以与所有其他类型的帧间预测信号不同,使得合适的过滤可大大增加译码效率。在一些示例中,可在比特流111中对这些过滤参数进行编码,以供解码器使用。经过滤的预测信号可向上文中所讨论的差别器106提供第二输入(如,预测分区),该差别器106可确定预测差异信号(如,分区预测差错),用于之前所讨论的译码。此外,同样的经过滤的预测信号可向也在上文中讨论过的加法器115提供该第二输入。如所讨论的那样,输出比特流111可提供经高效编码的比特流,以供解码器用于呈现视频。
[0066] 在操作中,编码器100的一些组件可作为编码器预测子系统进行操作。例如,编码器100的此类编码器预测子系统可包括多参考帧存储和帧选择器119、环内变形分析器和生成模块120、环内合成分析器和生成模块121、运动估计器模块122和/或特性和运动补偿精确自适应过滤预测器模块123以及环外变形分析器130和合成分析器132。
[0067] 如将在下文中更详细讨论的那样,在一些实现方案中,编码器100的此类编码器预测子系统可包含多个组件以及由这些组件按高效的视频译码算法生成的、组合的预测。例如,所提出的NGV译码器的实现方案可包括下列特征中的一个或多个:1.增益补偿(例如,对场景内的增益/亮度的变化的显式补偿);2.模糊补偿:例如,对场景内的模糊/锐度变化的显式补偿;3.主运动/全局运动补偿(例如,对场景内的主运动的显式补偿);4.配准(registration)补偿(例如,对场景内的配准失配的显式补偿);5.超分辨率(例如,用于场景内的分辨率精度变化的显式模型);6.投影(例如,用于场景内运动轨迹变化的显式模型);等等,和/或上述各项的组合。
[0068] 例如,在编码器100的此类编码器预测子系统中,可将质量分析器和质量恢复过滤的输出传送到多参考帧存储和帧选择器119中。在一些示例中,质量分析器和质量恢复过滤的输出可以是可用于对其他帧的译码操作进行预测的、经最终重构的帧(例如,该经最终重构的帧可以是参考帧等)。在编码器100中,预测操作可包括帧间和/或帧内预测。如所示出的那样,可由包括变形生成模块120、合成生成模块121和/或特性和运动补偿精确自适应过滤预测器模块123的一个或多个模块来执行帧间预测。
[0069] 如将在下文中更详细地讨论的那样,变形生成模块120可分析当前的图片以确定相对于要利用其进行译码的一个或多个参考帧的增益、主运动、配准和模糊的改变的参数。可量化/去量化并使用(例如,通过变形生成模块120)所确定的变型参数以生成经变形的参考帧。可将此类生成的、经变形的参考帧存储在缓冲器中,并可由运动估计器模块122将这些参考帧用于计算运动向量,从而对当前帧进行高效的运动(和特性)补偿预测。
[0070] 类似地,合成分析器和生成模块121可生成超分辨率(SR)图片和投影插值(PI)图片等,以确定运动向量,用于在这些帧中进行高效的运动补偿预测。可将此类生成的、经合成的参考帧存储在缓冲器中,并且可由运动估计器模块122将其用于计算运动向量,用于对当前帧进行高效的运动(和特性)补偿预测。
[0071] 相应地,在编码器100的此类编码器预测子系统中,运动估计器模块122可基于经变形的参考帧和/或连同当前帧一起的超分辨率(SR)图片和投影插值(PI)图片来生成运动向量数据。在一些示例中,可将运动估计器模块122认为是帧间预测模块。例如,可将该运动向量数据用于帧间预测。如果应用了帧间预测,则特性和运动过滤预测器模块123可将运动补偿作为所讨论的局部解码循环的部分来应用。
[0072] 在操作中,所提出的NGV译码器(如,编码器100和/或解码器200)的实现方案除了可使用参照经解码的过去的和/或将来的图片/切片而进行的通常的局部运动补偿之外,还可使用上述组件中的一个或多个。由此,该实现方案并不强制执行例如针对增益补偿或针对任何其他特性补偿参考帧生成的实例的特定解决方案。
[0073] 图1示出与视频编码器100的操作相关联的示例控制信号,其中,下列缩略语可表示相关联的信息:
[0074] scnchg 场景变化信息
[0075] spcpx 空间复杂度信息
[0076] tpcpx 时域复杂度信息
[0077] pdist 时域预测距离信息
[0078] pap 预分析参数(用于除scnchg、spcpx、tpcpx、pdist之外的所有其他预分析参数的占位符)
[0079] ptyp 图片类型信息
[0080] pgst 图片组结构信息
[0081] pptn cand. 预测分割区候选
[0082] cptn cand. 译码分割区候选
[0083] prp 预处理
[0084] xmtyp 变换类型信息
[0085] xmdir 变换方向信息
[0086] xmmod 变换模式
[0087] ethp 八分之一(1/8)像素运动预测
[0088] pptn 预测分割区
[0089] cptn 译码分割区
[0090] mot&cod 运动和译码成本
[0091] cost
[0092] qs 量化器信息集(包括量化器参数(Qp)、量化器矩阵(QM)选择)
[0093] mv 运动向量
[0094] mop 变形参数
[0095] syp 合成参数
[0096] ddi 解块和抖动信息
[0097] qri 质量恢复过滤索引/信息
[0098] api 自适应精确过滤索引/信息
[0099] fii 融合过滤索引/信息
[0100] mod 模式信息
[0101] reftyp 参考类型信息
[0102] idir 帧内预测方向
[0103] 然后,可由自适应熵编码器110对可能需要被发送到解码器的各种信号和数据项(即,pgst、ptyp、prp、pptn、cptn、modes、reftype、ethp、xmtyp、xmdir、xmmod、idir、mv、qs、mop、syp、ddi、qri、api和fii)、量化系数和其他量进行熵编码,该自适应熵编码器110可包括被统称为熵编码器子系统的不同的熵译码器。可将自适应熵编码器110用于对各种类型的控制数据/信号、参数、模式和参考类型、运动向量和变换系数进行编码。该自适应熵编码器110基于被称为自适应可变长度译码器(vlc)的低复杂度熵译码器的通用类别。可在方便时将要对其进行熵译码的数据划分为七个类别(在我们这种情况下是七个类别),并且从通用vlc译码器开始,针对每个类别开发专用译码器。虽然将这些控制信号示出为与图1中的编码器100的特定示例功能模块相关联,但是其他实现方案可包括在编码器300的功能模块之间的、控制信号的不同分布。本公开在这方面不受限制,并且在各种示例中,此处的控制信号的实现方案可包括执行仅所示特定示例控制信号的子集、附加的控制信号,并且/或者按照与所示不同的安排方式来执行。
[0104] 图2是根据本公开的至少一些实现方案而安排的、且利用本文中的内容自适应P-图片和F-图片和所得到的图片组的示例下一代视频解码器200的图示。该NGV解码器200的一般操作可以与先前所讨论的NGV编码器100中的局部解码循环类似,但需要告诫的是,解码器中的运动补偿解码循环不需要要求分析以确定参数的任何组件,因为实际上经由比特流111或201将这些参数发送到解码器200中。要对其进行解码的比特流201是对自适应熵编码器(内容和情境自适应熵解码器)202的输入,该自适应熵解码器
202对头部、控制信号和经编码的数据进行解码。例如,该自适应熵解码器202对上文列出的ptyp、pgst、prp、pptn、cptn、ethp、mop、syp、mod、reftyp、idir、qs、xmtyp、xmdir、xmmod、ddi、qri、api、fii、mv以及经量化的变换系数(其构成开销、控制信号以及分配以贯穿该解码器而使用的数据)进行解码。然后,由自适应逆量化模块203和自适应逆变换(也为自适应多尺寸矩形HPHT/DCT)204对经量化的变换系数进行逆量化和逆变换以生成按照所使用的译码分割区而组合的、经解码的像素差异的矩形分区。将预测加到导致生成重构的(reconsructed)、经译码的分区(这些重构的、经译码的分区经历按照运动分割区的进一步的重新组合)的差异中以生成重构的图块和帧,这些重构的图块和帧在解块过滤器(重构解块抖动过滤生成器(Recon DD Filt Gen))208使用经解码的ddi参数时经历解块和抖动操作,随后经历质量恢复过滤(或重构的质量恢复过滤器生成器(Recon QR Filt Gen))209使用经解码的qri参数(创建经最终重构的帧的过程)。
[0105] 可将经最终重构的帧保存在多参考帧存储和帧选择器(也可称为解码后图片缓冲器)210中,并且取决于所应用的、经解码的mop参数,将其用于(或变形以)创建(在变形后图片生成器和缓冲器211处)经变形的图片/本地缓冲。同样,通过将经解码的syp参数用于多参考帧存储和帧选择器210(或换言之,存储或缓冲器210中的重构帧)来创建(在合成后图片生成和缓冲器212处)经合成的图片和本地缓冲。依赖性逻辑220可保存用于多参考帧存储210中的所存储的帧的索引,并且对多参考帧存储210中的所存储的帧执行编索引操作。可将该编索引操作用于多种预测技术,例如,多参考帧、链式预测和/或分层(或金字塔)帧结构和/或下文所描述的其他技术。将经变形的本地缓冲和经合成的帧用于运动补偿预测,该运动补偿预测使用基于api参数的自适应精确(AP)过滤,并且取决于经解码的ethp信号来保持1/4或1/8像素预测。事实上,特性和运动补偿过滤预测器213取决于mod来生成“帧间”、“多个”、“跳过”或“自动”分区;同时帧内有向预测生成模块
214生成“帧内”分区;并且预测模式选择器215基于编码器选择的选项,允许正确模式的分区通过。接下来,根据需要执行对用于过滤并输出预测的预测融合过滤器生成模块(或预测FI过滤器生成器(Pred FI Filter Gen))216的选择性使用,将其用作加法器的第二输入。
[0106] 由自适应图片重组器(或分层图片组结构重组器)217响应于控制参数ptyp和pgst,对质量过滤器生成模块209(或重构质量恢复过滤生成器(Recon QR Filt Gen))的输出处的重构帧进行重排序(因为F-图片是无序的),并且该重组器的输出在受编码器发送的prp参数控制的内容后恢复器218中进一步经历可选处理。该处理尤其可包括解块操作和胶片粒度增加。
[0107] 更具体地说并且如所示出的那样,解码器200可接收输入比特流201。在一些示例中,可经由编码器100和/或通过本文所讨论的多种编码技术对输入比特流201进行编码。如所示出的那样,可由自适应熵解码器模块202接收输入比特流201。自适应熵解码器模块202可对各种类型经编码的数据(如,开销、运动向量、变换系数等)进行解码。在一些示例中,自适应熵解码器202可使用可变长度的解码技术。在一些示例中,自适应熵解码器
202可执行上文所讨论的自适应熵编码器模块110的逆操作。
[0108] 可将经解码的数据传送到自适应逆量化模块203中。可将自适应逆量化模块203配置成逆扫描并去缩放经量化的系数,从而确定变换系数。例如此类自适应量化操作可能是有损的。在一些示例中,可将自适应逆量化模块203配置成执行自适应量化模块109的反向操作(例如,与自适应逆量化模块112基本相同的操作)。如所示出的那样,可将变换系数(以及在一些示例中的、用于参数变换的变换数据)传送到自适应逆变换模块204中。自适应逆变换模块204可对变换系数执行逆变换,从而生成与译码分区相关联的残差或残差值或分区预测差错数据(或原始数据或小波数据)。在一些示例中,可将自适应逆变换模块204配置成用于执行自适应变换模块108的反向操作(例如,与自适应逆变换模块113实质相同的操作)。在一些示例中,自适应逆变换模块204可基于其他先前经解码的数据(诸如,经解码的相邻分区)执行逆变换。在一些示例中,可将自适应逆量化模块203和自适应逆变换模块204一起认为是解码器200的变换解码器子系统。
[0109] 如所示出的那样,可将这些残差或残差值或分区预测差错数据传送到译码分区组合器205中。译码分区组合器205可根据需要将译码分区组合成经解码的预测分区(如所示出的那样,在一些示例中,可经由交换机205a和205b跳过译码分区组合器205,使得在自适应逆变换模块204处可能已经生成了经解码的预测分区)。在加法器206处,可将预测差错数据的、经解码的预测分区(如,预测分区残差)加到所预测的分区(如,预测像素数据)中,从而生成重构的预测分区。可将这些重构的预测分区传送到预测分区组合器207中。预测分区组合器207可组合这些重构的预测分区以生成重构的图块或超片段。在一些示例中,可将译码分区组合器模块205和预测分区组合器模块207一起认为是解码器200的反分割器子系统。
[0110] 可将这些重构的图块或超片段传送到解块过滤模块208中。解块过滤模块208可对这些重构的图块或超片段(或这些块或超片段的预测分区)进行解块和抖动。可例如从输入比特流201中确定所生成的解块和抖动过滤器参数。可将解块过滤模块208的输出传送到质量恢复过滤模块209中。质量恢复过滤模块209可基于QR参数来应用质量过滤,可例如从输入比特流201中确定这些QR参数。如图2中所示,可将质量恢复过滤模块209的输出传送到多参考帧存储和帧选择器(其可被称为多参考控制,并且可以是或可包括解码后图片缓冲器)210中。在一些示例中,质量恢复过滤模块209的输出可以是最终重构的帧,该最终重构的帧可用于对其他帧的译码操作而进行预测(例如,该经最终重构的帧可以是参考帧等)。在一些示例中,可将解块过滤模块208和质量恢复过滤模块209一起认为是解码器200的过滤子系统。
[0111] 如所讨论的那样,因预测操作而产生的补偿可包括帧间和/或帧内预测补偿。如所示出的那样,可由包括变形生成模块211、合成生成模块212以及特性和运动补偿过滤预测器模块213的一个或多个模块来执行帧间预测补偿。变形生成模块211可使用经去量化的变形参数(如,从输入比特流201中确定的这些参数)以生成经变形的参考帧。合成生成模块212可基于从输入比特流201中所确定的多个参数来生成超分辨率(SR)图片和投影插值(PI)图片等。如果应用帧间预测,则特性和运动补偿过滤预测器模块213可基于输入比特流201中的、所接收到的帧和运动向量数据等来应用运动补偿。
[0112] 可由帧内有向预测生成模块214来执行帧内预测补偿。可将帧内有向预测生成模块214配置成用于执行空间有向预测,并且该帧内有向预测生成模块214可根据输入比特流201中的帧内预测数据来使用经解码的相邻分区。
[0113] 如图2中所示,预测模式选择器模块215可基于输入比特流201中的模式选择数据,针对图块的每一个预测分区,从“跳过”、“自动”、“帧间”、“多个”和“帧内”中确定预测模式(所有这些预测模式可适用于P-图片和F-图片)选择。除了预测模式之外,该预测模式选择器模块215也允许选择参考类型,取决于“帧间”模式或“多个”模式以及针对P-图片和F-图片,这些参考类型可以是不同的。可由预测融合过滤模块216过滤预测模式选择器模块215的输出处的预测信号。预测融合过滤模块216可基于经由输入比特流201所确定的多个参数(如,过滤系数、频率、开销)来执行过滤。在一些示例中,过滤该预测信号可融合表示不同模式(例如,帧内、帧间、多个、跳过和自动)的不同类型的信号。在一些示例中,帧内预测信号可以与所有其他类型的帧间预测信号不同,使得合适的过滤可大大增加译码效率。经过滤的预测信号可向上文所讨论的差别器206提供第二输出(如,预测分区)。
[0114] 如所讨论的那样,质量恢复过滤模块209的输出可以是最终重构的帧。可将该经最终重构的帧传送到自适应图片重组器217,该自适应图片重组器217可根据需要,基于输入比特流201中的排序参数来重排序或重组帧。可将经重排序的帧传送到内容后恢复器模块218中。内容后恢复器模块218可以是配置成执行对经编码的视频的知觉质量的进一步改善的可选模块。可响应于输入比特流201中的质量改进参数来执行该改进处理,或者可将该改进处理作为单独的操作来执行。在一些示例中,内容后恢复器模块218可将多个参数应用于改进质量,诸如,估计胶片粒度噪声或减小残差块度(例如,甚至在参考解块过滤模块208所讨论的解块操作之后)。如所示出的那样,解码器200可提供显示视频219,可配置该显示视频219,以便经由显示设备(未示出)来显示。
[0115] 在操作中,解码器200的一些组件可作为解码器预测子系统进行操作。例如,解码器200的此类解码器预测子系统可包括多参考帧存储和帧选择器210、用于对该多参考帧存储和帧选择器210处的多个帧编索引的依赖性逻辑220、变形分析器和生成模块211、合成分析器和生成模块212和/或特性和运动补偿精确自适应过滤预测器模块213。
[0116] 如将在下文中更详细讨论的那样,在一些实现方案中,解码器200的此类解码器预测子系统可包含多个组件以及由这些组件按高效的视频译码算法生成的、组合的预测。例如,所提出的NGV译码器的实现方案可包括下列特征中的一个或多个:1.增益补偿(例如,对场景内的增益/亮度的变化的显式补偿);2.模糊补偿:例如,对场景内的模糊/锐度变化的显式补偿;3.主运动/全局运动补偿(例如,对场景内的主运动的显式补偿);4.配准补偿(例如,对场景内的配准失配的显式补偿);5.超分辨率(例如,用于场景内的分辨率精度改变的显式模型);6.投影(例如,用于场景内运动轨迹改变的显式模型);等等,和/或上述各项的组合。
[0117] 例如,在解码器200的此类解码器预测子系统中,可将质量恢复过滤模块的输出传送到多参考帧存储和帧选择器210中。在一些示例中,质量恢复过滤模块的输出可以是最终重构的帧,该最终重构的帧可用于对其他帧的译码操作而进行预测(例如,该最终重构的帧可以是参考帧等)。如所讨论的那样,因预测操作而产生的补偿可包括帧间和/或帧内预测补偿。如所示出的那样,可由包括变形分析器和生成模块211、合成分析器和生成生成模块212和/或特性和运动补偿精确自适应过滤预测器模块213的一个或多个模块来执行帧间预测补偿。
[0118] 如下文中将更详细描述的那样,变形分析器和生成模块211可使用经去量化的变形参数(如,从输入比特流中确定的参数)以生成经变形的参考帧。可将此类生成的、经变形的参考帧存储在缓冲器中,并且可由特性和运动补偿精确自适应过滤预测器模块213使用。
[0119] 类似地,可将合成分析器和生成模块212配置成用于基于从输入比特流210中所确定的多个参数,生成一个或多个类型的经合成的预测参考图片,例如,超分辨率(SR)图片和投影插值(PI)图片等。可将此类生成的、经合成的参考帧存储在缓冲器中,并且可由运动补偿过滤预测器模块213使用。
[0120] 相应地,在解码器200的此类解码器预测子系统中,在应用帧间预测的情况下,特性和运动补偿过滤预测器模块213可基于经变形的参考帧和/或连同当前帧一起的超分辨率(SR)图片和投影插值(PI)图片来应用运动补偿。
[0121] 在操作中,NGV译码器(如,编码器100和/或解码器200)的所提出的实现方案除了可使用参照经解码的过去的和/或将来的图片/切片而进行的通常的局部运动补偿之外,还可使用上述组件中的一个或多个。由此,该实现方案并不强制执行例如针对增益补偿或针对任何其他特性补偿参考帧生成的特定解决方案。
[0122] 图2示出与视频解码器200的操作相关联的示例控制信号,其中,所指示的缩略语可表示参照上述图1所讨论的类似信息。虽然将这些控制信号示出为与解码器200的特定示例功能模块相关联,但是其他实现方案可包括在编码器100的功能模块之间的、控制信号的不同分布。本公开在这方面不受限制,并且在各种示例中,此处的控制信号的实现方案可包括执行仅所示特定示例控制信号的子集、附加的控制信号,并且/或者按照与所示不同的安排方式来执行。
[0123] 虽然图1和图2示出特定的编码和解码模块,但是根据本公开,也可利用未描绘的各种其他译码模块或组件。此外,本公开不限于图1和图2中所示的特定组件和/或安排各种组件的方式。可在软件、固件和/或硬件和/或它们的任意组合中实现本文所描述的系统的各种组件。例如,可至少部分地由计算芯片上系统(SoC)的硬件(诸如,可在例如移动电话之类的计算系统中找到的硬件)提供编码器100和/或解码器200的各种组件。
[0124] 此外,可以认可,编码器100可与内容提供商系统(包括例如,视频内容服务器系统)相关联并且/或者可由内容提供商系统提供编码器100;并且可由诸如图1和图2中未描绘的诸如收发机、天线、网络系统等之类的各种通信组件和/或系统将输出比特流111传送或传递到诸如例如解码器200之类的解码器中。也可以认可解码器200可与诸如计算设备(例如,台式计算机、膝上型计算机、平板计算机、可转换膝上型设备、移动电话等)之类的客户系统相关联,该客户系统远离编码器100,并且经由各种通信组件和/或系统(例如,图1和图2中未描绘的收发机、天线、网络系统等)来接收输入比特流201。因此,在各实现方案中,可一起实现编码器100和解码器子系统200,或可独立于彼此地实现它们。
[0125] 图3是根据本公开至少一些实现方案而安排的与下一代视频编码器100相关联的示例子系统的示图。如所示出的那样,编码器100可包括结构子系统310、分区子系统320、预测子系统330、变换子系统340、过滤子系统350和/或熵译码子系统360。
[0126] 图3(a)是根据本公开至少一些实现方案而安排的示例下一代视频编码器300a的示图。图3(a)呈现与图1(a)和1(b)中所示类似的编码器,并且为了简洁,将不再重复类似的元件。如图3(a)中所示,编码器300(a)可包括预分析器子系统310a、分割器子系统320a、预测编码子系统330a、变换编码器子系统340a、过滤编码器子系统350a、熵编码器系统360a、变换解码器子系统370a和/或反分割器子系统380a。预分析器子系统310a可包括内容预分析器模块102和/或自适应图片组织器模块104。分割器子系统320a可包括预测分区生成器模块105和/或译码分区生成器107。预测编码子系统330a可包括运动估计器模块122、特性和运动补偿过滤预测器模块123和/或帧内有向预测分析器和预测生成模块124。变换编码器子系统340a可包括自适应变换模块108和/或自适应量化模块109。
过滤编码子系统350a可包括块度分析器和解块过滤模块117、质量分析器和质量恢复过滤模块118、运动估计器模块122、特性和运动补偿过滤预测器模块123和/或预测分析器和预测融合过滤模块126。熵译码子系统360a可包括自适应熵编码器模块110。变换解码器子系统370a可包括自适应逆量化模块112和/或自适应逆变换模块113。反分割器子系统
380a可包括译码分区组合器114和/或预测分区组合器116。
[0127] 编码器300a的分割器子系统320a可包括两个分区子系统:预测分区生成器模块105,其可执行针对预测的分析和分区操作;以及译码分区生成器模块107,其可执行针对译码的分析和分区操作。另一分区方法可包括自适应图片组织器104,该自适应图片组织器
104可将图片分段为多个区域或切片也可以可选地被认为是该分割器的部分。
[0128] 编码器300a的预测编码器子系统330a可包括:运动估计器122和特性和运动补偿过滤预测器123,它们可执行对“帧间”信号的分析和预测;以及帧内有向预测分析器和预测生成模块124,其可执行对“帧内”信号的分析和预测。运动估计器122和特性和运动补偿过滤预测器123可通过首先补偿差异的其他源(例如,增益、全局运动、配准),然后进行实际的运动补偿来允许增加可预测性。运动估计器122和特性和运动补偿过滤预测器123也可允许使用数据建模以创建可允许更好的预测的、经合成的帧(超分辨率和投影),然后在此类帧中使用实际的运动补偿。
[0129] 编码器300a的变换编码器子系统340a可执行分析以选择变换的类型和尺寸,并且可包括两个主要类型的组件。第一类型的组件可允许使用参数变换以允许对小至中尺寸的块进行的局部优化变换译码;然而,此类译码操作可能需要一些开销。第二类型的组件可允许全局稳定的低开销译码操作,该译码操作使用诸如DCT之类的通用/固定变换或来自少量变换(包括参数变换)中的选择的基于图片的变换。对于局部自适应变换译码,可使用PHT(参数哈尔变换)。可对4x4和64x64之间的矩形尺寸的2D块执行变换,实际的尺寸可取决于众多因素,例如,经变换的数据是亮度还是色度,是帧间的还是帧内的,以及所使用的变换是PHT还是DCT。可对得到的变换系数进行量化、扫描和熵译码。
[0130] 编码器300a的熵编码器子系统360a可包括多个高效而复杂度低的组件,每个组件的目标是对特定类型的数据(各种类型的开销、运动向量或变换系数)进行高效的译码。该子系统的多个组件可属于低复杂度长度可变译码技术的通用类别,然而,为了实现高效率译码,可对每个组件进行定制优化以获得最高效率。例如,可将一个定制解决方案设计成用于对“经译码/未经译码”数据进行译码操作,另一方案用于“模式和参考类型”数据,又一方案用于“运动向量”数据,其他一个方案用于“预测和译码分区”数据。最后,由于要对其进行熵译码的很大一部分数据是“变换系数”数据,因此,可使用用于高效处理特定块尺寸的多种方法以及可在多张表之间适应的算法。
[0131] 编码器300a的过滤编码器子系统350a可执行对多个参数的分析,并且基于这些参数对重构的图片进行多重过滤,并且可包括若干子系统。例如,第一子系统(块度分析器和解块过滤模块117)可进行解块和抖动以减少或屏蔽任何潜在的块译码伪像。第二示例子系统,即质量分析器和质量恢复过滤模块118,可执行通用质量恢复以减少由任何视频译码中的量化操作而产生的伪像。第三示例子系统可包括运动估计器122和特性和运动补偿过滤预测器模块123,可通过使用适应于内容的运动特性(运动速度/模糊程度)的过滤器以改善来自运动补偿的结果。第四示例子系统,即预测融合分析器和过滤器生成模块126,可允许对预测信号(其可减少预测中(通常来自帧内预测)的虚假伪像)的自适应过滤,进而减少需要对其进行译码的预测差错。
[0132] 编码器300a的编码控制器模块103可负责在给定资源和期望的编码速度的约束下的总体视频质量。例如,在不使用任何捷径的、基于完整RDO(率失真优化)的译码中,软件编码的编码速度可以简单地是计算资源(处理器速度、处理器数量、超线程操作、DDR3存储器等)可用性的结果。在此类情况下,可将预测分区和译码分区以及通过实际编码操作的每一个单个组合输入到编码控制器模块103中,并且可计算针对每一种情况的位率和重构差错,并且基于拉格朗日优化方程,可发送针对正在被译码的每一帧的每一图块的预测和译码分区的最佳集合。基于完整RDO的模式可能导致最佳的压缩效率并且也可能是最慢的编码模式。通过使用来自内容预分析器模块102的内容分析参数,并且使用这些参数以使RDO简化(不测试所有可能的情况)或仅使一定百分比的块经历完整的RDO,可权衡质量和速度以允许更迅速的编码。至此,我们已描述了基于可变位率(VBR)的编码器操作。编码控制器模块103也可包括可在受恒定位率(CBR)控制的译码的情况下被调用的率控制器。
[0133] 最后,编码器300a的预分析器子系统310a可执行对内容的分析以计算对改善视频译码效率和速度性能有用的各种类型的参数。例如,可计算水平和垂直梯度信息(如,Rs、Cs)、方差、每张图片的空间复杂度、每张图片的时域复杂度、场景变化检测、运动范围估计、增益检测、预测距离估计、对象数量估计、区域边界检测、空间复杂度映射计算、焦距估计、胶片粒度估计,等等。由预分析器子系统310a生成的参数可由编码器消费,或可对其进行量化并传递到解码器200。
[0134] 虽然将子系统310a到380a示出为与图3(a)中的编码器300a的特定示例功能模块相关联,但是本文中的编码器300a的其他实现方案可包括子系统310a到380a之间的、编码器300a的功能模块的不同分配。本公开在这方面不受限制,并且在各种示例中,此处的示例子系统310a到380a的实现方案可包括执行仅所示编码器300a的特定示例功能模块的子集、附加的功能模块,并且/或者按照与所示不同的安排方式来执行。
[0135] 图3(b)是根据本公开至少一些实现方案而安排的示例下一代视频解码器300b的示图。图3(b)呈现与图2中所示类似的解码器,并且为了简洁,将不再重复类似的元件。如图3(b)中所示,解码器300b可包括预测解码器子系统330b、过滤解码器子系统350b、熵解码器子系统360b、变换解码器子系统370b、反分割器_2子系统380b、反分割器_1子系统351b、过滤解码器子系统350b和/或后恢复器子系统390b。预测解码器子系统330b可包括特性和运动补偿过滤预测器模块213和/或帧内有向预测生成模块214。过滤解码器子系统350b可包括解块过滤模块208、质量恢复过滤模块209、特性和运动补偿过滤预测器模块213和/或预测融合过滤模块216。熵解码器子系统360b可包括自适应熵解码器模块
202。变换解码器子系统370b可包括自适应逆量化模块203和/或自适应逆变换模块204。
反分割器_2子系统380b可包括译码分区组合器205。反分割器_1子系统351b可包括预测分区组合器207。后恢复器子系统790可包括内容后恢复器模块218和/或自适应图片重组器217。
[0136] 解码器300b的熵解码子系统360b可执行编码器300a的熵编码器子系统360a的逆操作,即可使用被松散地称为可变长度解码的一类技术,对由熵编码器子系统360进行编码的各种数据(开销类型、运动向量、变换系数)进行解码。具体而言,要对其进行解码的各种数据可包括“经译码/未经译码”数据、“模式和参考类型”数据、“运动向量”数据、“预测和译码分区”数据以及“变换系数”数据。
[0137] 解码器300b的变换解码器子系统370b可执行编码器300a的变换编码器子系统340a的操作的逆操作。变换解码器子系统370b可包括两种类型的组件。第一类型的示例组件可支持使用对小至中型块尺寸的参数逆PHT变换,而另一类型的示例组件可支持针对所有块尺寸的逆DCT变换。用于块的PHT变换可取决于对相邻块的、经解码数据的分析。
输出比特流111和/或输入比特流201可携带信息,该信息关于PHT变换的分区/块尺寸以及可将PHT用于要对其进行逆变换的2D块的哪个方向(另一方向使用DCT)。对于纯粹由DCT进行译码的块,也可从输出比特流111和/或输入比特流201中检索分区/块尺寸信息,并将该信息用于应用合适尺寸的逆DCT。
[0138] 解码器300b的反分割器子系统380b可执行编码器300a的分割器子系统320a的操作的逆操作,并且可包括两个反分区子系统:译码分区组合器模块205,其可执行对经译码数据的反分区操作;以及预测分区组合器模块207,其可执行针对预测的反分区操作。此外,如果在编码器300a处将可选的自适应图片组织器模块104用于区域分段或切片,则在该解码器处可能需要自适应图片重组器模块217。
[0139] 解码器300b的预测解码器子系统330b可包括:特性和运动补偿过滤预测器模块213,其可执行对“帧间”信号的预测;以及帧内有向预测生成模块214,其可执行对“帧内”信号的预测。特性和运动补偿过滤预测器模块213可通过首先补偿差异的其他源(例如,增益、全局运动、配准)或创建经合成的帧(超分辨率和投影),然后进行实际的运动补偿来允许增加可预测性。
[0140] 解码器300b的过滤解码器子系统350b可基于由编码器300a发送的多个参数,对重构图片执行多重过滤,并且可包括若干子系统。例如,第一子系统,即解块过滤模块208,可进行解块和抖动以减少或屏蔽任何潜在的块译码伪像。第二示例子系统,即质量恢复过滤模块209,可执行通用质量恢复以减少由任何视频译码中的量化操作而产生的伪像。第三示例子系统,即特性和运动补偿过滤预测器模块213,可通过使用适应于内容的运动特性(运动速度/模糊程度)的过滤器以改善来自运动补偿的结果。第四示例子系统,即预测融合过滤模块216,可允许对预测信号(其可减少预测中(通常来自帧内预测)的虚假伪像)的自适应过滤,进而减少可能需要对其进行译码的预测差错。
[0141] 解码器300b的后恢复器子系统390b是可对经解码视频的知觉质量执行进一步改进的可选块。可响应于由编码器100发送的质量改进参数完成该处理,或者该处理可以是在后恢复器子系统390b处作出的单独决定。根据在编码器100处所计算的、可用于在后恢复器子系统390b处改进质量的特定参数,可以在编码器100处估计胶片粒度噪声和残差块度(甚至在解块操作之后)。至于胶片粒度噪声,如果可计算参数,并且可经由输出比特流111和/或输入比特流201将这些参数发送到解码器200中,则可将这些参数用于合成该胶片粒度噪声。同样,对于编码器100处的任何残差成块伪像,如果可测量它们并且可经由输出比特流111和/或比特流201发送这些参数,则后恢复器子系统309b可对这些参数进行解码并且将其用于可选地在显示之前执行附加的解块操作。此外,编码器100也可访问可能有助于在后恢复器子系统390b中的质量恢复的场景变化、空间复杂度、时域复杂度、运动范围和预测距离信息。
[0142] 虽然将子系统330b到390b示出为与图3(b)中的解码器300b的特定示例功能模块相关联,但是本文中的解码器300b的其他实现方案可包括子系统330b到390b之间的、解码器300b的功能模块的不同分配。本公开在这方面不受限制,并且在各种示例中,此处的示例子系统330b到390b的实现方案可包括执行仅所示解码器300b的特定示例功能模块的子集、附加的功能模块,并且/或者按照与所示不同的安排方式来执行。
[0143] 参考图4到20,讨论了特定图片组、参考帧以及它们对要被预测的帧的依赖关系。NGV视频译码与基于标准的方法不同,因为其自然地将显著的、基于内容的自适应性包括在视频译码过程中以实现更高的压缩。相比之下,基于标准的视频译码方法通常趋向于通过传统方法的自适应和细调来挤压更高的增益。例如,所有基于标准的方法都非常依赖于自适应和进一步微调运动补偿帧间译码作为减小预测差异的主要方式,从而获得增益。另一方面,除了利用由运动补偿导致的帧间差异之外,NGV也利用其他类型的帧间差异(例如,通过补偿自然地存在于典型视频场景中的各种类型的变形操作(增益、模糊/配准、主/全局运动)而产生的帧间差异),并且提取并采用经合成的(超分辨率(SR)、投影插值(PI))帧中捕捉到的、隐藏的空间和时域分辨率。
[0144] 参考图4,通常在视频场景成像时会存在不是由运动导致的亮度的突变,因此,运动补偿自身可能不足以去除时域冗余。例如,亮度变化可能是由实际的物理事件而导致的,例如,相机闪光、眨眼、闪烁或闪光灯、突然关/开灯泡、暴雨中的闪电、诸如淡化或混合之类的编辑效果,等等。在这些情况下,在存在此类变化的帧对之间补偿增益将是有利于压缩的。由NGV译码使用的一种类型的变形预测是增益补偿预测,并且包括:检测并估计增益和/或偏移亮度值;将这些值参数化;将这些值用于编码器处的增益/偏移补偿;将这些值传送到解码器中;并且通过复制编码器处的增益补偿过程,在解码器处将这些值用于增益补偿。
[0145] 作为一个详细的示例,通常在视频场景中,帧到帧之间的差异不仅是由于对象的运动而产生的,而且是由于增益/亮度的变化而产生的。由于诸如淡入、淡出或淡入/淡出之类的编辑效果,有时此类亮度变化可能是全局的。然而,在多得多的情况下,此类亮度变化例如由于戏剧或音乐表演中的闪烁灯光、相机闪光、曝光和彩色闪光灯等产生而是局部的。
[0146] 对帧间亮度变化的补偿(无论是全局的还是局部的)可潜在地改善视频译码时的压缩效率。然而,在视频编码器和解码器两者处应用这些亮度变化参数(增益和偏移),使得两者应当高效地进行通信,且从编码器经由比特流到解码器的位成本低,并且应当使解码器的处理复杂度最小化。过去仅公开了用于全局亮度变化的技术,但是还没有成功地解决对亮度变化的局部补偿问题。
[0147] 下列方程使帧‘t’中的(i,j)位置处的像素st(i,j)的亮度与前一个帧‘t-1’中的相同位置(i,j)处的像素的亮度相关,其中,‘a’和‘b’是增益和偏移因数。假定运动是小幅度的,并且仅对亮度变化建模。
[0148] st(i,j)=a×at-1(i,j)+b (1)
[0149] 取st(i,j)和(st2(i,j))的期望值,并且遵循使当前帧和前一帧的第一和第二时刻相等的方法,则可计算增益‘a’和偏移‘b’的值为:
[0150]
[0151] b=E(st(i,j))-a×E(st-1(i,j)) (3)
[0152] 一旦按照方程(2)计算了‘a’和‘b’,可对其进行量化(用于高效传输)、编码,并将其发送到解码器中。在该解码器处,可将‘a’和‘b’的经解码的、经去量化的值代回到方程(1)中,并且使用先前帧中像素的经解码的值计算先前参考帧的、经增益补偿的修改版本,该经增益补偿的修改版本相比原始的先前帧差错更低,并且随后将其用于生成(增益补偿的)运动补偿预测。将来自经修改的之前的参考帧的对应预测加到(经逆变换和去量化的)经解码的预测差错块中,从而生成最终解码的帧(或帧的块)。
[0153] 对于局部运动补偿,计算多个(a,b)参数集(而不是单个参数集(a,b)),并且遵循帧的哪些部分对应哪些参数的映射,将多个参数集传送到解码器中,并且将这些参数集用于所描述的增益补偿。
[0154] 图4示出使用P-图片402、406、412和F-图片404、408和410(在下文中定义)的图片结构400。如箭头A所示,每张P-图片(或每张图片使其至少部分、分区等)从至少一张先前的P-图片或I-图片预测而来。对于当前,如箭头B所示,假定F-图片与B-图片类似,体现在F-图片可从先前的参考帧和/或后续的参考帧中预测而来。图片结构400包括自适应数量的F-图片、多帧参考预测以及可逐图片或逐分区应用的增益/偏移补偿。例如,如所指出的那样,将时刻‘n’(402)、‘n+2’(406)和‘n+5’(412)处的帧作为P-图片来译码,而将时刻‘n+1’(404)、‘n+3’(408)和‘n+4’(410)处的帧作为F-图片来译码。将‘n+5’(412)处的P-图片示出为使用多参考预测,因为其既像在普通预测中那样可采用来自‘n+2’(406)处的预测,又添加作为先前的预测参考帧的帧‘n’(如箭头C所示的402)。每当P-图片或F-图片具有多个先前的参考帧时,发生多帧参考预测。
[0155] 此类方案与基于H.264/MPEG-4部分10的译码方案的主要区别在于,此类方案使用对帧‘n’和‘n+2’的增益/偏移补偿。例如,可在帧‘n’处估计相比于帧‘n+2’的增益/偏移值,并将该增益/偏移值参数化以用于生成经修改的(增益/偏移补偿)预测帧,对经修改的增益/偏移补偿帧GC(414)(而不是对实际的帧‘n’)执行运动估计/补偿以(作为一个示例)预测帧n+1(404),并且也可将运动估计/补偿用于(而不是使用P-图片402)预测P-图片412。类似地,增益补偿帧GC(416)可以是对帧n+2(406)的修改,并且可用于预测帧n+12(412)。为了清楚起见,作为一个示例,可例如由变形分析器130对原始的(未经译码的)帧执行(增益/偏移,被称为GC)参数的估计,或者可由变形生成器120对经解码的帧执行该估计。然而,需要对‘经解码的帧’执行该补偿,使得解码器可重复该补偿过程。由此,可由经增益补偿、运动补偿的帧GC(414)提供一时间点处的原始帧及其近似之间的差异。然后,可计算该差异,并对该差异进行变换译码,利用比不使用增益补偿时将要使用的更少的位(包括增益参数成本)来进行译码。这也表明了B-图片和F-图片之间的主要差异,体现在:F-图片支持使用经修改的参考帧(在这种情况下,通过使用增益补偿参数来执行对参考帧的修改)。
[0156] 替代地或附加地,在视频场景成像时,可能存在模糊/配准变化,使得运动补偿自身可能不足以去除时域冗余。例如,模糊/配准变化可能是由实际的物理事件导致的,例如,场景中对象的快速移动和/或相机的快速移动、扫描时胶片链齿中的机械失配、固定式相机的振动以及表现为模糊/配准失配的等等此类情况。在这些情况下,在存在此类变化的帧对之间补偿模糊/配准将是有利于压缩的。模糊/配准补偿预测的原理可包括由NGV译码使用的变形预测的类型,并且可包括:检测并估计模糊/配准值;将这些模糊/配准值参数化;将这些模糊/配准值用于补偿编码器处的模糊;将这些模糊/配准值传送到解码器中;通过复制在编码器处的模糊/配准补偿过程,在解码器处使用这些模糊/配准值以进行模糊/配准补偿。
[0157] 作为一个详细示例,下文描述用于对配准和模糊进行补偿的方法,但是,可互换地使用术语。
[0158] 配准补偿
[0159] 固定式视频相机对场景成像可能仍然会因为环境因素(例如,)、来自附近对象的振动、抖动的手或抖晃的拍摄过程导致(而不是由于场景的全局移动或场景中大型对象的运动导致)帧与帧之间不同的、摇晃的或不稳定的视频。这导致帧与帧之间的配准差异,(除了诸如增益、全局/主运动和局部运动补偿之类的其他形式的补偿之外)对该配准差异的补偿也会改善视频译码的压缩效率。
[0160] 对于计算当前帧和先前帧之间的配准参数,可采用维纳(Wiener)过滤。使x(n)是输入信号,y(n)是输出,并且h(n)表示过滤器系数。
[0161] 过滤器输出:
[0162] 误差信号:e(n)=d(n)-y(n) (5)
[0163] 在矩阵记号中,h是过滤器系数向量。(源帧和参考帧之间)交叉相关行向量为:
[0164] Rdx=E[d(n)x(n)T] (6)
[0165] (基于块数据的)自相关矩阵为:
[0166] Rxx=E[x(n)x(n)T] (7)
[0167] 然后,用于求解h的Wiener Hopf方程按如下方式操作。Wiener Hopf方程确定均方误差方面的最优过滤器系数,并且所得到的过滤器被称为‘维纳’(‘Wiener’)过滤器。
[0168]
[0169] 模糊补偿
[0170] 对场景的快速相机摇摄(pan)会由于电荷来及而导致模糊的图像。此外,即便相机是静止或运动的,如果场景涉及快速移动的对象(例如,足球比赛中的足球运动员),则这些对象会模糊地出现,因为成像的时域分辨率不够。在上述两种情况下,在其他形式的补偿之前,或结合其他形式的补偿来补偿模糊可改善视频译码的压缩效率。
[0171] 对于运动模糊估计,可使用Lucy-Richardson方法。这是用于连续地在迭代i处,使用模糊运算符B(使用估计模糊向量的模糊帧)和伴随算符B*,从源帧Y中计算约化的模糊帧(X)的迭代算法。可粗略地认为运算符B*与B相同,因为可由B替换B*而取得大致相同的视觉质量。
[0172]
[0173] 因此,此类方案和基于H.264/MPEG-4部分10的译码的方案之间的又一主要差异可以在于,将对由经修改的BC(RC)帧418和420所示的帧‘n’和‘n+2’的模糊/配准补偿用于分别预测帧404和412。例如,可在帧‘n’处估计相比于帧‘n+2’的模糊/配准值,将该模糊/配准值参数化,并将其用于生成经修改的(模糊补偿)预测帧,并且对经模糊/配准补偿的帧(而不是实际的帧‘n’)执行运动估计/补偿。如上所述,为了清楚起见,可对原始的(未经译码的帧)或对经解码的帧进行(模糊,被称为BC)参数估计,然而,需要对‘经解码’的帧执行该补偿,使得解码器可重复该补偿过程。由此,计算一时间点处的原始帧及其近似之间的差异以及经模糊/配准补偿的、经运动补偿的帧,并且利用比不使用模糊/配准补偿时用得更少的位(包括模糊参数成本)对它们进行变换译码。这也表明了B-图片和F-图片之间的主要差异,体现在:F-图片支持使用经修改的参考,在这种情况下,通过使用模糊/配准补偿参数来执行对参考帧的修改。将会理解,可替代经增益补偿修改的帧GC 414和416,或除经增益补偿修改的帧GC 414和416之外还使用经修改的帧BC 418和420。
[0174] 在用于替代地或附加地对帧进行变形的又一方法中,在对视频场景进行成像时,在全局/主运动中可能存在可独自阻止运动补偿,并且可能不足以去除全局时域冗余的变化。例如,可由实际的物理事件导致全局/主运动中的这些变化,这些实际的物理事件包括:平移、放大/缩小、或相机的旋转或倾斜和/或表现为全局/主运动的大型对象的运动。在这些情况下,在存在此类变化的帧对之间的全局/主运动补偿将是有利于压缩的。全局/主运动补偿预测的原理包括使用由NGV译码使用的变形预测的类型,并且可包括:检测并估计帧的全局/主运动;进行参数化操作;并且将运动数据用于在编码器处的全局/主运动的补偿;将其传送到解码器;并且通过在编码器处复制全局/主运动补偿过程以在解码器处使用它进行补偿。
[0175] 作为一个详细示例,由于视频中的全局运动可能对基于预测的块提出挑战(由于由平移运动模型造成的较大量的预测以及显著数量的运动向量开销),因此开发了由于能够更好地适应非平移/复杂运动的潜能而直接估计/补偿全局运动的替换方法,并且现在根据需要,运动参数的更紧凑表示是可用的,例如,每张图片一次。在用于全局运动的运动模型的选择之间,提供显著益处的两个模型是仿射模型和透视模型。仿射模型使用六个参数,并且能够处理大范围的复杂运动,而透视模型更复杂也更灵活,但是可使用多至八个参数。仿射模型对于许多情况可能是足够的,并且可允许用于诸如平移、缩放、剪切和旋转这些类型的运动的全局补偿。
[0176] 在数学上,由使用仿射参数a、b、c、d、e和f的下列方程来描述仿射变换过程,从而将先前帧中的点集(x,y)映射至经修改的点集(x’,y’)。
[0177] xi′=a.xi+b.yi+c (10)
[0178] yi′=d.xi+e.yi+f (11)
[0179] 为了高效地将全局运动参数传送至解码器,将该模型作为3个轨迹进行传送:一个针对图片的左上角,一个针对图片的右上角,一个针对图片的左下角。针对虚拟图片计算(固定点算法)仿射参数,假定该虚拟图片具有大于经译码图片的、最接近2的幂的宽度和高度。这消除了解码器处所要求的划分。
[0180] 假定对于三个顶点(x0,y0)、(x1,y1)和(x2,y2),给出对应的运动轨迹mt0、mt1和mt2,并且可将这些运动轨迹表示为(dx0,dy0)、(dx1,dy1)和(dx2,dy2)(假设以1/8像素单位计)。则可按下列方式计算仿射参数A、B、C、D、E和F。
[0181] C=dx0 (12)
[0182] F=dy0 (13)
[0183] A=W'*((x1+dx1)-(x0+dx0))/W (14)
[0184] B=W'*((x2+dx2)-(x0+dx0))/W (15)
[0185] D=H'*(((yl+dyl)-(y0+dy0))/H) (16)
[0186] E=H'*(((y2+dy2)-(y0+dy0))/H) (17)
[0187] 虽然使用基于仿射模型的全局运动估计/压缩(GME/C)对于具有遍及对基于块的平移运动的使用的全局运动的场景是显著的改善,但是实际上组合基于块的局部运动和全局运动两者以获得最佳的译码效率结果。此外,仿射模型也可应用于对场景中的非重叠块或区域/对象的运动补偿。这导致多个全局运动参数集,并且将该过程称为执行主运动补偿(DC)。
[0188] 在此,此类方案与基于H.264/MPEG-4部分10的译码方案的主要区别在于,使用对帧‘n’(402)和‘n+2’(406)的全局/主运动补偿。例如,相比于帧‘n+2’(406),可在帧‘n’(402)处估计全局/主运动值,并将这些值参数化,以用于生成经修改的(经全局/主运动补偿的)预测帧422或424,从而分别预测帧404和412,并且不是对实际的帧‘n’(402)执行运动估计/补偿,而是对例如经全局/主运动补偿的帧422执行运动估计/补偿。为了清楚起见,可对原始的(未经译码的)帧或对经解码的帧执行(全局/主运动,被称为DC)参数估计,然而,如上文做所指出,需要对‘经解码的帧’执行该补偿,使得解码器可重复该补偿过程。由此,计算一时间点处的原始帧及其近似、经全局/主运动补偿的、经运动补偿的帧之间的差异,并且利用比不使用全局/主运动补偿时用得更少的位(包括模糊参数成本)对它们进行变换译码。这也表明了B-图片和F-图片之间的另一主要差异,体现在:F-图片支持使用经修改的参考(在这种情况下,通过使用全局/主运动补偿参数来执行对参考的修改)。可单独地或按任意组合来执行这些变形策略,例如,单独地执行GC、BC或DC中的每一个;将所有三个组合在一起以形成三个经修改的帧;或者将它们中的任意两个组合在一起以形成两个经修改的帧。
[0189] 借助于序列400,将会理解经修改的帧替代主序列中的对应帧,或除主序列中的对应帧之外还可使用经修改的帧,并且F-图片和P-图片两者都可将经修改的帧用作它们的参考帧。由此,作为一个替代性示例,经变形的帧414、418和422可以不作为F-图片404的参考而用作P-图片406的过去参考帧,或者可以除了作为F-图片404的参考外,还用作P-图片406的过去参考帧。同样,可将经变形的帧416、420和424用作F-图片404的未来参考帧和/或F-图片408和410的过去参考帧。由此,将理解存在被发现对译码有益的许多不同的替代方案,而不限于这些附图中所示。
[0190] 序列400也展示了可利用自适应模式或预测技术来使用这些F-图片,在该自适应模式或预测技术中,两个锚(anchor)帧(例如,两张P-图片或I图片和P-图片,或其他F-图片)之间的F-图片的数量可以发生变化。因此,在P-图片402和406之间仅存在一张F-图片,而在P-图片406和412之间存在两张F-图片。作为一个示例,可将锚帧之间的F-图片的数量限制为零到四,并且该数量可取决于帧序列中对象的运动速度。特别地,F-图片可以是对于译码效率最高的帧,因为相比任何其他图片类型,F-图片通常可以要求最少数量的位。然而,这些帧中对象的运动越快,就需要更多细节以至少在这些锚帧处显示那些运动物体。因此,对于非常慢的运动,可在锚帧之间使用许多F-图片,而快速运动可能将锚帧之间所允许的F-帧的数量减少到很少或没有,从而生成运动对象的、可接受的、高质量的图像。
[0191] 参考图5,除了支持变形预测(增益、模糊/配准、全局/主运动)图片之外,还支持合成预测(超分辨率(SR)和投影插值(PI))图片。通常,超分辨率(SR)是用于使用视频的许多过去帧帮助填充缺失信息来创建单个视频帧的高分辨率重构图像的技术。好的超分辨率技术的目标在于,在测试到具有已知的更高分辨率的视频的时候,能够生成比单独使用上采样操作更好的重构图像。本文中的超分辨率生成技术可使用经译码视频编解码器数据来创建环内超分辨率帧。如名称所暗示的那样,在译码循环内再次使用该环内超分辨率帧。在译码循环中SR的使用使得在低分辨率视频译码中并且进而在重构的超分辨率视频中提供了显著的增益。该过程使用组合并使用编解码器信息(如,模式帧内、运动、系数等)和当前经解码的帧和过去帧(或未来帧(如果可用))的算法以创建正被解码的当前帧的高分辨率重构。由此,所提出的而技术是快速的,并且产生良好的视觉质量。
[0192] 对于其中运动慢而内容相对精细(有许多边缘、纹理等)的序列,生成用于预测的超分辨率帧的能可提供更高的运动补偿精度,进而允许更高程度的压缩。如图5中所示,以图示示出过程500,其中,将生成SR预测的原理应用于作为由NGV译码使用的合成预测类型的P-图片。在这种情况下,编码器和解码器两者都从先前可得到的、经解码的帧和数据中生成经合成的帧。通过混合在‘n’处的上采样的、经解码的P帧516和使用‘n-1’处的先前的SR帧508而构建的运动补偿图片514来生成在水平和垂直维度上尺寸都是帧‘n’504两倍的SR帧518。对先前的SR帧508解交织,并且在经解交织的块510处,通过使用当前的P-图片504将先前的SR帧508与运动估计值组合。将块510用于运动补偿以形成经运动补偿的、解交织的块512,然后,将将这些经解交织的块重新交织到块上以形成运动补偿图片514。也通过箭头D示出在帧n+1处针对P-图片的多参考预测。
[0193] 下文中参照图12讨论被称为投影插值(PI)预测帧生成的另一类型的合成预测,并且该类型是由NVG译码中的、基于内容的P-图片和F-图片支持的各种经修改的参考预测中的一种。投影插值纯粹地或大体上从来自一个或多个其他参考帧中的数据中形成经修改的参考帧,但是其自身不是用于显示的图像或图片。作为一个示例,它仅用作参考帧。
[0194] 参考图6,根据本公开的至少一些实现方案来安排针对用于视频译码的计算机实现的方法的一个示例过程600。过程600可包括由操作602、604、和/或606中的一个或多个所示出的一个或多个操作、功能或动作。过程600可形成下一代视频译码过程的至少部分。作为非限制性示例,过程600可形成由图1中的编码器系统100、图2中的解码器系统和/或图1-3、7-8、10-11、15-16和/或22-24中的其他译码器系统中的任何系统所执行的下一代视频编码过程的至少部分。
[0195] 过程600可包括“接收针对包括像素数据的帧序列的一组图片的数据,该序列具有显示顺序,并且其中,每一帧与该显示顺序的时域位置相关联”602。过程600也可包括“使用帧间预测生成至少一张当前的F-图片,包括:提供从先前的预测参考帧和/或后续的预测参考帧中形成当前的F-图片的至少一部分的选项;其中,先前的和后续的相对于当前的F-图片的位置,并且在该序列之内”604。过程600也可包括“生成针对至少一张当前的F-图片的该部分的运动数据,包括:将至少一个经修改的预测参考帧用于生成针对当前F-图片的该部分的运动数据,并且通过使用变形技术和/或合成技术来修改该至少一个经修改的预测参考帧”606。如本文中所解释的那样,经修改的参考是指参考帧的变形和/或合成,其中,变形可包括增益或偏移补偿(GC)、模糊或配准补偿(BC或RC)和/或主运动或全局运动补偿(DC)以及可包括进来的其他补偿。合成包括本文中所描述的超分辨率(SR)和/或投影插值(PI)以及其他类似技术。
[0196] 参考图7,虽然图1中示出更完整的示例NGV编码器,但是可将相关的编码器子系统700称为用于生成针对本文中的内容自适应P-图片和F-图片的预测的运动估计器、补偿预测器和图片存储(MECPPS)。为了保持对核心概念的聚焦,进行了一些简化,例如,没有示出用于计算直接模式(用于‘预测’,并且作为‘跳过’模式的默认)的操作。该MECPPS子系统700可具有若干组件,例如:帧存储(多参考帧存储和帧选择器702),其存储经解码的帧;以及该帧存储相关联的逻辑(用于模式多参考帧预测的依赖性逻辑704),其允许基于要生成的、经修改的多参考预测,对来自帧存储的帧进行编索引。编码器子系统700也具有实际计算经变形或经合成的预测帧或块的单元706(被称为变形和合成参数估计器和帧生成器)。运动估计器708和运动补偿(MC)预测器和MC插值预测器710也可以是子系统700的部分。将用于计算经变形或经合成的帧的参数mpar和spar发送到解码器中。编码器处的最终结果是生成从中选择的以及选择以应用于块的、多个经修改的预测候选。这些候选中的一些是实际的经修改的预测块(pblkl、...、pblkn),而另一些是通过组合实际的经修改的块或通过直接预测模式而产生的块而形成的插值的经修改的预测块(pblki1、…、pblkik)。
[0197] 参考图8,解码器子系统800(运动补偿器和预测器图片存储(MCPPS))可包括解码器中对应于形成编码器的子系统700(图7)的相应部分的、并且表示如何在该解码器处的P-图片和B-图片中生成经修改的预测信号的部分。和子系统700的情况相同,出于清楚的目的,省略一些细节,例如用于计算直接模式中的预测的、运动向量的缩放和变符。该解码子系统800可具有:帧存储(多参考帧存储和帧选择器802),其存储经解码的帧;以及该帧存储相关联的逻辑(用于模式多参考帧预测的依赖性逻辑804),其允许基于要生成的、经修改的多参考预测,对来自帧存储802的帧进行编索引。子系统800也可包括实际计算经变形或经合成的预测帧或块的单元806(被称为变形和合成参数估计器和帧生成器)以及运动补偿预测器(MC)预测器和MC插值预测器808。在解码器处,经由比特流接收用于计算经变形或经合成的帧的参数mpar和spar。对实现访问多个参考预测中的正确的帧的帧列表和帧存储的操作与利用子系统700进行编码的对应部分相同或类似。
[0198] 参考图9,可将链式策略与F-图片一起使用(或者其也可用于扩展到B-图片),那被称为链式预测。虽然链式预测可适用于任何图片类型,但是链式预测的概念尤其与F-图片相关(并且也可应用于B-图片)。链式预测实际上是多参考预测概念的扩展,需要额外告诫,链式预测启用通过包括紧接的先前经译码的F-图片的其他F-图片,对F-图片进行的完整预测。因此,虽然链式预测承担F-图片对其他F-图片的更高依赖性的代价,但是其可增加预测效率。
[0199] 例如,IPFF图片译码结构900使用锚帧中的每一对之间的两张F-图片。具体而言,将时刻‘n’(902)、‘n+3’(908)和‘n+6’(914)处的帧作为P-图片来译码,而将时刻‘n+1’(904)、‘n+2’(906)、‘n+3’(910)和‘n+5’(912)处的帧作为F-图片来译码。强调F-图片中所使用的预测,时刻‘n+1’(904)处的F-图片使用来自先前紧接的F-图片(在时刻‘n-1’处,未示出),并且由预测链920上的箭头922指示)的附加预测。时刻‘n+2’(906)处的F-图片使用来自时刻‘n+1’(904)处的先前紧接的F-图片的、由箭头924指示的附加预测,而时刻‘n+4’(910)处的F-图片使用来自时刻‘n+2’(906)处的先前紧接的F-图片的、由箭头926指示的附加预测。时刻‘n+5’(912)处的F-图片使用来自时刻‘n+4’(910)处的先前紧接的F-图片的、由箭头928指示的附加预测。将F-图片的这种预测类型称为链式预测。
[0200] 显然,链式预测920具有增加压缩效率的潜力,因为可从先前紧接的F-图片中附加地预测出一些F-图片。虽然可将这种预测类型认为是多参考预测的形式,但是甚至在多参考预测中,F-图片(或标准中的B-图片)一般将仅从先前经解码的P-图片中进行预测。
[0201] 然而,链式F-图片在译码依赖性有所增加的意义上确实表现出限制,增加的译码依赖性在用于软件编码/解码的多线程操作中,会在获得高性能效率方面产生一些问题。为了处理该问题,限制图片的链接(chaining)使得一些但不是全部图片使用链式译码是可能的。由实线箭头924和928指示其一个示例,其中,如实线箭头924指示,参照‘n+1’(904)处的F-图片,对时刻‘n+2’(906)处的F-图片进行链式译码,并且如实线箭头928指示,参照时刻‘n+4’(910)处的F-图片的,对时刻‘n+5’(912)处的F-图片进行链式译码。然而,如可在这种情况下省略的虚线箭头922、926和930指示,可不对时刻‘n+1’(904)和‘n+4’(910)处的F-图片进行链式译码。或者在链式译码中,相反的情况也是可能的,其中,虚线箭头922、926和930是存在的,而省略实线箭头924和928,使得可对时刻‘n+1’(904)和‘n+4’(910)处的F-图片进行链式译码,但是可不对‘n+2’(906)和‘n+5’(912)处的F-图片进行链式译码。事实上,这将允许在分开的线程上对‘n+1’(904)和‘n+2’(906)处的F-图片进行编码/译码,并且对于‘n+4’(910)和‘n+5’(912)也是类似的。
[0202] 随后,图片结构900可将本公开中的经修改的多参考译码932和本公开中的、针对F-图片的链式译码920相组合。使用链式译码和多参考译码的组合来示出‘n+4’(910)、‘n+5’(912)和‘n+6’(914)处的F-图片。因为F-图片910、912和914每个都将P-图片902用作附加的参考帧,因此存在多参考译码。如虚线箭头934、936和938所示。将会理解,也可将这些原理应用于与针对B-图片的链式译码相结合的H.264的普通多参考译码中。
[0203] 还将理解,链式的和多参考的选项可存在于任何组合中,无论存在整个链还是仅存在沿着该链的部分。因此,对于组合的多参考和链式译码的情况,可通过选择性地使用F-图片的链接(使得假如仅链接一半F-图片)可达到译码效率增益和增加的依赖性之间的妥协。因此,可利用上文所解释的实线箭头依赖性924和928来提供多参考依赖性,其中,将‘n+5’处的F-图片链接至‘n+4’处,并且将‘n+2’处的F-图片链接至‘n+4’处,但是,不链接‘n+1’和‘n+4’处的F-图片。如先前所述,另一替代方案将与所示的链接操作相反,换言之,其中,存在虚线箭头而不存在实线箭头,使得可将‘n+1’处的F-图片链接至‘n-1’处,并且类似地,可将‘n+4’处的F-图片链接至‘n+2’处,但是其中,可不链接‘n+2’和‘n+5’处的F-图片。
[0204] 参考图10,被称为‘运动估计器、补偿预测器和图片存储(MECPPS)’的、用于生成针对本文中的内容自适应P-图片和F-图片的预测的编码器子系统1000。为了保持对核心概念的聚焦,进行了一些简化,例如,没有示出用于计算直接模式(用于‘预测’,并且作为‘跳过’模式的默认)的操作。编码器子系统1000可包括:帧存储(多参考帧存储和帧选择器)1002,其存储经解码的帧;其相关联的逻辑(用于包括链式预测的模式多参考帧的依赖性逻辑)1004,其允许根据需要,基于包括链式预测的经修改的多参考预测,对来自帧存储的帧进行编索引;以及实际计算经变形或经合成的预测(变形和合成参数估计器和帧生成器)帧或块的单元1006;运动估计器(Motion Estimator)1008;以及运动补偿预测器(运动补偿(MC)预测器和MC插值预测器)1010。将用于计算经变形或经合成的帧的参数mpar和spar发送到解码器中。编码器处的最终结果是生成从中选择的以及选择以在块上适用的、多个经修改的预测候选。这些候选中的一些可以是实际的经修改的预测块(pblk1、...、pblkn),而另一些可以是通过组合实际的经修改的块或通过直接预测模式而产生的块而形成的插值的经修改的预测块(pblki1、…、pblkik)。
[0205] 参考图11,解码器子系统1100可包括:帧存储(多参考帧存储和帧选择器)1102,其存储经解码的帧;其相关联的逻辑(用于包括链式帧预测的模式多参考的依赖性逻辑)1104,其允许根据需要,基于包括链式预测的经修改的多参考预测,对来自帧存储的帧进行编索引;以及实际计算经变形或经合成的预测(变形和合成参数估计器和帧生成器)帧或块的单元1106;以及运动补偿预测器(运动补偿(MC)预测器和MC插值预测器)1108。在解码器处,经由比特流接收用于计算经变形或经合成的帧的参数mpar和spar。对启用访问多个参考预测中的正确的帧的帧存储的编索引操作可以与针对编码器子系统1000的编索引操作相同或类似。
[0206] 参考图12,提供具有从帧1202到1212均匀地编号的图片序列1200以示出生成和使用投影插值帧(PI-图片)的原理。为了简便,假定F-图片像B-图片那样行为,并且可参考两个锚(过去的一个以及将来的另一个)(这仅是一个示例情形)。然后,对于每一张F-图片,可由被称为投影插值的特定类型的插值使用将来和过去的参考锚帧来生成位于一起的、经插值的帧。投影插值考虑具有在帧序列上具有非恒定(或非线性)速度的对象运动或相对大幅度的运动的对象运动。PI使用取决于从要被替换的、位于一起的或当前的帧到要正在被用于插值的两个参考中的每一个的距离的加权因数。因此,确定与这两个距离成比例的最佳拟合运动向量,通常给予较近的参考更多权重。为实现此目的,对于一个示例,使用最小二乘估计来确定两个比例因子(x因子和y因子)。然后,可允许进一步的运动补偿以调节小幅度的失配。
[0207] 例如,对于时刻‘n+1’(1204)处的F-图片,在此时刻,在同一处,使用时刻‘n’(1202)和‘n+2’(1206)处的锚或参考帧生成PI-图片1214。类似地,对于时刻‘n+3’(1208)和‘n+4’(1210)处的F-图片,可使用时刻‘n+2’(1206)和‘n+5’(1212)处的锚帧来生成对应的PI-图片1216和1218。当合成PI-图片以及时地对应每一张F-图片时,对于每一张未来的F-图片,该过程可重复。然后,可将对应的经合成的PI-图片1214、1216和1218用作以与两个参考锚用于预测的方式相同或类似的第三参考。一些预测分区可直接使用预测参考,而其他预测分区可隐式地使用预测参考诸如以生成二向预测(bi-prediction)。图12也示出可将多参考预测1232(以可选的虚线示出为具有依赖关系
1234、1236和1238)与普通预测1220和PI-图片预测组合。因此,不是原始的F-图片,而是经合成的PI-图片可用于结合多参考预测以及结合两个参考锚进行预测。
[0208] 如所示出的那样,一旦建立了PI-图片,则可将在例如PI-图片1214上的块1224和参考帧1202和1206上的块1222和1228之间的运动估计用于确定PI-图片1214上的运动向量mv-c1,该运动向量mv-c1针对PI-图片1214上的分区或块A-c1的移动,并且通过上述示例方法来自参考帧上的位置1220和1226处。
[0209] 参考图13,至少具有从帧或图片1302到1320均匀地编号的示例图片组结构1300示出P-图片1304和1312之间的F-图片1306、1308和1310,以及P-图片1312和1320之间的F-图片1314、1316和1318。该图片组1300使用各种经修改的(经变形或经合成的)多参考预测。具体而言,该示例图片结构1300示出所有经修改的参考预测类型被组合在一起的一个示例。例如,对于对时刻‘n+8’(1320)处的P-图片的译码,时刻‘n+4’(1322)处的配准补偿RC(与第一1/4超分辨率SR0相同)图片、三个其他SR图片SR1(1324)、SR2(1326)和SR3(1328)(其各自表示1/4分辨率)、都对应于相同的时刻‘n+4’的经增益补偿的帧GC(1330)和经主/全局运动补偿的帧DC(1332)、时间间隔‘n+2’处的经配准补偿的帧RC(1336)和时刻‘n’处的经配准补偿的RC帧(1334)都可用作预测参考。此外,通过虚线箭头1338和1340也示出针对P-图片的多参考预测。同样,在此图片配置中,将每第四张图片示出为P-图片,并且对图片的译码采用两层级的分层/金字塔结构1342,将所有非参考F-图片(其不用于预测其他图片)示出为小写的‘f-图片’,相比之下,将大写字母的‘F-图片’用作参考。换言之,在该金字塔策略中,存在至少两个层级,其中,F-图片具有先前的参考帧和后续的参考帧,并且这两个参考帧中的至少一个是具有该参考帧自身的之前和后续的参考帧的F-图片。可能具有多于两个的层级,作为一种形式,具有一至四个层级。也可将该金字塔式预测表征为针对F-图片的多参考预测。
[0210] 参考图14,另一示例图片组1400至少具有均匀编号的帧1402到1420,并且使用两层级的分层/金字塔配置1422,以及针对F-图片的多参考预测。例如,为了预测时刻‘n+6’(1416)处的F-图片,可不将下列各项在主序列中对应的帧用作参考帧,而将下列各项用作参考帧,或者除下列各项在主序列中的对应帧之外,还将下列各项用作参考帧:SR0(与经配准补偿的RC预测相同)(1424)和三个其他超分辨率帧(或块)SR1(1426)、SR2(1428)和SR3(1430);全都作为时刻‘n+8’处的后续参考帧的经增益补偿的GC预测(1432)和经主运动补偿的DC预测(1434);时刻‘n+6’(1436)处的、当前和先前时刻的PI-图片;时刻‘n+4’处甚至更早时刻处的经配准补偿的RC(1438)、经增益补偿的GC(1440)和经主运动补偿的DC预测帧(1442);以及时刻‘n+2’处的经配准补偿的预测RC(1444)(尽管未示出箭头)。通过虚线箭头1446和1448也示出多帧P-图片预测。
[0211] 参考图15,可向编码子系统1500提供经修改的(经变形或经合成的)多参考和分层图片译码结构运动估计和补偿预测子系统,其也被称为‘运动估计器、补偿预测器和图片存储(MECPPS)’,并且用于生成针对本文中的内容自适应P-图片和F-图片的预测。为了保持对核心概念的聚焦,已执行了一些简化,例如,没有示出用于计算直接模式(用于‘预测’,并且作为‘跳过’模式的默认)的操作。子系统1500具有多个组件,例如:帧存储(多参考帧存储和帧选择器)1502,其存储经解码的帧;帧存储1502的相关联的依赖性逻辑1504,其用于分层的图片组结构或简单分层结构依赖性,并且允许根据需要,基于F-图片金字塔分层结构中的、经修改的多个参考预测,对来自帧存储1502的帧进行编索引;实际计算经变形或经合成的预测(变形和合成参数估计器和帧生成器)帧或块的单元1506;运动估计器(Motion Estimator)1508;以及运动补偿预测器(运动补偿(MC)预测器和MC插值预测器)1510。
[0212] 将用于计算经变形或经合成的帧的参数mpar和spar发送到解码器中。编码器处的最终结果是生成从中选择以形成块的多个经修改的预测候选,这些候选中的一些是实际经修改的预测块(pblk1、…、pblkn),而另一些是通过组合实际经修改的块或通过直接预测模式而生成的块来形成的、插值的经修改的预测块(pblki1、…、pblkik)。
[0213] 参考图16,可向解码器子系统1600提供经修改的(经变形或经合成的)多参考和分层图片译码结构运动补偿预测子系统。该解码器子系统1600具有多个组件,例如:帧存储(多参考帧存储和帧选择器)1602,其存储经解码的帧;其相关联的依赖性逻辑(用于分层图片组结构中的模式多参考的依赖性逻辑)1604,其允许按照需要,基于F-图片金字塔分层结构中的F-图片中的经修改的多参考预测,对来自帧存储的帧进行编索引;以及变形和合成单元1606,其实际上计算经变形或经合成的预测(变形和合成参数估计器和帧生成器)帧或块。该子系统1600也可具有运动补偿预测器(运动补偿(MC)预测器和MC插值预测器)1608。在解码器处,经由比特流接收用于计算经变形或经合成的帧的参数mpar和spar。对实现访问多个参考预测中的正确的帧的帧存储的编索引操作与子系统1500中所示的相应部分相同或类似。
[0214] 参考图17-21,以各种金字塔结构示出图片组,并且解释用于该分层结构的记号。参考图17,示出对视频序列1700的译码操作的详细示例具有八张图片的重复图片组1702。
将每一帧或图片按显示顺序而非译码顺序编号为1-16,并且以图片类型(I、P、F或f)进行标记,其中,大写的F指示可将该F-图片用作参考帧,而小写的F-图片不用作参考帧。图片类型记号的上标指示该帧驻留在哪一个金字塔或分层层级或等级上,进而指示也由依赖性箭头1704示出的参考帧依赖关系。在图片8-16下面提供索引1706以示出哪些多参考帧或图片可用作索引位于其下的图片编号的参考。上标编号如上文所述,而下标编号是按显示顺序(而非译码顺序)的帧编号。例如,图片8可仅由 (其也可称为I00)来预测,或换言之,其取决于 而图片16取决于预测是本文中所解释的“多个”模式还是“帧间”模式,可由图片16下面的列所示的 和 中的至少一个或以其他方式的任意组合来预
测,或者可取决于 和 中的至少一个或以其他方式的任意组合。可由依赖性逻辑模块128或本文中所述的任何依赖性逻辑模块使用和/或存储此类索引。
[0215] 此处的该内容自适应P-图片和F-图片使用尺寸为8的固定图片组(PG)(1702),该尺寸为8的固定图片组(PG)(1702)包括P-图片(等级0)8或16,和三层级金字塔分层结构的F-图片,其中,一张(等级1)参考F-图片4或12位于分层结构的第一层级中,两张(等级2)参考F-图片((2和6)或(10和14))位于分层结构的第二层级中,并且四张非参考(等级3)f-图片(1、3、5、6或9、11、13和15)位于分层结构的第三层级中。对于该图片组中的每一张图片,也示出针对多参考预测的参考帧依赖关系。例如,在完成对前8个帧的译码之后,将时刻‘16’处的帧作为P-图片来译码,并将其作为P-图片(P016)来译码。在其下方示出如上文所解释的译码依赖关系。可以注意到,上标是指帧的等级顺序,而下标是指帧所位于的时刻。
[0216] 同样结合图片组1700,在下面示出每张图片的等级顺序分层结构和针对经修改的多参考预测的依赖关系(在图17上未示出经修改的参考)。在序列1700中示出针对多参考P-图片和F-图片的、被修改以生成用于预测参考的经变形的帧或生成用于预测参考的经合成的帧的、经修改的多参考预测的示例。
[0217] 针对P016和F112的经修改的多参考预测
[0218] 1.P016针对‘帧间’模式的经修改的多参考预测:MR0n=SR0(P08)、MR1n=RC(F14)、0 0 0 0
MR2n=RC(I0)、MR3n.、MR5n=SR1(P8)、MR6n=SR2(P8)、MR7n=SR3(P 8)、MR0d=
0 0
DC(P8)、MR0g=GC(P8)
[0219] 2.P112针对‘帧间’模式的经修改的多参考预测:MR0n=RC(P08)、MR7n=PI(F112)、0 1 0 0 0
MR3n=SR0(P16)、MR1n=RC(F4)、MR5n=SR1(P16)、MR6n=SR2(P16)、MR7n=SR3(P16)、
0 0 0 0
MR0d=DC(P8)、MR3d=DC(P16)、MR0g/MR3g=GC(P8)/GC(P16)
[0220] 可将这些示例代码(或代码本条目)用于本文中所描述的依赖性逻辑模块所使用的编索引表,并且可将这些示例代码用于将所预测帧的依赖关系追溯到其经修改的参考帧,以及用于跟踪这些帧中的任意帧之间的关系。下列表1-3提供可供使用的进一步的示例代码。对于用于经修改的参考的代码,M代表经修改的,而代码R#(诸如,R0、R1、R2等)是针对正在被分析的当前帧或图片(curr_pic)的先前经解码的帧(按照可通过变形或合成进行修改的译码顺序)的参考帧编号。该编号是指按译码顺序(而非显示顺序)的、当该帧与正被分析的当前帧间隔开来时的相对于彼此的参考帧的计数。与当前帧最近的帧是R0。作为一种形式,该计数仅包括要被修改的参考帧,并且不包括沿该序列的任何其他散布的F-图片或B-图片。同样,两个不同的计数可能存在,一个用于在对按译码顺序的当前帧的时刻之前(过去)延伸的参考帧进行计数;一个用于要在按译码顺序的当前帧之后(未来)进行译码的参考帧。当提供用于修改的参数,并且对该参数进行编码以例如用于对经修改的帧的后续的解码和重构的时候,可将补偿类型指示为类型b(模糊)、g(增益)、r(配准)、d(主运动或全局运动)或n(对于没有参数可用于经修改的参考帧)。
[0221] 则在上文所提供的示例中,帧P016具有具有9个可能的参考帧,其中,MR0n=0 0 0
SR0(P8)是指:在经修改的帧R0处,在时刻和等级P8处,相对于当前帧P 16,没有参数被提供,并且经修改的帧R0是编号为0(SR0)的超分辨率帧(或第一块或第一1/4)。MR1n=
1 1
RC(F4)是指经修改的帧R1不具有参数,并且是时刻和等级F4处的经配准补偿的帧。在当配准已经是理想的并且不需要补偿的这种情况下,没有参数可以被指示。通过此示例,容易理解其他示例。也将理解,如上所述,单个帧或时间上的瞬间可具有多个经修改的参考,因
0 1
此多个MR0帧针对P16帧。这些相同的代码也适用于针对当前帧F 12的九个经修改的帧。
[0222] 参考图18,序列1800是视频序列1700的替代序列,并且是示例视频序列1800,该视频序列1800示出对具有十二张图片或帧的重复图片组1802的视频的译码,这十二张图片或帧示出经修改的多参考预测中的每张图片的等级顺序分层结构。十二帧的图片组1802对每个图片组(在此是P012)使用一张P-图片(等级0)(此处为P012),并且使用三层级F-图片分层结构,该结构具有:分层结构的第一层级中的一张(等级1)F-图片(F16);分层结构的第二层级中的两张(等级2)F-图片(F23和F29);以及锚(或参考)帧的每一对之间的、分层结构的第三层级中的八张非参考(等级3)f-图片。在所示出的示例中,两张f-图片(例如,F31和F32)位于两个锚帧(例如,I00和F23)之间,并且沿着该序列重复该图案。另外,针对多参考预测的详细依赖关系和实际经修改的预测虽然未示出,但是也遵循与视频序列1700(图17)的逻辑类似的逻辑。
[0223] 参考图19,另一示例替代的视频序列1900示出对使用第一图案1904的、具有十六张图片的重复图片组1902的视频的译码操作,该第一图案1904示出经修改的多参考预测中的每张图片的等级顺序分层结构。十六帧的图片组1902对每个图片组使用一张P-图片(等级0)(例如,P016),并且使用三层级F-图片分层结构,该结构具有:分层结构的第一层级中的一张(等级1)F-图片(F18);分层结构的第二层级中的两张(等级2)F-图片(F24和F212);以及十二张非参考(等级3)f-图片,并且三张f-图片位于另一些锚帧的每一对之间的、分层结构的第三层级中。例如,层级3的帧F35、F36和F37位于层级2的帧F24和层级1的帧F18之间。针对多参考预测和实际经修改的预测的详细依赖关系虽然未示出,但是也遵循与视频序列1700(图17)的逻辑类似的逻辑。
[0224] 参考图20,示例视频序列2000示出对使用第二图案的、具有十六张图片的重复图片组2002的视频的译码操作,该第二图案示出经修改的多参考预测中的每张图片的等级顺序分层结构。对于图片组2002的第二图案,使用四层级的分层结构而不使用视频序列1700、1800和1900中所使用的三层级的分层结构。在此,图片组2002对每个图片组使用一张P-图片(等级0)P016,并且使用四层级F-图片分层结构,该结构具有:分层结构的第一层级中的一张(等级1)F-图片(F18);分层结构的第二层级中的两张(等级2)F-图片(F24和F212);分层结构的第三层级中的四张(等级3)F-图片(例如,F32、F36、F310和F314);以及八张非参考(等级4)f-图片,并且一张f-图片位于另一些锚帧的每一对之间的、分层结构的第四层级中。例如,F411被F310和F212锚记(anchor)。针对多参考预测和实际经修改的预测的详细依赖关系虽然未示出,但是也遵循与视频序列1700(图17)的逻辑类似的逻辑。
[0225] 参考图21,示例视频序列2100示出对具有可变数量的重复图片组2102的视频的译码操作,可变数量的图片示出经修改的多参考预测中每一张图片的等级顺序分层结构。图片组2102具有带有可变数量帧的结构,这些帧包括P-图片(P013)和三层级的F-图片分层结构。该分层结构的第一层级具有一张(等级1)F-图片(F18),并且两张(等级2)F-图片在该分层结构的第二层级上(F24和F211)。在该分层结构的第三层级上,序列2102具有九张(等级3)f-图片。在该图片组的九张f-图片中,前三张层级3的f-图片(F31、F32和F33)位于锚帧对(I00和F24)之间,紧接着的是在下一锚帧对(F24和F18)之间的三张层级3的f-图片(F35、F36和F37),紧接着的是在锚帧对(F18和P211)之间的两张层级
3的f-图片以及在另一对(H211和P013)之间的一张层级3的f-图片(F312)。每个图片组的长度是可变的,并且可实际上取决于内容自身。另外,针对多参考预测和实际经修改的预测的详细依赖关系虽然未示出,但是也遵循与视频序列1700(图17)的逻辑类似的逻辑。
[0226] 在P-图片和F-图片中允许各种预测模式,并且在下文中例示各种预测模式以及它们如何与参考类型相关。将P-图片图块和F-图片图块两者都分割为更小的单位,并且将“跳过”、“自动”、“帧间”和“多个”中的预测模式分配给图块的每一个分区。表1中模式的完整列表也包括‘帧内’,‘帧内’是指与时域运动补偿预测相比而言的、通过相邻的块进行的空间预测。“切分”模式是指进一步划分或进一步分区的需要。对于使用“帧间”或“多个”模式的分区,需要关于所使用的参考的进一步信息,并且分别在表3(a)和表3(b)中示出针对P-图片的进一步信息,同时分别在表4(a)和表4(b)中示出针对F-图片的进一步信息。
[0227] 预测模式和参考类型分析器模块125(图1)可允许针对图块的每个分区,从上述“跳过”、“自动”、“帧间”、“多个”和“帧内”中选出预测模式,所有这些预测模式可适用于P-图片和F-图片;在下列表1中示出。除了预测模式之外,预测模式和参考类型分析器模块125也允许选择参考类型,这些参考类型取决于“帧间”或“帧内”模式并且针对P-图片和F-图片可以是不同的;在表2(a)和2(b)中示出针对P-图片的参考类型的详细列表,而表3(a)、3(b)、3(c)和3(d)针对F-图片。
[0228] 下列所示的表1到3(d)示出针对正在被重构或将要被重构的当前帧(curr_pic)的代码本条目的一个示例。条目的完整代码本可提供对所有可能的条目和这些条目的译码的完整的或实质完整的列举。在一些示例中,该代码本可考虑上文所描述的约束。在一些示例中,可在比特流中对与用于预测模式和/或参考类型相关联的数据进行编码以在本文中所讨论的解码器处使用。
[0229] 表1针对P-图片和F-图片中的图块的分区的预测模式(已在上文中解释):
[0230]编号 预测模式
0. 帧内
1. 跳过
2. 切分
3. 自动
4. 帧间
5. 多个
[0231]
[0232] 表2(a)针对具有P-图片中的“帧间”模式的图块的分区的参考类型:
[0233]编号 针对“帧间”模式分区的参考类型
0. MR0n(=过去的SR0)
1. MR1n
2. MR2n
3. MR3n
4. MR5n(过去的SR1)
5. MR6n(过去的SR2)
6. MR7n(过去的SR3)
7. MR0d
8. MR0g
[0234] 表2(b)针对具有P-图片中的“多个”模式的图块的分区的参考类型:
[0235]
[0236] 其中,表2(b)用于参考的特定组合,如表的标题所指示,该特定组合包括不具有参数的过去参考和表中的参考之一。
[0237] 表3(a)针对具有F-图片中的“帧间”模式的图块的分区的参考类型:
[0238]编号 针对“帧间”模式的分区的参考类型
0. MR0n
1. MR7n(=投影F)
2. MR3n(=未来的SR0)
3. MR1n
4. MR4n(=未来的SR1)
5. MR5n(=未来的SR2)
6. MR6n(=未来的SR3)
7. MR3d
8. MR0g/MR3g
[0239] 其中,投影F是指PI,并且作为一个示例,第8行包括两个可选的参考。
[0240] 表3(b)针对具有F-图片中的“多个”模式和方向0的的图块的分区的参考类型:
[0241]
[0242] 其中,方向(Dir)是指作为针对用于F-帧的“多个”模式的参考的固定或部分固定的组合的子模式,使得上述方向0和下述方向1和方向2各自指参考的组合。因此,如表3(b)中所示,方向0可以指过去的参考(其可以是在特定时刻处的特定参考(例如,在n+2处的参考3))的组合,并且可以与来自该表中的参考中的一个组合。下列表中的方向是类似的,并且如表的标题所解释。
[0243] 表3(c)针对具有F-图片中的“多个”模式和方向1的图块的分区的参考类型:
[0244]
[0245] 表3(d)针对具有F-图片中的“多个”模式和方向2的的图块的分区的参考类型:
[0246]
[0247] 参考图22,根据本公开的至少一些实现方案安排经修改的预测参考图片2200的示图,并且该示图提供这些代码的进一步的示例使用。如所示出的那样,质量分析器和质量恢复过滤的输出可以是可用于对其他帧的译码操作进行预测的、经最终重构的帧(例如,该经最终重构的帧可以是参考帧等)。
[0248] 所提出的NGV译码器(如,编码器100和/或解码器200)的实现方案可使用变形预测参考2228-438(MR0-3)和/或合成预测参考2212和2240-446(S0-S3、MR4-7)来实现P-图片译码。NGV译码涉及使用被称为I-图片、P-图片和F-图片的三种图片类型。在所示示例中,在时刻t=4处示出要对其进行译码的当前图片(P-图片)。在译码期间,所提出的NGV译码器(如,编码器100和/或解码器200)的实现方案可使用四个先前经解码的参考R02212、R12214、R22216和R32218中的一个或多个。与可以简单地将这些参考直接用于预测的其他解决方案不同,所提出的NGV译码器(如,编码器100和/或解码器200)的解决方案可从这些先前经解码的参考中生成经修改的(经变形或经合成的)参考,并且基于这些所生成的经修改的(经变形或经合成的)参考使用运动补偿译码。
[0249] 如将在下文中更详细讨论的那样,在一些示例中,所提出的NGV译码器(如,编码器100和/或解码器200)的实现方案可包含多个组件以及由这些组件按高效的视频译码算法生成的、组合的预测。例如,所提出的NGV的实现方案可包括下列特征中的一个或多个:1.增益补偿(例如,对场景内的增益/亮度的变化的显式补偿);2.模糊补偿:例如,对场景内的模糊/锐度变化的显式补偿;3.主运动/全局运动补偿(例如,对场景内的主运动的显式补偿);4.配准补偿(例如,对场景内的配准失配的显式补偿);5.超分辨率(例如,针对场景内的分辨率精度变化的显式模型);6.投影(例如,针对场景内运动轨迹变化的显式模型);等等,和/或上述各项的组合。
[0250] 在所示示例中,如果应用帧间预测,则特性和运动过滤预测器模块可将运动补偿作为局部解码循环的部分应用于当前图片2210(例如,在图中被标记为(当前的)P-图片)。在一些实例中,此类运动补偿可至少部分地基于未来帧(未示出)和/或先前帧R02212(例如,在图中被标记为R0)、先前帧R12214(例如,在图中被标记为R1)、先前帧R22216(例如,在图中被标记为R2)和/或先前帧R32218(例如,在图中被标记为R3)。
[0251] 例如,在一些实现方案中,预测操作可包括帧间和/或帧内预测。可由包括变形分析器和生成模块和/或合成分析器和生成模块的一个或多个模块执行帧间预测。此类变形分析器和生成模块可分析当前图片以确定相对于要对其进行译码的一个或多个参考帧的针对下列量的改变的参数:模糊2220(例如,在图中被标记为模糊参数)、增益2222(例如,在图中被标记为增益参数)、配准2224(例如,在图中被标记为配准参数)和主运动2226(例如,在图中被标记为主运动参数)等。
[0252] 所确定的变形参数2220、2222、2224和/或2226可用于生成经变形的参考帧。可存储此类生成的、经变形的参考帧,并可将其用于计算运动向量,从而对当前帧进行高效的运动(和特性)补偿预测。在所示示例中,可将所确定的变形参数2220、2222、2224和/或2226用于生成经变形的参考帧,例如,经模糊补偿变形的参考帧2228(例如,在图中被标记为MR3b)、经增益补偿变形的参考帧2230(例如,在图中被标记为MR2g)、经增益补偿变形的参考帧2232(例如,在图中被标记为MR1g)、经配准补偿变形的参考帧2234(例如,在图中被标记为MR1r)、经主运动补偿变形的参考帧2236(例如,在图中被标记为MR0d)和/或经配准补偿变形的参考帧2238(例如,在图中被标记为MR0r)等,或例如上述各项的多种组合。
[0253] 类似地,合成分析器和生成模块可生成超分辨率(SR)图片2240(例如,在图中被标记为S0(其等于先前帧R02212)、S1、S2和S3)和投影插值(PI)图片2242(例如,在图中被标记为PE)等以确定运动向量,从而在这些帧中进行高效的运动补偿预测。可存储此类生成的、经合成的参考帧,并可将其用于计算运动向量,从而对当前帧进行高效的运动(和特性)补偿预测。
[0254] 附加地或替代地,可将所确定的变形参数2220、2222、2224和/或2226用于对生成合成参考帧超分辨率(SR)图片2240和/或投影插值(PI)图片2242进行变形。例如,合成分析器和生成模块可从所确定的配准变形参数2224中生成经变形配准补偿的超分辨率(SR)图片2244(例如,在图中被标记为MR4r、MR5r和MR6r)和/或经变形配准补偿的投影插值(PI)图片2246(例如,在图中被标记为MR7r)等。可存储此类生成的、经变形和经合成的参考帧,并可将其用于计算运动向量,从而对当前帧进行高效的运动(和特性)补偿预测。
[0255] 在一些实现方案中,可显式地计算特性集(诸如例如,增益、模糊、主运动、配准、分辨率精度、运动轨迹等,或它们的组合)的变化。除局部运动之外还可计算此类特性集。在一些情况下,可适当利用先前的和之后的图片/切片;然而,在其他情况下,此类参数集可更好地根据先前的图片/切片进行预测。此外,由于在任何估计过程中可能存在误差(例如,来自多个过去的或多个过去的和未来的图片/切片),因此可选择实现最佳估计的、与该特性集(诸如例如,增益、模糊、主运动、配准、分辨率精度、运动轨迹等,或它们的组合)相关联的经修改的参考帧。因此,利用与该特性集(诸如例如,增益、模糊、主运动、配准、分辨率精度、运动轨迹等,或它们的组合)相关联的经修改的参考帧的、所提出的方法可显式地补偿这些特性的差异。所提出的实现方案可解决如何改善预测信号的问题,并且进而允许实现视频译码中的高压缩效率。
[0256] 例如,伴随着不断增加分辨率的视频要被压缩以及对高视频质量的预期,针对使用现有的视频译码标准(如,H.264)或甚至演进的标准(如,H.265/HEVC)来进行译码所要求的对应的位率/带宽是相对高的。上述标准使用传统方式的扩展形式来隐式地解决压缩/质量不足的问题,但是通常结果是有限的。
[0257] 所提出的实现方案通过改善帧间预测,进而减少需要对其译码的帧间预测差异(误差信号)来改善视频压缩效率。要对其进行译码的帧间预测的差异量越少,所要求的用于译码的位的数量就越少,从而有效地改善压缩效率,因为现在需要更少的位来存储或传送经译码的预测差异信号。所提出的NCV编解码器通过采用附加于或取代运动补偿的、显式地补偿内容的特性变化的方式来高度地适应变化的特性(诸如例如,增益、模糊、主运动、配准、分辨率精度、运动轨迹等,或它们的组合),而不是仅限于运动预测。因此,通过显式地解决该问题的根本原因,NGV编解码器可解决基于标准的编解码器的限制的关键源,进而实现更高的压缩效率。
[0258] 由于所提出的NCV编解码器具有补偿视频内容中变化的广泛原因的能力,因此可实现帧间预测输出的这种变化。典型的视频场景由于许多局部的和全局的变化(在本文中被称为特性)而在帧到帧之间变化。除了局部运动之外,还存在许多当前的解决方案不能充分解决而可由所提出的实现方案解决的许多其他特性。
[0259] 所提出的实现方案可显式地计算除局部运动之外的特性集的变化(诸如,增益、模糊、主运动、配准、分辨率精度、运动轨迹等,或它们的组合),并且由此相比仅使用来自先前和之后的图片/切片的局部运动预测,可从先前的图片/切片中更好地实现预测。此外,由于在根据多个过去的或多个过去的和未来的图片/切片进行的任何估计过程中可能存在误差,因此NGV译码器可通过显式地补偿各种特性的差异以选择实现最佳效果的帧。
[0260] 具体而言,所提出的NGV译码器的实现方案可包括下列特征:i.对场景中的增益/亮度变化的显式补偿;ii.对场景中的模糊/锐度变化的显式补偿;iii.对场景中的主运动的显式补偿;iv.对场景中的配准失配的显式补偿;v.针对场景中的分辨率精度变化的显式模型;和/或vi.针对场景中的运动轨迹变化的显式模型。
[0261] 在操作中,所提出的NGV译码器(如,编码器100和/或解码器200)的实现方案可进行操作,使得可使用码元运行译码或代码本等定义预测模式和/或参考类型数据。可使用各种示例中的内容自适应或离散变换对预测模式和/或参考类型数据进行变换编码,从而生成变换系数。同样如所讨论的那样,可(例如,经由熵编码器)将与分区相关联的数据(例如,变换系数或经量化的变换系数)、开销数据(例如,如本文中所讨论的、用于变换类型、自适应变换方向和/或变换模式的指示符)和/或定义分区的数据等编码成比特流。可将该比特流传递到解码器中,该解码其可使用经编码的比特流以对视频帧进行解码,以进行显示。可例如基于率失真优化(RDO)或基于对视频的预分析,局部地(例如,在宏块或图块中逐块地,或在图块或预测单元中逐分区地,或在超片段或区域中逐片段地)选择最佳模式,并且可在比特流之内对用于模式的标识符和所需要的参考进行编码,以供解码器使用。
[0262] 在操作中,所提出的NGV译码器(如,编码器100和/或解码器200)的实现方案除了可使用参照经解码的过去的和/或将来的图片/切片而进行的通常的局部运动补偿之外,还可使用上述组件中的一个或多个。由此,该实现方案并不强制执行例如针对增益补偿或针对任何其他特性补偿参考帧生成的特定解决方案。
[0263] 虽然本文中的示例过程的实现方案可包括执行以所示的顺序示出的全部操作,但是,本公开不限于这方面,并且在各种示例中,本文中的示例过程的实现方案可包括仅执行所示操作的子集并且/或者按照与所示不同的顺序来执行。
[0264] 可在软件、固件和/或硬件和/或它们的任意组合中实现本文所描述的系统的各种组件。例如,可至少部分地由诸如可在计算系统(诸如例如,智能电话)中找到的计算芯片上系统(SoC)的硬件提供本文所描述的系统的各种组件。本领域技术人员会领会,本文中所描述的系统可包括未在对应的附图中描绘的附加组件。例如,本文中所讨论的系统可包括诸如为了使本文清楚而未描绘的比特流复用器或解复用器模块之类的附加组件。
[0265] 此外,可响应于由一个或多个计算机程序产品所提供的指令来执行本文中所讨论的任何一个或多个操作。此类程序产品可包括提供指令的信号承载介质,当例如由处理器执行这些指令时,这些指令可提供本文所描述的功能。能以一种或多种机器可读介质的任意形式来提供计算机程序产品。由此,例如包括一个或多个处理器核的处理器可响应于由一个或多个机器可读介质传递到该处理器的程序代码和/或指令或指令集,执行本文中的示例过程中的一个或多个操作。一般而言,机器可读介质能以程序代码和/或指令或指令集的形式来传递软件,这些程序代码和/或指令或指令集可使本文中所描述的任何设备和/或系统实现本文中所讨论的视频系统的至少多个部分。
[0266] 图23是根据本公开至少一些实现方案而安排的示例视频译码系统2300的示图。在所示出的实现方案中,视频译码系统2300可包括成像设备2301、视频编码器100、视频解码器200(和/或经由处理单元2320的逻辑电路2350而实现的视频译码器)、天线2302、一个或多个处理器2303、一个或多个存储器存储2304和/或显示设备2305。
[0267] 如所示出的那样,成像设备2301、天线2302、处理单元2320、逻辑电路2350、视频编码器100、视频解码器200、处理器2303、存储器存储2304和/或显示设备2305能够彼此通信。如所讨论的那样,尽管以视频编码器100和视频解码器200两者示出,但是,在各种示例中,视频译码系统2300可包括仅视频编码器100或仅视频解码器200。此外,尽管参照视频编码器和/或视频解码器来描述,但是在一些示例中,系统2300可实现图7中的视频编码器700和/或图8中的解码器800。
[0268] 如所示出的那样,在一些示例中,视频译码系统2300可包括天线2302。可将天线2302配置成用于发送或接收例如视频数据的经编码的比特流。此外,在一些示例中,视频译码系统2300可包括显示设备2305。可将显示设备2305配置成用于呈现视频数据。如所示出的那样,在一些示例中,可经由处理单元2320实现逻辑电路2350。处理单元2320可包括专用集成电路(ASIC)逻辑、图形处理器、通用处理器等。视频译码系统2300也可包括可选的处理器2303,该可选的处理器2003可类似地包括专用集成电路(ASIC)逻辑、图形处理器、通用处理器等。在一些示例中,可经由硬件、视频译码专用硬件等来实现逻辑电路
2350,并且处理器2303可实现通用软件、操作系统等。此外,存储器存储2304可以是任意类型的存储器,诸如易失性存储器(例如,静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等)或非易失性存储器(例如,闪存等)等。在非限制性示例中,可通过高速缓存储存器来实现存储器存储2304。在一些示例中,逻辑电路2350可访问存储器存储2304(例如,用于实现图像缓冲器)。在其他示例中,逻辑电路2350和/或处理单元2320可包括存储器存储(如,高速缓存等)以实现图像缓冲器等。
[0269] 在一些示例中,经由逻辑电路实现的视频编码器100可包括图像缓冲器(例如,经由处理单元2320或存储器存储2304)和图形处理单元(例如,经由处理单元2320)。可将该图形处理单元通信地耦合至该图像缓冲器。该图形处理单元可包括经由逻辑电路2350而实现的视频编码器100(或编码器700),以使参照图1、3、5和8所讨论的各种模块具体化。例如,图形处理单元可包括译码分区生成器逻辑电路、自适应变换逻辑电路、内容预分析器、编码控制器逻辑电路、自适应熵编码器逻辑电路等。
[0270] 可将逻辑电路配置成用于执行本文中所讨论的各种操作。例如,在编码器100处,多参考帧存储和帧选择器119可根据依赖性逻辑128所提供的编索引操作,将重构帧选为用于当前帧的参考帧。用于环外参考帧修改的变形生成器130和合成生成器132可提供变形和合成参数,使得环内变形和合成分析器120或121将在随后形成经修改的参考帧,随后,运动估计器122使用这些经修改的参考帧以形成针对当前帧的运动预测。
[0271] 在一个示例中,可将视频编码器100的图形处理单元配置成用于接收像素数据的帧序列的数据,其中,该序列具有显示顺序,并且每一帧与该显示顺序的时域位置相关联。随后,该图形处理单元可生成下列至少一项:(1)使用帧间预测生成当前的F-图片,包括提供从先前的预测参考帧和/或后续的预测参考帧中形成当前的F-图片的至少一部分的选项,其中,先前的和后续的相对于当前的F-图片的位置,并且在该序列之内;以及(2)使用帧间预测生成帧序列的当前的P-图片,包括提供从至少一个先前的预测参考帧中形成当前的P-图片的至少一部分的选项,其中,先前的相对于当前的P-图片的位置,并且在该序列之内。然后,该处理单元可生成针对至少一张当前的P-图片或F-图片的所述部分的运动数据,包括:使用至少一个经修改的预测参考帧以生成针对该当前的P-图片或F-图片的所述部分的运动数据,其中,(a)将变形分析器配置成使用变形技术;和/或(b)将合成分析器配置成使用合成技术。能以类似的方式来实现视频解码器200。
[0272] 在一些示例中,可将视频译码系统2300的天线2302配置成用于接收视频数据的经编码的比特流。如所讨论的那样,经编码的比特流可包括与变形和/或合成参数相关联的数据和/或定义上文所解释的P-图片和/或F-图片的多个部分的其他数据。视频译码系统2300也可包括耦合至天线2302、并且配置成用于对经编码的比特流进行解码的视频解码器200(或解码器1800)。
[0273] 在多个实现方案中,可响应于由一个或多个计算机程序产品提供的指令来执行本文中所描述的多个特征。此类程序产品可包括提供指令的信号承载介质,当例如由处理器执行这些指令时,这些指令可提供本文所描述的功能。能以一种或多种机器可读介质的任意形式来提供计算机程序产品。由此,例如包括一个或多个处理器核的处理器可响应于由一个或多个机器可读介质传递到该处理器的程序代码和/或指令或指令集,执行本文中所描述的一个或多个特征。一般而言,机器可读介质能以程序代码和/或指令或指令集的形式来传递软件,这些程序代码和/或指令或指令集可使本文中所描述的任何设备和/或系统实现本文中所描述的特征的至少多个部分。
[0274] 图24是根据本公开至少一些实现方案而安排的示例系统2400的示图。在各种实现方案中,系统2400可以是媒体系统,但是系统2400并不限于此情境。例如,可将系统2400结合到个人计算机(PC)、膝上型计算机、超膝上型计算机、平板、触摸板、便携式计算机、手持式计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视机、智能设备(如,智能电话、智能平板或智能电视)、移动互联网设备(MID)、消息收发设备、数据通信设备、相机(如,傻瓜相机、超变焦相机、数码单透镜反射(DSLR)相机)等中。
[0275] 在各种实现方案中,系统2400可包括耦合至显示设备2420的平台2402。平台2402可接收来自诸如内容服务设备2430或内容递送设备2440或其他类似内容源之类的内容设备的内容。可将包括一个或多个导航特征的导航控制器2450用于与例如平台2402和/或显示设备2420交互。在下文中更详细地描述这些组件中的每一个组件。
[0276] 在各种实现方案中,平台2402可包括芯片组2405、处理器2410、存储器2412、天线2413、存储设备2414、图形子系统2415、应用2416和/或无线电设备2418的任意组合。芯片组2405可提供处理器2410、存储器2412、存储设备2414、图形子系统2415、应用2416和/或无线电设备2418之间的相互通信。例如,芯片组2405可包括能够提供与存储设备
2414的互通的存储适配器(未描绘)。
[0277] 可将处理器2410实现为复杂指令集计算机(CISC)或精简指令集计算机(RISC)处理器、兼容x86指令集的处理器、多核或任何其他微处理器或中央处理单元(CPU)。在各种实现方案中,处理器2410可以是双核处理器、双核移动处理器等。
[0278] 可将存储器2412实现为易失性存储器设备,例如但不限于,随机存取存储器(RAM)、动态随机存取存储器(DRAM)或静态RAM(SRAM)。
[0279] 可将存储设备2414实现为非易失性存储设备,例如但不限于,磁盘驱动器、光盘驱动器、磁带驱动器、内部存储设备、附连存储设备、闪存、电池备份的SDRAM(同步DRAM)和/或网络可访问存储设备。在各种实现方案中,存储设备2414可包括用于例如在包括多个硬驱动器的时候提供增加对有价值的数字媒体的增强存储性能的保护的技术。
[0280] 图形子系统2415可执行对诸如静止图像或视频之类的图像进行的处理,以便进行显示。图形子系统2415可以是例如图形处理单元(GPU)或视觉处理单元(VPU)。可将模拟或数字接口用于通信地耦合图形子系统2415和显示设备2420。例如,该接口可以是高清多媒体接口、显示端口、无线HDMI和/或适合无线HD的技术中的任意一个。可将图形子系统2415集成到处理器2410或芯片组2405中。在一些实现方案中,图形子系统2415可以是通信地耦合至芯片组2405的单独设备。
[0281] 可在各种硬件架构中实现本文中所描述的图形和/或视频处理技术。例如,可在芯片组中集成图形和/或视频功能。或者,可使用分立的图形和/或视频处理器。作为又一实现方案中,可由通用处理器(包括多核处理器)提供图形和/或视频功能。在进一步的实施例中,可在消费电子设备中实现这些功能。
[0282] 无线电设备2418可包括能够使用各种合适的无线通信技术发送和接收信号的一个或多个无线电设备。此类技术可涉及横跨一个或多个无线网络的通信。示例无线网络包括(但不限于)无线局域网(WLAN)、无线个域网(WPAN)、无线城域网(WMAN)、蜂窝网络和卫星网络。在横跨此类网络进行通信时,无线电设备2418可根据任何版本的一个或多个适用的标准进行操作。
[0283] 在各种实现方案中,显示设备2420可包括任何电视机类型监视器或显示设备。显示设备2420可包括例如,计算机显示屏、触屏显示器、视频监视器、电视型设备和/或电视机。显示设备2420可以是数字和/或模拟的。在各种实现方案中,显示设备2420可以是全息显示设备。同样,显示设备2420可以是可接收视觉投影的透明表面。此类投影可传递各种形式的信息、图像和/或对象。例如,此类投影可以是用于移动增强现实(MAR)应用的视觉重叠。在一个或多个软件应用2416的控制下,平台2402可在显示设备2422上显示用户界面2420。
[0284] 在各种实现方案中,可由任何国家的、国际的和/或独立的服务机构来主管内容服务设备2430,进而使平台2402例如经由因特网可访问该内容服务设备2430。可将内容服务设备2430耦合至平台2402和/或显示设备2420。可将平台2402和/或内容服务设备2430耦合至网络2460,以便往返于网络2460传递(如,发送和/或接收)媒体信息。也可将内容递送设备2440耦合至平台2402和/或显示设备2420。
[0285] 在各种实现方案中,内容服务设备2430可包括有线电视盒、个人计算机、网络、电话、能够递送数字信息和/或内容的启用因特网的设备或装置,以及能够经由网络2460或直接地在内容提供商和平台2402和/或显示设备2420之间单向地或双向地传递内容的任何其他类似设备。将会领会,可经由网络2460,在系统2400中的任何一个组件和内容提供商之间往返地单向和/或双向传递内容。内容的示例可包括任何媒体信息,其包括例如视频、音乐、医疗和游戏信息等。
[0286] 内容服务设备2430可接收诸如包括媒体信息、数字信息和/或其他内容的有限电视节目之类的内容。内容提供商的示例可包括任何有线或卫星电视或无线电或因特网内容提供商。所提供的示例并不旨在限制根据本公开、以任何方式进行的实现方案。
[0287] 在各种实现方案中,平台2402可接收来自具有一个或多个导航特征的导航控制器2450的控制信号。可将控制器2450的导航特征用于与例如用户界面2422交互。在各种实现方案中,导航控制器2450可以是作为计算机硬件组件(更具体地说,人类接口设备)的、允许用户将空间(如,连续的和多维度的)数据输入计算机的指点设备。诸如图形用户界面(GUI)之类的许多系统以及电视机和监视器允许用户使用物理手势来控制数据,并向计算机或电视机提供数据。
[0288] 可通过指针光标、焦点环或显示设备上所显示的其他视觉指示符的移动,在显示设备(如,显示设备2420)上复制控制器2450的导航特征的移动。例如,在软件应用2416的控制下,可将位于导航控制器2450上的这些导航特征映射至显示在用户界面2422上的虚拟导航特征中。在各实施例中,控制器2450可能不是单独的组件,但是可集成到平台2402和/或显示设备2420中。然而,本公开并不旨在限于本文所示或所述的元件或限于本文所示或所述的情境中。
[0289] 在各种实现方案中,驱动器(未示出)可包括使用户能够在例如启用时,在初始开机之后,能够像通过触摸按钮打开和关闭电视机一样立即打开和关闭平台2402的技术。程序逻辑可允许平台2402即便在该平台被“关闭”的时候,也能够流式地将内容传送到媒体适配器或其他内容服务设备2430或内容递送设备2440中。此外,芯片组2405可包括例如针对5.1环绕声音频和/或高清晰度7.1环绕声音频的硬件和/或软件。驱动器可包括用于集成图形平台的图形驱动器。在各种实现方案中,该图形驱动器可包括外围组件互连(PCI)快速图形卡。
[0290] 在各种实现方案中,可集成系统2400中所示的任意一个或多个组件。例如,可集成平台2402和内容服务设备2430,或可集成平台2402和内容递送设备2440,或例如可集成平台2402、内容服务设备2430和内容递送设备2440。在各实施例中,平台2402和显示设备2420可以是集成单元。可集成显示设备2420和内容服务设备2430,或例如可集成显示设备2420和内容递送设备2440。这些示例并不旨在限制本公开。
[0291] 在各实施例中,可将系统2400实现为无线系统、有线系统或无线和有线系统两者的组合。当将系统2400实现为无线系统时,该系统2400可包括适合于在无线共享介质上进行通信的组件和接口,无线共享介质例如是一个或多个天线、发射机、接收机、收发机、放大器、过滤器、控制逻辑等。无线共享介质的示例可包括无线频谱的多个部分,例如RF频谱等。当将系统2400实现为有线系统时,该系统2400可包括适合于在有线通信介质上进行通信的组件和接口,有线通信介质例如是输入/输出(I/O)适配器、用于将该I/O适配器与对应的有线通信介质连接的物理连接器、网络接口卡(NIC)、盘控制器、视频控制器、音频控制器等。有线通信介质的示例可包括线、电缆、金属引线、印刷电路板(PCB)、底板、交换结构、半导体材料、双绞线、同轴电缆、光纤等。
[0292] 平台2402可建立用于传递信息的一个或多个逻辑或物理通道。该信息可包括媒体信息和控制信息。媒体信息可以是指表示针对用户的内容的任何数据。内容的示例可包括例如,来自语音对话、视频会议、流视频、电子邮件(“email”)消息、语音邮件消息、字母数字符号、图形、图像、视频、文本等的数据。来自语音对话的数据可以是例如,话语信息、静默时段、背景噪声、舒适噪声音调等。控制信息可以是指表示针对自动系统的命令、指令或控制字的任何数据。例如,可将控制信息用于通过系统来路由媒体信息,或用于指示节点按照预先定义的方式来处理该媒体信息。然而,这些实施例并不限于图23中所示或所述的元件,也并不限于图21中所示或所述的情境中。
[0293] 如上所述,系统2400可表现为不同的物理样式或形状因子。图25示出其中可体现系统2500的小形状因子设备2500的示例。在各实施例中,可例如将设备2500实现为具有无线能力的移动计算设备。移动计算设备可以是指具有处理系统和移动电源或供电(诸如例如,一个或多个电池)的任何设备。
[0294] 如上文所述,移动计算设备的示例可包括个人计算机(PC)、膝上型计算机、超膝上型计算机、平板、触摸板、便携式计算机、手持式计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视机、智能设备(例如,智能电话、智能平板或智能电视机)、移动互联网设备(MID)、消息收发设备、数据通信设备、相机(例如,傻瓜相机、超变焦相机、数码单透镜反射(DSLR)等)等。
[0295] 移动计算设备的示例也可包括被安排为由人穿戴的计算机,诸如腕式计算机、手指计算机、戒指计算机、眼镜计算机、皮带扣计算机、臂带计算机、计算机、衣服计算机以及其他可穿戴计算机。在各实施例中,可将例如移动计算设备实现为能够执行计算机应用以及语音通信和/或数据通信的智能电话。尽管已经通过示例方式将移动计算设备实现为智能电话而描述了一些实施例,但是可以领会,也可以使用其他无线移动计算设备来实现其他实施例。各实施例不限于此情境。
[0296] 如图25中所示,设备2500可以包括外壳2502、显示设备2504,该显示设备2504可包括用户界面2510、输入/输出(I/O)设备2506和天线2208。设备2500也可包括导航特征2512。显示设备2504可包括用于显示适合于移动计算设备的信息的任何合适的显示单元。I/O设备2506可包括用于向移动计算设备输入信息的任何合适的I/O设备。I/O设备2506的示例可包括字母数字键盘、数字小键盘、触摸板、输入键、按钮、开关、摇杆开关、话筒、扬声器、语音识别设备和软件等。也可通过话筒(未示出)向设备2400输入信息。可由语音识别设备(未示出)使此类信息数字化。各实施例不限于此情境。
[0297] 可使用硬件元件、软件元件或软硬件元件的组合来实现各实施例。硬件元件的示例可包括处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片集等。软件的示例可包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件中间件、固件、软件模块、例程、子例程、函数、方法、程序、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或它们的任意组合。确定是否使用硬件元件和/或软件元件来实现实施例可根据任意数量的因素而变化,这些因素例如是所期望的计算速率、功率电平、热容限、处理循环预算、输入数据速率、输出数据速率、存储器资源、数据总线速度以及其他设计或性能约束。
[0298] 可由存储在表示处理器内的各种逻辑的机器可读介质上的表示性指令来实现至少一个实施例的一个或多个方面,当机器读取这些指令时,这些指令使该机器制作用于执行本文所述的技术的逻辑。可将被称为“IP核”的此类表示存储在有形的机器可读介质上,并将其提供给各种客户或生产设施,以便将此类表示加载到实际制造该逻辑或处理器的制造机器中。在另一形式中,诸如非瞬态机器可读介质之类的非瞬态制品可以与上述示例或其他示例中的任意一个一起使用,不同之处在于非瞬态制品本身不包括瞬时信号。非瞬态制品包括除信号本身之外的、可按诸如RAM等之类的方式临时保存数据的那些元件。
[0299] 尽管已经参考各实现方案描述了本文陈述的某些特征,但并不旨在以限制的含义来解释本说明书。因此,对本公开所属技术领域中的技术人员显而易见的本文所述的各实现方案的各种修改以及其他实现方案被认为落在本公开的精神和范围之内。
[0300] 以下示例关于进一步的实施例。
[0301] 作为一个实现方案,用于视频译码的计算机实现的方法包括:接收针对像素数据的帧序列的数据,序列具有显示顺序,并且其中每一帧与该显示顺序的时域位置相关联。该方法还包括:使用帧间预测生成该序列帧中的至少一张当前的F-图片。这可以包括:提供从至少一个先前的预测参考帧和/或后续的预测参考帧中生成当前的F-图片的至少一部分的选项,其中,术语“先前的”和“后续”的相对于当前的F-图片的位置,并且在该序列之内。该方法包括:生成针对至少一张当前的F-图片的部分的运动数据,包括:将至少一个经修改的预测参考帧用于生成针对当前的F-图片的部分的运动数据,并且通过使用变形技术和/或合成技术来修改该一个经修改的预测参考帧。
[0302] 作为另一实现方案,该方法还包括:形成具有用于生成针对F-图片的运动数据的非F预测参考帧的序列,并且其中,F-图片被间隔在非F预测参考帧之间,并且其中,在非F预测参考帧之间的F-图片的数量沿着该序列发生变化。该方法可包括:通过提供从沿该序列的多个先前的预测参考帧中的至少一个先前的预测参考帧中生成P-图片的至少部分的选项,以及除了沿该序列并且相对于F-图片的位置的一个先前的预测参考帧和一个后续的预测参考帧之外,还提供从至少一个附加的预测参考帧中形成F-图片中的至少一张的选项来生成该序列之内的至少一张P-图片。该方法可包括下列至少一项:(1)通过从被提供以至少部分地在帧间模式中形成F-图片的多个参考帧中选择多个结果中的最佳结果来形成F-图片,以及(2)通过使用多个参考帧的数据形成F-图片,多个参考帧用于有助于促成至少部分地在“多个模式”中形成F-图片的结果。该方法还可包括下列至少一项:(1)将至少一张F-图片用作用于另一F-图片的预测参考帧,(2)沿该序列形成连续或不连续的参考帧链,使得多张F-图片是下一张后续F-图片的参考帧,其中,除了针对F-图片中的至少一张的任何其他参考帧之外,还提供参考链,以及(3)使用金字塔参考帧结构,其中,参考F-图片具有沿该序列的先前参考帧和后续参考帧,并且参考F-图片自身是另一F-图片的参考帧。该方法还可包括下列至少一项:(1)包括投影插值的合成技术,其中,取代用于预测的当前的F-图片,并且通过取决于沿该序列的、相对于当前的F-图片的位置的时域距离的两个参考帧的加权数据来形成投影插值帧或帧部分,以及(2)包括修改帧的分辨率的合成技术。变形技可包括:经修改的参考帧从下列任意一项的另一参考帧中修改而来:(1)模糊补偿,(2)配准补偿,(3)全局运动补偿,(4)主运动补偿,(5)亮度增益补偿,以及(1)到(5)全部。作为一种形式,将经修改的预测参考帧用于预测,但不显示该经修改的预测参考帧。
[0303] 在又一实现方案中,用于视频译码的计算机实现的方法包括:接收针对像素数据的帧序列的数据,序列具有显示顺序,并且其中每一帧与该显示顺序的时域位置相关联;使用帧间预测生成该帧序列中的至少一张当前的P-图片,包括:提供从至少一个先前的预测参考帧中形成当前的P-图片的至少一部分的选项,其中,先前的相对于当前的P-图片的位置,并且在该序列之内;以及生成针对至少一张当前的P-图片的部分的运动数据,包括:将至少一个经修改的预测参考帧用于生成针对当前的P-图片的部分的运动数据,并且通过使用变形技术和/或合成技术来修改该至少一个经修改的预测参考帧。
[0304] 此类方法还可包括:通过提供从沿该序列的多个先前的预测参考帧中的至少一个先前的预测参考帧中生成P-图片的至少部分的选项,在该序列中生成至少一张P-图片,并且可包括下列至少一项:(1)通过从被提供以至少部分地在帧间模式中形成P-图片的多个参考帧中选择多个结果中的最佳结果来形成P-图片,以及(2)通过使用多个参考帧的数据形成P-图片,多个参考帧用于有助于促成至少部分地在“多个模式”中形成P-图片的结果。另外,该方法还可包括下列至少一项:(1)包括投影插值的合成技术,其中,取代用于预测的当前的P-图片,并且通过取决于沿该序列的、相对于当前的P-图片的位置的时域距离的两个参考帧的加权数据来形成投影插值帧或帧部分,以及(2)包括修改帧的分辨率的合成技术。该方法可使用变形技术,该变形技术包括:经修改的参考帧从下列任意一项的另一参考帧中修改而来:(1)模糊补偿,(2)配准补偿,(3)全局运动补偿,(4)主运动补偿,(5)亮度增益补偿,以及(1)到(5)全部。作为一种形式,可将经修改的预测参考帧用于预测,但不显示该经修改的预测参考帧。
[0305] 在进一步的实现方案中,译码器包括:图像缓冲器;和图形处理单元,通信地耦合至该图像缓冲器,并且包括至少一个变形分析器和/或至少一个合成分析器。该图形处理单元配置成用于:接收针对像素数据的帧序列的数据,序列具有显示顺序,并且其中每一帧与该显示顺序的时域位置相关联;并且生成下列中的至少一个:(1)使用帧间预测生成当前的F-图片,包括:提供从先前的预测参考帧和/或后续的预测参考帧中形成当前的F-图片的至少一部分的选项,其中,先前的和后续的相对于当前的F-图片的位置,并且在该序列之内;以及(2)使用帧间预测的帧序列的当前的P-图片,包括:提供从至少一个先前的预测参考帧中形成当前的P-图片的至少一部分的选项,其中,先前的相对于当前的P-图片的位置,并且在该序列之内。该图形单元还可配置成用于:生成针对至少一个当前的P-图片或F-图片的部分的运动数据,包括:将至少一个经修改的预测参考帧用于生成针对当前的P-图片或F-图片的部分的运动数据。这可包括:变形分析器配置成用于使用变形技术和/或合成分析器配置成用于使用合成技术。
[0306] 在该译码器的另一实现方案中,该序列包括用于生成针对F-图片的运动数据的非F预测参考帧,并且其中,F-图片被间隔在非F预测参考帧之间,并且其中,在非F预测参考帧之间的F-图片的数量沿着该序列发生变化。该序列可包括该序列之内的至少一张P-图片,通过提供从沿该序列的多个先前的预测参考帧中的至少一个先前的预测参考帧中生成P-图片的至少部分的选项,在该序列中形成该至少一张P-图片。该序列还可包括该序列中的至少一张F-图片,通过除了沿该序列并且相对于F-图片的位置的一个先前的预测参考帧和/或一个后续的预测参考帧,还提供从至少一个附加的预测参考帧中形成所述F-图片中的至少部分的选项来形成该序列的该至少一张F-图片。该序列可包括下列至少一项:(1)通过从被提供以至少部分地在帧间模式中形成P-图片或F-图片的多个参考帧中选择多个结果中的最佳结果,以形成P-图片或F-图片,以及(2)通过使用多个参考帧的数据形成P-图片或F-图片,多个参考帧用于有助于促成至少部分地在“多个”模式中形成P-图片或F-图片的结果。作为一种形式,该序列包括下列至少一项:(1)至少一张F-图片是用于另一F-图片的预测参考帧,(2)沿该序列的连续或不连续的参考帧链,使得多张F-图片是下一张后续F-图片的参考帧,其中,除了针对F-图片中的至少一张的任何其他参考帧之外,还提供参考链,以及(3)金字塔参考帧结构,其中,参考F-图片具有沿该序列的先前参考帧和后续参考帧,并且参考F-图片自身是另一F-图片的参考帧。合成技术包括下列至少一项:(1)投影插值,其中,取代用于预测的当前的F-图片,并且通过取决于沿该序列的、相对于当前的F-图片的所述位置的时域距离的两个参考帧的加权数据来形成投影插值帧或帧部分,以及(2)超分辨率帧,其具有含有经修改的分辨率的帧。该变形技术包括:经修改的参考帧从下列中的至少一项的另一参考帧中修改而来:(1)模糊,(2)配准,(3)全局运动,(4)主运动,(5)亮度增益,以及(1)到(5)全部。在一个示例中,将经修改的预测参考帧用于预测,但不显示该经修改的预测参考帧。该译码器还可包括:在解码器循环内的、用于重构帧的至少一个变形分析器或合成分析器;以及在解码循环外的、用于基于原始的未经解码的图像数据生成用于运动估计的数据的至少一个变形分析器或合成分析器。
[0307] 在进一步的示例中,至少一种机器可读介质可包括多条指令,响应于在计算设备上执行这些指令,这些指令使该计算设备用于执行根据上述示例中的任意一个示例所述的方法。
[0308] 在又一示例中,设备可包括用于执行根据上述示例中的任何一个示例的方法的装置。
[0309] 以上示例可包括多个特征的特定组合。然而,此类上述示例在这方面不受限制,并且在各实现方案中,上述示例可包括:执行仅此类特征的子集;执行不同顺序的此类特征;执行此类特征的不同组合;以及/或者执行明确列出的那些特征之外的附加特征。例如,可参照示例装置、示例系统和/或示例制品来实现参照示例方法所描述的所有特征,反之亦然。
相关专利内容
标题 发布/更新时间 阅读量
修改对象的基层 2020-05-12 525
修改命令 2020-05-11 267
多功能修改器 2020-05-12 619
业务流修改流程 2020-05-13 285
修改比特流 2020-05-12 84
一种面型修改油 2020-05-13 898
定向声音修改 2020-05-13 62
修改带 2020-05-11 874
修改带 2020-05-11 676
修改液 2020-05-11 723
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈