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

视频编解码器中用信号通知的方法与流程

2022-02-22 07:32:42 来源:中国专利 TAG:


1.本公开涉及视频编码,并且具体地但不排他地涉及为存储或传输做准备的视频数据的编码。


背景技术:

2.已经开发了各种视频编码技术,以处理数字视频演示和其他类似的媒体对象。用于创建视频演示的技术的最新发展已导致这样的演示的精确度、清晰度、细节和复杂程度的进步和增强。因此,用于构建视频演示的数据量已显著增加。
3.随着视频录制和创建技术的这些进步,现在用户越来越期望获取数字格式的视频演示,这激发有效的文件大小。例如,存储介质的大小是有限的,并且如果要创建特别高清晰度的电影,而没有某种形式的编码和/或压缩,则该电影的数字文件可能大于存储介质的容量。
4.读者将理解,数字媒体编码和压缩的关键驱动因素是媒体的分发越来越受通信信道影响的事实。为此,通过物理技术(例如,激光光纤通信)的进步,以及通过数据在这样的信道上通信的方式的更高的效率,通信信道的速度和容量有了实质性的改进。
5.然而,仍然普遍需要考虑提高视频编码效率的方式。这既是从减少将视频演示传输到特定清晰度级别所需的数据量的角度出发,也是从管理在编码器处对视频演示进行编码以及在解码器处对编码数据进行解码所需的计算复杂度级别的角度出发。
6.以这种方式提高编码效率也对数据存储具有潜在的积极影响。这将对订阅服务的任何提供商产生影响,因为需要存储大量视频演示以提供给可能在存储容量有限的装置上观看这样的视频演示的订阅者或广播员以及接收者。
7.更广泛地说,期望减少要在传输器与接收器之间传输的数据量,减少对网络使用的影响,并减少在公共网络上下载大量数据对用户的任何潜在的财务影响。
8.帧内预测包括通过使用从同一帧内的其他块提取的参考样本在视频帧中的样本块中执行预测。这样的预测可以通过不同的技术(在传统的编解码器架构中被称为“模式”)获得。
9.在由联合视频专家组(jvet)开发的提议的vvc(通用视频编码)技术中,旨在定义多种可能的帧内预测模式。因此,这些模式中的一个可以用于帧内预测,并且可以在比特流中用信号通知或者在解码器处以其他方式确定特定选择的模式。
附图说明
10.图1是根据实施例的通信网络的示意图;
11.图2是图1的通信网络的发射器的示意图;
12.图3是图示出在图2的发射器上实现的编码器的图;
13.图4是根据第一特定实施例的在图3的编码器的变换模块处执行的变换选择过程的流程图;
14.图5是根据第二特定实施例的在图3的编码器的变换模块处执行的变换选择过程的流程图;
15.图6是根据第三特定实施例的在图3的编码器的变换模块处执行的变换选择过程的流程图;
16.图7是图1的通信网络的接收器的示意图;
17.图8是图示出在图7的接收器上实现的解码器的图;
18.图9是根据第一配置的在图8的解码器处的二次逆变换过程的流程图;以及
19.图10是根据第二配置的在图8的解码器处的二次逆变换过程的流程图。
具体实施方式
20.本公开的方面可以对应于所附权利要求的主题。
21.一般而言,帧内预测涉及对给定块的残差数据执行主变换和可选的二次变换以产生系数信息。系数信息相对于原始帧数据通常采用压缩形式。
22.在当前的vvc草案规范中,二次变换的集合(在vvc规范中被称为“低频不可分离变换”)可以应用于帧内编码的主变换系数以进一步减少残差信号的能量。为每个块编码标志以确定该块是否使用二次变换。在块使用二次变换的情况下,在解码器处应用逆二次变换矩阵以恢复主变换系数。
23.对于(在编码器处使用的)每个二次变换矩阵,存在(在解码器处使用的)对应的逆二次变换矩阵。特定二次变换矩阵的选择由用于生成残差信号的帧内预测模式确定。此外,为每个二次变换块编码标志以在与帧内预测模式相对应的两个可能的二次变换矩阵中的一个之间作出决定。在当前的vvc草案规范中,无论主变换类型如何,都使用二次变换。
24.本发明的方面涉及以流线化的方式简化在视频编解码器中使用的二次变换的方法,流线化的方式可以去除变换/量化管道对预测管道的不必要的依赖,从而实现两个管道的独立操作。在对应的主变换能够自行恢复大部分编码性能的情况下,实施例可以进一步消除二次变换的使用,这简化了编码过程和解码过程两者。
25.在本文中描述的实施例被设想为对设想的通用视频编码(vvc)规范中提出的编解码器的修改。然而,读者将意识到本文公开的原理对vvc范围之外的其他场景具有潜在的适用性。vvc的范围不应被视为对本公开的范围的限制。
26.本文中描述的第一实施例包括在帧内预测中推导二次变换集的方法,该二次变换集包括用于产生残差数据和对应的系数的二次变换的集合。
27.这可以看作是vvc草案规范中现有的基于帧内模式的二次变换集推导过程的替代。在该实施例中,通过基于块尺寸的过程来执行二次变换集推导。这利用了以下事实,即在vvc架构中,块尺寸在变换/量化管道中很容易获得,并且因此这可以防止管道间的依赖性。除了块尺寸之外,信道id(亮度或色度)也被进一步合并以增强所提出的二次变换集推导过程的准确性。
28.在实施例中,进行鉴别步骤以确定已采用哪个主变换。除了主变换是作为在水平方向和垂直方向两者上的dct2(离散余弦变换,类别2)的整数近似而被获得的情况之外,实施例禁止使用二次变换。该简化允许更短的编码时间以及减少解码器的复杂性。与当前的vvc提案相比,这将完全去除当前vvc草案规范中的一个上下文模型。
29.本公开的方面可以从所附权利要求中确定。
30.如图1中所图示,图示出了包括示意性视频通信网络10的布置,其中发射器20和接收器30经由通信信道40进行通信。在实践中,通信信道40可以包括卫星通信信道、有线网络、地面无线电广播网络、诸如用于向家庭和小型商业场所提供互联网服务的电话通信信道、光纤通信系统或者上述任何一种和任何其他可想到的通信介质的组合。
31.此外,本公开还扩展到通过物理传送将存储介质传递到能够读取该介质并从中获得比特流的适当配置的接收器的通信,在该存储介质上存储有被编码的比特流的机器可读记录。这方面的示例是提供数字多功能光盘(dvd)或等同物。以下描述集中于诸如通过电子或电磁信号载体的信号传输,但不应被理解为排除上述涉及存储介质的方法。
32.如图2中所示,发射器20在结构和功能上是计算机设备。它可以与通用计算机设备共享某些特征,但是给定发射器20将被放置用于的专用功能,一些特征可以是实现特定的。读者将了解哪些功能可以是通用类型,并且哪些可能需要特定配置以用于视频发射器。
33.因此,发射器20包括被配置用于在处理图形和类似操作中的特定用途的图形处理单元(gpu)202。发射器20还包括是通常提供的或被配置用于诸如数学运算、音频处理和管理通信信道等的其他目的的一个或多个其他处理器204。
34.输入接口206提供用于接收用户输入动作的设施。例如,这样的用户输入动作可以是由用户与特定输入单元的交互引起的,特定输入单元包括一个或多个控制按钮和/或开关、键盘、鼠标或其他定点装置(pointing device)、能够接收语音并将其处理为控制命令的语音识别单元、被配置成接收和控制来自诸如平板电脑或智能手机或者遥控接收器的另一装置的过程的信号处理器。该列表将被理解为非穷尽性的,并且读者可以设想其他形式的输入,无论是用户发起的还是自动的。
35.类似地,输出接口214可操作以提供用于向用户或另一装置输出信号的设施。这样的输出可以包括用于驱动本地视频显示单元(vdu)或任何其他装置的显示信号。
36.通信接口208实现与一个或多个信号接收者的通信信道(无论是广播的还是端到端的)。在本实施例的上下文中,通信接口被配置成导致承载定义视频信号的、由发射器20编码的比特流的信号的发射。
37.特别是为了本公开的权益,处理器204和gpu 202可操作以在编码器的操作中执行计算机程序。在这样做时,求助于由大容量存储装置208提供的数据存储设施,大容量存储装置208被实现以提供大规模数据存储(尽管访问速度相对慢),并且在实践中将存储计算机程序,并在当前上下文中将存储视频演示数据,为编码过程的执行做准备。
38.只读存储器(rom)210预先配置有被设计成提供发射器20的功能核心的可执行程序,并且随机存取存储器212被提供用于在追求计算机程序的执行中数据和程序指令的快速访问和存储。
39.现在将参照图3描述发射器20的功能。图3示出由通过可执行指令在发射器20上实现的编码器对表示视频演示的数据文件执行的处理管道,该视频演示包括用于作为图片序列顺序显示的多个帧。
40.数据文件还可以包括伴随视频演示的音频回放信息以及实现演示的编目的诸如电子节目指南信息、字幕或元数据的进一步补充信息。数据文件的这些方面的处理与本公开不相关。
41.参照图3,图片序列中的当前图片或帧被传递到分割模块230,在分割模块230处它被分割成给定尺寸的矩形块以供编码器处理。该处理可以是顺序的或并行的。该方式可以取决于特定实现的处理能力。
42.然后,每个块被输入到预测模块232,预测模块232寻求丢弃序列中存在的时间和空间冗余并使用先前编码的内容来获得预测信号。能够计算这样的预测的信息被编码在比特流中。该信息应包括能够进行计算的足够信息,包括在接收器处推断完成预测所需的其他信息的可能性。
43.从原始信号中减去预测信号以获得残差信号。然后将其输入到变换模块234,变换模块234试图通过使用更合适的数据表示来进一步减少块内的空间冗余。在比特流中可以用信号通知域变换的采用或其他。
44.结果信号然后通常由量化模块236量化,并且最后,由系数和用于计算当前块的预测所需的信息形成的结果数据被输入到熵编码模块238,熵编码模块238利用统计冗余通过短二进制码以紧凑形式表示信号。再次,读者将注意到熵编码在一些实施例中可以是可选的特征并且在某些情况下可以完全省略。在比特流中可以用信号通知熵编码的采用和诸如熵编码(例如,霍夫曼编码)模式的索引和/或码本的能够解码的信息。
45.通过发射器20的编码设施的重复动作,可以构建块信息元素的比特流以用于传输到一接收器或多个接收器(视情况而定)。比特流还可以承载跨多个块信息元素应用的信息元素,并且因此,保持在独立于块信息元素的比特流语法中。这样的信息元素的示例包括配置选项、适用于帧序列的参数以及与整个视频演示相关的参数。
46.现在将参照图4更详细地描述变换模块234。可以理解,这只是示例,并且在本公开和所附权利要求的范围内,可以设想其他方式。
47.对帧中的每个块执行以下过程。
48.变换过程包括推导变换矩阵以推导在变换模块234中使用的二次变换矩阵的过程。
49.在草案vvc提案的特定上下文中,现有方式依赖于基于特定情况下采用的帧内预测模式的二次变换矩阵的推导。相反,在本实施例中,二次变换矩阵从块的其他特征推导,包括诸如它们是否属于色度(“chroma”)或亮度(“luma”)颜色分量或者包含在块内或块内特定区域内的非零系数的数量的块内系数的特性(步骤s1-2),和/或包括诸如它的尺寸或它的高度与宽度之间的比率的块的其他物理特性。
50.在第一步骤中,考虑为编解码器定义的可能的二次变换矩阵的集合。选择其中的两个(步骤s1-4),用于亮度块的主残差的变换。每个块的二次变换矩阵的选择取决于当前块的块尺寸、颜色分量和/或块高度与宽度之间的比率。
51.然后,确定要使用这些选择的二次变换矩阵中的哪一个(步骤s1-6)。可以使用任何合适的技术来执行该确定,例如,它可以基于结果变换的效率来进行,即,哪个变换产生残差数据的最有效的编码(步骤s1-8)。与变换后的残差数据一起(s1-10),在比特流中向解码器用信号通知在选择中的那些矩阵当中的要使用的正确逆二次变换矩阵(步骤s1-12)。
52.可替代地,在第一实施例的另一种情况下,从vvc草案规范中使用的可能的二次变换矩阵的集合中选择三个二次变换矩阵来变换亮度块的主残差。每个块的二次变换矩阵的选择再次取决于当前块的块尺寸、颜色分量和/或块高度与宽度之间的比率。
53.然后,确定要使用这些选择的二次变换矩阵中的哪一个。可以使用任何合适的技术来执行该确定,例如,它可以基于结果变换的效率来进行,即,哪个变换产生残差数据的最有效的编码。在比特流中向解码器用信号通知在选择的那些矩阵当中的要使用的正确逆二次变换矩阵。
54.进一步可替代地,在第一实施例的另一种情况下,从vvc草案规范中使用的可能的二次变换矩阵的集合中选择两个或三个二次变换矩阵来变换亮度块的主残差。选择中可能的二次变换的数量以及每个块的二次变换矩阵的选择取决于当前块的块尺寸、颜色分量和/或块高度与宽度之间的比率。
55.再次确定要使用这些选择的二次变换矩阵中的哪一个。可以使用任何合适的技术来执行该确定,例如,它可以基于结果变换的效率来进行,即,哪个变换产生残差数据的最有效的编码。在比特流中向解码器用信号通知在选择的那些矩阵当中的要使用的正确逆二次变换矩阵。
56.进一步可替代地,在第一实施例的另一种情况下,从vvc草案规范中使用的可能的二次变换矩阵的集合中选择甚至三个以上的二次变换矩阵来变换亮度块的主残差。选择中可能的二次变换的数量以及每个块的二次变换矩阵的选择取决于当前块的块尺寸、颜色分量和/或块高度与宽度之间的比率。当确定了应该使用选择的二次变换中的哪一个时,在比特流中向解码器用信号通知在选择中的那些矩阵当中的要使用的正确的逆二次变换矩阵。
57.在可以与第一实施例组合的第二实施例中,选择中可能的二次变换的数量和/或每个块的二次变换矩阵的选择取决于在比特流中向解码器用信号通知的非零系数的数量。如图5中所图示,根据该实施例的过程包括与关于第一实施例的如图4中所示的相同的步骤(重新编号为s2-xx而不是s1-xx),但是步骤s2-3介于确定要选择的候选矩阵的数量的步骤s2-2和步骤s2-4之间。
58.可替代地,选择中可能的二次变换的数量和/或每个块的二次变换矩阵的选择取决于块内的某些选择的系数的幅度和符号。例如,模算子被应用于一个或多个系数以确定哪些可能的二次变换矩阵应该用于当前块。
59.在可以与第一实施例和/或第二实施例组合的第三实施例中,对于某些主变换类型可以消除二次变换的使用。这可以在用信号通知二次变换的成本方面具有优势,因为对于某些块可以避免信号通知从而减少比特率。附加地,这在编码器处的复杂性的潜在的减少方面可以具有优势,因为编码器不需要在某些块中搜索最佳二次变换选项。附加地,由于解码器处的复杂性的潜在的减少,这可以具有优势,因为解码器不需要包括用于某些块类型的逆二次变换能力。
60.在该实施例的一种情况下,除了在水平方向和垂直方向两者上使用dct2的整数近似之外,所有主变换类型去除二次变换的使用。在比特流中用信号通知在水平方向和垂直方向两者上使用dct2的整数近似进行变换的残差块的正确的逆二次变换矩阵。
61.如图6中所示,该过程涉及在初步步骤中确定是否在水平方向和垂直方向两者上已经使用了dct2(步骤s3-3)。然后,如果在主变换中采用dct2,则选择候选二次变换矩阵(步骤s3-4),选择的二次变换被应用于由主变换变换的残差,并且在比特流上用信号通知二次变换选择(步骤s3-8)。变换输出被放置在比特流上(步骤s3-10)。另一方面,如果在主变换中未采用dct2,则绕过二次变换(步骤s3-14),并且由主变换变换的残差被放置在比特
流上(步骤s3-10)。
62.在第三实施例的另一种情况下,对于特定的块尺寸,除了在水平方向和垂直方向两者上使用dct2的整数近似的情况之外,所有主变换类型去除了二次变换的使用。在比特流中用信号通知使用主变换变换的残差块的正确逆二次变换矩阵。
63.在可以与第一实施例、和/或第二实施例、和/或第三实施例组合的第四实施例中,在比特流中并未向解码器明确用信号通知二次变换的使用,而是由在编码器侧和解码器侧两者处适用的推断过程的应用来决定。这在减少用信号通知二次变换信息所需的比特数方面可以具有优势。
64.在该实施例的一种情况下,确定二次变换是否应用于当前块的推断过程可以取决于比特流中传输的非零系数的数量。可替代地,确定二次变换是否应用于当前块的推断过程取决于块内某些选择的系数的幅度和符号。例如,模算子被应用于一个或多个系数以确定是否对当前块应用二次变换。
65.在图7中图示出了接收器的结构架构。它具有作为计算机实现的设备的要素。因此,接收器30包括被配置用于在处理图形和类似操作中的特定用途的图形处理单元302。接收器30还包括是通常提供的或被配置用于诸如数学运算、音频处理和管理通信信道等的其他目的的一个或多个其他处理器304。
66.如读者将认识到的,接收器30可以以机顶盒、手持个人电子装置、个人计算机或适合于视频演示回放的任何其他装置的形式来实现。
67.输入接口306提供用于接收用户输入动作的设施。例如,这样的用户输入动作可以是由用户与特定输入单元的交互引起的,特定输入单元包括一个或多个控制按钮和/或开关、键盘、鼠标或其他定点装置、能够接收语音并将其处理为控制命令的语音识别单元、被配置成接收和控制来自诸如平板电脑或智能手机或者遥控接收器的另一装置的过程的信号处理器。该列表将被理解为非穷尽性的,并且读者可以设想其他形式的输入,无论是用户发起的还是自动的。
68.类似地,输出接口314可操作以提供用于向用户或另一装置输出信号的设施。这样的输出可以包括采用合适的格式的电视信号,用于驱动本地电视装置。
69.通信接口308实现与一个或多个信号接收者的通信信道(无论是广播的还是端到端的)。在本实施例的上下文中,通信接口被配置成导致承载定义视频信号的、由接收器30编码的比特流的信号的发射。
70.特别是为了本公开的权益,处理器304和gpu 302可操作以在接收器的操作中执行计算机程序。在这样做时,求助于由大容量存储装置308提供的数据存储设施,大容量存储装置308被实现以提供大规模数据存储(尽管访问速度相对慢),并且在实践中将存储计算机程序,并在当前上下文中将存储由执行接收过程所导致的视频演示数据。
71.只读存储器(rom)310预先配置有被设计成提供接收器30的功能核心的可执行程序,并且随机存取存储器312被提供用于在追求计算机程序的执行中数据和程序指令的快速访问和存储。
72.现在将参照图8描述接收器30的功能。图8示出由通过可执行指令在接收器20上实现的解码器对在接收器30处接收的比特流执行的处理管线,比特流包括可以从中推导视频演示的结构化信息,包括由发射器20的编码器功能编码的帧的重构。
73.图8中所图示的解码过程旨在逆转在编码器处执行的过程。读者将理解,这并不意味着解码过程与编码过程完全相反。
74.接收到的比特流包括一连串被编码的信息元素,每个元素与块相关。在熵解码模块330中解码块信息元素以获得系数的块和计算当前块的预测所需的信息。系数的块通常在去量化模块332中去量化并且通常由变换模块334逆变换到空间域。变换模块334的操作的特定方面在图9中进一步图示出并且将在适当的时候进行描述。
75.如上所提及,读者将认识到,如果在发射器处分别采用了熵编码、量化和变换,则仅需要在接收器处采用熵解码、去量化和逆变换。
76.预测信号是由预测模块336如前所描述根据来自当前或先前帧的先前解码样本并使用从比特流解码的信息生成的。然后,在重构块338中从被解码的残差信号和计算出的预测块推导原始图片块的重构。预测模块336响应于比特流上的信息,用信号通知帧内预测的使用,并且如果存在这样的信息,则从比特流中读取信息,该信息使解码器能够确定采用了哪种帧内预测模式,并且因此确定在块信息样本的重构中应该采用哪种预测技术。
77.通过解码功能对连续接收的块信息元素的重复动作,可以将图片块重构为帧,然后可以组合帧以产生用于回放的视频演示。
78.在图9中图示出对之前描述的编码器算法进行补充的示例性解码器算法。
79.如前所提及,接收器30的解码器功能从比特流中提取如由发射器20的编码器设施编码的定义块信息和伴随的配置信息的一连串块信息元素。
80.一般而言,解码器利用来自先前预测的信息来构建当前块的预测。在这样做时,解码器可以组合来自帧间预测(即来自先前帧)和帧内预测(即来自同一帧中的另一块)的知识。
81.具体地,在比特流中用信号通知逆变换(包括主逆变换和可选的二次逆变换),并且这管制变换模块334的操作。以上所描述的编码器实施例的实现不影响解码器的操作。
82.具体地,并且参照上述编码器的第一实施例,解码器可操作以从比特流中读取要变换回空间域的变换后的残差(步骤s4-2)。解码器可以从比特流中读取关于变换后的残差的块是否需要使用逆二次变换然后使用逆主变换进行逆变换,或者它是否仅需要使用逆主变换进行逆变换的信息。
83.可替代地,解码器可以对比特流应用推断过程,以与编码器相对应地确定是否需要对当前块应用逆二次变换。该过程可以取决于例如块中非零系数的数量,或者取决于块中某些选择的系数的幅度和符号。例如,模算子被应用于一个或多个系数以确定是否需要将逆二次变换应用于当前块。
84.在解码器识别出块需要逆二次变换的情况下,解码器对比特流应用推断过程,以与编码器相对应地确定预存储的逆二次变换矩阵中的哪些可以是以供使用的候选。推断过程的一部分将基于正在对其进行解码的块的特性。如前所描述,这些特性可以包括块是色度数据还是亮度数据、块的尺寸、块的高度与宽度的比率以及块的非零总体。推断过程的另一部分可以可选地包括选择多少个候选,即1、2、3或其他数字,对应于上面针对编码器给出的示例。推断过程的另一部分可以可选地包括关于用于计算对当前块的预测的预测模式的信息。
85.伴随变换后的残差数据,从比特流中读取二次变换矩阵指示符(步骤s4-4),向解
码器指示要使用推断出的候选选择中的哪一个。
86.用信号通知的逆二次变换被加载到存储器中以供使用(步骤s4-6),并且最后,该逆变换被应用于数据(步骤s4-8)。
87.读者将理解,然后,图9中的过程将通过逆主变换操作进行补充。在一些实施例中,在比特流中也用信号通知要使用的主变换。然而,也可能是可以推断用于块的特定主变换的情况,因此可以不需要在比特流上用信号通知主变换。
88.读者还将意识到可以对该过程进行适当的修改。例如,可以是在不应用二次变换的情况下对数据进行编码的情况。在该情况下,可以在比特流上用信号通知该情况,并且解码器可以响应该信号以省略二次变换。另一方面,可能是块的特定特性使得能够在解码器处推断不应用二次变换,在这种情况下,在比特流上不需要用信号通知并且在解码器处不需要实现设施以使得能够对这样的信号通知进行检测。
89.图10图示出这样的实现。在该实现中,例如,解码器推导要解码的块的特性(步骤s5-2),并且然后基于用于对残差进行编码的主变换是否是在水平方向和垂直方向两者上的dct2的整数近似来做出决定(步骤s5-4)。基于此,解码器可以推断是否已经应用了二次变换,并且因此是否需要逆转。如果已经使用了dct2,则选择候选逆二次变换矩阵(步骤s5-6)并应用正确的矩阵(步骤s5-8)。另一方面,如果没有使用dct2,则解码器将能够推断没有应用二次变换(步骤s5-14)。
90.为了构建用于执行所公开的解码过程的实践算法的目的,考虑确定不应用二次变换可以是方便的,这等同于应用空变换或恒等变换。也就是说,通过将二次变换设置成单位矩阵i,这等同于根本不应用变换。
91.应当理解,本发明不限于上述实施例,并且在不脱离在本文中描述的概念的情况下可以进行各种修改和改进。除非相互排斥,否则任何特征可以单独采用或与任何其他特征结合采用,并且本公开扩展到并且包括在本文中描述的一个或多个特征的所有组合和子组合。
再多了解一些

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

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

相关文献