掌桥专利:专业的专利平台
掌桥专利
首页

神经渲染

文献发布时间:2023-06-19 12:07:15


神经渲染

本专利申请要求2020年2月6日提交的名称为“Neural Rendering”的美国临时专利申请62/971198号和2020年4月30日提交的名称为“Neural Rendering”的美国临时专利申请63/018434号的优先权的权益,所述专利申请中的每一者的公开内容据此全文并入本文。

技术领域

本说明书整体涉及开发机器学习应用。

背景技术

软件工程师和科学家一直使用计算机硬件进行机器学习,以在包括神经渲染的不同行业应用中进行改进。

附图说明

本主题技术的一些特征在所附权利要求书中被示出。然而,出于解释的目的,在以下附图中阐述了本主题技术的若干实施方案。

图1示出了根据一个或多个具体实施的示例性网络环境。

图2示出了根据一个或多个具体实施的用于提供基于等变来训练的机器学习模型的系统的示例性计算架构。

图3示出了根据一个或多个具体实施的可提供给基于等变来训练的机器学习模型的各种输入图像。

图4示出了根据一个或多个具体实施的机器学习模型的示意图。

图5示出了根据一个或多个具体实施的机器学习模型的模型架构的特征。

图6示出了根据一个或多个具体实施的用于操作经训练的机器学习模型的示例性过程的流程图。

图7示出了根据一个或多个具体实施的可由经训练的机器学习模型基于各种输入图像生成的输出图像。

图8示出了根据一个或多个具体实施的可由经训练的机器学习模型基于各种附加输入图像生成的附加输出图像。

图9示出了根据一个或多个具体实施的可由经训练的机器学习模型基于各种另外的输入图像生成的另外的输出图像。

图10示出了根据一个或多个具体实施的对象的显式三维表示和隐式三维表示的各个方面。

图11示出了根据一个或多个具体实施的用于训练机器学习模型的过程。

图12示出了根据一个或多个具体实施的用于训练机器学习模型的示例性过程的流程图。

图13示出了根据一个或多个具体实施的剪切旋转操作的示例。

图14示出了根据一个或多个具体实施的示例性剪切旋转操作的附加细节。

图15示出了可被用于实现本主题技术的一个或多个具体实施的电子系统。

具体实施方式

下面示出的具体实施方式旨在作为本主题技术的各种配置的描述并且不旨在表示本主题技术可被实践的唯一配置。附图被并入本文并且构成具体实施方式的一部分。具体实施方式包括具体的细节旨在提供对本主题技术的透彻理解。然而,本主题技术不限于本文阐述的具体细节,而是可以采用一个或多个其他具体实施来实践。在一个或多个具体实施中,以框图形式示出了结构和部件,以便避免使本主题技术的概念模糊。

近年来由于大量训练数据的可用性以及更强大和更高效的计算硬件的进步,机器学习普及率显著上升。机器学习可以利用被执行以在许多其他类型应用中的特定应用程序中提供预测(例如,分析图像和视频、对象检测和/或跟踪等)的模型。

例如,考虑到嘈杂或不完整的3D或2D观察,神经渲染方法产生真实感渲染。例如,已使用神经纹理将不完整的3D输入转换为富场景表示,从而填充了噪声测量并使噪声测量正则化。然而,用于神经渲染的常规方法在训练期间需要3D信息、复杂的渲染先验或昂贵的运行时解码方案。

本主题技术提供了用于训练机器学习模型以从二维图像提取三维信息的技术。例如,可训练机器学习模型以基于对象的输入图像来渲染对象的输出图像,该输出图像描绘与输入图像中所描绘的对象的视图不同的对象视图。在一个例示性示例中,基于描绘从马克杯上方和马克杯柄部左侧的马克杯视图的二维输入图像,经训练的机器学习模型可提供相同马克杯的输出图像,正如在三维上从马克杯的底部、从马克杯的右侧或从马克杯的任何其他视图观察。即使输入图像不包含马克杯的深度信息,并且即使机器学习模型不具有关于输入图像的任何深度信息,经训练的机器学习模型也可以生成这些输出图像。

本主题技术不需要昂贵的顺序解码步骤,并且通过等变来执行3D结构。本主题技术可仅使用图像及其相对姿态来训练,并且因此可更易于扩展到真实场景,其中具有关于几何形状的最小假设。

传统神经网络相对于一般变换组可能不是等变的。离散旋转的等变可通过复制和旋转滤波器来实现。在本公开中,通过将潜在表示视为几何3D数据结构并将旋转直接应用于该表示来提供实现等变的神经网络。由于存储器和计算要求,传统场景表示(例如,显式表示,诸如点云、体素栅格和网格)可能不能很好地缩放。因此,在本公开中,隐式神经表示被编码成潜在3D张量。

与主题技术相比,使用流估计进行视图合成的神经渲染预测了基于相机视角变换的输入图像上的流场。这些方法对图像空间中的自由形态变形建模,因此可能无法相对于3D旋转显式地执行等变。此外,这些模型通常限于分段的单个对象,而不是整个场景。

返回到马克杯的输入图像的上述示例,在本主题技术的一些具体实施中,除了马克杯的二维输出图像之外或代替马克杯的二维输出图像,机器学习模型可被训练为在三维中输出马克杯的显式表示。在三维中马克杯的显式表示可以是点云、网格或体素栅格(作为示例),这些点云、网格或体素栅格可被渲染以便能够被人类观察者识别为对象,并且可在三维中操纵(例如,旋转、平移、重新设定尺寸等)。

本主题技术的具体实施通过提供等变约束来改善给定电子设备的计算功能,当在机器学习模型的训练期间应用该等变约束时,允许该模型(i)在没有3D监督的情况下被训练,(ii)在不向模型提供姿态信息作为输入的情况下进行测试,和/或(iii)操作以在单个前向传递中从对象的单个二维图像生成三维对象的隐式表示(在本文中也称为“场景表示”)。现有方法可能需要昂贵的优化程序来从图像或一组图像中提取三维信息,并且通常可能在训练期间和/或在运行时需要3D监督和/或输入姿态信息。本主题技术通过提供等变约束来避免这种情况,该等变约束仅执行由模型基于输入图像生成的隐式表示与三维对象本身是等变的(例如,在旋转、平移和/或缩放下)(例如,在相同的旋转、平移和/或缩放下)。因此,这些有益效果被理解为改善给定电子设备诸如最终用户设备的计算功能,最终用户设备一般可具有例如比一个或多个基于云端的服务器更少的可用计算资源和/或电源。

图1示出了根据一个或多个具体实施的示例性网络环境100。然而,并非所有所描绘的部件均可在所有具体实施中使用,并且一个或多个具体实施可包括与图中所示的那些相比附加的或不同的部件。可进行这些部件的布置和类型的变化,而不脱离本文所列出的权利要求的实质或范围。可提供附加的部件、不同的部件或更少的部件。

网络环境100包括电子设备110和服务器120。网络106可以通信地(直接地或间接地)耦接电子设备110和/或服务器120。在一个或多个具体实施中,网络106可以是可包括互联网或可通信地耦接到互联网的设备的互连网络。出于解释的目的,网络环境100在图1中示出为包括电子设备110和服务器120;然而,网络环境100可包括任何数量的电子设备和任何数量的服务器。

电子设备110可为例如台式计算机、便携式计算设备诸如膝上型计算机、智能电话、外围设备(例如,数字相机、耳机)、平板设备、可穿戴设备诸如手表、带等。在图1中,通过举例的方式,电子设备110被描绘为移动电子设备(例如智能电话)。电子设备110可以是和/或可包括下文相对于图3所述的电子系统的全部或一部分。

在一个或多个具体实施中,电子设备110可提供用于使用训练数据训练机器学习模型的系统,其中经训练的机器学习模型随后被部署到电子设备110。此外,电子设备110可提供用于训练机器学习模型和/或使用此类机器学习模型开发应用的一个或多个机器学习框架。在一个示例中,此类机器学习框架可为机器学习中的不同问题域提供各种机器学习算法和模型。在一个示例中,电子设备110可包括部署的机器学习模型,该部署的机器学习模型提供与预测对应的数据的输出或一些其他类型的机器学习输出。

服务器120可提供用于使用训练数据训练机器学习模型的系统,其中经训练的机器学习模型随后被部署到服务器120。在一个具体实施中,服务器120可训练给定的机器学习模型以部署到客户端电子设备(例如,电子设备110)。部署在服务器120和/或电子设备110上的机器学习模型然后可执行一个或多个机器学习算法。在一个具体实施中,服务器120提供云服务,该云服务利用经训练的机器学习模型并且随时间推移持续学习。

图2示出了根据一个或多个具体实施为机器学习模型提供等变约束的系统的示例性计算架构。出于说明的目的,计算架构被描述为由服务器120提供,诸如由服务器120的处理器和/或存储器提供;然而,计算架构可由任何其他电子设备诸如电子设备110来实现。然而,并非所有所描绘的部件均可在所有具体实施中使用,并且一个或多个具体实施可包括与图中所示的那些相比附加的或不同的部件。可进行这些部件的布置和类型的变化,而不脱离本文所列出的权利要求的实质或范围。可提供附加的部件、不同的部件或更少的部件。

如图所示,服务器120包括用于训练机器学习模型的训练数据210。在一个示例中,服务器120可利用使用训练数据210训练机器学习(ML)模型220的一个或多个机器学习算法。可基于训练数据210中的至少两个训练图像来训练ML模型220,该两个训练图像描绘训练对象的不同视图。可使用等变约束来训练ML模型220。等变约束可在训练对象的隐式表示与训练对象本身之间执行等变(例如,在旋转、平移和/或缩放下)。

训练数据210可包括各种对象的二维图像,每个图像从特定视图描绘对象中的一个或多个对象。图像可包括从相对于特定对象的其他图像中所描绘的视图旋转、平移、缩放和/或以其他方式不同的各种视图的特定对象的一组图像。

例如,图3示出了可用于训练ML模型220的若干组示例训练图像。神经渲染和场景表示模型通常在ShapeNet数据集上测试并进行基准测试。然而,由该ShapeNet数据集产生的图像通常与真实场景非常不同:它们是在空背景下渲染的,并且仅涉及固定的刚性对象。由于ML模型220不依赖于3D监督,因此ML模型220可针对丰富的数据进行训练,对于这些数据,获得3D真值可能非常昂贵或困难。训练数据210可包括所构成图像的三个新数据集,其可用于训练和/或测试具有复杂视觉效果的模型。本文称为MugsHQ的第一数据集由具有环境背景的桌子上的彩色马克杯的真实感渲染构成。本文称为3D山脉数据集的第二数据集包含使用卫星和地形图数据的对阿尔卑斯山脉中超过五百个山脉的渲染。第三数据集包含室内场景中的多肉植物的真实图像。根据各个方面,本主题技术提供三个新的具有挑战性的数据集以测试复杂自然场景的表示和神经渲染,并且对每个数据集示出引人注目的渲染结果,从而突出所公开的系统和方法的灵活性。

在图3的示例中,训练数据210包括第一组训练图像300、第二组训练图像304和第三组训练图像308。在该示例中,第一组训练图像300包括多个图像302,每个图像包括特定训练对象303(例如,马克杯)的特定视图。训练数据210可包括若干马克杯中的每一个马克杯的若干视图的若干训练图像300。

第一组训练图像300可称为MugsHQ数据集,并且可基于来自ShapeNet数据集的马克杯类。在图3的示例中,不是在空白背景上渲染图像,而是用环境地图(例如,照明条件)和棋盘格磁盘平台321来渲染每个场景。第一组训练图像300可包括例如用于两百十四个马克杯中的每一个马克杯的一百五十个在上半球上均匀的视角。在该示例中,环境地图和磁盘平台对于每个马克杯是相同的。这样,第一组训练图像300中的每个图像302中的场景比典型的ShapeNet渲染复杂得多并且看起来更逼真。

虽然MugsHQ数据集(例如,第一组训练图像300)包含真实感渲染以及复杂的背景和照明,但每个对象的背景场景相同。还可使用第二组训练图像304训练和/或测试ML模型220,其中所描绘的训练对象307是山脉。第二组训练图像304可以是山脉景观的数据集,其中每个场景彼此不共享公共结构。第二组训练图像304可基于例如阿尔卑斯山脉中五百六十三座最高山脉的高度、纬度和经度来生成。卫星图像与地形数据结合可用于对第二组训练图像304的固定高度处的每个山脉的随机视图进行采样。来自该数据集的一些样本在图3中示出。该数据集对于具有变化且复杂的几何形状和纹理的神经渲染可能是极具挑战性的。

在该示例中,第二组训练图像304包括多个训练图像306,每个训练图像包括训练对象307的特定视图。训练图像306中描绘的训练对象307可以是与训练对象303不同类别的训练对象(例如,山脉)。训练数据210可包括若干山脉中的每个山脉的若干视图的若干训练图像304。

第三组训练图像308可以是真实图像(例如,物理对象诸如多肉植物的若干视图诸如若干视角、距离和/或位置的图像)的数据集。该示例中的第三组训练图像308由从桌子周围的不同视图(例如,改变方位角但保持高度恒定的视图)观察到的多肉植物的图像组成。第三组训练图像308中的图像310中的照明和背景对于图像中的所有场景而言大致恒定,并且在方位角和高度测量中存在一些噪声。第三组训练图像308可包括例如二十种不同的多肉植物,以及例如每种多肉植物的十六个视图。来自数据集的一些样本在图3中示出。

在该示例中,第三组训练图像308包括多个图像310,每个图像包括特定训练对象311的特定视图。图像310中描绘的训练对象311可以是与训练对象303和训练对象307不同类别的训练对象(例如,多肉植物)。训练数据210可包括若干山脉中的每个山脉的若干视图的若干训练图像304。

第一组训练图像300、第二组训练图像304和第三组训练图像308提供三个新的具有挑战性的数据集,这些数据集可用于训练ML模型220和测试复杂自然场景的表示和神经渲染,并且示出每一者的引人注目的渲染结果,从而突出所公开的系统和方法的灵活性。

为神经网络设计有用的3D场景表示是一项具有挑战性的任务。虽然若干作品已使用传统3D表示,诸如体素栅格、网格、点云和符号距离函数,但它们各自具有局限性。例如,通常难以按比例将纹理、非刚性对象和照明结合到这些表示中。最近,已经提出了神经场景表示来克服这些问题,通常通过将来自图形渲染的想法结合到模型架构中。

在本公开中,相对于3D变换的等变为神经渲染和场景表示提供了强感应偏压。实际上,对于许多任务,只要场景表示像显式表示那样变换,场景表示就不需要是显式的(诸如点云和网格)。

然而,在实践中构建此类模型是具有挑战性的。在本主题公开中,提供了一种模型,该模型包括将图像映射到神经场景表示的逆渲染器和生成输出诸如来自表示的图像的前向神经渲染器。场景表示本身可为三维张量,其可经历与显式3D场景相同的变换。在本主题公开中,具体示例集中于3D旋转,但该模型可一般化为其他对称变换,诸如平移和缩放。

图4示意性地示出了可包括在机器学习模型220中的部件。如图4的示例所示,机器学习模型220可包括逆渲染器402和前向渲染器406。调节模块404可设置在逆渲染器402和前向渲染器406之间。逆渲染器402被训练以从特定视图的对象(例如,二维输入图像)的输入图像400生成对象的隐式表示408(也称为场景表示)。前向渲染器406基于来自逆渲染器402的隐式表示408生成输出412。

输出412可以是例如相对于输入图像400的特定视图旋转、平移和/或缩放的不同视图的对象的输出二维图像。又如,输出可包括对象的三维表示。对象的三维表示可以是网格、点云或将在视觉上能够被人类用户识别为对象的体素栅格(例如,如果显式表示在计算机显示器诸如电子设备110的显示器上被渲染)。ML模型220可以基于所提供的输入图像400生成输出图像或对象的三维表示中的至少一者,该输出图像从与输入图像400中的对象的视图不同的旋转视图来描绘对象。

如图4所示,在一些操作场景中,由逆渲染器402生成的隐式表示408可在隐式表示408被提供给前向渲染器406之前被提供给调节模块404。调节模块404可通过旋转、平移和/或缩放隐式表示408来调节隐式表示408,以生成经调节的隐式表示410。例如,调节模块404可以是使隐式表示408旋转的旋转模块。调节模块404可例如为剪切旋转模块。剪切旋转模块可尤其有助于促进基于旋转等变的机器学习模型。

根据本公开的方面,在没有3D监督以及仅使用图像及其相对姿态来学习等变场景表示的情况下训练模型。与大多数其他场景表示模型不同,所公开的模型在推断时间不需要任何姿态信息。从单个图像中,模型可以推断场景表示,对其进行变换并对其进行渲染(参见例如下文图7至图9所述)。此外,与可能需要计算和/或资源昂贵的优化过程以从图像或一组图像中提取场景表示的常规场景表示算法相比,该模型可在单个前向传递中推断场景表示。

根据各个方面,本主题技术通过实施视角变化与场景潜在表示变化之间的等变,引入了用于在没有显式3D监督的情况下学习场景表示和新视图合成的框架。

图5示出了可用于ML模型220的模型架构的附加细节。根据本公开的各方面,模型架构可以是完全可区分的,包括下文进一步详细讨论的剪切旋转操作。提供完全可区分的模型架构有利于实现可利用反向传播训练的模型,以更新神经网络中的所有可学习参数。如图5的示例所示,通过一个或多个2D卷积500映射输入图像400(例如,描绘汽车的图像),然后是逆投影502和一组3D卷积504(例如,通过逆渲染器402)以生成隐式表示408。在图5的示例中,然后通过3D卷积的转置504′、前向投影506和一个或多个2D卷积的转置500′渲染(例如,通过前向渲染器406)推断的场景(例如,隐式表示408)以渲染输出412(例如,输出图像),该输出在该示例中是输入图像400的副本。在该示例中,隐式表示408被提供给前向渲染器406而不旋转,从而产生输出412(例如,输出图像),该输出在该示例中是输入图像400的副本。

图6示出了根据一个或多个具体实施的用于使用机器学习模型生成输出的示例性过程的流程图。出于解释的目的,本文主要相对于图1的服务器120来描述过程600。然而,过程600不限于图1的服务器120,并且过程600的一个或多个框(或操作)可由服务器120的一个或多个其他部件和/或由其他合适设备诸如电子设备110来执行。进一步出于解释的目的,过程600的框在本文中被描述为顺序地或线性地发生。然而,过程600的多个框可并行发生。此外,过程600的框不必按所示顺序执行,并且/或者过程600的一个或多个框不必执行和/或可由其他操作替代。

在框602处,服务器120向机器学习模型诸如ML模型220提供输入图像诸如图4的输入图像400,该输入图像描绘了对象的视图,该机器学习模型已经基于训练对象(例如,图3的训练对象303、307和311中的一者或多者)与训练对象的模型生成的表示(例如,隐式表示)之间的旋转下的等变的约束进行了训练。

机器学习模型可包括逆渲染器诸如逆渲染器402和前向渲染器诸如前向渲染器406。

在框604处,服务器120使用机器学习模型并基于所提供的图像生成输出图像或对象的三维表示中的至少一者,该输出图像从与图像中对象的视图不同的旋转视图来描绘对象。三维表示可包括显式三维表示,该显式三维表示包括体素栅格、网格或点云中的至少一者。

在框604处,生成从与图像中对象的视图不同的旋转视图来描绘对象的输出图像或对象的三维表示中的至少一者可包括利用前向渲染器来生成从与图像中对象的视图不同的旋转视图来描绘对象的输出图像或对象的三维表示中的至少一者。框604的生成操作还可包括基于输入图像利用逆渲染器生成对象的隐式表示,诸如隐式表示408。

前向渲染器可基于由逆渲染器生成的隐式表示来生成从与图像中对象的视图不同的旋转视图来描绘对象的输出图像或对象的三维表示中的至少一者。在框604处,基于隐式表示生成从与图像中对象的视图不同的旋转视图来描绘对象的输出图像或对象的三维表示中的至少一者可包括使对象的隐式表示旋转。

机器学习模块可包括调节模块,诸如用于执行隐式表示的旋转的调节模块404。使对象的隐式表示旋转可包括执行对象的隐式表示的剪切旋转。对象的隐式表示可以是例如自动编码器的张量或潜在空间。

在3D中定义张量旋转并不简单,并且已发现自然的张量旋转可能不用于学习等变表示。调节模块404可提供用于执行可逆剪切旋转的新的可区分层,这允许神经网络学习等变表示。根据各个方面,本主题技术示出了自然张量旋转不能实现等变,并且引入了解决可区分神经架构内的这种限制的可逆剪切操作。

图7、图8和图9示出了ML模型(诸如ML模型220)的各种示例性输出,该ML模型基于训练对象与训练对象的模型生成的表示之间的旋转下的等变约束进行训练。在图7、图8和图9的示例中,输出是输出图像,每个输出图像从与图像中的对象的视图不同的旋转视图来描绘输入图像中所示的对象。

图7示出了分别描绘两个不同马克杯的两个不同视图的两个输入图像400-1和400-2。图7还示出了由ME模型220基于两个输入图像400-1和400-2中的每一者生成的五个输出图像。对于输入图像400-1,示出了五个输出图像800-1、800-2、800-3、800-4和800-5,每个输出图像描绘了输入图像400-1中的马克杯,但视图不同于输入图像400-1中所描绘的视图。对于输入图像400-2,示出了五个输出图像802-1、802-2、802-3、802-4和802-5,每个输出图像描绘了输入图像400-2中的马克杯,但视图不同于输入图像400-2中所描绘的视图。

图7中针对先前未看见的马克杯的单镜头新视图合成所示的结果表明,ML模型220成功地从单个图像推断先前未看见的马克杯的形状,并且能够围绕场景执行大视角变换。即使从难以观察的视角来看,该模型也能够产生场景的一致且真实的视图,甚至在马克杯边缘和光亮的马克杯柄部(当它们不可见时)上生成反射,这表明该模型已在对象形状上学习到良好的先验。

图8示出了分别描绘三个不同山脉的三个不同视图的三个输入图像400-3、400-4和400-5。图8还示出了由ML模型220基于三个输入图像400-3、400-4和400-5中的每一者生成的五个输出图像。对于输入图像400-3,示出了五个输出图像803-1、803-2、803-3、803-4和803-5,每个输出图像描绘了输入图像400-3中的山脉,但视图不同于输入图像400-3中所描绘的视图。对于输入图像400-4,示出了五个输出图像804-1、804-2、804-3、804-4和804-5,每个输出图像描绘了输入图像400-4中的山脉,但视图不同于输入图像400-4中所描绘的视图。对于输入图像400-5,示出了五个输出图像805-1、805-2、805-3、805-4和805-5,每个输出图像描绘了输入图像400-5中的山脉,但视图不同于输入图像400-5中所描绘的视图。

图8中针对单镜头新视图合成所示的结果表明,即使对于描绘复杂对象和背景诸如山景的输入图像,尽管模型可能难以捕获高频细节,但当相机围绕推断的场景表示旋转时,该模型也会真实地再现山脉的3D结构和纹理。对于多种多样的山脉景观(例如,雪山、岩石山等),ML模型220能够生成景观的可能的其他视图。

图9示出了三个输入图像400-6、400-7和400-8,其分别示出了三种不同植物(例如,多肉植物)的三种不同视图。图9还示出了由ML模型220基于三个输入图像400-6、400-7和400-8中的每一者生成的五个输出图像。对于输入图像400-6,示出了五个输出图像806-1、806-2、806-3、806-4和806-5,每个输出图像描绘了输入图像400-6中的多肉植物,但视图不同于输入图像400-6中所描绘的视图不同的视图。对于输入图像400-7,示出了五个输出图像807-1、807-2、807-3、807-4和807-5,每个输出图像描绘了输入图像400-7中的多肉植物,但视图不同于输入图像400-7中所描绘的视图。对于输入图像400-8,示出了五个输出图像808-1、808-2、808-3、808-4和808-5,每个输出图像描绘了输入图像400-8中的多肉植物,但视图不同于输入图像400-8中所描绘的视图。

图9中针对单镜头新视图合成所示的结果表明,ML模型220能够生成输入图像中所示植物的可能的其他视图,并且具体地,产生显著一致的阴影。附加的植物输入训练图像可用于进一步训练ML模型以学习植物形状上的强先验,以减少或避免网络在运行时过度拟合输入数据。

在各种具体实施中,可使用不同类别的训练对象(例如,马克杯、山脉、植物等)的训练图像来训练不同的ML模型,以对该类别中对象的输入图像执行神经渲染,或者可使用用于训练单个ML模型的各种类别的对象的训练图像来训练单个ML模型,从而对基本上任何对象或场景的输入图像执行神经渲染。

如上所述,二维输出图像诸如图7、图8和图9所示的输出图像仅为经训练的ML模型220的输出的一个示例。在其他具体实施中,ML模型220可以输出关于二维图像中描绘的对象的三维信息,诸如对象的三维表示。

图10示出了可由经训练的ML模型220基于二维输入图像中的对象的描绘生成的对象(例如,兔子)的三维表示1000。在图10中,三维表示1000是显式三维表示(例如,网格),其能够被人类观察者识别为兔子和/或可被渲染成能够被人类观察者识别为兔子的形式。由ML模型220生成的三维表示可以被渲染为点云、体素栅格或任何其他三维表示。

图10还示出了相同对象(例如,兔子)的隐式表示408,该隐式表示对于人类观察者是不可识别的,但与显式三维表示1000在旋转上等变。如图10中的相机1002所示,可从球体上的位置1006(例如,用于渲染输出图像,诸如图7、图8和图9所示的输出图像)的视图1004或者从与球体1003上的其他位置(诸如位置1008和1010)相关联的视图观察显式三维表示1000。隐式表示408也可从球体1003上的位置1006、1008、1010中的任一者(或任何其他合适的位置)查看。为了训练ML模型220以能够生成显式三维表示1000和/或图7、图8和图9的输出图像,可基于执行对象的隐式表示408与对象本身的(例如,旋转)等变的等变约束(例如,在相同的旋转下)来训练模型。

图11示出了使用等变约束对ML模型220进行的训练操作。如图11所示,可使用从两个不同视图(例如,旋转视图)描绘相同输入训练对象1101的两个输入训练图像1100和1102来执行使用等变约束的ML模型的训练。

如图11所示,基于训练对象1101和训练对象的模型生成的表示之间的旋转下的等变约束来训练ML模型220可以包括向机器学习模型提供描绘训练对象1101的第一视图的第一输入训练图像1100(也称为x

训练还可包括基于第一输入训练图像1100(例如,在操作f(x

训练还可包括基于训练对象1101的经旋转的第一隐式表示1108生成第一输出训练图像1116(也称为

图12示出了根据一个或多个具体实施的用于基于训练对象与模型生成的表示之间的旋转下的等变约束来训练模型诸如ML模型220的示例性过程的流程图。出于解释的目的,本文主要相对于图1的服务器120来描述过程1200。然而,过程1200不限于图1的服务器120,并且过程1200的一个或多个框(或操作)可由服务器120的一个或多个其他部件和/或由其他合适设备诸如电子设备110来执行。进一步出于解释的目的,过程1200的框在本文中被描述为顺序地或线性地发生。然而,过程1200的多个框可并行地发生。此外,过程1200的框不必按所示顺序执行,并且/或者过程1200的一个或多个框不必执行和/或可由其他操作替代。

在框1202处,服务器120可向机器学习模型提供第一输入训练图像诸如图11的输入训练图像1100,其描绘了训练对象诸如训练对象1101的第一视图。

在框1204处,服务器120可向机器学习模型提供第二输入训练图像诸如图11的输入训练图像1102,其描绘了训练对象诸如训练对象1101的第二视图。

在框1206处,服务器120可基于第一输入训练图像生成训练对象的第一隐式表示,诸如隐式表示1104。

在框1208处,服务器120可基于第二输入训练图像生成训练对象的第二隐式表示,诸如隐式表示1106。

在框1210处,服务器120可使训练对象的第一隐式表示旋转(例如,以形成经旋转的第一隐式表示1108)。

在框1212处,服务器120可使训练对象的第二隐式表示旋转(例如,以形成经旋转的第二隐式表示1110)。

在框1214处,服务器120可基于训练对象的经旋转的第一隐式表示1108生成第一输出训练图像,诸如输出训练图像1116。

在框1216处,服务器120可基于训练对象的经旋转的第二隐式表示1110生成第二输出训练图像,诸如输出训练图像1114。

在框1218处,服务器120可将第一输入训练图像与第二输出训练图像进行比较。

在框1220处,服务器120可将第二输入训练图像与第一输出训练图像进行比较。训练(例如,第一输入训练图像与第二输出训练图像的比较以及第二输入训练图像与第一输出训练图像的比较)可包括基于第一输入训练图像与第二输出训练图像的比较以及第二输入训练图像与第一输出训练图像的比较来使损失函数最小化。

如本文所讨论的,在一个或多个实施方案中,用于ML模型220的框架可以由两个模型组成:将图像

一般来讲,由于不能访问3D场景的真实几何形状,因此通过确保场景表示z像3D场景那样变换来将结构施加于该场景表示z。具体地,训练操作确保逆渲染器f和前向渲染器g相对于场景的旋转是等变的。旋转操作在场景空间中由

公式(1)中的上面的公式意味着,如果在图像空间中执行相机视角改变,则由f编码的场景表示应经历等变旋转。第二公式意味着,如果使场景表示旋转,则由g渲染的图像应经历等变旋转。

为了设计相对于旋转变换执行等变的损失函数,考虑了相同场景的两个图像及其相对变换,(x

由于

总损失函数可以是

上文结合框1202-框1220所述的用于训练模型的任何或所有操作可基于至少两个图像来执行,而无需对训练进行三维监督。可在不向经训练的机器学习模型提供姿态信息的情况下测试经训练的机器学习模型。

已经发现,定义场景空间

为了说明这一点,以下描述2D图像的旋转(因为3D旋转的效果相同)。为了展示由栅格上的旋转引起的混叠效果,可将图像旋转角度θ,然后可将所得图像旋转角度-θ(用双线性插值采样以获得栅格点处的值)。如果栅格上的旋转是可逆的,则最终图像应与原始图像完全相同。为了测试这在实践中是否适用,从CIFAR10数据集中采样一千幅图像,每幅图像以[0,360]中的每个角度来回旋转,并且记录误差。在该示例性场景中,平均像素值误差为大约3%,这是十分显著的。

这些结果意味着张量旋转可不用于学习相对于相机旋转等变的场景表示。实际上,对于张量旋转,旋转操作

将f应用到该公式(4)的两边并使用等变特性两次,然后得到:

由于通常对于张量旋转而言

在下面的讨论中,示出了剪切旋转可用于限定可在神经网络中使用的可逆张量旋转。使图像旋转对应于通过向坐标向量应用旋转矩阵使图像中给定(x,y)坐标处的像素值旋转。相反,剪切旋转通过执行一系列剪切操作使图像旋转。根据本公开的方面,旋转矩阵可被因子分解为:

因此,利用三次剪切操作进行旋转,这与单次矩阵乘法相反。

例如,如图13所示,在剪切旋转操作1300中,输入图像1304可被剪切三次以获得旋转图像1312。图13还示出了用于利用三个最近邻剪切操作将输入图像1314旋转为经旋转的输出图像1322的最近邻剪切旋转操作1302可如何允许调节模块404在栅格上执行可逆旋转。

虽然剪切操作本身将不与栅格坐标对准并且也需要插值的形式,但下面示出了如何通过使用最近邻方法(例如,利用调节模块404)来使这些操作可逆。

应用剪切变换涉及移动图像的列或行,但不同时移动两者。因此,对于每个移位点,栅格上存在唯一的最近邻。相比之下,对于规则旋转,两个移位点可通过最近邻操作映射到相同的栅格点。

图14示出了图像1401到经旋转图像1406的规则旋转1400,其中两个移位点1410和1414可通过最近邻操作被映射到相同的栅格点1408。相比之下,图14还示出了图像1404到经旋转图像1420的剪切旋转操作1402,其中对于每个移位点1424,栅格上存在唯一的最近邻1422。

由于服务器120可针对每个栅格点找到唯一的最近邻,因此与最近邻的剪切是可逆的操作。在一些具体实施中,由于每个剪切操作是可逆的,因此三个剪切操作的组成也是可逆的,这意味着栅格上的可逆旋转可由调节模块404定义和执行。

虽然利用剪切限定张量旋转允许可逆性,但可权衡角度分辨率。实际上,可利用可逆剪切旋转表示的最小旋转取决于栅格尺寸n,如:

这意味着模型相对于连续旋转可以不是等变的,而是仅等变至有限的角度分辨率。然而,对于在实践中使用的栅格尺寸,角度分辨率足够清晰以对大多数旋转进行建模。例如,对于32×32栅格,角度分辨率小于2度。角度分辨率的数值的一些示例在下表1中给出。

表1针对各种栅格尺寸的角度分辨率(以度为单位)。

剪切旋转矩阵因子分解涉及tan(θ/2)项。对于围绕场景表示的整个球体上的“相机”或视图的旋转,调节模块404可针对θ∈[0,360)执行旋转。为了避免tan函数的无穷大,角度可分解为θ=θ

虽然剪切旋转操作已在上文中针对2D栅格进行了定义,但上面的讨论通过执行两次2D旋转将其扩展至3D栅格。完全可逆剪切旋转操作

剪切旋转操作在角度上是不连续的。然而,这在实践中无关紧要,因为不需要计算相对于角度的梯度。实际上,机器学习模型220的剪切旋转层可对应于变换场景表示张量中体素的位置,从而允许通过操作反向传播。

如上所述,本发明技术的一个方面是使用特定和合法来源的图像以用于神经渲染。本公开设想到,在一些情况下,图像可包括唯一地识别或可用于识别具体人员的个人信息数据。此类个人信息数据可包括用户的脸或用户的身体的部分的图像、视频数据、人口统计数据、基于位置的数据、在线标识符、打印信息诸如电话号码、电子邮件地址、家庭地址、与用户的健康或身体素质相关的数据或记录(例如,生命特征测量、药物信息、锻炼信息)、出生日期或任何其他个人信息。

本公开认识到在本发明技术中使用此类个人信息数据可用于使用户受益。例如,个人信息数据可用于人物图像的神经渲染。

本公开设想负责收集、分析、公开、传输、存储或其他使用此类个人信息数据的实体将遵守既定的隐私政策和/或隐私实践。具体地,将期望此类实体实现和一贯地应用一般公认为满足或超过维护用户隐私的行业或政府所要求的隐私实践。关于使用个人数据的此类信息应当被突出地并能够被用户方便地访问,并应当随数据的收集和/或使用变化而被更新。用户的个人信息应被收集仅用于合法使用。另外,此类收集/共享应仅发生在接收到用户同意或在适用法律中所规定的其他合法根据之后。此外,此类实体应考虑采取任何必要步骤,保卫和保障对此类个人信息数据的访问,并确保有权访问个人信息数据的其他人遵守其隐私政策和流程。另外,这种实体可使其本身经受第三方评估以证明其遵守广泛接受的隐私政策和实践。此外,应针对被收集和/或访问的特定类型的个人信息数据调整政策和实践,并使其适用于适用法律和标准,包括可用于施加较高标准的辖区专有的具体考虑因素。例如,在美国,对某些健康数据的收集或获取可能受联邦和/或州法律的管辖,诸如健康保险流通和责任法案(HIPAA);而其他国家的健康数据可能受到其他法规和政策的约束并应相应处理。

不管前述情况如何,本公开还预期用户选择性地阻止使用或访问个人信息数据的实施方案。即本公开预期可提供硬件元件和/或软件元件,以防止或阻止对此类个人信息数据的访问。例如,在神经渲染的情况下,本主题技术可被配置为在注册服务期间或随后的任何时间允许用户选择“选择加入”或“选择退出”参与对个人信息数据的收集和/或共享。除了提供“选择加入”和“选择退出”选项外,本公开设想提供与访问或使用个人信息相关的通知。例如,可在下载应用时向用户通知其个人信息数据将被访问,然后就在个人信息数据被应用访问之前再次提醒用户。

此外,本公开的目的是应管理和处理个人信息数据以最小化无意或未经授权访问或使用的风险。一旦不再需要数据,通过限制数据收集和删除数据可最小化风险。此外,并且当适用时,包括在某些健康相关应用程序中,数据去标识可用于保护用户的隐私。可在适当时通过移除标识符、控制所存储数据的量或特异性(例如,在城市级别而不是在地址级别或在对于面部识别而言不充分的级别收集位置数据)、控制数据如何被存储(例如,在用户间汇集数据)和/或其他方法诸如差异化隐私来促进去标识。

因此,虽然本公开广泛地覆盖了使用个人信息数据来实现一个或多个各种所公开的实施方案,但本公开还预期各种实施方案也可在无需访问此类个人信息数据的情况下被实现。即,本发明技术的各种实施方案不会由于缺少此类个人信息数据的全部或一部分而无法正常进行。

图15示出了可用于实现主题技术的一个或多个具体实施的电子系统1500。电子系统1500可以是图1所示的电子设备110和/或服务器120和/或可为其一部分。电子系统1500可包括各种类型的计算机可读介质以及用于各种其他类型的计算机可读介质的接口。电子系统1500包括总线1508、一个或多个处理单元1512、系统存储器1504(和/或缓冲器)、ROM1510、永久性存储设备1502、输入设备接口1514、输出设备接口1506以及一个或多个网络接口1516,或者其子集及变型形式。

总线1508总体表示通信地连接电子系统1500的许多内部设备的所有系统、外围设备以及芯片组总线。在一个或多个具体实施中,总线1508将该一个或多个处理单元1512与ROM 1510、系统存储器1504和永久性存储设备1502通信地连接。该一个或多个处理单元1512从这些各种存储器单元检索要执行的指令和要处理的数据,以便执行主题公开的过程。在不同的具体实施中,该一个或多个处理单元1512可以是单个处理器或者多核处理器。

ROM 1510存储该一个或多个处理单元1512以及电子系统1500的其他模块需要的静态数据和指令。另一方面,永久性存储设备1502可以是读写存储器设备。永久性存储设备1502可以是即使在电子系统1500关闭时也存储指令和数据的非易失性存储器单元。在一个或多个具体实施中,海量存储设备(诸如,磁盘或光盘及其相应盘驱动器)可被用作永久性存储设备1502。

在一个或多个具体实施中,可移除存储设备(诸如,软盘、闪存驱动器及其相应盘驱动器)可被用作永久性存储设备1502。与永久性存储设备1502一样,系统存储器1504可以是读写存储器设备。然而,与永久性存储设备1502不同,系统存储器1504可以是易失性读写存储器,诸如随机存取存储器。系统存储器1504可存储一个或多个处理单元1512在运行时可能需要的指令和数据中的任何指令和数据。在一个或多个具体实施中,本主题公开的过程被存储在系统存储器1504、永久性存储设备1502和/或ROM 1510中。该一个或多个处理单元1512从这些各种存储器单元检索要执行的指令和要处理的数据,以便执行一个或多个具体实施的过程。

总线1508还连接到输入设备接口1514和输出设备接口1506。输入设备接口1514使得用户能够向电子系统1500传送信息以及选择命令。可与输入设备接口1514一起使用的输入设备可包括例如字母数字混合键盘和指向设备(也称为“光标控制设备”)。输出设备接口1506可使得例如能够显示电子系统1500所生成的图像。可与输出设备接口1506一起使用的输出设备可包括例如打印机和显示设备,诸如液晶显示器(LCD)、发光二极管(LED)显示器、有机发光二极管(OLED)显示器、柔性显示器、平板显示器、固态显示器、投影仪或用于输出信息的任何其他设备。一个或多个具体实施可包括既充当输入设备又充当输出设备的设备,诸如触摸屏。在这些具体实施中,提供给用户的反馈可以是任何形式的感官反馈,诸如视觉反馈、听觉反馈或触觉反馈;并且可以任何形式接收来自用户的输入,包括声学、语音或触觉输入。

最后,如图15所示,总线1508还通过一个或多个网络接口1516将电子系统1500耦接到一个或多个网络和/或耦接到一个或多个网络节点,诸如图1中所示的电子设备110。以此方式,电子系统1500可以是计算机网络(诸如LAN、广域网(“WAN”)或内联网)的一部分,或者可以是网络的网络(诸如互联网)的一部分。电子系统1500的任何或所有部件可与本主题公开一起使用。

所公开的系统和方法为神经渲染提供了优点,包括提供对场景表示和渲染过程做出非常少假设的机器学习模型。实际上,所公开的机器学习模型仅通过执行相对于3D旋转的等变来学习表示。因此,场景中的材料、纹理和照明可被编码到模型中。所公开的模型的简单性还意味着它可以在没有3D监督的情况下纯粹从所构成的2D图像训练。

如本文所述,这些优点有利于其他优点,包括在难以获得3D几何形状的情况下允许将模型应用于所关注的数据。与其他方法相比,所公开的机器学习模型在测试时间不需要姿态信息。此外,操作所公开的机器学习模型是快速的:推断场景表示仅对应于执行神经网络的前向传递。这与需要解决每个新观察图像在推断时间的昂贵优化问题的其他方法形成对比。

在所公开的系统和方法中,渲染也在单个前向传递中执行,从而使其比通常需要复发以产生图像的其他方法更快。

在训练数据稀疏(例如,每个场景的视图数量较少)的操作场景中,新视图合成模型可表现出“对齐”到固定视图而非围绕场景平滑旋转的趋势。所公开的系统和方法设想了附加的训练数据和/或训练操作,以减少这种类型的非期望的对齐。

在所公开的系统和方法中,等变在各种示例中被描述为在相对于3D旋转的训练期间被执行。然而,真实场景具有其他对称性,如平移和缩放。应当理解,平移等变和标度等变也可应用于模型训练的约束。

此外,虽然场景表示有时被描述为用于渲染图像,但附加结构可在潜在空间上被执行以使表示更可解释或甚至可编辑。另外,应当理解,已示出添加来自渲染过程的感应偏压,诸如显式地处理遮挡,以改善其他模型的性能,并且还可应用于所公开的模型。还应当理解,学习场景表示可用于生成3D重建。实际上,大多数现有的3D重建方法是以对象为中心的(即,每个对象以相同取向重建)。这已表明使模型有效地执行形状分类而非重建。由于所公开的场景表示是以视图为中心的,因此所公开的场景表示可用于在以视图为中心的情况下生成3D重建。

在所公开的系统和方法中,提供了机器学习模型,该机器学习模型通过确保表示像真实3D场景那样变换来学习场景表示。

还应当理解,本文讨论了各种示例,其中机器学习模型是确定性的,而从图像推断场景是固有的不确定过程。实际上,对于给定的图像,存在可能已经生成的若干可能的场景,并且类似地,若干不同的场景可被渲染为相同的图像。在一些具体实施中,所公开的系统和方法可用于训练模型以学习场景P(场景|图像)上的分布。

此外,在本文所述的一些示例中,在训练期间,训练图像中的每个视图对被视为相同的。然而,彼此接近的视图应当更容易重建,而由于由遮挡引起的固有不确定性,彼此远离的视图可能无法准确重建。可修改本文所述的训练操作,例如通过对场景彼此相距多远的重建损失进行加权来反映这一点。还应当理解,在本文所述的一些示例中,提供训练对象的视图对以训练机器学习模型。然而,在一些具体实施中,可以向机器学习模型提供更多数量的训练对象的视图,这也将减少P(场景|图像)分布的熵并增强训练过程。

根据本公开的各方面,提供了用于通过确保场景表示像真实3D场景那样变换来学习场景表示的系统和方法。为了便于该学习,模型可以包括允许模型通过梯度下降学习等变场景表示的可逆剪切旋转。所公开的机器学习模型可在没有3D监督的情况下进行训练,并且可仅使用所构成的2D图像进行训练。根据本公开的方面,提供了用于使用逆渲染器的单个前向传递直接从图像推断场景表示的系统和方法。利用所公开的技术,可以容易地操纵和渲染所学习的场景表示以产生场景的新视角。

还提供了用于神经渲染和场景表示的三个具有挑战性的新数据集。已经表明,所公开的系统和方法在这些数据集上以及在标准ShapeNet任务上表现良好。

根据本公开的方面,提供了一种方法,该方法包括向机器学习模型提供描绘对象的视图的输入图像,该机器学习模型已经基于训练对象与训练对象的模型生成的表示之间的旋转下的等变约束进行了训练;以及使用机器学习模型并基于所提供的图像生成输出图像或对象的三维表示中的至少一者,该输出图像从与图像中对象的视图不同的旋转视图来描绘对象。

根据本公开的方面,提供了一种包括处理器的系统;以及包含指令的存储器设备,该指令在由处理器执行时使得处理器:向机器学习模型提供描绘对象的视图的输入图像,该机器学习模型已经基于训练对象与训练对象的模型生成的表示之间的旋转下的等变约束进行了训练;以及使用机器学习模型并基于所提供的图像生成输出图像或对象的三维表示中的至少一者,该输出图像从与图像中对象的视图不同的旋转视图来描绘对象。

根据本公开的方面,提供了一种非暂态机器可读介质,该非暂态机器可读介质包括代码,该代码在由处理器执行时使得处理器:向机器学习模型提供描绘对象的视图的输入图像,该机器学习模型已经基于描绘训练对象的不同视图的至少两个训练图像进行了训练;以及使用机器学习模型并基于所提供的图像生成输出图像或对象的三维表示中的至少一者,该输出图像从与图像中对象的视图不同的旋转视图来描绘对象。

根据本公开的各方面,提供了一种非暂态机器可读介质,该非暂态机器可读介质包括代码,该代码在由处理器执行时使得处理器:向机器学习模型提供描绘对象视图的输入图像,该机器学习模型已经基于训练对象与该训练对象的模型生成的表示之间的旋转下的等变约束进行了训练;以及使用机器学习模型并基于所提供的图像生成输出图像或对象的三维表示中的至少一者,该输出图像从与图像中对象的视图不同的旋转视图来描绘对象。

根据本公开的各方面,提供了一种非暂态机器可读介质,该非暂态机器可读介质包括代码,该代码在由处理器执行时使得处理器:向机器学习模型提供描绘对象视图的输入图像,该机器学习模型已经基于训练对象与该训练对象的模型生成的表示之间的旋转下的等变约束进行了训练;以及使用机器学习模型并基于所提供的图像生成输出图像或对象的三维表示中的至少一者,该输出图像从与图像中对象的视图不同的旋转视图来描绘对象。

可以利用编写有一个或多个指令的有形计算机可读存储介质(或一种或多种类型的多个有形计算机可读存储介质)部分地或全部地实现本公开范围之内的具体实施。有形计算机可读存储介质实质上也可以是非暂态的。

计算机可读存储介质可以是任何可以由通用或专用计算设备读、写或以其他方式访问的存储介质,包括任何能够执行指令的处理电子器件和/或处理电路。例如,非限制地,计算机可读介质可包括任何易失性半导体存储器,诸如RAM、DRAM、SRAM、T-RAM、Z-RAM和TTRAM。计算机可读介质也可包括任何非易失性半导体存储器,诸如ROM、PROM、EPROM、EEPROM、NVRAM、闪存、nvSRAM、FeRAM、FeTRAM、MRAM、PRAM、CBRAM、SONOS、RRAM、NRAM、赛道存储器、FJG和Millipede存储器。

此外,计算机可读存储介质可包括任何非半导体存储器,诸如光盘存储装置、磁盘存储装置、磁带、其他磁性存储设备或者能够存储一个或多个指令的任何其他介质。在一个或多个具体实施中,有形计算机可读存储介质可直接耦接到计算设备,而在其他具体实施中,有形计算机可读存储介质可例如经由一个或多个有线连接、一个或多个无线连接、或它们的任意组合而间接地耦接到计算设备。

指令可以是直接能执行的,或者可用于开发可执行指令。例如,指令可被实现为可执行的或不可执行的机器代码,或者可被实现为可被编译以产生可执行的或不可执行的机器代码的高级语言指令。此外,指令也可被实现为数据,或者可包括数据。计算机可执行指令也可以任何格式组织,包括例程、子例程、程序、数据结构、对象、模块、应用、小程序、函数等。如本领域技术人员认识到的那样,包括但不限于指令的数量、结构、序列和组织的细节可明显不同,而不改变底层的逻辑、功能、处理和输出。

虽然以上论述主要涉及执行软件的微处理器或多核处理器,但一个或多个具体实施由一个或多个集成电路诸如ASIC或FPGA执行。在一个或多个具体实施中,此类集成电路执行存储在电路自身上的指令。

本领域的技术人员将会认识到,本文所述的各种例示性的框、模块、元件、部件、方法和算法可被实现为电子硬件、计算机软件或两者的组合。为了说明硬件和软件的这种可互换性,上文已经一般性地按照功能性对各种例示性的框、模块、元件、部件、方法和算法进行了描述。此类功能性是被实现为硬件还是软件取决于具体应用以及对整个系统施加的设计约束。技术人员对于每个具体应用可通过不同方式实现所描述的功能性。各种部件和框可被不同地布置(例如,以不同的顺序排列,或以不同的方式划分),而不脱离本主题技术的范围。

应当理解,本发明所公开的过程中的框的特定顺序或分级结构为示例性方法的例示。基于设计优选要求,应当理解,过程中的框的特定顺序或者分级结构可被重新布置或者所有示出的框都被执行。这些框中的任何框可被同时执行。在一个或多个具体实施中,多任务和并行处理可能是有利的。此外,上述具体实施中各个系统部件的划分不应被理解为在所有具体实施中都要求此类划分,并且应当理解,程序部件和系统可一般性地被一起整合在单个软件产品中或者封装到多个软件产品中。

如本说明书以及本专利申请的任何权利要求中所用,术语“基站”、“接收器”、“计算机”、“服务器”、“处理器”及“存储器”均是指电子设备或其他技术设备。这些术语排除人或者人的群组。出于本说明书的目的,术语“显示”或“正在显示”意指在电子设备上显示。

如本文所用,在用术语“和”或“或”分开项目中任何项目的一系列项目之后的短语“中的至少一者”是将列表作为整体进行修饰,而不是修饰列表中的每个成员(即每个项目)。短语“中的至少一者”不要求选择所列出的每个项目中的至少一个;相反,该短语允许包括任何一个项目中的至少一个和/或项目的任何组合中的至少一个和/或每个项目中的至少一个的含义。举例来说,短语“A、B和C中的至少一者”或“A、B或C中的至少一者”各自是指仅A、仅B或仅C;A、B和C的任意组合;和/或A、B和C中的每一个中的至少一个。

谓词字词“被配置为”、“能够操作以”以及“被编程以”并不意味着对某一主题进行任何特定的有形或无形的修改而是旨在可互换使用。在一个或多个具体实施中,被配置为监视和控制操作或部件的处理器也可以是意指处理器被编程以监视和控制操作或者处理器可操作以监视和控制操作。同样,被配置为执行代码的处理器可解释为被编程以执行代码或能够操作以执行代码的处理器。

短语诸如方面、该方面、另一方面、一些方面、一个或多个方面、具体实施、该具体实施、另一具体实施、一些具体实施、一个或多个具体实施、实施方案、该实施方案、另一实施方案、一些实施方案、一个或多个实施方案、配置、该配置、其他配置、一些配置、一种或多种配置、主题技术、公开、本公开、它们的其他变型等等都是为了方便,并不意味着涉及这样的一个或多个短语的公开对于主题技术是必不可少的,也不意味着这种公开适用于主题技术的所有配置。涉及此类一个或多个短语的公开可适用于所有配置或一个或多个配置。涉及此类一个或多个短语的公开可提供一个或多个示例。短语诸如方面或一些方面可指代一个或多个方面,反之亦然,并且这与其他前述短语类似地应用。

字词“示例性”在本文中被用于意指“用作示例、实例或者例示”。在本文中被描述为“示例性的”或作为“示例”的任何实施方案不必被理解为优选于或优于其他具体实施。此外,在术语“包括”、“具有”等在说明书或权利要求中使用的限度内,这样的术语旨在是包含性的,与术语“包括”当在权利要求中被用作过渡字词时“包括”被解释的方式类似。

本领域的普通技术人员已知或稍后悉知的贯穿本公开描述的各个方面的元素的所有结构和功能等同物通过引用明确地并入本文,并且旨在被权利要求书所涵盖。此外,本文所公开的任何内容并非旨在提供给公众,而与该公开是否明确地被陈述在权利要求中无关。不应根据35U.S.C.§112(f)的规定解释任何权利要求要素,除非使用短语“用于......的装置”明确陈述了该要素,或者就方法权利要求而言,使用短语“用于......的步骤”陈述了该要素。

先前的描述被提供以使得本领域的技术人员能够实践本文所述的各个方面。这些方面的各种修改对本领域的技术人员而言是显而易见的,并且本文所限定的通用原则可应用于其他方面。因此,本权利要求书并非旨在受限于本文所示的方面,而是旨在使得全部范围与语言权利要求书一致,其中对奇异值中的元素的引用并非旨在意味着“仅仅一个”,而是指“一个或多个”,除非被具体指出。除非另外特别说明,否则术语“一些”是指一个或多个。男性的代名词(例如,他的)包括女性和中性(例如,她的和它的),并且反之亦然。标题和子标题(如果有的话)仅为了方便起见而使用并且不限制本主题公开。

相关技术
  • 基于多尺度核预测卷积神经网络的蒙特卡洛渲染图降噪方法
  • 一种基于神经网络图形算法实现水墨效果渲染的方法
技术分类

06120113176618