一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于视频编解码的编解码模式信息传播的制作方法

2022-06-16 07:37:46 来源:中国专利 TAG:


1.本实施例中的至少一个一般而言涉及用于视频编码或解码的模式的选择,并且更具体地涉及将编解码模式传播到另一个块。


背景技术:

2.为了实现高压缩效率,图像和视频编解码方案通常采用预测和变换以充分利用视频内容中的空间和时间冗余性。一般而言,帧内或帧间预测被用于利用帧内或帧间相关性,然后对原始块与预测的块之间的差异(常常表示为预测误差或预测残差)进行变换、量化和熵编码。为了重构视频,压缩数据通过与熵编码、量化、变换和预测对应的逆过程进行解码。


技术实现要素:

3.在至少一个实施例中,即使没有为当前块选择编解码模式,当前块的编解码模式信息也被传播到邻居块。这种传播可以受到限制。提出了不同的传播模式。与编解码模式相关的信息取决于编解码模式本身。编解码模式传播允许改进进一步的预测,因为另一个块将受益于来自其邻居的信息。
附图说明
4.图1图示了视频编码器100的示例的框图,诸如高效率视频编解码(hevc)编码器。
5.图2图示了视频解码器200的示例的框图,诸如hevc解码器。
6.图3图示了其中实现各个方面和实施例的系统的示例的框图。
7.图4a图示了压缩域中的编解码树单元和编解码树的示例。
8.图4b图示了将ctu划分为编解码单元、预测单元和变换单元的示例。
9.图5图示了在全阶段的视频编解码器中构造块的流水线的示例。
10.图6图示了块分割的简单示例。
11.图7a图示了在常规实施方式中的块分割内的编解码模式传播。
12.图7b图示了其中与当前块的编解码模式相关的信息被传播到右侧和下面的邻居块的示例实施例。
13.图8图示了将相关编解码模式信息从当前块传播到邻居块的示例实施例。
14.图9图示了可以从中复制编解码模式信息的邻居的示例。
15.图10图示了被设计为用于将相关编解码模式信息从当前块传播到邻居块的过程的示例。
16.图11图示了其中仅当邻居块实际使用编解码模式信息时才从邻居块传播编解码模式信息的示例实施例。
17.图12图示了其中允许多代副本的示例实施例。
具体实施方式
18.虽然本方面描述了与vvc(通用视频编码)的特定草案或hevc(高效视频编码)规范相关的原理,但不限于vvc或hevc,并且可以应用于例如其它标准和建议,无论是预先存在的还是将来开发的,以及任何此类标准和建议的扩展(包括vvc和hevc)。除非另有指示或技术上禁止,否则本技术中描述的各个方面可以单独使用或组合使用。
19.图1图示视频编码器100的示例的框图,诸如hevc编码器。图1还可以图示其中对hevc标准进行改进的编码器或采用与hevc相似的技术的编码器,诸如由jvet(联合视频探索团队)正在为vvc开发的jem(联合探索模型)编码器。
20.在被编码之前,视频序列可以通过预编码处理(101)。例如,这是通过对输入的彩色图片应用颜色变换(例如,从rgb 4:4:4到ycbcr 4:2:0的转换)或对输入图片分量执行重新映射以便获得对压缩更具弹性的信号分布(例如,使用颜色分量之一的直方图均衡化)来执行的。元数据可以与预处理相关联并附加到位流。
21.在hevc中,为了对具有一个或多个图片的视频序列进行编码,将图片分割(102)为一个或多个条带,其中每个条带可以包括一个或多个条带片段。条带片段被组织成编解码单元、预测单元和变换单元。hevc规范区分“块”与“单元”,其中“块”针对样本数组中的特定区域(例如,亮度、y),而“单元”包括所有编码的颜色分量(y、cb、cr或单色)、语法元素和与块相关联的预测数据(例如,运动矢量)的并置块。
22.对于hevc中的编解码,图片被分割为具有可配置尺寸的方形形状的编解码树块(ctb),并将编解码树块的连续集合分组到条带中。编解码树单元(ctu)包含编码的颜色分量的ctb。ctb是分割成编解码块(cb)的四叉树的根,并且编解码块可以被分割成一个或多个预测块(pb)并形成分割成变换块(tb)的四叉树的根。与编解码块、预测块和变换块对应,编解码单元(cu)包括预测单元(pu)和变换单元(tu)的树结构化集合,pu包括用于所有颜色分量的预测信息,并且tu包括用于每个颜色分量的残差编解码语法结构。亮度分量的cb、pb、tb的尺寸适用于对应的cu、pu、tu。在本技术中,术语“块”可以被用于指例如ctu、cu、pu、tu、cb、pb和tb中的任何一个。此外,“块”还可以被用于指h.264/avc或其它视频编解码标准中指定的宏块和分割,并且更一般地指各种尺寸的数据的阵列。此类块在图4a和图4b中图示。
23.在编码器100的示例中,图片由编码器元件编码,如下所述。要编码的图片以cu为单位进行处理。每个cu使用或者帧内或者帧间模式进行编码。当cu以帧内模式编码时,它执行帧内预测(160)。在帧间模式下,执行运动估计(175)和补偿(170)。编码器决定(105)帧内模式或帧间模式中的哪一种用于编码cu并且通过预测模式标志来指示帧内/帧间决定。通过从原始图像块中减去(110)预测的块来计算预测残差。
24.帧内模式中的cu是根据同一条带内的重构的相邻样本预测的。hevc中有35种帧内预测模式的集合可用,包括dc、平面和33种角度预测模式。从与当前块相邻的行和列重构帧内预测参考。参考使用来自先前重构的块的可用样本在水平和垂直方向上扩展超过两倍的块尺寸。当使用角度预测模式进行帧内预测时,可以沿着由角度预测模式指示的方向复制参考样本。
25.当前块的适用的亮度帧内预测模式可以使用两个不同的选项进行编解码。如果适用的模式包括在三种最可能模式(mpm)的构造的列表中,那么该模式由mpm列表中的索引发
信号通知。否则,模式由模式索引的固定长度二值化发信号通知。三种最可能的模式从上面和左侧相邻块的帧内预测模式得出。
26.对于帧间cu,对应的编解码块被进一步分割为一个或多个预测块。帧间预测是在pb级别上执行的,并且对应的pu包含关于如何执行帧间预测的信息。运动信息(例如,运动矢量和参考图片索引)可以使用不同的方法来发信号通知,例如,“合并模式”和“高级运动矢量预测(amvp)”。
27.在合并模式下,视频编码器或解码器基于已经编解码的块组装候选列表,并且视频编码器发信号通知候选列表中的候选之一的索引。在解码器侧,运动矢量(mv)和参考图片索引基于发信号通知的候选进行重构。
28.在amvp中,视频编码器或解码器基于从已编解码的块确定的运动矢量来组装候选列表。视频编码器然后发信号通知候选列表中的索引以识别运动矢量预测器(mvp)并发信号通知运动矢量差(mvd)。在解码器侧,运动矢量(mv)被重构为mvp mvd。适用的参考图片索引也在amvp的pu语法中被显式地编解码。
29.然后对预测残差进行变换(125)和量化(130),包括用于适配下述色度量化参数的至少一个实施例。变换一般基于可分离的变换。例如,首先在水平方向上应用dct变换,然后在垂直方向上应用。在最近的编解码器(诸如jem)中,在两个方向上使用的变换可以不同(例如,一个方向上的dct,另一方向上的dst),这导致各种各样的2d变换,而在以前的编解码器中,用于给定块尺寸的各种2d变换通常是有限的。
30.量化的变换系数以及运动矢量和其它语法元素被熵编解码(145)以输出比特流。编码器还可以跳过变换并在4x4tu的基础上直接对未变换的残差信号应用量化。编码器还可以绕过变换和量化,即,直接对残差进行编解码,而不应用变换或量化过程。在直接pcm编解码中,不应用预测并且编解码单元样本被直接编解码到比特流中。
31.编码器对编码的块进行解码,以提供用于进一步预测的参考。量化的变换系数被去量化(140)和逆变换(150)以对预测残差进行解码。组合(155)解码的预测残差和预测块,图像块被重构。例如,将环路滤波器(165)应用于重构的图片以执行去块/sao(样本自适应偏移量)滤波以减少编码伪影。经滤波的图像存储在参考图片缓冲器(180)中。
32.图2图示了视频解码器200的示例的框图,诸如hevc解码器。在解码器200的示例中,比特流由解码器元件解码,如下所述。视频解码器200一般执行与图1中描述的编码遍(pass)相反的解码遍,其执行视频解码作为编码视频数据的一部分。图2还可以图示其中对hevc标准进行改进的解码器或采用与hevc相似的技术的解码器,诸如jem解码器。
33.特别地,解码器的输入包括可以由视频编码器100生成的视频比特流。首先对比特流进行熵解码(230)以获得变换系数、运动矢量、图片分割信息和其它编解码信息。图片分割信息指示ctu的尺寸,以及将ctu拆分为cu并且在适用时可能拆分为pu的方式。解码器因此可以根据解码的图片分割信息将图片划分(235)为ctu,并且将每个ctu划分为cu。变换系数被去量化(240),包括用于适配下面描述的色度量化参数和逆变换(250)以解码预测残差的至少一个实施例。
34.组合(255)解码的预测残差和预测块,图像块被重构。可以从帧内预测(260)或运动补偿预测(即,帧间预测)(275)获得(270)预测块。如上所述,可以使用不同的模式技术来导出用于运动补偿的运动矢量,其可以使用内插滤波器来计算用于参考块的子整数样本的
内插值。环路滤波器(265)应用于重构的图像。经滤波的图像存储在参考图片缓冲器处(280)。
35.解码的图片还可以经过解码后处理(285),例如逆颜色变换(例如,从ycbcr 4:2:0到rgb 4:4:4的转换)或执行在预编码处理(101)中执行的重映射过程的逆。解码后处理可以使用在预编码处理中导出并在比特流中发信号通知的元数据。
36.图3图示了其中实现各个方面和实施例的系统的示例的框图。系统300可以实施为包括以下描述的各种组件的设备,并且被配置为执行本技术中描述的方面中的一个或多个。此类设备的示例包括但不限于各种电子设备,诸如个人计算机、膝上型计算机、智能电话、平板计算机、数字多媒体机顶盒、数字电视接收器、个人视频记录系统、连接的家用电器、编码器、转码器,以及服务器。系统300的元件可以单独或组合地实施在单个集成电路、多个ic和/或分立组件中。例如,在至少一个实施例中,系统300的处理和编码器/解码器元件跨多个ic和/或分立组件分布。在各种实施例中,系统300的元件通过内部总线310通信耦合。在各种实施例中,系统300经由例如通信总线或通过专用的输入和/或输出端口通信耦合到其它相似的系统或其它电子设备。在各种实施例中,系统300被配置为实现本文档中描述的方面中的一个或多个,诸如上文描述并且如下所述修改的视频编码器100和视频解码器200。
37.系统300包括至少一个处理器301,该至少一个处理器301被配置为执行其中加载的指令,以用于实现例如本文档中描述的各个方面。处理器301可以包括嵌入式存储器、输入输出接口和本领域已知的各种其它电路。系统300包括至少一个存储器302(例如,易失性存储器设备和/或非易失性存储器设备)。系统300包括存储设备304,其可以包括非易失性存储器和/或易失性存储器,包括但不限于eeprom、rom、prom、ram、dram、sram、闪存、磁盘驱动器和/或光盘驱动器。作为非限制性示例,存储设备304可以包括内部存储设备、附加存储设备和/或网络可访问存储设备。
38.系统300包括编码器/解码器模块303,其被配置为例如处理数据以提供编码的视频或解码的视频,并且编码器/解码器模块303可以包括其自己的处理器和存储器。编码器/解码器模块303表示可以被包括在设备中以执行编码和/或解码功能的(一个或多个)模块。如已知的,设备可以包括编码和解码模块之一或两者。此外,编码器/解码器模块303可以被实现为系统300的分开的元件,或者可以作为本领域技术人员已知的硬件和软件的组合结合到处理器301内。
39.要加载到处理器301或编码器/解码器303上以执行本文档中描述的各个方面的程序代码可以被存储在存储设备304中,并且随后被加载到存储器302上以由处理器301执行。根据各种实施例,在执行本文档中描述的过程期间,处理器301、存储器302、存储设备304和编码器/解码器模块303中的一个或多个可以存储各种项中的一项或多项。此类存储的项可以包括但不限于输入视频、解码的视频或解码的视频的一部分、位流、矩阵、变量,以及对等式、公式、运算和运算的中间或最终结果逻辑。
40.在若干实施例中,处理器301和/或编码器/解码器模块303内部的存储器被用于存储指令并为编码或解码期间所需的处理提供工作存储器。但是,在其它实施例中,处理设备外部的存储器(例如,处理设备可以是或者处理器301或者编码器/解码器模块303)被用于这些功能中的一个或多个。外部存储器可以是存储器302和/或存储设备304,例如,动态易
失性存储器和/或非易失性闪存。在几个实施例中,外部非易失性闪存被用于存储电视的操作系统。在至少一个实施例中,快速外部动态易失性存储器(诸如ram)被用作用于视频编解码和解码操作的工作存储器,诸如用于mpeg-2、hevc或vvc。
41.可以通过各种输入设备提供对系统300的元件的输入,如方框309中所示。此类输入设备包括但不限于(i)接收例如由广播公司通过空中传输的rf信号的rf部分,(ii)复合输入端子,(iii)usb输入端子,和/或(iv)hdmi输入端子。
42.在各种实施例中,方框309的输入设备具有相关联的相应输入处理元件,如本领域中已知的。例如,rf部分可以与对于以下必要的元件相关联:(i)选择期望的频率(也称为选择信号,或将信号限制到频带内),(ii)下变频所选择的信号,(iii)将频带再次限制到较窄的频带,以选择(例如)在某些实施例中可以被称为信道的信号频带,(iv)解调下变频和频带受限的信号,(v)执行纠错,以及(vi)多路分解以选择期望的数据分组流。各种实施例的rf部分包括一个或多个执行这些功能的元件,例如,频率选择器、信号选择器、频带限制器、信道选择器、滤波器、下变频器、解调器、纠错器和解复用器。rf部分可以包括执行各种这些功能(包括例如将接收到的信号下变频为更低频率(例如,中频或近基带频率)或基带)的调谐器。在一个机顶盒实施例中,rf部分及其相关联的输入处理元件接收在有线(例如,电缆)介质上传输的rf信号,并通过滤波、下变频和再次滤波到期望的频带来执行频率选择。各种实施例重新布置上述(和其它)元件的次序、移除这些元件中的一些,和/或添加执行类似或不同功能的其它元件。添加元件可以包括在现有元件之间插入元件,诸如例如插入放大器和模数转换器。在各种实施例中,rf部分包括天线。
43.此外,usb和/或hdmi端子可以包括相应的接口处理器,用于通过usb和/或hdmi连接将系统300连接到其它电子设备。应该理解的是,在必要时输入处理的各个方面(例如,reed-solomon纠错)可以例如在分开的输入处理ic内或在处理器301内实现。类似地,在必要时可以在分开的接口ic内或处理器301内实现usb或hdmi接口处理的各个方面。经解调、纠错和解复用的流被提供给各种处理元件,包括例如处理器301,以及与存储器和存储元件结合操作的编码器/解码器303,以在必要时处理数据流以在输出设备上呈现。
44.可以在集成壳体内提供系统300的各种元件。在集成壳体内,可以使用合适的连接布置(例如,本领域已知的内部总线,包括i2c总线、布线和印刷电路板)互连各种元件并在它们之间传输数据。
45.系统300包括通信接口305,其使得能够经由通信信道302与其它设备通信。通信接口305可以包括但不限于被配置为在通信信道302上传输和接收数据的收发器。通信接口305可以包括但不限于调制解调器或网卡,并且通信信道302可以例如在有线和/或无线介质内实现。
46.在各种实施例中,使用诸如ieee 802.11之类的wi-fi网络将数据流传输到系统300。这些实施例的wi-fi信号是通过适于wi-fi通信的通信信道302和通信接口305接收的。这些实施例的通信信道302通常连接到提供对包括互联网在内的外部网络的访问的接入点或路由器,以允许流传输应用和其它越顶通信。其它实施例使用通过输入块309的hdmi连接递送数据的机顶盒向系统300提供流传输的数据。还有其它实施例使用输入块309的rf连接向系统300提供流传输的数据。
47.系统300可以向各种输出设备(包括显示器330、扬声器340和其它外围设备350)提
供输出信号。在实施例的各种示例中,其它外围设备350包括独立dvr、盘播放器、立体声系统、照明系统和基于系统300的输出提供功能的其它设备中的一个或多个。在各种实施例中,控制信号在系统300与显示器330、扬声器340或其它外围设备350之间使用诸如av.link、cec之类的信令或在有或没有用户干预的情况下启用设备到设备控制的其它通信协议被传送。输出设备可以通过相应的接口306、307和308经由专用连接通信耦合到系统300。可替代地,输出设备可以经由通信接口305使用通信信道302连接到系统300。显示器330和扬声器340可以与电子设备(诸如例如电视机)中的系统300的其它组件集成在单个单元中。在各种实施例中,显示接口306包括显示驱动器,诸如例如定时控制器(t con)芯片。
48.显示器330和扬声器340可以可替代地与其它组件中的一个或多个分开,例如,如果输入端309的rf部分是分离的机顶盒的一部分。在显示器330和扬声器340是外部组件的各种实施例中,可以经由专用输出连接(包括例如hdmi端口、usb端口或comp输出端)来提供输出信号。本文描述的实施方式可以在例如方法或过程、装置、软件程序、数据流或信号中实现。即使仅在实施方式的单一形式的上下文中进行讨论(例如,仅作为方法进行讨论),所讨论的特征的实施方式也可以以其它形式(例如,装置或程序)来实现。装置可以以例如适当的硬件、软件和固件来实现。例如,这法可以在诸如例如处理器之类的装置中实现,处理器一般是指处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑设备。处理器还包括通信设备,诸如例如计算机、蜂窝电话、便携式/个人数字助理(“pda”),以及促进最终用户之间信息的传送的其它设备。
49.图4a图示了压缩域中的编解码树单元和编解码树的示例。在hevc视频压缩标准中,采用运动补偿时间预测来利用视频的相继图片之间存在的冗余性。为此,将图片分割为所谓的编解码树单元(ctu),其尺寸通常为64x64、128x128或256x256像素。每个ctu由压缩域中的编解码树表示,例如在ctu的四叉树划分中。每个叶子被称为编解码单元(cu)。
50.图4b图示了将ctu划分为编解码单元、预测单元和变换单元的示例。然后给每个cu一些帧内或帧间预测参数(预测信息)。为此,它在空间上被分割为一个或多个预测单元(pu),每个pu被指派一些预测信息,包括诸如运动矢量。帧内或帧间编解码模式在cu级别上指派。
51.在本技术中,术语“重构”和“解码”可以互换使用,术语“编码”或“编解码”可以互换使用,并且术语“图像”、“图片”和“帧”可以互换使用可互换。通常,但不是必需,术语“重构”用于编码器侧,而“解码”用于解码器侧。术语“块”或“图片块”可以被用于指ctu、cu、pu、tu、cb、pb和tb中的任何一个。此外,术语“块”或“图片块”可以被用于指h.264/avc或其它视频编解码标准中指定的宏块、分割和子块,并且更一般地指多种尺寸的样本的阵列。
52.在最近的视频编解码器中,诸如例如vtm草案6,除了通常的平移运动模型外,cu还可以包含使用常见参数化运动模型(例如,仿射模式)的子块运动(例如,4x4方形子块)或使用时间传播的运动矢量(例如,基于子块的时间运动矢量预测(sbtmvp),也称为atmvp)。
53.图5图示了在全阶段视频编解码器中构造块的管线的示例。在一些版本的视频编解码器中,其中一些阶段可以被绕过或不存在。关于帧间预测的块的解码,可能需要以下过程:
[0054]-mc(运动补偿)可以通过块或子块来完成。
[0055]-lic(局部照明补偿)使用线性自适应来改变预测样本值。
[0056]-bio或bdof(双向预测光流)使用用于重构块的2个参考块之间的光流估计的结果来改变预测的样本值。
[0057]-dmvr(解码器侧运动矢量细化,图5中未示出)在解码器侧细化pu内的运动矢量以进行双向预测。
[0058]-gbi(广义双向预测)又名bcw(具有cu权重的双向预测)使用用于重构块的2个参考块的加权平均值。
[0059]-obmc(重叠块运动补偿)使用来自相邻块的不同运动矢量执行运动补偿块的加权平均。
[0060]-iq/it(逆量化和逆变换)被用于重构残差。
[0061]-帧内预测被用于使用周围样本值预测块。
[0062]-ciip(组合的帧间/帧内预测)或多假设根据位置使用加权平均将若干预测(通常是帧间和帧内)合并在一起。
[0063]-cclm:交叉分量线性模型。使用另一个已经重构的组件来使用线性模型预测当前组件。
[0064]
cu解码包括不同的工具,诸如mip(又名alwp):基于矩阵的帧内预测、仿射:仿射运动模型(4或6个参数)、isp(帧内子分割)、sbt(子块变换)、mrl(多参考线),triangle(基于三角形的分割)、ciip(组合的帧内/帧间预测)、ibc(帧内块复制)。这些工具可以具有特定的参数。
[0065]
当为块选择特定模式时,该块将仅包含与这种模式相关的信息。例如,当块被帧内编码时,它将只包含帧内相关信息,诸如帧内方向、mip开/关、mrl开/关等。在给定区域中,当孤立的块使用不同于该区域的其余块的模式时,停止信息向这个块旁边的块的传播。在此类情况下,对更多块的模式的预测效率不高并且压缩性能可能降低。
[0066]
本文档描述了考虑到前述内容而构思的多个实施例。本技术中描述的各种方法和其它方面可以由实现视频编码器100(图1)或视频解码器200(图2)的设备300(图3)的处理器301来执行。
[0067]
在至少一个实施例中,即使没有为当前块选择编解码模式,当前块的编解码模式信息也被传播到邻居块。在至少一个实施例中,这种传播限于例如仅一个块或多代副本。提出了不同的传播模式:从左到右方向、从上到下方向、右下角对角线方向、先可用、后编解码。
[0068]
与编解码模式相关的信息取决于编解码模式本身。例如,对于帧间编解码模式,编解码模式信息可以包括运动矢量、参考列表中参考图片的参考索引以及从单向或双向中选择的模式。其它模式使用其它编解码模式信息。
[0069]
编解码模式传播允许改进进一步的预测,因为另一个块将受益于来自其邻居的信息。实际上,当对于块存在零星的模式改变时(通常是当给定区域中只有1个块具有不同的编解码模式时),它将完全或部分地停止与这个块相邻的块的信息传播。
[0070]
编解码模式传播既可以在编码阶段由图1的编码器100执行,也可以在解码阶段由图2的解码器200执行。更具体地,编解码模式传播可以由编码器/解码器模块或图3的设备300的处理器实现。
[0071]
图6图示了块分割的简单示例。在这个示例中,块a、c和d使用共用的编解码模式m,
而块b使用另一种编解码模式n。例如,模式m是合并编解码的块(即,块是帧间编解码的块,使用具有相关联的运动矢量的常规合并模式),而模式n是帧内编解码的模式(具有相关联的帧内方向)。
[0072]
图7a图示了在常规实施方式中的块分割内的编解码模式传播。在这种情况下,发生以下传播:
[0073]-块b不能使用来自左侧块(块a)的信息,因为它们的模式不同
[0074]-块c使用来自上面块(块a)的信息,因为它们的模式相似
[0075]-块d不能使用来自上面块(块b)的信息,因为它们的模式不同,但可以使用来自左侧块(块c)的信息
[0076]
在至少一个实施例中,建议对于给定的块存储来自相邻块的信息,而不管当前块的编解码模式是什么。例如,对于与当前块编解码模式无关的信息,总是在当前块上携带左块侧的信息。在这种实施方式中,在图7的示例中,块b将复制来自块a的信息(因此与常规合并模式相关)而不使用它们,因为模式不同。实际上,由于块b使用帧内编解码,因此它对合并模式参数没有用处。
[0077]
图7b图示了其中与当前块的编解码模式相关的信息被传播到右侧和下面的邻居块的示例实施例。在这个示例中,来自块a的信息被携带到块b。因此,在块d的解码期间,来自块b的信息(其是来自块a的信息)和块c的信息都可用作解码块d的信息的预测器。在这个示例中,这意味着2个不同的运动矢量预测器可能可用作块d的运动矢量候选。
[0078]
表1给出了可以从块传播到块的信息的示例以及相关联的模式。运动信息由运动矢量和参考列表中参考图片的参考索引以及模式(单向、双向)组成。
[0079][0080][0081]
表1
[0082]
图8图示了将相关编解码模式信息从当前块传播到邻居块的示例实施例。这个过程例如在设备300用于实现图1的编码器100或图2的解码器200的环境中由图3的设备300的处理器301执行。在步骤810中,处理器根据先前描述的实施例之一选择邻居块。在步骤820中,处理器从邻居块获得编解码模式,并且在步骤830中,将这种模式与当前块的模式进行比较。当编解码模式不同时,邻居块包括可能对另一个块的预测感兴趣的编解码模式信息,因此在步骤840中将邻居块的编解码模式信息复制到当前块。由于模式不同,因此模式信息
也不同,因此复制不会影响当前模式的正常操作。实际上,复制的信息将不被用于当前块,因为与另一种模式相关。但是,这个复制的信息可以被用于另一个块。当编解码模式相同时(分支“否”),不需要复制信息,因为当前块已经具有相同的信息。
[0083]
图9图示了可以从中复制编解码模式信息的邻居的示例。选择步骤(图8中的步骤810)允许选择要从哪个邻居块复制编解码模式信息,换句话说,它定义如何执行传播。在变体实施例中,用于当前块的编解码模式信息从左侧块、右侧块、上部块、下部块、左上块、右上块、左下或右下块复制。
[0084]
在变体实施例中,用于当前块的编解码模式信息从块的集合当中的第一可用块(例如,包括上、左侧、右上、左上等的有序列表)复制。
[0085]
在变体实施例中,用于当前块的编解码模式信息从上一个编解码的信息复制。每次块被解码时,该块的当前信息在表中被更新。相反,与当前块无关的信息从表中复制到块。可选地,可以在每个ctu或ctu的行之后重置该表,以防止将信息传播得离其原始块太远。
[0086]
上面已经介绍了传播的一些示例,但其它类型的传播也是可能的,虽然本文档中没有列出。
[0087]
图10图示了被设计为将相关编解码模式信息从当前块传播到邻居块的过程的示例。当前块用c表示,邻居块用a表示。为简单起见,在这个示例中,未考虑仿射模式,因此未示出。但是,在使用仿射模式时,同样的原则也适用。
[0088]
对于每个编解码模式信息,当没有为当前块激活相关联的模式时,从左邻居复制对应的信息。当信息不可用时(例如,在图片边界或条带边界),代替地复制默认值,如表2中所示。
[0089]
信息默认值帧内方向intrapredmodey=intra_planar运动信息空矢量,参考索引0ibc运动矢量空矢量mip模式索引=0gbi指数默认gbi索引(1/2,1/2权重)仿射模型空模型
[0090]
表2
[0091]
编解码模式信息的这种传播影响预测器推导。实际上,由于所有信息都从cu携带到cu(或在不可用时设置为默认值),因此由常规预测器执行的可用性测试变得无用,并且可以从预测器构造中移除。例如,在亮度帧内预测模式的推导过程中,如果cupredmode[0][xnbx][ynbx]不等于mode_intra,那么candintrapredmodex被设置为intra_planar。可以移除这个测试,因为即使邻居块不在intra_mode中,也已经设置了必要的信息(在这种情况下为intrapredmodey)。其它预测器推导过程也受到类似影响。这简化了整个预测器构造过程,因为由于来自邻居块的编解码模式信息的副本,不再需要与模式检查和值设置相关的一些测试。
[0092]
但是,编解码模式信息的传播并不总是期望的,特别是在大面积上。为此,在至少一个实施例中,为了限制信息在大面积上的传播,仅在相邻块自身生成相关信息的情况下
才从相邻块复制信息。如果不是这种情况(信息被复制),那么信息被标记为不可用,并且恢复用于信息可用性的默认过程(如上所述)。在这种情况下,仅授权第一代传播。
[0093]
图11图示了仅当邻居块实际使用编解码模式信息时才从邻居块传播编解码模式信息的示例实施例。在这个示例中,当前块由c表示并且邻居块由a表示。该过程对于当前块的可能模式考虑到邻居块实际使用的模式并存储从邻居块发出的相关编解码模式信息。为简单起见,在这个示例中,仿射模式没有被考虑在内,因此没有示出。但是,在使用仿射模式时,同样的原则也适用。
[0094]
图12图示了其中允许多代副本的示例实施例。这可以通过维护计数器来计数已经为给定编解码模式信息完成的副本的数量来完成。这个计数器在进行复制时递增,并与相关联的编解码模式信息一起存储。将这个计数器与期望的生成数gen_max进行比较。当计数器低于gen_max时复制被授权,而当计数器变得等于gen_max时复制不被授权。在变体实施例中,通过将gen_max设置为1来授权单代传播。
[0095]
在至少与intra模式相关的实施例中,由于在帧内模式预测器构造列表期间平面模式总是第一个mpm,因此当当前块intrapredmodey的模式等于intra_planar时,从邻居块传播intrapredmodey。
[0096]
各种实施方式涉及解码。如本技术中所使用的,“解码”可以涵盖例如对接收到的编码的序列执行以便产生适合于显示的最终输出的过程的全部或部分。在各种实施例中,此类过程包括通常由解码器执行的过程中的一个或多个,例如,熵解码、逆量化、逆变换和差分解码。在各种实施例中,此类过程还,或者可替代地,包括由本技术中描述的各种实施方式的解码器执行的过程,例如,图8或图10中呈现的实施例。
[0097]
作为另外的示例,在一个实施例中,“解码”仅指熵解码,在另一个实施例中,“解码”仅指差分解码,而在另一个实施例中,“解码”是指熵解码和差分解码的组合。基于具体描述的上下文,短语“解码过程”旨在专门指代操作的子集还是一般地指代更广泛的解码过程将是清楚的,并且相信本领域技术人员会很好地理解。
[0098]
各种实施方式涉及编码。以与上面关于“解码”的讨论类似的方式,在本技术中使用的“编码”可以涵盖例如对输入视频序列执行以产生编码的位流的过程的全部或部分。在各种实施例中,此类过程包括通常由编码器执行的过程中的一个或多个,例如,分割、差分编码、变换、量化和熵编码。在各种实施例中,此类过程还,或者可替代地,包括由本技术中描述的各种实施方式的编码器执行的过程,例如,图8或图10的实施例。
[0099]
作为另外的示例,在一个实施例中,“编码”仅仅是指熵编码,在另一个实施例中,“编码”仅仅是指差分编码,在另一个实施例中,“编码”是指差分编码和熵编码的组合。基于特定描述的上下文,短语“编码过程”是旨在专门指操作的子集还是广义地指更广泛的编码过程将是显而易见的,并且相信本领域技术人员会很好地理解。
[0100]
注意的是,本文所使用的语法元素是描述性术语。照此,它们不排除使用其它语法元素名称。
[0101]
本技术描述了多个方面,包括工具、特征、实施例、模型、方法等。这些方面中的许多方面被具体描述,并且至少为了示出个体特点,常常以可能听起来有限制的方式进行描述。但是,这是为了描述清楚的目的,而不是限制那些方面的应用或范围。事实上,所有不同的方面都可以组合和互换以提供更多方面。而且,各方面也可以与早期申请中描述的方面
进行组合和互换。本技术中描述和考虑的方面可以以许多不同形式实现。上面的图1、图2和图3提供了一些实施例,但也可以考虑其它实施例,并且对图的讨论不限制实施的广度。
[0102]
在本技术中,术语“重构”和“解码”可以互换使用,术语“像素”和“样本”可以互换使用,术语“图像”、“图片”和“帧”可以互换使用。通常,但不是必需,术语“重构”用在编码器侧,而“解码”用在解码器侧。
[0103]
本文描述了各种方法,并且每种方法包括一个或多个用于实现所述方法的步骤或动作。除非该方法的正确操作要求步骤或动作的特定次序,否则可以修改或组合特定步骤和/或动作的次序和/或使用。
[0104]
在本技术中使用了各种数值,例如关于块尺寸。特定值是用于示例目的,并且所描述的方面不限于这些特定值。
[0105]
对“一个实施例”或“实施例”或“一个实施方式”或“实施方式”以及它们的其它变形的引用是指结合该实施例描述的特定特征、结构、特点等包括在至少一个实施例中。因此,短语“在一个实施例中”或“在实施例中”或“在一个实施方式中”或“在实施方式中”以及任何其它变化在本说明书中各处的出现不一定全部指相同的实施例。
[0106]
此外,本技术或其权利要求书可以提到“确定”各种信息。确定信息可以包括例如以下一项或多项:估计信息、计算信息、预测信息或从存储器中检索信息。
[0107]
另外,本技术或其权利要求书可以提到“访问”各种信息。访问信息可以包括例如以下一项或多项:接收信息、(例如,从存储器中)检索信息、存储信息、移动信息、复制信息、计算信息、预测信息或估计信息。
[0108]
此外,本技术或其权利要求书可以提到“接收”各种信息。与“访问”一样,接收是广义的术语。接收信息可以包括以下一个或多个:例如,访问信息或检索信息(例如,从存储器或光学介质存储装置)。另外,以一种或另一种方式,在诸如例如以下操作期间:存储信息、处理信息、发送信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息,通常涉及“接收”。
[0109]
应该认识到的是,例如在“a/b”、“a和/或b”和“a和b中的至少一个”的情况下使用以下“/”、“和/或”和
“…
中的至少一个”中的任何一个旨在涵盖仅选择第一个列出的选项(a),或者仅选择第二个列出的选项(b),或者选择两个选项(a和b)。作为另外的示例,在“a、b和/或c”和“a、b和c中的至少一个”的情况下,这种措词旨在涵盖仅选择第一个列出的选项(a),或仅选择第二个列出的选项(b),或仅选择第三个列出的选项(c),或仅选择第一个和第二个列出的选项(a和b),或仅选择第一个和第三个列出选项(a和c),或仅选择第二个和第三个列出的选项(b和c),或者选择所有三个选项(a和b和c)。如对于本领域和相关领域的普通技术人员显而易见的那样,这可以针对所列的多个项目扩展。
[0110]
如对于本领域技术人员将显而易见的,实施方式可以产生各种信号,这些信号被格式化为携带例如可以被存储或传输的信息。信息可以包括例如用于执行方法的指令或由所描述的实施方式之一产生的数据。例如,信号可以被格式化为携带所描述的实施例的位流。可以将这种信号格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可以包括例如对数据流进行编码并且用编码的数据流来调制载波。信号携带的信息可以是例如模拟或数字信息。如已知的,信号可以通过各种不同的有线或无线链路传输。信号可以存储在处理器可读介质上。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献