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

图像块的深度帧内预测的制作方法

2022-07-11 11:55:46 来源:中国专利 TAG:


1.一个或多个实施方案的技术领域通常涉及视频压缩。与现有的视频压缩系统诸如hevc(hevc是指高效视频编码,也称为h.265和mpeg-h第2部分,其在“itu-t h.265国际电联电信标准化部门(10/2014),h系列:视听和多媒体系统,视听服务基础设施-移动视频的编码,高效视频编码,itu-t h.265建议书”中进行描述)相比,或者与开发中的视频压缩系统诸如vvc(通用视频编码,由联合视频专家小组(jvet)开发的新标准)相比,至少一些实施方案涉及改进压缩效率。
2.具体地,至少一些实施方案还涉及使用神经网络依据围绕图像块的上下文来改进所述图像块的帧内预测。


技术实现要素:

3.深度帧内预测因子使用至少一个神经网络依据围绕该当前图像块的上下文推断当前图像块的帧内预测。
4.围绕当前图像块的上下文包括位于当前图像块的因果邻域中的至少一个像素值。因果意味着可在编码侧和解码侧两者处获得相同的邻域。通常,对于在编码侧和解码侧两者处的帧内预测,因果邻域均包括重构的像素值。当其值可访问(获得)时,上下文中的像素值可用。相反,当其值不可访问时,上下文中的像素值缺失。
5.例如,在hevc和vvc中,宏块(也称为编码树块(ctb))被分层分割为子块,并且不同的ctb按光栅扫描顺序进行扫描,而每个ctb中的子块按z字形扫描顺序进行扫描。这针对上下文设定了两个约束,深度帧内预测因子依据该上下文推断当前图像块的帧内预测。首先,上下文可仅包括位于当前图像块的上方和左侧的像素。其次,取决于当前图像块在其父ctb中的位置,当前图像块的右上侧和/或其左下侧的像素可能缺失。
6.挑战之一在于将由深度帧内预测因子使用的上下文中的可用像素和缺失像素区分开来。
7.这通过本文所述的一般方面解决和处理,该一般方面涉及使用至少一个神经网络对当前图像块进行帧内预测以及用于将在上下文中的可用像素和缺失像素区分开来的信息。
8.根据第一方面,提供了一种方法。该方法包括使用至少一个神经网络依据包括围绕图像块的像素的上下文对所述图像块进行帧内预测。所述帧内预测还使用信息将上下文中的可用像素和缺失像素区分开来。
9.在一个实施方案中,所述信息是掩码值,其中,该方法还包括在帧内预测之前对上下文进行预处理,其中,通过将所述掩码值分配给上下文中的缺失像素来获得经预处理的上下文。
10.这样,对于深度帧内预测因子,消除了在具有有意义信息的上下文的未掩码部分和具有缺失信息的上下文的掩码部分之间的任何模糊性。
11.在另一实施方案中,所述信息是指示缺失像素在上下文中的位置的二进制向量,
并且其中,响应于该二进制向量对图像块进行帧内预测。
12.这样,二进制向量消除了有关缺失像素在上下文中的位置的任何模糊性。
13.根据另一方面,提供了第二方法。该方法包括使用至少一个神经网络依据包括围绕待编码图像块的像素的上下文确定所述图像块的帧内预测,其中,所述帧内预测还使用信息将上下文中的可用像素和缺失像素区分开来。以及基于所述帧内预测对图像块进行编码。
14.根据另一方面,提供了第三方法。该方法包括使用至少一个神经网络依据包括围绕待解码图像块的像素的上下文确定所述图像块的帧内预测,其中,所述帧内预测还使用信息将上下文中的可用像素和缺失像素区分开来;以及基于所述帧内预测对图像块进行解码。
15.根据另一方面,提供了一种装置。该装置包括一个或多个处理器,其中,该一个或多个处理器被配置为使用至少一个神经网络依据包括围绕待编码图像块的像素的上下文来确定所述图像块的帧内预测,其中,所述帧内预测还使用信息将上下文中的可用像素和缺失像素区分开来;以及基于所述帧内预测对图像块进行编码。
16.根据另一方面,提供了一种装置。该装置包括一个或多个处理器,其中,该一个或多个处理器被配置为使用至少一个神经网络依据包括围绕待解码图像块的像素的上下文来确定所述图像块的帧内预测,其中,所述帧内预测还使用信息将上下文中的可用像素和缺失像素区分开来;以及基于所述帧内预测对图像块进行解码。
17.根据至少一个实施方案的另一一般方面,提供了一种非暂态计算机可读介质,该非暂态计算机可读介质包含根据所描述的编码实施方案或变体中的任一实施方案或变体生成的数据内容。
18.根据至少一个实施方案的另一一般方面,提供了一种计算机程序产品,该计算机程序产品包括指令,该指令在由计算机执行时使该计算机执行所描述的编码实施方案或变体中的任一实施方案或变体。
19.通过将结合附图阅读的示例性实施方案的以下详细描述,一般方面的这些和其他方面、特征和优点将变得显而易见。
附图说明
20.在附图中,示出了若干实施方案的示例。附图示出:
21.图1示出图像块及其上下文的示例;
22.图2和图3示出根据现有技术的神经网络的架构的示例;
23.图4示出完整上下文和部分上下文的示例;
24.图5示出根据至少一个实施方案的对图像块进行帧内预测的方法的流程图;
25.图5a示出根据至少一个实施方案的对图像块进行帧内预测的方法的流程图;
26.图6示出根据至少一个实施方案的二进制向量的系数与上下文中的像素的位置之间的一对一映射的示例;
27.图7示出根据至少一个实施方案的二进制向量的系数与上下文中的像素的位置之间的一对一映射的另一示例;
28.图8和图9示出根据至少一个实施方案的神经网络的架构的示例;
29.图10示出在其中实现各个方面和实施方案的编码器的示例的框图;
30.图11示出在其中实现各个方面和实施方案的视频解码器的框图;并且
31.图12示出在其中实现各个方面和实施方案的系统的示例的框图。
具体实施方式
32.基于深度神经网络的帧内预测
33.使用神经网络对当前图像块y进行帧内预测是指提供所述当前图像块与其围绕当前图像块的上下文x之间的依赖关系的模型的深度帧内预测因子。在标题为“基于上下文自适应神经网络的图像压缩预测(context-adaptive neural network-based prediction for image compression)”(thierry dumas、aline roumy、christine guillemot,arxiv:1807.06244v2,2019年8月)的文章中描述了深度帧内预测因子的示例。首先,通常利用从一组训练图像提取的块对及其上下文对基于全连接和/或卷积神经网络两者的一组神经网络架构(表示为预测神经网络集合(pnns))进行训练。接下来,选择pnns的神经网络中的一个神经网络,从而依据围绕当前图像块的上下文提供当前图像块的帧内预测。
34.在该文章中,上下文x由位于当前图像块y上方及其左侧的像素构成,类似于在vvc中的用于帧内预测的重构的参考样本集。但是,与之不同的是,上下文x向左侧和顶部延伸,例如,如在图1中所示。由于这种延伸,深度帧内预测因子能够学习在其输入上下文x中的空间相关性与其给出的当前图像块y的帧内预测之间的关系。
35.(1)中描述了经由由θm参数化的全连接神经网络fw或由参数化的卷积神经网络gm将上下文x转换为w
×
w块y的帧内预测
[0036][0037]
其中,α是归一化值,等于针对所有训练图像计算得出的平均像素强度以使上下文x的像素值居中。下标c代表已居中。
[0038]
然后,在训练阶段期间,从待预测的每个图像块及其上下文减去α。在测试阶段期间,为了对当前图像块进行帧内预测,从上下文x减去α(参见(1))并且将α加到帧内预测(深度帧内预测因子的输出)中。
[0039]
图2和图3示出pnns的神经网络的架构的示例。
[0040]
这两种架构的第一操作包括格式化上下文,以便于神经网络中的计算。
[0041]
如图2所示,在全连接神经网络的情况下,连接上下文xc中的所有元素,从而使得无需保持上下文的2d结构。因此,首先对上下文xc进行向量化(展平),并且可使用快速向量矩阵算法。
[0042]
例如,全连接架构fw由4个全连接层l1、l2、l3和l4组成。θw采集四个全连接层的权重和偏差。第一层l1计算上下文xc的过完备表示以达到输出系数。选择过完备性是因为凭经验观察到,早期层中的过完备表示提高神经网络的性能。接下来的两层(l2和l3)保持系
数的数量不变,而最后一层l4减少系数的数量以提供预测的图像块。
[0043]
如图3所示,在卷积神经网络的情况下,快速计算2d滤波要求保持上下文xc的2d结构。此外,同样为了快速计算,到卷积的输入的形状必须是矩形。这就是为什么上下文被分割为两个矩形x0和x1,然后,由不同的卷积处理该两个矩形。
[0044]
卷积架构的第一个任务是计算表征x0中的元素之间的依赖关系的特征。x0因此被馈送到由参数化的卷积层的叠堆中。这会产生l∈n
*
个特征图的叠堆z0。类似地,x1被馈送到由参数化的卷积层的另一个叠堆中。这会产生l个特征图的叠堆z1。上下文中的所有元素可能与预测任何图像块像素相关。这意味着必须合并上下文中的与所有空间位置相关联的信息。这就是为什么卷积架构中的下一层通过使用由参数化的函数在空间上合并叠堆z0和叠堆z1来获得合并后的叠堆更准确地说,对于i∈[1;l],通过参数仿射组合对z0的第i个特征图和z1的第i个特征图的所有系数进行合并。
[0045]
卷积架构的最后一个任务是对的不同特征图的信息进行合并。因此被馈送到由参数化的转置卷积层的叠堆中。这会在进行后处理之前产生帧内预测
[0046]
上下文中的缺失像素被馈送到神经网络中
[0047]
在hevc和vvc中,图像被分割为编码树单元(ctu)。ctu包含亮度编码树图像块(ctb)、两个色度ctb和语法元素。按光栅扫描顺序一次处理一个ctb。每个ctb可分层分割为编码图像块(cb)。按z字形扫描顺序处理ctb中的cb。
[0048]
因此,例如在hevc中,待预测图像块的尺寸可以是64
×
64、32
×
32、16
×
16、8
×
8或4
×
4。这意味着需要5个神经网络,每个待预测图像块的尺寸需要一个神经网络。因此,根据本实例,深度帧内预测因子由5个神经网络组成。
[0049]
在vvc中,由于分层分割更加复杂,因此待预测图像块的尺寸可以是128
×
128、64
×
64、32
×
32、16
×
16、8
×
8或4
×
4。除此之外,它也可以呈矩形,例如,尺寸为4
×
8。在这种情况下,解决方案是为每个图像块尺寸分配一个神经网络以构建深度帧内预测因子。
[0050]
在hevc和vvc中,考虑到以按光栅扫描顺序和z字形扫描顺序相结合的方式对图像块进行处理,当深度帧内预测因子依据其上下文推断当前图像块的预测时,当前图像块的右上侧和其下左侧的像素可能缺失,这取决于当前图像块在其ctb中的位置。
[0051]
为了解决这种情况,一种方法是设计给定尺寸的图像块的若干上下文,并且每个上下文可训练一个神经网络。更精确地说,第一上下文为完整上下文,对应于没有像素缺失的情况,而第二上下文为部分上下文,对应于缺失像素的数量最大的情况。在hevc内部进行预测期间,如果当前图像块位于其父图像块cb的左上方,则使用第一上下文。在任何其他情况下,使用第二上下文,如图4中所示。但是,这种方法增加了将要在hevc内部使用的模型的数量,并且因此增加了待存储在存储器中的参数。此外,在当前图像块的左下侧的像素缺失,但是在图像块的右上侧的像素可用的情况下,后者可用像素不包括在第二上下文中,这浪费了用于基于神经网络的预测的信息。
[0052]
一般而言,实施方案中的至少一个实施方案涉及一种方法,该方法包括使用至少一个神经网络依据包括围绕当前图像块y的像素的上下文x对所述当前图像块进行帧内预测。所述帧内预测还使用信息inf将上下文中的可用像素和缺失像素区分开来。
[0053]
在该方法的一个实施方案中,信息inf是掩码值,如图5所示。然后,该方法还包括帧内预测的预处理(步骤510),其中通过将掩码值分配给在x中的缺失像素来获得经预处理的上下文x
p
(p代表“预处理”)。然后,使用深度帧内预测因子依据经预处理的上下文x
p
获得经预处理的帧内预测例如,如图1至图3中所述(步骤520)。所述掩码值超出在预处理之后的上下文中的可用像素所取的值的范围。
[0054]
通过将掩码值设置为]-∞,-255]∪[255, ∞[中的任何值,掩码值必然超出在对8个可用像素的位深度进行预处理之后的可用像素所取的值的范围。
[0055]
由于x
p
中的掩码值超出x
p
中的未掩码值的范围,因此上下文的无信息掩码部分与其馈送有x
p
的神经网络的信息未掩码部分之间不存在模糊性。对于x
p
中的未掩码值范围内的任何其他掩码值(诸如对所有训练图像计算得出的平均像素强度),不会发生这种情况。
[0056]
在图5的变体中,从所述可用像素减去上下文x中的可用像素的均值(平均值)μ。该方法还包括对经预处理的帧内预测进行后处理(步骤530),其中,通过将均值μ加到经预处理的帧内预测来获得当前图像块y的帧内预测
[0057]
之所以使用这种变体,是因为在训练阶段期间,当到达神经网络的输入数据的每个系数(此处为上下文)相比于训练数据平均接近于零时,表明神经网络参数的目标函数的最小化收敛良好,并且在训练阶段和测试阶段期间,必须对输入数据进行相同的预处理。
[0058]
在数学上而言,步骤510至530可由公式(2)表示。
[0059][0060]
其中,函数cover_missing覆盖其输入上下文中的缺失的重构像素。
[0061]
在变体中,经预处理的上下文x
p
(公式(2))可适于当前图像块y的位深度以及用于训练pnns的训练图像的位深度。
[0062]
例如,使用在8位训练图像上进行训练的pnns来预测位深度为10的图像块,可使用缩放。因此,公式(2)由公式(3)取代:
[0063][0064]
在该方法的另一个实施方案中,如图5a所示,信息inf是指示上下文x中的缺失像素的位置的二进制向量b∈{0,1}k。二进制向量b与上下文x一起馈送到深度帧内预测步骤520。k表示二进制向量元素bk的数量。因此,图像块的帧内预测响应于二进制向量。
[0065]
在变体中,二进制向量b∈{0,1}k指示上下文xc中的缺失像素的位置。二进制向量b与上下文xc一起馈送到深度帧内预测步骤520。
[0066]
在图5a的变体中,从所述可用像素减去上下文x中的可用像素的均值(平均值)μ。该方法还包括对经预处理的帧内预测进行后处理(步骤530),其中,通过将均值μ加到经预处理的帧内预测来获得当前图像块y的帧内预测
[0067]
之所以使用这种变体,是因为在训练阶段期间,当到达神经网络的输入数据的每个系数(此处为上下文)相比于训练数据平均接近于零时,表明神经网络参数的目标函数的最小化收敛良好,并且在训练阶段和测试阶段期间,必须对输入数据进行相同的预处理。
[0068]
可利用二进制向量的每个系数与上下文中的缺失像素或可用像素的位置之间的任何一对一映射。
[0069]
在一对一映射的一个实施方案中,每个二进制向量系数bk是指上下文中的缺失像素或可用像素的至少一个连续行/列的位置。
[0070]
例如,将表示缺失像素的至少一个连续行/列的位置的每个二进制向量系数bk设置为1,并且将表示可用像素的行/列的位置的每个二进制向量系数bk设置为0。
[0071]
在该实施方案的变体中,如图6所示,每个二进制向量系数bk是指缺失像素或可用像素的一个行/列的位置。
[0072]
例如,待预测的当前图像块的尺寸为w
×
w,k=2w,前w个向量系数bk是指当前图像块的右上侧的缺失像素或可用像素的从左到右的w列的位置,而bk中的最后w个向量系数是指当前图像块的左下侧的缺失像素或可用像素的从上到下的w行的位置。
[0073]
在该实施方案的变体中,每个二进制向量系数bk是指缺失像素或可用像素的至少两个连续行/列的位置。
[0074]
图7示出二进制向量的系数与缺失像素或可用像素的四个连续行/列的位置之间的一对一映射的示例。
[0075]
例如,在hevc和vvc中,在图像分区中,每个信道都存在最小图像块尺寸wu×
wu。上下文中的缺失像素或可用像素可组合在一起,每组采集wu列。类似地,上下文中的缺失像素或可用像素的连续行可组合在一起,每组包含wu行。然后,在二进制向量中,可对进行定义。
[0076]
例如,待预测的当前块的尺寸为h
×
w,前w/wu个向量系数bk是指当前图像块的右上侧的缺失像素或可用像素的从左到右的w/wu组列的位置,而最后h/wu个向量系数bk是指当前图像块的左下侧的缺失像素或可用像素的从上到下的h/wu组行的位置。
[0077]
图6和图7中所示的示例假设当前图像块的右上侧的缺失像素或可用像素的列的数量和当前图像块的左下侧的缺失像素或可用像素的行的数量等于w。但是,这并非是限制性的,因为本实施方案适用于当前图像块的右上侧的缺失像素或可用像素的任意数量的列和当前图像块的左下侧的缺失像素或可用像素的任意数量的行。
[0078]
在变体中,在如图8中所示的全连接神经网络的情况下,可将二进制向量b馈送到其第一层l1中,因为上下文中的全部空间信息被合并到该层中。二进制向量b为神经网络提供了上下文中的哪些像素缺失以及哪些像素可用的明确指示。这样,能够学习如何在训练阶段期间忽略缺失像素。
[0079]
在变体中,在如图9中所示的卷积神经网络的情况下,可将二进制向量b馈送到包
含全连接性的层中,因为仅在该层中,上下文中的全部空间信息被组合。因此,合并的叠堆
[0080]
根据另一方面,提供了一种方法,该方法包括使用至少一个神经网络依据包括围绕待编码图像块的像素的上下文确定所述图像块的帧内预测,其中,所述帧内预测还使用信息将上下文中的可用像素和缺失像素区分开来。以及基于所述帧内预测对图像块进行编码。
[0081]
在变体中,该方法还包括发送与当前图像块的帧内预测有关的信息,例如,用于访问用于帧内预测的神经网络的信息或定义对用于帧内预测的神经网络的访问的信息。
[0082]
根据另一方面,提供了一种方法,该方法包括使用至少一个神经网络依据包括围绕待解码图像块的像素的上下文确定所述图像块的帧内预测,其中,所述帧内预测还使用信息将上下文中的可用像素和缺失像素区分开来。以及基于所述帧内预测对图像块进行解码。
[0083]
在变体中,该方法还包括接收与当前图像块的帧内预测有关的信息,例如,用于访问用于帧内预测的神经网络的信息或定义对用于帧内预测的神经网络的访问的信息。
[0084]
例如,在hevc中,当深度帧内预测因子与其他帧内预测因子在系统方面竞争时,所述信息可以是在用于帧内预测的所有其他标记之前被写入比特流的标记。值1可指示选择深度帧内预测因子以用于预测当前图像块。在这种情况下,不向比特流写入用于帧内预测的其他标记。值0意味着选择另一个帧内预测因子。
[0085]
本技术描述了各个方面,包括工具、特征、实施方案、模型、方法等。具体描述了这些方面中的许多方面,并且至少示出个体特性,通常以可能听起来有限的方式描述。然而,这是为了描述清楚,并不限制这些方面的应用或范围。实际上,所有不同的方面可组合和互换以提供进一步的方面。此外,这些方面也可与先前提交中描述的方面组合和互换。
[0086]
本专利申请中描述和设想的方面可以许多不同的形式实现。图10、图11和图12提供了一些实施方案,但是设想了其他实施方案,并且图10、图11和图12的讨论不限制实施方式的广度。
[0087]
这些方面中的至少一个方面通常涉及视频编码和解码。这些方面和其他方面可实现为方法、装置、计算机可读介质或计算机程序产品,该计算机可读介质上存储有用于根据上述方法中的任一方法来编码或解码视频数据的指令,该计算机程序产品包括指令,当由计算机执行该程序时,该指令使计算机执行上述方法中的任一方法。
[0088]
在本技术中,术语“重构”和“解码”可以互换使用,术语“像素”和“样本”可以互换使用,术语“图像”、“图片”和“帧”可以互换使用。通常,但不一定,术语“重构”在编码端使用,而“解码”在解码端使用。
[0089]
本文描述了各种方法,并且每种方法包括用于实现所述方法的一个或多个步骤或动作。除非正确操作方法需要特定顺序的步骤或动作,否则可修改或组合特定步骤和/或动作的顺序和/或用途。
[0090]
本技术中所述的各种方法和其他方面可用于修改模块,例如,图10的视频编码器100的帧内预测模块160以及如图11和图12所示的解码器200的帧内预测模块260。此外,本发明方面不限于vvc或hevc,并且可应用于例如其他标准和推荐(无论是预先存在的还是未
来开发的)以及任何此类标准和推荐的扩展(包括vvc和hevc)。除非另外指明或技术上排除在外,否则本技术中所述的方面可单独或组合使用。
[0091]
在本技术中使用各种数值,例如,帧内预测模式的数量、神经网络的参数(层、输出范围、阈值)。具体值是为了示例目的,并且所述方面不限于这些具体值。
[0092]
图10示出编码器100的框图。设想了这一编码器100的变型,但是为了清楚起见,下文描述了编码器100而不描述所有预期的变型。
[0093]
在编码之前,视频序列可经过预编码处理(101),例如,将颜色变换应用于输入彩色图片(例如,从rgb 4:4:4到ycbcr 4:2:0的转换),或执行输入图片分量的重新映射,以便获得对压缩更具弹性的信号分布(例如,使用颜色分量中的一个颜色分量的直方图均衡化)。元数据可与预编码处理(101)相关联并且附加到比特流。
[0094]
在编码器100中,图像由编码器元件进行编码,如下所述。以例如cu为单位对待编码图像进行分区(102)和处理。例如,使用帧内模式或帧间模式对每个单元(通常为图像块)进行编码。当单元以帧内模式进行编码时,其执行帧内预测(160)。在帧间模式中,执行运动估计(175)和补偿(170)。编码器决定(105)帧内模式或帧间模式中的哪一者用于对单元进行编码,并且通过例如预测模式标记来指示帧内/帧间决策。例如,通过从原始单元减去(110)预测单元来计算预测残差。
[0095]
然后对预测残差进行变换(125)和量化(130)。对经量化的变换系数以及运动向量和其他语法元素进行熵编码(145),以输出比特流。编码器可跳过变换,并对未变换的残余信号直接应用量化。编码器可绕过变换和量化两者,即,在不应用变换或量化过程的情况下直接对残差进行编码。
[0096]
编码器对编码单元进行解码以提供用于进一步预测的参考。对量化的变换系数进行去量化(140)和逆变换(150)以解码预测残差。组合(155)经解码的预测残差和预测单元,重构单元。向重构单元应用环路滤波器(165)以执行例如图像解块/sao(样本自适应偏移)滤波,以减少编码伪影。经滤波的单元存储在参考图片缓冲器(180)中。
[0097]
图11示出视频解码器200的框图。设想了这一解码器200的变型,但是为了清楚起见,下文描述了解码器200而不描述所有预期的变型。
[0098]
在解码器200中,比特流由解码器元件进行解码,如下所述。
[0099]
视频解码器200一般执行与如图10所述的编码过程相反的解码过程。解码器200通常还执行视频解码作为对视频数据编码的一部分。
[0100]
具体地,解码器的输入包括视频比特流,该视频比特流可由视频编码器100生成。首先对比特流进行熵解码(230)以获得变换系数、运动向量和其他经编码的信息。图片分区信息指示如何对图片进行分区。因此,解码器可以根据经解码的图片分区信息划分(235)图像。对变换系数进行去量化(240)和逆变换(250)以对预测残差进行解码。组合(255)经解码的预测残差和预测单元,重构单元(通常为图像块)。可从帧内预测(260)或运动补偿预测(即,帧间预测)(275)获得(270)预测单元。向重构单元应用环路滤波器(265)。经滤波的单元存储在参考图片缓冲器(280)中。
[0101]
经解码的图像还可经过解码后处理(285),例如,逆颜色变换(例如,从ycbcr 4:2:0到rgb 4:4:4的变换)或执行在预编码过程(101)中执行的重新映射的逆过程的逆重新映射。解码后处理可使用在预编码处理中导出并且在比特流中发信号通知的元数据。
[0102]
图12示出在其中实现各个方面和实施方案的系统的示例的框图。系统12000可体现为包括下文所述的各个部件的设备,并且被配置为执行本文档中所述的一个或多个方面。此类设备的示例包括但不限于各种电子设备,诸如个人计算机、膝上型计算机、智能电话、平板电脑、数字多媒体机顶盒、数字电视机接收器、个人视频录制系统、连接的家用电器和服务器。系统12000的元件可单独地或组合地体现在单个集成电路(ic)、多个ic和/或分立部件中。例如,在至少一个实施方案中,系统12000的处理元件和编码器/解码器元件分布在多个ic和/或分立部件上。在各种实施方案中,系统12000经由例如通信总线或通过专用输入和/或输出端口通信地耦接到一个或多个其他系统或其他电子设备。在各种实施方案中,系统12000被配置为实现本文档中描述的一个或多个方面。
[0103]
系统12000包括至少一个处理器1010,该处理器被配置为执行加载到其中的指令,以用于实现例如本文档中所述的各个方面。处理器1010可包括嵌入式存储器、输入输出接口和本领域已知的各种其他电路。系统12000包括至少一个存储器12020(例如,易失性存储器设备和/或非易失性存储器设备)。系统12000包括存储设备12040,该存储设备可包括非易失性存储器和/或易失性存储器,包括但不限于电可擦除可编程只读存储器(eeprom)、只读存储器(rom)、可编程只读存储器(prom)、随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、闪存、磁盘驱动器和/或光盘驱动器。作为非限制性示例,存储设备12040可包括内部存储设备、附接存储设备(包括可拆卸和不可拆卸的存储设备)和/或网络可访问的存储设备。
[0104]
系统12000包括编码器/解码器模块12030,该编码器/解码器模块被配置为例如处理数据以提供编码视频或解码视频,并且编码器/解码器模块12030可包括其自身的处理器和存储器。编码器/解码器模块12030表示可被包括在设备中以执行编码和/或解码功能的模块。众所周知,设备可包括编码模块和解码模块中的一者或两者。此外,编码器/解码器模块12030可实现为系统12000的独立元件,或者可结合在处理器12010内作为本领域技术人员已知的硬件和软件的组合。
[0105]
待加载到处理器12010或编码器/解码器12030上以执行本文档中所述的各个方面的程序代码可存储在存储设备12040中,并且随后被加载到存储器12020上以供处理器12010执行。根据各种实施方案,处理器12010、存储器12020、存储设备12040和编码器/解码器模块12030中的一者或多者可在本文档中所述过程的执行期间存储各个项目中的一个或多个项目。此类存储项目可包括但不限于输入视频、解码的视频或部分解码的视频、比特流、矩阵、变量以及处理等式、公式、运算和运算逻辑的中间或最终结果。
[0106]
在一些实施方案中,处理器12010和/或编码器/解码器模块12030内部的存储器用于存储指令并且提供工作存储器以用于在编码或解码期间需要的处理。
[0107]
然而,在其他实施方案中,处理设备(例如,处理设备可以是处理器12010或编码器/解码器模块12030)外部的存储器用于这些功能中的一个或多个功能。外部存储器可以是存储器12020和/或存储设备12040,例如动态易失性存储器和/或非易失性闪存存储器。
[0108]
在若干实施方案中,外部非易失性闪存存储器用于存储例如电视机的操作系统。
[0109]
在至少一个实施方案中,快速外部动态易失性存储器诸如ram用作视频编码和解码操作的工作存储器,诸如mpeg-2(mpeg是指运动图片专家组,mpeg-2也称为iso/iec 13818,并且13818-1也称为h.222,13818-2也称为h.262)、hevc(hevc是指高效视频编码,也
称为h.265和mpeg-h部分2)或vvc(通用视频编码,由联合视频专家小组(jvet)开发的新标准)。
[0110]
对系统12000的元件的输入可通过如模块12130中所示的各种输入设备提供。此类输入设备包括但不限于:(i)射频(rf)部分,其接收例如由广播器通过空中传输的rf信号;(ii)分量(comp)输入端子(或一组comp输入端子);(iii)通用串行总线(usb)输入端子;和/或(iv)高清晰度多媒体接口(hdmi)输入端子。图12中未示出的其他示例包括复合视频。
[0111]
在各种实施方案中,模块12130的输入设备具有如本领域已知的相关联的相应输入处理元件。例如,rf部分可与适于以下项的元件相关联:(i)选择所需的频率(也称为选择信号,或将信号频带限制到一个频带),(ii)下变频选择的信号,(iii)再次频带限制到更窄频带以选择(例如)在某些实施方案中可称为信道的信号频带,(iv)解调经下变频和频带限制的信号,(v)执行纠错,以及(vi)解复用以选择所需的数据包流。各种实施方案的rf部分包括用于执行这些功能的一个或多个元件,例如频率选择器、信号选择器、频带限制器、信道选择器、滤波器、下变频器、解调器、纠错器和解复用器。rf部分可包括执行这些功能中的各种功能的调谐器,这些功能包括例如下变频接收信号至更低频率(例如,中频或近基带频率)或至基带。
[0112]
在一个机顶盒实施方案中,rf部分及其相关联的输入处理元件接收通过有线(例如,电缆)介质发射的rf信号,并且通过滤波、下变频和再次滤波至所需的频带来执行频率选择。
[0113]
各种实施方案重新布置上述(和其他)元件的顺序,移除这些元件中的一些元件,和/或添加执行类似或不同功能的其他元件。添加元件可包括在现有元件之间插入元件,例如,插入放大器和模数变换器。
[0114]
在各种实施方案中,rf部分包括天线。
[0115]
此外,usb和/或hdmi端子可包括用于跨usb和/或hdmi连接将系统12000连接到其他电子设备的相应接口处理器。
[0116]
应当理解,输入处理(例如reed-solomon纠错)的各个方面可根据需要例如在单独的输入处理ic内或在处理器12010内实现。
[0117]
类似地,usb或hdmi接口处理的方面可根据需要在单独的接口ic内或在处理器12010内实现。
[0118]
将经解调、纠错和解复用的流提供给各种处理元件,包括例如处理器12010以及编码器/解码器12030,该处理元件与存储器和存储元件结合操作以根据需要处理数据流以呈现在输出设备上。
[0119]
系统12000的各种元件可设置在集成壳体内。在集成壳体内,各种元件可使用合适的连接布置122140(例如,本领域已知的内部总线,包括ic间(i2c)总线、布线和印刷电路板)互连并且在这些元件之间传输数据。
[0120]
系统12000包括能够经由通信信道12060与其他设备通信的通信接口12050。通信接口12050可包括但不限于被配置为通过通信信道12060传输和接收数据的收发器。通信接口12050可包括但不限于调制解调器或网卡,并且通信信道12060可例如在有线和/或无线介质内实现。
[0121]
在各种实施方案中,使用诸如wi-fi网络(例如ieee 802.11(ieee是指电气和电子
工程师协会))之类的无线网络将数据流式传输或以其他方式提供给系统12000。这些实施方案的wi-fi信号通过适用于wi-fi通信的通信信道12060和通信接口12050接收。这些实施方案的通信信道12060通常连接到接入点或路由器,该接入点或路由器提供对包括互联网的外部网络的访问,以用于允许流式应用和其他云上通信。
[0122]
其他实施方案使用机顶盒向系统12000提供流式数据,该机顶盒通过输入图像块12130的hdmi连接递送数据。还有其他实施方案使用输入模块12130的rf连接向系统12000提供流式数据。
[0123]
如上所述,各种实施方案以非流式的方式提供数据。
[0124]
此外,各种实施方案使用除了wi-fi以外的无线网络,例如蜂窝网络或蓝牙网络。
[0125]
系统12000可将输出信号提供到各种输出设备,包括显示器12100、扬声器12110和其他外围设备12120。
[0126]
各种实施方案的显示器12100包括例如触摸屏显示器、有机发光二极管(oled)显示器、曲面显示器和/或可折叠显示器中的一者或多者。显示器12100可用于电视机、平板电脑、膝上型计算机、蜂窝电话(移动电话)或其他设备。显示器12100还可与其他部件集成在一起(例如,如在智能电话中),或者是单独的(例如,膝上型计算机的外部监视器)。
[0127]
在实施方案的各种示例中,其他外围设备12120包括独立数字视频光盘(或数字多功能光盘,两个术语都是dvr)、盘播放器、立体声系统和/或照明系统中的一者或多者。
[0128]
各种实施方案使用一个或多个外围设备12120,该一个或多个外围设备提供基于系统12000的输出的功能。例如,盘播放器执行播放系统12000的输出的功能。
[0129]
在各种实施方案中,控制信号使用诸如av.link、消费电子产品控制(cec)或其他通信协议的信令在系统12000与显示器12100、扬声器12110或其他外围设备12120之间传送,该其他通信协议使得能够在有或没有用户干预的情况下进行设备到设备控制。
[0130]
输出设备可通过相应接口12070、12080和12090经由专用连接通信地耦接到系统12000。
[0131]
另选地,输出设备可使用通信信道12060经由通信接口12050连接到系统12000。
[0132]
显示器12100和扬声器12110可与电子设备(诸如例如电视机)中的系统12000的其他部件集成在单个单元中。
[0133]
在各种实施方案中,显示接口12070包括显示驱动器,诸如例如定时控制器(t con)芯片。
[0134]
例如,如果输入12130的rf部分是单独机顶盒的一部分,则显示器12100和扬声器12110可另选地与其他部件中的一个或多个部件分开。
[0135]
在显示器12100和扬声器12110为外部部件的各种实施方案中,输出信号可经由专用输出连接(包括例如hdmi端口、usb端口或comp输出)提供。
[0136]
这些实施方案可由处理器12010或由硬件或由硬件和软件的组合实现的计算机软件执行。
[0137]
作为非限制性示例,这些实施方案可由一个或多个集成电路实现。
[0138]
作为非限制性示例,存储器12020可以是适合于技术环境的任意类型,并且可使用任何适当的数据存储技术来实现,诸如光学存储器设备、磁存储器设备、基于半导体的存储器设备、固定存储器和可移动存储器。
[0139]
作为非限制性示例,处理器12010可以是适合于技术环境的任意类型,并且可涵盖微处理器、通用计算机、专用计算机和基于多核架构的处理器中的一者或多者。
[0140]
各种具体实施参与解码。如本技术中所用,“解码”可涵盖例如对所接收的编码序列执行的过程的全部或部分,以便产生适于显示的最终输出。
[0141]
在各种实施方案中,此类过程包括通常由解码器执行的一个或多个过程,例如熵解码、逆量化、逆变换和差分解码。
[0142]
在各种实施方案中,此类过程还包括或另选地包括由本技术中描述的各种实施方式的解码器执行的过程,例如,接收与使用神经网络对当前图像块进行的帧内预测有关的信息;使用应用于围绕当前图像块的上下文的神经网络确定当前图像块的帧内预测;以及使用所确定的帧内预测对图像块进行解码。
[0143]
作为进一步的示例,在一个实施方案中,“解码”仅是指熵解码,在另一个实施方案中,“解码”仅是指差分解码,并且在又一个实施方案中,“解码”是指熵解码和差分解码的组合。短语“解码过程”是具体地指代操作的子集还是广义地指代更广泛的解码过程基于具体描述的上下文将是清楚的,并且据信将被本领域的技术人员很好地理解。
[0144]
各种具体实施参与编码。
[0145]
以与上面关于“解码”的讨论类似的方式,如在本技术中使用的“编码”可涵盖例如对输入视频序列执行以便产生编码比特流的全部或部分过程。
[0146]
在各种实施方案中,此类过程包括通常由编码器执行的一个或多个过程,例如,分区、差分编码、变换、量化和熵编码。
[0147]
在各种实施方案中,此类过程还包括或另选地包括由本技术中描述的各种实施方式的编码器执行的过程,例如,使用应用于围绕当前图像块的上下文的神经网络确定当前图像块的帧内预测;基于帧内预测对当前图像块进行编码;以及发送经编码的当前图像块。
[0148]
作为进一步的示例,在一个实施方案中,“编码”仅是指熵编码,在另一个实施方案中,“编码”仅是指差分编码,并且在又一个实施方案中,“编码”是指差分编码和熵编码的组合。短语“编码过程”是具体地指代操作的子集还是广义地指代更广泛的编码过程基于具体描述的上下文将是清楚的,并且据信将被本领域的技术人员很好地理解。
[0149]
当附图呈现为流程图时,应当理解,其还提供了对应装置的框图。类似地,当附图呈现为框图时,应当理解,其还提供了对应的方法/过程的流程图。
[0150]
各种实施方案是指速率失真优化。
[0151]
具体地,在编码过程期间,通常考虑速率和失真之间的平衡或权衡,这常常考虑到计算复杂性的约束。速率失真优化通常表述为最小化速率失真函数,该速率失真函数是速率和失真的加权和。存在不同的方法解决速率失真优化问题。例如,这些方法可基于对所有编码选项(包括所有考虑的模式或编码参数值)的广泛测试,并且完整评估其编码成本以及重构信号在编码和解码之后的相关失真。更快的方法还可用于降低编码复杂性,特别是对基于预测或预测残差信号而不是重构的残差信号的近似失真的计算。也可使用这两种方法的混合,诸如通过针对可能的编码选项中的仅一些编码选项使用近似失真,而针对其他编码选项使用完全失真。其他方法仅评估可能的编码选项的子集。更一般地,许多方法采用各种技术中任一种来执行优化,但是优化不一定是对编码成本和相关失真两者的完整评估。然而,根据至少一个实施方案,由于深度帧内预测模式是用于帧内预测的唯一可用模式,因
此,去除了编码中的速率失真优化。
[0152]
本文所述的具体实施和方面可在例如方法或过程、装置、软件程序、数据流或信号中实现。即使仅在单个形式的具体实施的上下文中讨论(例如,仅作为方法讨论),讨论的特征的具体实施也可以其他形式(例如,装置或程序)实现。
[0153]
装置可在例如适当的硬件、软件和固件中实现。
[0154]
方法可在例如一般是指处理设备的处理器中实现,该处理设备包括例如计算机、微处理器、集成电路或可编程逻辑设备。
[0155]
处理器还包括通信设备,诸如例如计算机、手机、便携式/个人数字助理(“pda”)以及便于最终用户之间信息通信的其他设备。
[0156]
提及“一个实施方案”或“实施方案”或“一个具体实施”或“具体实施”以及它们的其他变型,意味着结合实施方案描述的特定的特征、结构、特性等包括在至少一个实施方案中。因此,短语“在一个实施方案中”或“在实施方案中”或“在一个具体实施中”或“在具体实施中”的出现以及出现在本技术通篇的各个地方的任何其他变型不一定都是指相同的实施方案。
[0157]
另外,本技术可涉及“确定”各种信息。确定信息可包括例如估计信息、计算信息、预测信息或从存储器检索信息中的一者或多者。
[0158]
此外,本技术可涉及“访问”各种信息。访问信息可包括例如接收信息、检索信息(例如,从存储器)、存储信息、移动信息、复制信息、计算信息、确定信息、预测信息或估计信息中的一者或多者。
[0159]
另外,本技术可涉及“接收”各种信息。与“访问”一样,接收旨在为广义的术语。接收信息可包括例如访问信息或检索信息(例如,从存储器)中的一者或多者。此外,在诸如例如存储信息、处理信息、发射信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息的操作期间,“接收”通常以一种方式或另一种方式参与。
[0160]
应当理解,例如,在“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)。如对于本领域和相关领域的普通技术人员显而易见的是,这可扩展到所列出的尽可能多的项目。
[0161]
而且,如本文所用,词语“发信号通知”是指(除了别的以外)向对应解码器指示某物。例如,在某些实施方案中,编码器针对深度帧内预测发信号通知多个参数中的一个特定参数。
[0162]
这样,在一个实施方案中,在编码器侧和解码器侧两者均使用相同的参数。因此,例如,编码器可将特定参数发射(显式信令)到解码器,使得解码器可使用相同的特定参数。相反,如果解码器已具有特定参数以及其他,则可在不发射(隐式信令)的情况下使用信令,以简单允许解码器知道和选择特定参数。通过避免发射任何实际功能,在各种实施方案中实现了位节省。应当理解,信令可以各种方式实现。例如,在各种实施方案中,使用一个或多
个语法元素、标记等将信息发信号通知至对应解码器。虽然前面涉及词语“signal(发信号通知)”的动词形式,但是词语“signal(信号)”在本文也可用作名词。
[0163]
对于本领域的普通技术人员将显而易见的是,具体实施可产生格式化为携带例如可存储或可传输的信息的各种信号。信息可包括例如用于执行方法的指令或由所述具体实施中的一个具体实施产生的数据。例如,可格式化信号以携带所述实施方案的比特流。可格式化此类信号例如为电磁波(例如,使用频谱的射频部分)或基带信号。格式化可包括例如对数据流编码并且用编码的数据流调制载体。信号携带的信息可以是例如模拟或数字信息。已知的是,信号可通过各种不同的有线或无线链路发射。信号可存储在处理器可读介质上。
[0164]
我们描述了多个实施方案。这些实施方案的特征可在各种权利要求类别和类型中单独地或以任何组合提供。
再多了解一些

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

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

相关文献