CN114494109A - 用于为3d cad对象的b-rep生成主观风格比较度量的技术 - Google Patents
用于为3d cad对象的b-rep生成主观风格比较度量的技术 Download PDFInfo
- Publication number
- CN114494109A CN114494109A CN202111369029.3A CN202111369029A CN114494109A CN 114494109 A CN114494109 A CN 114494109A CN 202111369029 A CN202111369029 A CN 202111369029A CN 114494109 A CN114494109 A CN 114494109A
- Authority
- CN
- China
- Prior art keywords
- style
- cad
- objects
- trained
- weights
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/27—Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
Abstract
在各种实施方案中,风格比较度量应用程序为多对不同的三维(3D)计算机辅助设计(CAD)对象生成风格比较度量。在操作中,所述风格比较度量应用程序执行任何次数的经训练的神经网络以将3D CAD对象映射到特征映射图。基于所述特征映射图,所述风格比较度量应用程序计算风格信号。基于所述风格信号,所述风格比较度量应用程序确定权重的值。基于所述权重和参数化风格比较度量,所述风格比较度量应用程序生成所述风格比较度量。
Description
相关申请的交叉引用
本申请要求2020年11月13日提交并且序列号为63/113,755的名称为“UNSUPERVISED FEW-SHOT LEARNING OF THREE-DIMENSIONAL STYLE SIMILARITY MEASUREFOR B-REPS”的美国临时专利申请的优先权权益。所述相关申请的主题特此以引用方式并入本文。
发明背景
技术领域
本发明的实施方案总体涉及计算机科学和计算机辅助设计软件,并且更具体地,涉及用于为3D CAD对象的B-rep生成主观风格比较度量的技术。
背景技术
在三维(“3D”)机械设计的上下文中,计算机辅助设计(“CAD”)工具经常用于精简生成、分析、修改、优化、显示和/或记录构成总体机械设计的不同3D对象的设计的过程。CAD工具的一个特别有用的特征在于这些工具可用于基于某些度量来自动比较各种3D CAD对象的计算表示。一个这样的度量是风格比较度量,所述风格比较度量量化一对不同的3D对象之间的几何风格相似性或不相似性,而与这两个3D对象的基础实质内容无关。
在设立风格比较度量的一种方法中,由许多个人将表示不同3D对象的3D网格或3D点云的训练集标记为风格(例如,通过众包)。然后使用监督学习技术来训练机器学习模型,以估计由所标记的训练集表示的多对不同的3D对象之间的风格差异或“风格距离”。随后可使用所得经训练的风格模型来估计由多对不同的3D网格或不同的3D点云表示的多对不同的3D对象之间的风格距离。
上述方法的一个缺点在于机器学习模型通常只学习一个通用风格比较度量,所述通用风格比较度量不考虑不同个人用户之间对风格的不同感知。使用监督学习来设立个性化风格比较度量将需要基于标记为基于单个用户的风格的相对较大的训练集来训练机器学习模型。因为单独标记相对较大的训练集极其耗时,所以很少(如果有过的话)使用监督学习技术来生成反映个人用户偏好的风格比较度量。上述方法的另一个缺点在于3D网格和3D点云在用于表示风格细节时经常丢失保真度,这可能降低所得经训练的风格模型的准确性。
与3D网格和3D点云形成对比,3D对象的边界表示(“B-rep”)的特征在于在用于表示风格细节时具有高度保真度。因此,B-rep已在3D计算机辅助设计和3D计算机辅助制造中成为行业标准。然而,因为标记为风格的B-rep的数量相对较少,所以在风格比较度量的上下文中将监督学习技术应用于B-rep是不切实际的。
如前述内容所说明,在使用计算机辅助设计工具的情况下,本领域需要用于为多对不同的3D对象生成风格比较度量的更有效的技术。
发明内容
本发明的一个实施方案阐述一种用于为多对不同的三维(3D)计算机辅助设计(CAD)对象生成风格比较度量的计算机实现方法。所述方法包括执行一次或多次的经训练的神经网络以将多个3D CAD对象映射到特征映射图集;基于所述特征映射图集来计算风格信号集;基于所述风格信号集来确定权重集的值集;以及基于所述权重集和参数化风格比较度量来生成所述风格比较度量。
所公开的技术相对于现有技术的至少一个技术优势在于所公开的技术实现少样本学习方法以为多对不同的3D CAD对象生成有效的个性化风格比较度量。就此而言,通过所公开的技术,可使用具有相似风格的3D CAD对象的少至两个用户指定示例来学习单个用户所感知的参数化风格比较度量中不同项对几何风格的相对重要性。另外,参数化风格比较度量中的项可从由神经网络生成的数据导出,所述神经网络经过训练以使用无监督技术来处理B-rep,所述无监督技术不需要带标记的训练数据。因此,与现有技术方法不同,所公开的技术可用于比较由B-rep表示的多对不同的3D CAD对象的几何风格,从而相对于现有技术增加几何风格比较的准确性。这些技术优势提供优于现有技术方法的一项或多项技术进步。
附图说明
通过参考各种实施方案,可具有可在以上简要概括的本发明概念的更具体描述中详细地理解各种实施方案的上述特征的方式,所述实施方案中的一些在附图中示出。然而,应注意,附图仅示出本发明构思的典型实施方案,并且因此不应被认为以任何方式限制范围,并且存在其他同等有效的实施方案。
图1是被配置来实现各种实施方案的一个或多个方面的系统的概念图解;
图2是根据各种实施方案的图1的风格学习引擎的更详细图解;
图3是根据各种实施方案的图2的风格信号提取器的更详细图解;
图4是根据各种实施方案的图1的风格比较应用程序的更详细图解;
图5是根据各种实施方案的图4的梯度引擎的更详细图解;
图6是根据各种实施方案的用于为多对不同的3D CAD对象生成风格比较度量的方法步骤的流程图;
图7是根据各种实施方案的用于比较不同3D CAD对象的几何风格的方法步骤的流程图;并且
图8是根据各种实施方案的用于为一对不同的3D CAD对象生成至少一个几何风格梯度的一个或多个可视化的方法步骤的流程图。
具体实施方式
在以下描述中,阐述许多具体细节以提供对各种实施方案的更透彻的理解。然而,对于本领域技术人员将显而易见的是,可在没有这些具体细节中的一者或多者的情况下实践本发明概念。出于解释目的,在需要时,相似对象的多个实例用标识所述对象的附图标记和标识所述实例的带括号标记标示。
系统概述
图1是被配置来实现各种实施方案的一个或多个方面的系统100的概念图解。如图所示,系统100包括但不限于计算实例110(0)、计算实例110(1)、显示装置102(0)、显示装置102(1)、3D CAD对象数据库108(0)、3D CAD对象数据库108(1)、经训练的3D CAD对象神经网络(NN)120(0)和经训练的3D CAD对象NN 120(1)。出于解释目的,计算实例110(0)和计算实例110(1)在本文中也单独地称为“计算实例110”并统称为“计算实例110”。
在一些实施方案中,系统100可包括但不限于任何数量的计算实例110。在相同或其他实施方案中,系统100可省略显示装置102(0)、显示装置102(1)、3D CAD对象数据库108(0)、3D CAD对象数据库108(1)、经训练的3D CAD对象NN 120(0)或经训练的3D CAD对象NN120(1)、或它们的任何组合。在一些实施方案中,系统100可包括一个或多个其他显示装置、一个或多个其他3D CAD对象数据库、一个或多个其他经训练的3D CAD对象NN或它们的任何组合。在一些实施方案中,3D CAD对象数据库108(0)和/或3D CAD对象数据库108(1)可用任何数量的数据集替换或补充。
在各种实施方案中,系统100的任何数量的组件可跨多个地理位置分布或者以任何组合在一个或多个云计算环境(即,封装的共享资源、软件、数据等)中实现。
还如图所示,计算实例110(0)包括但不限于处理器112(0)和存储器116(0)。还如图所示,计算实例110(1)包括但不限于处理器112(1)和存储器116(1)。出于解释目的,处理器112(0)和112(1)在本文中也单独地称为“处理器112”并统称为“处理器112”。出于解释目的,存储器116(0)和116(1)在本文中也单独地称为“存储器116”并统称为“存储器116”。
每个处理器112可以是能够执行指令的任何指令执行系统、设备或装置。例如,每个处理器112可包括中央处理单元(CPU)、图形处理单元(GPU)、控制器、微控制器、状态机或它们的任何组合。每个计算实例110的存储器116存储供计算实例110的处理器112使用的内容,诸如软件应用程序和数据。在一些替代实施方案中,每个计算实例110可包括呈任何组合的任何数量的处理器112和任何数量的存储器116。特别地,任何数量(包括一个)的计算实例110可以任何技术上可行的方式提供任何数量的多处理环境。
每个存储器116可以是易获得的存储器中的一种或多种,诸如随机存取存储器、只读存储器、软盘、硬盘或任何其他形式的本地或远程数字存储装置。在一些实施方案中,存储装置(未示出)可补充或替换任何数量的存储器116。存储装置可包括任何数量的处理器112可访问的任何数量和类型的外部存储器。例如但不限于,存储装置可包括安全数字卡、外部闪速存储器、便携式光盘只读存储器、光学存储装置、磁性存储装置或前述项的任何合适的组合。
每个计算实例110被配置来实现一个或多个软件应用程序。仅出于解释目的,将每个软件应用程序描绘为驻留在单个计算实例110的存储器116中并在单个计算实例110的处理器112上执行。然而,如本领域技术人员将认识到的,每个软件应用程序的功能可跨驻留在任何数量的计算实例110的存储器116中并在任何数量的计算实例110的处理器112上执行的呈任何组合的任何数量的其他软件应用程序分布。另外,任何数量的软件应用程序的功能可合并到单个应用程序或子系统中。
特别地,计算实例110(0)被配置来生成风格比较度量170,所述风格比较度量170量化一对不同的3D CAD对象之间的几何风格相似性或不相似性,而与这两个3D CAD对象的基础实质内容无关。以补充方式,计算实例110(1)基于风格比较度量170来自动比较和/或评估3D CAD对象。
如本文先前所述,在实现风格比较度量的常规方法中,使用监督学习技术基于所标记3D网格或3D点云来训练机器学习模型。这种方法的一个缺点在于机器学习模型通常只学习一个通用风格比较度量,所述通用风格比较度量不考虑不同个人用户之间对风格的不同感知。这种方法的另一个缺点在于3D网格和3D点云在表示风格细节时经常缺乏保真度,并且因此可能降低经训练的风格模型的准确性。与3D网格和3D点云形成对比,3D对象的B-rep的特征在于在表示风格细节时具有高度保真度。然而,因为标记为风格的B-rep的数量相对较少,所以使用监督学习技术基于B-rep来训练机器学习模型以设立风格比较度量是不切实际的。
生成主观风格比较度量
为了解决上述限制,系统100包括但不限于风格比较度量应用程序130和风格比较应用程序180。在一些实施方案中,风格比较度量应用程序130执行经训练的3D CAD对象神经网络120(0)以将3D CAD对象映射到特征映射图集,从特征映射图集提取风格信号,并实现少样本学习技术来学习风格信号对用户的相对重要性。使用少样本学习技术,可基于具有相似风格的3D CAD对象的少至两个用户指定示例来准确地确定风格信号对用户的相对重要性。
如图所示,在一些实施方案中,风格比较度量应用程序130驻留在计算实例110(0)的存储器116(0)中并在计算实例110(0)的处理器112(0)上执行。在相同或其他实施方案中,风格比较度量应用程序130包括但不限于示例引擎140和风格学习引擎160。示例引擎140生成但不限于正例集152和负例集154。
如图所示,正例集152在本文中标示为T。在一些实施方案中,正例集152包括但不限于一组P个3D CAD对象,其中所述集标示为{t1,…,tP},t1-tP是目标风格的示例,并且P可以是≥2的任何整数。P个3D CAD对象中的每一个可以任何技术上可行的方式表示。例如,在一些实施方案中,每个3D CAD对象是B-rep。在一些其他实施方案中,每个3D CAD对象是3D网格。在一些其他实施方案中,每个3D CAD对象是3D点云。3D CAD对象的表示在本文中也称为3D CAD对象。出于解释目的,图1描绘正例集152中的两个3D CAD对象(标示为t1和t2)。如图所示,两个3D CAD对象t1和t2的内容不同,但一些风格方面在t1与t2之间共享。
在一些实施方案中,负例集154在本文中标示为T'。如图所示,在一些实施方案中,负例集154包括但不限于一组N个3D CAD对象,其中所述集标示为{t'1,...,t'N},t′1-t′N是目标风格的反例,并且N可以是≥2的任何整数。在一些其他实施方案中,负例集包括但不限于单个3D CAD对象(t'1)。在一些其他实施方案中,负例集154可以是空集。出于解释目的,图1描绘负例集154中的两个3D CAD对象(标示为t′1和t′2)。
如图所示,在一些实施方案中,风格比较度量应用程序130生成目标风格图形用户界面(GUI)142。目标风格GUI 142使得用户能够以任何技术上可行的方式指定、审查和/或修改目标风格的正例和负例。如图所示,在一些实施方案中,风格比较度量应用程序130有利于从3D CAD对象数据库108(0)对正例和负例的用户选择。3D CAD对象数据库108(0)可包括但不限于以任何技术上可行的方式表示的任何数量的3D CAD对象。
如图所示,在一些实施方案中,风格比较度量应用程序130将目标风格GUI 142显示在显示装置102(0)上。显示装置102(0)可以是可被配置来以任何技术上可行的方式显示任何数量和/或类型的视觉内容的任何类型的装置。在相同或其他实施方案中,计算实例110(0)、零个或多个其他计算实例、显示装置102(0)和零个或多个其他显示装置集成到用户装置(未示出)中。用户装置的一些示例包括但不限于台式计算机、膝上型计算机、智能电话、智能电视、游戏机、平板计算机等。
在一些实施方案中,正例集152中的3D CAD对象中的每一个由用户选择(例如,通过目标风格GUI)。在相同或其他实施方案中,负例集154中的3D CAD对象中的零个或多个由用户选择,并且负例集154中的3D CAD对象中的零个或多个由示例引擎140自动选择。示例引擎140可以任何技术上可行的方式选择任何数量的负例并将其添加到负例集154。例如,在一些实施方案中,为了降低少样本学习期间过拟合的风险,示例引擎140从3D CAD对象数据库108(0)随机选择相对大数量的3D CAD对象并将所选择的3D CAD对象添加到负例集154。
风格学习引擎160使用经训练的3D CAD对象神经网络120(0)基于正例集152和负例集154来生成风格比较度量170。经训练的3D CAD对象神经网络120(0)可以是处理任何类型的3D CAD对象表示的任何类型的神经网络。例如,在一些实施方案中,经训练的3D CAD对象神经网络120(0)是经训练的B-rep编码器、经训练的3D网格分类器、经训练的UV-net编码器、经训练的3D点云分类器、经训练的贝氏预分类器(B-pre classifier)、经训练的3D网格编码器或任何其他相似类型的编码器或分类器。
如以下结合图2和图3更详细描述的,在一些实施方案中,风格学习引擎160执行经训练的3D CAD对象神经网络120(0)以将3D CAD对象映射到特征映射图集。值得注意的是,每个特征映射图集包括多个特征映射图,其中每个特征映射图与经训练的3D CAD对象神经网络的不同层相关联。在一些实施方案中,风格学习引擎160将输入特征映射图添加到每个特征映射图集。在相同或其他实施方案中,针对每个特征映射图,风格学习引擎160从特征映射图中表示的二阶激活信息(例如,统计量)和/或二阶特征信息提取不同的风格信号。然后,风格学习引擎160基于正例集152和负例集154来实现少样本学习技术以学习风格信号对用户的相对重要性。风格学习引擎160基于风格信号对用户的相对重要性来生成风格比较度量170。
风格比较度量170可以是可用于量化两个3D CAD对象或“一对3D CAD对象”之间的几何风格相似性或不相似性的任何类型的测量技术。例如,在一些实施方案中,风格比较度量170是量化两个3D CAD对象的几何风格之间的差异或“距离”的等式。在一些其他实施方案中,风格比较度量170可以是用于量化两个3D CAD对象之间的几何风格不相似性的任何其他类型的技术,诸如损失函数。在又一些实施方案中,风格比较度量170可以是用于量化两个3D CAD对象之间的几何相似性的任何类型的技术,诸如相似性度量。可修改本文所述的技术以反映任何数量和/或类型的风格比较度量。
如图所示,在一些实施方案中,风格比较应用程序180驻留在计算实例110(1)的存储器116(1)中并在计算实例110(1)的处理器112(1)上执行。风格比较应用程序180可执行任何数量和/或类型的操作以基于将风格比较度量170应用于多对3D CAD对象来自动评估任何数量的3D CAD对象的风格。尽管未示出,但在一些实施方案中,风格比较应用程序180的不同实例可基于不同的风格比较度量来比较相同或不同的3D CAD对象。在相同或其他实施方案中,不同的风格比较度量可反映不同的风格感知。
风格比较应用程序180可以任何技术上可行的方式确定要评估的3D CAD对象以及要执行的评估的数量和/或类型。如图所示,在一些实施方案中,风格比较应用程序180生成风格评估GUI 182,所述风格评估GUI 182使得用户能够以任何技术上可行的方式指定要执行的评估的任何数量和/或类型。在一些实施方案中,风格评估GUI 182使得用户能够从3DCAD对象数据库108(1)选择任何数量的3D CAD对象以供显示和/或评估。3D CAD对象数据库108(1)可包括但不限于以任何技术上可行的方式表示的任何数量的3D CAD对象。在相同或其他实施方案中,风格评估GUI 182使得风格比较应用程序180能够以任何技术上可行的方式显示任何数量和/或类型的评估结果。
如图所示,在一些实施方案中,风格比较应用程序180将风格评估GUI182显示在显示装置102(1)上。显示装置102(1)可以是可被配置来以任何技术上可行的方式显示任何数量和/或类型的视觉内容的任何类型的装置。在相同或其他实施方案中,计算实例110(1)、零个或多个其他计算实例、显示装置102(1)和零个或多个其他显示装置集成到用户装置(未示出)中。用户装置的一些示例包括但不限于台式计算机、膝上型计算机、智能电话、智能电视、游戏机、平板计算机等。
如以下结合图3至图5更详细描述的,在一些实施方案中,为了比较一对3D CAD对象的几何风格,风格比较应用程序180执行经训练的3D CAD对象神经网络120(1)以将这对3D CAD对象映射到特征映射图集。在一些实施方案中,经训练的3D CAD对象神经网络120(0)和经训练的3D CAD对象神经网络120(1)是同一经训练的3D CAD对象神经网络的不同实例。在一些实施方案中,风格比较应用程序180将输入特征映射图添加到每个特征映射图集。在相同或其他实施方案中,针对每个特征映射图,风格比较应用程序180从特征映射图中表示的二阶激活信息(例如,统计量)和/或二阶特征信息提取不同的风格信号。然后,风格比较应用程序180基于风格信号来计算风格比较度量的度量值。度量值量化这对3D对象之间的几何风格相似性或不相似性。
风格比较应用程序180可对任何数量的度量值执行任何数量和/或类型的评估相关操作以确定和/或显示任何数量和/或类型的评估结果。例如,在一些实施方案中,风格比较应用程序180可对任何数量的度量值440和任选地任何数量的先前生成的度量值执行任何数量和/或类型的排名操作、统计操作、过滤操作、任何其他类型的数学运算、绘图操作、任何其他类型的图形操作或它们的任何组合,以生成任何数量和/或类型的评估结果(未示出)。
如以下结合图5更详细描述的,在一些实施方案中,风格比较应用程序180包括但不限于梯度引擎(图1中未示出),所述梯度引擎针对与任何数量和/或类型的经训练的3DCAD对象神经网络和任何数量对的3D CAD对象相对应的任何数量和/或类型的风格比较度量,来计算任何数量的风格梯度并显示任何数量的可视化。值得注意的是,在一些实施方案中,包括在一对3D CAD对象之间的梯度中的向量的方向指示可在几何域中移动对应样本点以增加这对3D CAD对象的几何风格相似性的方向。
将了解的是,本文所示的系统是说明性的,并且变化和修改是可能的。可根据需要修改连接拓扑,包括以下项的位置和布置:风格比较度量应用程序130、示例引擎140、风格学习引擎160、目标风格GUI 142、显示装置102(0)、3D CAD对象数据库108(0)、经训练的3DCAD对象神经网络120(0)、风格比较应用程序180、显示装置102(1)、3D CAD对象数据库108(1)和经训练的3D CAD对象神经网络120(1)或它们的任何组合。
在一些实施方案中,图1所示的一个或多个组件可不存在。在相同或其他实施方案中,风格比较度量应用程序130、示例引擎140、风格学习引擎160、经训练的3D CAD对象神经网络120(0)、风格比较应用程序180、经训练的3D CAD对象神经网络120(1)或它们的任何组合的功能可跨任何数量的其他软件应用程序或可包括或可不包括在系统100中的组件分布。
应注意,本文所述的技术是说明性而非限制性的,并且可在不脱离本发明的更广泛的精神和范围的情况下进行更改。在不脱离所描述的实施方案和技术的范围和精神的情况下,许多修改和变化对于本领域普通技术人员将是显而易见的。另外,在各种实施方案中,可以任何技术上可行的方式实现本文所公开的任何数量的技术,而其他技术则可省略。
出于解释目的,在图2-图5所描绘的实施方案中,风格比较度量170是量化两个3DCAD对象之间的几何风格不相似性或“风格距离”的风格距离度量。在一些其他实施方案中,风格比较度量170可以是用于量化两个3D CAD对象之间的几何风格不相似性的任何其他类型的技术,诸如损失函数。在又一些实施方案中,风格比较度量170可以是用于量化两个3DCAD对象之间的几何相似性的任何类型的技术,诸如相似性度量。可修改本文所述的技术以反映任何类型的风格比较度量170。
图2是根据各种实施方案的图1的风格学习引擎160的更详细图解。如图所示,风格学习引擎160使用经训练的3D CAD对象神经网络120(0)基于正例集152和负例集154来生成风格比较度量170。出于解释目的,在生成量化两个3D CAD对象之间的几何风格不相似性的风格比较度量170的上下文中,在图2中描绘和描述风格学习引擎160的功能。在一些其他实施方案中,风格学习引擎160可生成任何类型的风格比较度量170,并且本文所述的技术被相应地修改。
如图所示,正例集152包括但不限于作为目标风格的示例的至少两个3D CAD对象。在一些实施方案中,包括图2所描绘的实施方案,负例集154包括但不限于目标风格的至少两个反例。在一些其他实施方案中,负例集可包括单个3D CAD对象或者可以是空集,并且结合图2描述的风格学习引擎160的功能被相应地修改。
在图2的上下文中并且出于解释目的,正例集152中包括的3D CAD对象在本文中标示为t1-tP,其中P可以是≥2的任何整数。在图2的上下文中并且出于解释目的,负例集154中包括的3D CAD对象在本文中标示为t1-tN,其中N可以是≥2的任何整数。正例集152和负例集154中包括的3D CAD对象可以任何技术上可行的方式表示。
如图所示,风格学习引擎160包括但不限于风格信号提取器210、正风格信号集222、负风格信号集224和主观风格引擎230。在一些实施方案中,风格学习引擎160执行任何次数的风格信号提取器210的任何数量的实例,以基于正例集152来生成正风格信号集222并基于负例集154来生成负风格信号集224。正风格信号集222包括但不限于正例集152中包括的3D CAD对象中的每一个的不同风格信号集。负风格信号集224包括但不限于负例集154中包括的3D CAD对象中的每一个的不同风格信号集。
风格信号提取器210可以任何技术上可行的方式生成3D CAD对象的风格信号集。如以下结合图3更详细描述的,在一些实施方案中,风格信号提取器210基于3D CAD对象来生成经训练的3D CAD对象神经网络120(0)的输入数据。在一些实施方案中,包括图2和图3所描绘的实施方案,风格信号提取器210将输入数据的至少一部分存储为特征映射图,所述特征映射图在本文中也称为“输入特征映射图”。在一些其他实施方案中,风格信号提取器210不生成输入特征映射图,并且本文结合图2和图3描述的技术被相应地修改。
随后,风格信号提取器210对输入特征执行经训练的3D CAD对象神经网络120(0)以生成多个特征映射图,其中每个特征映射图对应于经训练的3D CAD对象神经网络120(0)的层子集中的不同层。在一些实施方案中,风格信号提取器210忽视作为经训练的3D CAD对象神经网络120(0)的最后一层的输出的内容结果集,和/或由经训练的3D CAD对象神经网络120(0)生成但不对应于层子集中的任何层的任何数量的特征映射图。
经训练的3D CAD对象神经网络120(0)的层子集可包括但不限于在任何层次等级处的包括在经训练的3D CAD对象神经网络120(0)中的任何数量和/或类型的任何层。如果经训练的3D CAD对象神经网络120(0)是复合神经网络,所述复合神经网络包括但不限于多个组成神经网络,则层子集可包括但不限于来自经训练的3D CAD对象神经网络120(0)的任何数量和/或类型的层和/或来自任何数量的组成神经网络的任何数量和/或类型的层。
在一些实施方案中,3D CAD对象的特征映射图集(未示出)包括但不限于相关联的初始特征映射图和与经训练的3D CAD对象神经网络120(0)的层子集相对应的相关联特征映射图。出于解释目的,包括在特征映射图集中的特征映射图与不同的“风格层”相关联。在一些实施方案中,输入特征映射图与风格层1相关联,并且由经训练的3D CAD对象神经网络120(0)生成的特征映射图与风格层2–L相关联,其中L为>2。因此,在一些实施方案中,经训练的3D CAD对象神经网络120(0)的层子集包括但不限于(L-1)个层。
风格信号提取器210针对包括在特征映射图集中的特征映射图中的每一个为3DCAD对象生成不同的风格信号以生成3D CAD对象的风格信号集。在一些实施方案中,每个风格信号集包括但不限于总共L个不同风格信号,其对应于风格层1-L。风格信号提取器210可对特征映射图执行任何数量和/或类型的操作以生成对应的风格信号。例如,在一些实施方案中,风格信号提取器210对每个特征映射图执行任何数量和/或类型的掩蔽、归一化、相关运算、统计运算、线性代数运算、矩阵运算或任何其他类型的数学运算以生成对应的风格信号。
在一些实施方案中,每个风格信号表示但不限于与3D CAD对象相关联的风格信息的一个或多个方面。例如,在一些实施方案中,风格信号中的每一个表示包括在对应特征映射图中的特征或激活之间的二阶统计量或相关性。在相同或其他实施方案中,风格信号集以不同比例提供3D CAD对象的风格方面的表示。
在一些实施方案中,并且如本文结合图2至图5所用,对应于3D CAD对象a和层l两者的风格信号标示为Gl(a)。因此,在一些实施方案中,正风格信号集222包括但不限于{G1(t1),...,GL(t1)}–{G1(tN),...,GL(tN)}。而负风格信号集224包括但不限于{G1(t′1),..,GL(t′1)}–{G1(t′N),..,GL(t′N)}。
如图所示,主观风格引擎230基于正风格信号集222和负风格信号集224来生成风格比较度量170。为了生成风格比较度量170,主观风格引擎230基于正风格信号集222和负风格信号集224来学习对应于不同风格层的风格信号的相对重要性。有利地,如果正例集152反映个人用户所感知的目标风格,则风格比较度量170对用户来说是个性化的。主观风格引擎230可以任何技术上可行的方式生成风格比较度量170。
如图所示,在一些实施方案中,主观风格引擎230生成量化两个3D CAD对象之间的风格距离的风格比较度量170。在相同或其他实施方案中,风格比较度量170是用于计算两个3D CAD对象之间的风格距离的等式,所述两个3D CAD对象在本文中也称为“一对3D CAD对象”。出于解释目的,任何两个3D CAD对象之间的风格距离在本文中标示为Dstyle(a,b),其中a和b标示这两个3D CAD对象。3D CAD对象a和b可以与风格信号提取器210一致的任何技术上可行的方式表示。例如,在一些实施方案中,3D CAD对象a和b是B-rep。在一些其他实施方案中,3D CAD对象a和b是3D网格。在一些其他实施方案中,3D CAD对象a和b是3D点云。
在一些实施方案中,主观风格引擎230包括但不限于参数化风格比较度量240、参数化主观损失250、优化引擎260、主观权重270和代换引擎(substitution engine)280。参数化风格比较度量240基于3D CAD对象的风格信号和任何数量和/或类型的可学习参数来定义两个3D CAD对象之间的风格比较值(例如,风格距离、风格相似性等)。可学习参数在本文中也称为“权重”。参数化风格比较度量240可以任何技术上可行的方式定义任何类型的风格比较值。
如图所示,在一些实施方案中,参数化风格比较度量240将Dstyle(a,b)表达为对应于风格层1-L的层特定风格距离的加权组合。在一些实施方案中,L个不同权重在本文中标示为w1–wL并分别控制风格层1–L中的每一个对3D CAD对象a与b之间的风格距离有多大贡献。在相同或其他实施方案中,3D CAD对象a和b之间风格层1-L的层特定风格距离分别标示为D1(a,b)–DL(a,b)。对于范围从1至L(包括端值)的风格层变量l,Dl(a,b)反映风格信号Gl(a)和Gl(b)。
参数化风格比较度量240可以任何技术上可行的方式定义Dstyle(a,b)和Dl(a,b)。如图所示,在一些实施方案中,参数化风格比较度量240通过等式(1)和(2)定义Dstyle(a,b)和Dl(a,b):
在一些实施方案中,参数化主观损失250定义与正例集152和负例集154相关联的主观损失。出于解释目的,参数化主观损失250在本文中标示为Lsubjective。值得注意的是,如果正例集152反映个人用户所感知的目标风格,则参数化主观损失250反映用户所感知的参数化风格比较度量240中的损失或误差。参数化主观损失250可以与参数化风格比较度量240(例如,等式(1)和(2))的定义一致的任何技术上可行的方式定义主观损失。参数化主观损失250在本文中也称为“参数化损失”。
在一些实施方案中,参数化主观损失250基于包括在参数化风格比较度量240中的权重w1–wL和逐层能量项来定义主观损失。逐层能量项标示为E1–EL并且分别对应于风格层1–L。如图所示,在一些实施方案中,参数化主观损失250通过以下等式(3)来定义主观损失:
逐层能量项基于正例集152(T)和负例集154(T')中包括的3D CAD对象的组合之间的层特定风格距离来定义。对于与非零权重相关联的每个层,随着来自正例集152的两个3DCAD对象之间的层特定风格距离增加,主观损失增加。对于与非零权重相关联的每个层,随着来自正例集152的一个3D CAD对象与来自负例集154的一个3D CAD对象之间的层特定风格距离增加,主观损失减少。
在一些实施方案中,为了综合考虑正例集152和负例集154两者,逐层能量项用来自正例集152的两个3D CAD对象的每个可能对以及来自正例集152的一个3D CAD对象和来自负例集154的一个3D CAD对象的每个可能对来表达。例如,在一些实施方案中,范围从1至L(包括端值)的风格层变量l的逐层能量项标示为El并通过以下等式(4)来表达:
在等式(4)中,c1和c2是可以任何技术上可行的方式确定的归一化常数。
优化引擎260优化包括在参数化主观损失250中的权重w1–wL以生成主观权重270,所述主观权重270在本文中标示为w* 1–w* L。出于解释目的,主观权重270的向量在本文中也标示为w。如果正例集152反映个人用户所感知的目标风格,则主观权重270可反映用户所感知的不同风格方面的重要性。优化引擎260可执行任何数量和/或类型的优化算法和/或任何数量和/或类型的优化操作以根据零个或多个约束条件来优化包括在参数化主观损失250中的权重。
如图所示,在一些实施方案中,优化引擎260根据约束条件(5b)和(5c)对以下等式(5a)求解以生成主观权重270:
w≥0 (5c)
在一些实施方案中,优化引擎260施加约束条件(5b)和(5c)以防止平凡解。在相同或其他实施方案中,如果优化引擎260施加约束条件(5b)和(5c),则可基于正例集152充分地确定逐层能量项E1–EL,而不考虑负例集154是否包括任何3D CAD对象。在相同或其他实施方案中,负例集154是空集,并且等式(4)的第二项被省略。在一些其他实施方案中,并且如本文先前结合图1所述,图1的示例引擎140从3D CAD对象数据库108(0)随机抽取一个或多个负例以降低优化引擎260在优化权重w1–wL时过拟合的风险。
优化引擎260可以任何技术上可行的方式根据约束条件(5b)和(5c)对等式(5a)求解。在一些实施方案中,因为El关于w是常数,所以等式(5a)是线性组合,并且因此等式(5a)与对应于等式(5b)的超平面的交集导致优化引擎260使用顺序最小二乘二次规划求解的二次可微凸优化。
代换引擎280将参数化风格比较度量240中包括的权重w1–wL设置为分别等于主观权重270w* 1–w* L,并任选地对参数化风格比较度量240执行任何数量和/或类型的简化操作以生成风格比较度量170。例如,在一些实施方案中,如果优化引擎260确定w*=[0,0,0,1,0,0,0]T,则优化引擎260可确定Dstyle(a,b)=D4(a,b)。
图3是根据各种实施方案的图2的风格信号提取器210的更详细图解。如本文先前结合图2所述,在一些实施方案中,风格学习引擎160执行任何次数的风格信号提取器210的任何数量的实例,以基于正例集152来生成正风格信号集222并基于负例集154来生成负风格信号集224。在相同或其他实施方案中,风格比较应用程序180执行任意次数的风格信号提取器210的任何数量的实例以为至少两个3D CAD对象中的每一个生成不同的风格信号集。下面结合图4更详细地描述根据一些实施方案的风格比较应用程序180。
在一些实施方案中,风格信号提取器210可为任何数量的3D CAD对象中的每一个生成不同的风格信号集。3D CAD对象中的每一个可以任何技术上可行的方式表示。例如,在一些实施方案中,每个3D CAD对象是B-rep。在一些其他实施方案中,每个3D CAD对象是3D网格。在一些其他实施方案中,每个3D CAD对象是3D点云。
如本文先前结合图2所述,在一些实施方案中,为了生成3D CAD对象的风格信号集,风格信号提取器210执行经训练的3D CAD对象神经网络120(0)以将3D CAD对象映射到(L-1)个特征映射图。在相同或其他实施方案中,为了生成多个3D CAD对象的风格信号集,风格信号提取器210执行任何次数的经训练的3D CAD对象神经网络120的任何数量的实例以将3D CAD对象中的每一个映射到(L-1)个特征映射图。
经训练的3D CAD对象神经网络120(0)可以是以任何技术上可行的方式处理任何数量和/或类型的3D CAD对象中的每一个以生成任何数量和/或类型的对应内容结果集的任何类型的神经网络。在一些实施方案中,经训练的3D CAD对象神经网络可以是任何类型的经训练的编码器或任何类型的经训练的分类器。例如,在一些实施方案中,经训练的3DCAD对象神经网络120(0)可以是生成对应于B-rep的内容嵌入集的经训练的B-rep编码器或经训练的UV-net编码器。在一些其他实施方案中,经训练的3D CAD对象神经网络120(0)可以是生成对应于3D网格或3D点云的内容嵌入集的任何类型的经训练的3D CAD对象编码器。在一些其他实施方案中,经训练的3D CAD对象神经网络120(0)可以是生成与B-rep、3D网格、3D点云或3D CAD对象的任何其他技术上可行的表示相对应的内容分类的任何类型的经训练的3D CAD对象分类器。在一些实施方案中,经训练的3D CAD对象神经网络可以是复合神经网络,所述复合神经网络包括但不限于多个组成神经网络。
仅出于解释目的,图3在一些实施方案的上下文中描绘和描述风格信号提取器210的功能,在所述实施方案中每个3D CAD对象是B-rep,经训练的3D CAD对象神经网络120(0)是经训练的UV-net编码器,并且风格信号提取器210执行单次的经训练的UV-net编码器的单个实例以将标示为a的B-rep302映射到六个特征映射图。在一些实施方案中,经训练的UV-net编码器是使用无监督学习技术进行预训练的,所述无监督学习技术不需要带标记的训练数据。因此,与现有技术方法不同,所公开的技术可用于比较由B-rep表示的多对不同的3D CAD对象的几何风格,从而相对于现有技术增加几何风格比较的准确性。
如图所示,在一些实施方案中,风格信号提取器210包括但不限于参数域图应用程序310、UV-net表示320、作为UV-net编码器的实例的经训练的3D CAD对象神经网络120(0)、面重定中心引擎342、实例归一化引擎344、归一化特征映射图集350、风格信号引擎360和风格信号集370。出于解释目的,将经训练的3D CAD对象神经网络120(0)描绘为风格信号提取器210的一部分。在一些实施方案中,经训练的3D CAD对象神经网络120(0)以任何技术上可行的方式集成到风格信号提取器210中。在一些其他实施方案中,经训练的3D CAD对象神经网络120(0)是独立式应用程序。在相同或其他实施方案中,风格信号提取器210和经训练的3D CAD对象神经网络120(0)可以任何技术上可行的方式交互。
在一些实施方案中,参数域图应用程序310将B-rep 302a转换为UV-net表示320。UV-net表示320描述由B-rep 302a表示的3D CAD对象的显著方面。UV-net表示320包括但不限于面邻接图324、二维(2D)UV格网322(1)-322(F)(其中F可以是任何正整数)以及任选地一维(1D)UV格网。2D UV格网322(1)–322(F)是面邻接图324的节点属性。任何1D UV格网都是面邻接图324的边缘属性。出于解释目的,图3中没有描绘1D UV格网,并且既未在图3中描绘也未结合图3描述UV网络编码器的任何对应部分。
在一些实施方案中,每个2D UV格网都是样本的规则2D格网,其中每个样本对应于相关联参数化曲面的参数域中的格网点并且具有附加的一组曲面特征。如图所示,在一些实施方案中,每个2D UV格网都是样本的10×10UV格网。在相同或其他实施方案中,每组样本特征包括但不限于几何域中的3D点位置、任选地3D曲面法线和可见性标志。
在一些实施方案中,每个3D点位置是指定几何域中的3D绝对点坐标的一组三个值(例如,xyz)。在相同或其他实施方案中,每个3D曲面法线是指定3D绝对曲面法线的一组三个值。在一些实施方案中,每个可见性标志为零或一。如果给定样本位于对应曲面的可见区域中,则参数域图应用程序310将对应于所述样本的可见性标志设置为一。否则,参数域图应用程序310将对应于所述样本的可见性标志设置为零。可见性标志在本文中也称为“修整掩模”。
在相同或其他实施方案中,在经训练的UV-net编码器的上下文中,输入通道的数量等于每个曲面特征集中包括的值的数量。因此,在一些实施方案中,2D UV格网322(1)-322(F)中的每一个为七个通道中的每一个指定相关联参数域中的一百个格网点处的值。
如图所示,在一些实施方案中,风格信号提取器210基于2D UV格网322(1)-322(F)来生成对应于风格层1的特征集或“输入特征集”。风格信号提取器210可以任何技术上可行的方式生成输入特征集。在相同或其他实施方案中,风格信号提取器210将二维(2D)UV格网322(1)–322(F)和面邻接图324输入但不限于经训练的UV-net编码器中。作为响应,经训练的UV-net编码器生成但不限于多个特征集和内容结果集308。在一些实施方案中,内容结果集308是内容嵌入集。在一些实施方案中,风格信号提取器210忽视特征集和/或内容结果集308中的零个或多个。
如图所示,在一些实施方案中,经训练的UV-net编码器包括但不限于经训练的面编码器332和经训练的图编码器334。经训练的面编码器332是将2D UV格网322(1)-322(F)映射到但不限于一个或多个特征集和节点特征向量(未示出)的经训练的曲面CNN。经训练的图编码器334是将但不限于面邻接图324和节点特征向量映射到节点嵌入(未示出)、形状嵌入(未示出)或两者的图神经网络。经训练的UV-net编码器输出节点嵌入、形状嵌入或两者作为内容结果集308。
如图所示,在一些实施方案中,经训练的面编码器332包括但不限于以下的序列:各自标示为“Conv2D”的三个2D卷积层,之后是标示为“Pool2D”的2D池化层,之后是标示为“FC”的全连接层。在一些其他实施方案中,面编码器332中的层的数量和/或类型可变化,并且本文所述的技术被相应地修改。在一些实施方案中,2D卷积层中的每一个生成并输出不同的特征集。出于解释目的,第一2D卷积层输出对应于风格层2的特征集,第二2D卷积层输出对应于风格层3的特征集,第三2D卷积层输出对应于风格层4的特征集,并且全连接层输出对应于风格层5的特征集以及相关联的节点特征向量。
如图所示,在相同或其他实施方案中,经训练的图编码器334包括但不限于以下的序列:各自标示为“GIN”的两个图同构网络(GIN)层,之后是标示为“FC”的全连接层,之后是标示为“MaxPool”的最大池化层。在一些其他实施方案中,经训练的图编码器334中的层的数量和/或类型可变化,并且本文所述的技术被相应地修改。在一些实施方案中,GIN层中的每一个生成并输出不同的特征集。出于解释目的,第一GIN层输出对应于风格层6的特征集,并且第二GIN层输出对应于风格层7的特征集。
在一些实施方案中,面重定中心引擎342处理将样本分组成面的特征映射图中的每一个以生成包括在归一化特征映射图集350中的对应的归一化特征映射图。在相同或其他实施方案中,实例归一化引擎344处理其余特征映射图中的每一个以生成包括在归一化特征映射图集350中的对应的归一化特征映射图。在一些实施方案中,3D CAD对象表示为3D网格或3D点云而不是B-rep。在一些此类实施方案中,因为3D网格或3D点云不能按面对特征映射图进行分组,所以省略了面重定中心引擎342。
出于解释目的,如本文所用:
Φl(a)标示对应于3D CAD对象a的归一化特征映射图
如图所示,在一些实施方案中,面重定中心引擎342处理对应于风格层1-4的特征映射图以生成分别标示为的归一化特征映射图352(1)-352(4)。在一些实施方案中,面重定中心引擎342掩蔽(对应于风格层1的)输入特征映射图中与不按照修整掩模位于修整过的面的曲面上的位置相对的样本和相关联特征。针对输入特征映射图中的无掩模特征和对应于风格层2-4的特征映射图中的激活中的每一者,面重定中心引擎342按面对UV样本点重定中心(例如,减去其均值)以生成归一化特征映射图352(1)-352(4)。以此方式,面重定中心引擎342执行每面实例归一化而不除以标准偏差以生成归一化特征映射图352(1)-352(4)。
在相同或其他实施方案中,实例归一化引擎344处理对应于风格层5-7的特征映射图以生成分别标示为的归一化特征映射图352(5)-352(7)。对应于风格层5-7的特征映射图中的每一个都包括但不限于每面的单个向量。因此,实例归一化引擎344跨对应于风格层5-7的特征映射图应用实例归一化以生成归一化特征映射图352(5)-352(7)。
在一些实施方案中,风格信号引擎360基于归一化特征映射图集350来生成风格信号集370。更具体地,针对其中可变风格层l的范围从1至L(包括端值)的每个归一化特征映射图风格信号引擎360生成风格信号Gl(a)。如本文先前结合图2所述,每个风格信号表示但不限于与3D CAD对象a相关联的风格信息的一个或多个方面。在相同或其他实施方案中,风格信号集370以不同比例提供3D CAD对象的风格方面的表示。风格信号引擎360可以任何技术上可行的方式生成每个风格信号。
如图所示,在一些实施方案中,针对包括在归一化特征映射图集350中的每个归一化特征映射图,风格信号引擎360提取归一化特征映射图的Gram矩阵的归一化平坦上三角以生成风格信号。风格信号引擎360以任何技术上可行的方式精确归一化特征映射图的Gram矩阵的归一化平坦上三角。如图所示,在一些实施方案中,风格信号引擎360精确标示为Φl(a)的归一化特征映射图的Gram矩阵的归一化平坦上三角,以通过以下等式(6)生成标示为Gl(a)的对应风格信号:
Gl(a)=triu(Φl(a)Φl(a)T)对于l=1-L (6)
如图所示,在一些实施方案中,归一化特征映射图集350包括但不限于标示为的归一化特征映射图352(1)-352(7)。在相同或其他实施方案中,风格信号引擎360将等式(6)应用于特征映射图352(1)-352(7)中的每一个以生成风格信号372(1)-372(7)(分别标示为G1(a)–G7(a))。因此,风格信号集370包括但不限于风格信号372(1)-372(7)。
本领域技术人员将认识到,在一些实施方案中,风格信号372(1)-372(7)表示归一化特征映射图352(1)-352(7)中特征或激活之间的相关性的二阶统计量。在相同或其他实施方案中,风格信号372(1)模拟局部曲率(例如,平坦/鞍形/双弯曲)的分布,并且随后的风格信号372(2)-352(7)模拟高阶曲率(例如,s形)的分布,从而导致低级特征模式的相关性,并最终导致内容。
如图所示,风格信号提取器210输出风格信号集370。在一些实施方案中,如通过虚线箭头所描绘的,除了风格信号集370之外,风格信号提取器210还输出样本集328和/或归一化特征映射图集350。在相同或其他实施方案中,样本集328包括但不限于输入特征映射图中包括的无掩模输入特征。如以下结合图6更详细描述的,在一些实施方案中,样本集328的实例和/或归一化特征映射图集350的实例有利于风格梯度的可视化。
比较3D CAD对象的风格
图4是根据各种实施方案的图1的风格比较应用程序180的更详细图解。风格比较应用程序180可执行任何数量和/或类型的操作以基于将风格比较度量170应用于多对3DCAD对象来自动评估任何数量的3D CAD对象的风格。尽管未示出,但在一些实施方案中,风格比较应用程序180的不同实例可基于不同的风格比较度量来比较相同或不同的3D CAD对象。在相同或其他实施方案中,不同的风格比较度量可反映不同的风格感知。
风格比较应用程序180可以任何技术上可行的方式确定要评估的3D CAD对象以及要执行的评估的数量和/或类型。如图所示,在一些实施方案中,风格比较应用程序180生成风格评估GUI 182,所述风格评估GUI 182使得用户能够以任何技术上可行的方式指定要执行的任何数量和/或类型的评估。在相同或其他实施方案中,风格评估GUI 182使得风格比较应用程序180能够以任何技术上可行的方式显示任何数量和/或类型的评估结果。
出于解释目的,在对显示3D CAD对象数据库108(1)中在形状上与3D CAD对象402(0)最相似的十个其他形状的命令作出响应的上下文中,结合图4描绘和描述风格比较应用程序180的功能。在相同或其他实施方案中,3D CAD对象数据库108(1)包括但不限于3D CAD对象402(0)和3D CAD对象402(1)-402(Q),其中Q可以是任何正整数。出于解释目的,3D CAD对象402(0)在本文中也称为“参考3D CAD对象”并标示为r。3D CAD对象402(1)-402(Q)在本文中也称为“查询3D CAD对象”并分别标示为q1-qQ。
如图所示,在一些实施方案中,风格比较应用程序180包括但不限于风格信号提取器210、风格信号集420、度量计算引擎430、度量值440和比较引擎450。在一些实施方案中,风格比较应用程序180执行任何次数的风格信号提取器210的任何数量的实例以生成对应于3D CAD对象402(0)-402(Q)的风格信号集420。风格信号提取器210的功能先前在本文中结合图2和图3加以详细描述。如图所示,风格信号集420包括但不限于3D CAD对象402(0)–402(Q)中的每一个的不同信号风格集。更准确地说,风格信号集420包括但不限于{G1(r),...,GL(r)}和{G1(q1),...,GL(q1)}–{G1(qQ),...,GL(qQ)}。
度量计算引擎430将风格比较度量170应用于来自风格信号集420的任何数量的风格信号集对以计算对应的度量值440。在一些实施方案中,响应于图4所描绘的命令,度量计算引擎430应用风格比较度量170以计算Q对3D CAD对象的度量值,其中所述对中的每一对包括3D CAD对象402(0)和3D CAD对象402(1)–402(Q)中的不同3D CAD对象。更准确地说,度量计算引擎430将风格比较度量170应用于多对信号风格集,每对信号风格集对包括{G1(r),…,GL(r)}和{G1(q1),…,GL(q1)}–{G1(qQ),…,GL(qQ)}中的不同者以生成Q对3D CAD对象的标示为(r,q1)–(r,qQ)的度量值440。
在一些实施方案中,风格比较度量170是Dstyle(a,b)(本文先前结合图2加以描述),并且响应于图4所描绘的命令,度量计算引擎430计算标示为Dstyle(r,q1)–Dstyle(r,qQ)的度量值440。标示为Dstyle(r,q1)–Dstyle(r,qQ)的度量值440量化3D CAD对象402(0)(标示为r)分别与3D CAD对象402(1)–402(Q)(标示为q1-qQ)中的每一个之间的几何风格距离。
比较引擎450可对任何数量的度量值440和任选地任何数量的先前生成的度量值执行任何数量和/或类型的排名操作、统计操作、过滤操作、任何其他类型的数学运算、绘图操作、任何其他类型的图形操作或它们的任何组合,以生成任何数量和/或类型的评估结果(未示出)。
在一些实施方案中,响应于图4所描绘的命令,比较引擎450基于分别标示为(r,q1)–(r,qQ)的度量值440对3D CAD对象402(1)–402(Q)进行排名,以确定3D CAD对象402(1)–402(Q)的排名列表。基于排名列表,比较引擎450生成指定3D CAD对象402(1)-402(Q)中所具有的几何风格与3D CAD对象402(0)的几何风格最相似的十个的评估结果。例如,在一些实施方案中,如果度量值440量化3D CAD对象402(0)与3D CAD对象402(1)–402(Q)之间的几何风格距离,则比较引擎450生成指定但不限于度量值440中的十个最低值和3D CAD对象402(1)-402(Q)的对应子集的评估结果。
在一些实施方案中,风格比较应用程序180可通过风格评估GUI 182显示任何数量和/或类型的评估结果,将任何数量和/或类型的评估结果存储在任何存储器中,将任何数量和/或类型的评估结果传输到任何数量和/或类型的软件应用程序,或它们的任何组合。
在一些实施方案中,响应于图4所描绘的命令,风格比较应用程序180生成响应,所述响应在被显示时以图形方式描绘对应于命令的评估结果。然后,风格比较应用程序180通过风格评估GUI 182显示响应。在一些实施方案中,所显示的响应以图形方式描绘评估结果中指定的度量值440的子集和3D CAD对象402(1)-402(Q)的对应子集。
出于解释目的,图4中的风格评估GUI 182描绘一个示例性响应,所述示例性响应包括但不限于风格比较度量170Dstyle(a,b)的度量值440中的十个最低值和3D CAD对象402(1)–402(Q)的对应子集。在示例性响应中,度量值440中的十个最低值是为0.05的Dstyle(r,q134)、0.06的Dstyle(r,q8)、0.06的Dstyle(r,q87)、0.07的Dstyle(r,q162)、0.07的Dstyle(r,q32)、0.07的Dstyle(r,q93)、0.08的Dstyle(r,q1)、0.08的Dstyle(r,q22)、0.08的Dstyle(r,q88)以及0.08的Dstyle(r,q11),它们分别对应于3D CAD对象402(134)、402(8)、402(87)、402(162)、402(32)、402(93)、402(1)、402(22)、402(88)和402(11)。值得注意的是,对于任何其他风格比较度量170,响应可不同。
如通过虚线框和虚线箭头所描绘的,在一些实施方案中,风格比较应用程序180包括但不限于风格信号提取器210、风格信号集420、梯度引擎460、任选地度量计算引擎430、任选地度量值440和任选地比较引擎450。如以下结合图5更详细描述的,在一些实施方案中,梯度引擎460生成至少一个几何风格梯度的一个或多个可视化。如图所示,在相同或其他实施方案中,梯度引擎460基于风格比较度量170、经训练的3D CAD对象神经网络120(1)、样本集、归一化特征映射图集、风格信号集和3D CAD对象来计算一个或多个几何风格梯度并生成一个或多个几何风格梯度的一个或多个可视化。在一些其他实施方案中,梯度引擎460可基于任何数量和/或类型的相关数据来计算一个或多个几何风格梯度并生成一个或多个几何风格梯度的一个或多个可视化。
生成3D对象之间风格差异的可视化
图5是根据各种实施方案的图4的梯度引擎460的更详细图解。针对任何数量对的3D CAD对象中的每一对,梯度引擎460可计算这对3D CAD对象之间的风格比较度量170关于所述对中的一个3D CAD对象的梯度以及任选地这对3D CAD对象之间的风格比较度量170关于所述对中的另一个3D CAD对象的梯度。3D CAD对象可以与风格比较度量170和经训练的3D CAD对象神经网络120(1)一致的任何技术上可行的方式表示。
风格比较度量170的梯度在本文中也称为“风格梯度”和“几何风格梯度”。尽管未示出,但在一些实施方案中,风格比较应用程序180的不同实例可基于不同的风格比较度量来生成风格梯度。在相同或其他实施方案中,不同的风格比较度量可反映不同的风格感知。在一些实施方案中,梯度引擎460和/或风格比较应用程序180以任何技术上可行的方式(例 如,通过风格评估GUI182)生成任何数量的风格梯度的任何数量和/或类型的可视化。
风格比较应用程序180可以任何技术上可行的方式确定要计算和/或要可视化的风格梯度。如本文先前结合图4所述,在一些实施方案中,风格比较应用程序180生成风格评估GUI 182。在一些实施方案中,风格比较应用程序180使得用户能够以任何技术上可行的方式并且无限制地指定要计算的任何数量和/或类型的风格梯度和要显示的任何数量和/或类型的风格梯度的可视化。在相同或其他实施方案中,风格评估GUI 182以任何技术上可行的方式并且无限制地使得风格比较应用程序180和/或梯度引擎460能够显示从任何数量和/或类型的风格梯度,包括风格梯度的可视化推导的任何数量和/或类型的评估结果。
出于解释目的,图5在一些实施方案的上下文中描绘和描述梯度引擎460的功能,在所述实施方案中梯度引擎460对显示与标示为c的B-rep 502(1)与标示为s的B-rep 502(2)之间的经训练的UV-net编码器相关联的风格距离梯度的命令作出响应。在一些实施方案中,响应于图5所描绘的命令,梯度引擎460计算标示为Δxyz(c)的风格梯度540(1)和标示为Δxyz(s)的风格梯度540(2)。然后,梯度引擎460通过风格评估GUI 182显示对应的可视化。
在一些实施方案中,梯度引擎460计算任何数量的风格梯度并显示与任何数量和/或类型的经训练的3D CAD对象神经网络和可以任何技术上可行的方式表示的任何数量对的3D CAD对象相对应的任何数量和/或类型的风格比较度量的任何数量的可视化,并且本文所述的技术被相应地修改。
如图所示,在一些实施方案中,梯度引擎460包括但不限于绝对位置集510(1)、绝对位置集510(2)、偏导数引擎520、风格梯度540(1)、风格梯度540(2)、缩放梯度550(1)和缩放梯度550(2)。在一些实施方案中,梯度引擎460分别基于样本集328(1)和样本集328(2)来生成绝对位置集510(1)和绝对位置集510(2)。样本集328(1)和样本集328(2)是由风格信号提取器210生成的样本集328的不同实例。样本集328在本文中先前结合图3加以描述。
在一些实施方案中,样本集328(1)包括但不限于几何域中的3D点位置和任选地从B-rep 502(1)导出的输入特征映射图中的无掩模样本中的每一个的3D曲面法线。梯度引擎460提取样本集328(1)中指定的3D点位置以生成绝对位置集510(1)。在一些实施方案中,绝对位置集510(1)指定但不限于与B-rep 502(1)相关联的无掩模UV样本点中的每一个的绝对3D点位置。3D点位置在本文中也称为“3D位置”。与B-rep 502(1)相关联的UV样本点的绝对位置在本文中统一标示为cxyz。
在相同或其他实施方案中,样本集328(2)包括但不限于几何域中的3D点位置和任选地B-rep 502(2)的输入特征映射图中的无掩模UV样本点中的每一个的3D曲面法线。梯度引擎460提取样本集328(2)中指定的3D点位置以生成绝对位置集510(2)。在一些实施方案中,绝对位置集510(2)指定但不限于与B-rep 502(2)相关联的无掩模UV样本点中的每一个的绝对3D点位置或3D位置。与B-rep 502(2)相关联的UV样本点的绝对位置在本文中统一标示为sxyz。
如图所示,在一些实施方案中,偏导数引擎520计算风格梯度540(1)和风格梯度540(2)。偏导数引擎520可以任何技术上可行的方式定义和计算风格梯度540(1)和风格梯度540(2)。在一些实施方案中,偏导数引擎520将风格梯度540(1)定义为表示风格比较度量170关于样本集328(1)中包括的每个3D位置的不同偏导数的一组向量。在相同或其他实施方案中,偏导数引擎520将风格梯度540(2)定义为表示风格比较度量170关于样本集328(2)中包括的每个3D位置的不同偏导数的一组向量。
如图所示,在一些实施方案中,风格比较度量170是计算3D CAD对象a和b的Dstyle(a,b)的风格距离度量,并且风格梯度540(1)和风格梯度540(2)可分别表达为以下等式(7a)和(7b):
偏导数引擎520可以任何技术上可行的方式计算风格梯度540(1)和风格梯度540(2)。例如,在一些实施方案中,偏导数引擎520对经训练的3D CAD对象神经网络120(1)执行任何数量和/或类型的反向传播操作和/或基于任何数量和/或类型的相关数据来执行任何数量和/或类型的分析计算。在一些实施方案中,相关数据可包括但不限于风格比较度量170、绝对位置集510(1)、绝对位置集510(1)、风格信号集528、归一化特征映射图集350(1)、归一化特征映射图集350(2)或它们的任何组合。
如虚线所描绘,在一些实施方案中,在偏导数引擎520计算风格梯度(例如,风格梯度540(1)或风格梯度540(2))之后,偏导数引擎520和/或风格比较应用程序180可以任何技术上可行的方式通过风格评估GUI 182显示风格梯度的任何部分,将风格梯度的任何部分存储在任何存储器中,将风格梯度的任何部分传输到任何数量和/或类型的软件应用程序,或它们的任何组合。
如图所示,在一些实施方案中,梯度引擎460分别基于风格梯度540(1)和风格梯度540(2)来计算缩放梯度550(1)和缩放梯度550(2)。缩放梯度550(1)和缩放梯度550(2)意图分别辅助风格梯度540(1)和风格梯度540(2)的可视化。梯度引擎460可以任何技术上可行的方式计算缩放梯度550(1)和缩放梯度550(2)。
如图所示,在一些实施方案中,风格比较度量170是风格距离度量,并且梯度引擎460将缩放梯度550(1)设置为等于-k·Δxyz(c)并将缩放梯度550(2)设置为等于-k·Δxyz(s),其中k是被设计来增加缩放梯度550(1)和缩放梯度550(2)的可视化有效性的常数缩放因子。值得注意的是,在一些实施方案中,包括在缩放梯度550(1)和缩放梯度550(2)中的向量的方向指示可在几何域中移动对应的UV样本点以增加B-rep 502(1)和B-rep 502(2)的几何风格相似性的方向。在相同或其他实施方案中,包括在缩放梯度550(1)和缩放梯度550(2)中的向量的幅度指示B-rep 502(1)与B-rep 502(2)之间的几何风格不相似性的相对幅度。
在一些实施方案中,在偏导数引擎520计算缩放梯度(例如,缩放梯度550(1)或缩放梯度550(2))之后,梯度引擎460和/或风格比较应用程序180可基于缩放梯度的任何部分来生成任何数量和/或类型的可视化,将缩放梯度的任何部分存储在任何存储器中,将缩放梯度的任何部分传输到任何数量和/或类型的软件应用程序,或它们的任何组合。
如图所示,在一些实施方案中,梯度引擎460基于包括在缩放梯度550(1)中的向量中的一个或多个的方向或幅度中的至少一者来生成任何数量和/或类型的图形元素(例如,箭头、线等)。在一些实施方案中,作为对图5所描绘的命令的响应的一部分,梯度引擎460相对于B-rep 502(1)的图形表示将图形元素中的每一个定位在风格评估GUI 182内以生成风格梯度540(1)的可视化。
如图所示,在一些实施方案中,图形元素是黑线,并且梯度引擎460将包括在缩放梯度550(1)中的向量-k·Δxyz(c)定位成以与B-rep 502(1)相关联的UV样本点的绝对位置为中心。因此,在图5所显示的风格评估GUI 182中,从B-rep 502(1)向外指向的黑线示出移动对应点以增加B-rep 502(1)与B-rep502(2)之间的几何风格相似性的方向。
在相同或其他实施方案中,梯度引擎460基于包括在缩放梯度550(2)中的向量中的一个或多个的方向或幅度中的至少一者来生成任何数量和/或类型的图形元素(例如,箭头、线等)。然后,梯度引擎460相对于B-rep 502(2)的图形表示将图形元素中的每一个定位在风格评估GUI 182内以生成风格梯度540(2)的可视化。在一些实施方案中,作为对图5所描绘的命令的响应的一部分,梯度引擎460相对于B-rep 502(2)的图形表示将图形元素中的每一个定位在风格评估GUI 182内以生成风格梯度540(1)的可视化。
如图所示,在一些实施方案中,图形元素是黑线,并且梯度引擎460将包括在缩放梯度550(2)中的向量-k·Δxyz(s)定位成以与B-rep 502(2)相关联的UV样本点的绝对位置为中心。因此,在图5所显示的风格评估GUI 182中,从B-rep 502(2)向外指向的黑线示出移动对应点以增加B-rep 502(2)与B-rep502(1)之间的几何风格相似性的方向。
图6是根据各种实施方案的用于为多对不同的3D CAD对象生成风格比较度量的方法步骤的流程图。尽管参考图1至图5的系统描述了方法步骤,但本领域技术人员将理解,被配置来按任何次序实现方法步骤的任何系统都落在本发明的范围内。
如图所示,方法600在步骤602处开始,在步骤602处,风格学习引擎160选择作为目标风格的正例的一个或多个3D CAD对象和作为目标风格的负例的零个或多个3D CAD对象。在步骤604处,针对每个所选择的3D CAD对象,风格信号提取器210确定输入数据,任选地生成表示输入数据的至少一部分的特征映射图,并执行经训练的3D CAD对象神经网络120(0)以将输入数据映射到多个特征映射图。
在步骤606处,针对每个特征映射图,风格信号提取器210对特征映射图执行一个或多个每面重定中心操作或一个或多个实例归一化操作以生成归一化特征映射图。在步骤608处,风格信号提取器210从每个归一化特征映射图提取不同的风格信号。在步骤610处,针对一对或多对正例中的每一对,主观风格引擎230基于对应的风格信号来计算对应的逐层能量项。在步骤612处,针对零对或多对一个正例和一个负例中的每一对,主观风格引擎230基于对应的风格信号来计算对应的逐层能量项。
在步骤614处,主观风格引擎230基于逐层能量项来确定参数化主观损失250。在步骤616处,优化引擎260对包括在参数化主观损失中的权重执行一个或多个优化操作以确定主观权重270。主观权重270在本文中也称为“权重的值”。在步骤618处,主观风格引擎230基于主观权重270和参数化风格比较度量240来生成风格比较度量170。方法600然后终止。
图7是根据各种实施方案的用于比较不同3D CAD对象的几何风格的方法步骤的流程图。尽管参考图1至图5的系统描述了方法步骤,但本领域技术人员将理解,被配置来按任何次序实现方法步骤的任何系统都落在本发明的范围内。
如图所示,方法700在步骤702处开始,在步骤702处,风格比较应用程序180选择参考3D CAD对象和一个或多个查询3D CAD对象。在步骤704处,针对每个所选择的3D CAD对象,风格信号提取器210确定输入数据,任选地生成表示输入数据的至少一部分的特征映射图,并执行经训练的3D CAD对象神经网络120(1)以将输入数据映射到多个特征映射图。
在步骤706处,针对每个特征映射图,风格信号提取器210对特征映射图执行一个或多个每面重定中心操作或一个或多个实例归一化操作以生成归一化特征映射图。在步骤708处,风格信号提取器210从每个归一化特征映射图提取不同的风格信号。在步骤710处,针对每个查询3D CAD对象,度量计算引擎430基于对应的风格信号、与参考3D CAD对象相对应的风格信号和与经训练的3D CAD对象神经网络120(1)相关联的风格比较度量170来计算度量值。
在步骤712处,比较引擎450任选地基于度量值来执行任何数量和/或类型的评估操作以确定任何数量和/或类型的评估结果。在步骤714处,比较引擎450和/或风格比较应用程序180任选地基于度量值和/或一个或多个评估结果来更新GUI以在视觉上量化参考3DCAD对象与查询3D CAD对象中的一个或多个之间的风格相似性和/或风格差异。方法700然后终止。
图8是根据各种实施方案的用于为一对不同3D CAD对象生成至少一个几何风格梯度的一个或多个可视化的方法步骤的流程图。尽管参考图1至图5的系统描述了方法步骤,但本领域技术人员将理解,被配置来按任何次序实现方法步骤的任何系统都落在本发明的范围内。
如图所示,方法800在步骤802处开始,在步骤802处,梯度引擎460接收命令以计算两个3D CAD对象的风格比较度量170关于至少第一3D CAD对象的一个或多个梯度。在步骤804处,梯度引擎460使用与风格比较度量170相关联的经训练的3D CAD对象神经网络120(1)来生成与第一3D CAD对象的样本相对应的特征映射图集。在步骤806处,梯度引擎460使用与风格比较度量170相关联的经训练的3D CAD对象神经网络120(1)来生成与第二3D CAD对象的样本相对应的特征映射图集。
在步骤808处,针对每个特征映射图,风格信号提取器210对特征映射图执行一个或多个每面重定中心操作或一个或多个实例归一化操作以生成归一化特征映射图。在步骤808处,风格信号提取器210从每个归一化特征映射图提取不同的风格信号。在步骤810处,针对每个查询3D CAD对象,度量计算引擎430基于对应的风格信号、与参考3D CAD对象相对应的风格信号和与经训练的3D CAD对象神经网络120(1)相关联的风格比较度量170来计算度量值。
在步骤812处,针对每个归一化特征映射图,梯度引擎460提取归一化特征映射图的Gram矩阵的归一化平坦上三角以生成对应的风格信号。在步骤814处,梯度引擎460计算风格比较度量170关于第一3D CAD对象的每个无掩模样本的绝对位置的偏导数以生成第一风格梯度。在步骤816处,梯度引擎460任选地计算风格比较度量170关于第二3D CAD对象的每个无掩模样本的绝对位置的偏导数以生成第二风格梯度。在步骤816处,梯度引擎460更新GUI以显示关于第一3D CAD对象的第一风格梯度的可视化并且任选地显示关于第二3DCAD对象的第二风格梯度的可视化。方法800然后终止。
总之,所公开的技术可用于生成个性化风格比较度量,比较多对3D CAD对象的几何风格,并生成风格比较度量关于3D CAD对象的梯度的可视化。在一些实施方案中,训练应用程序基于作为几何风格的正例的至少两个用户选择的B-rep、作为几何风格的负例的零个或用户选择的B-rep以及B-rep编码器来生成风格距离度量。在相同或其他实施方案中,为了降低过拟合风格距离度量的风险,训练应用程序从B-rep训练数据库随机选择几何风格的另外的负例。B-rep编码器使用无监督学习技术进行预训练。为了针对用户生成风格距离度量,训练应用程序基于正例和负例来优化与B-rep编码器相关联的参数化风格距离度量中的权重。主观权重反映与B-rep编码器的不同层相关联的风格信号对用户的相对重要性。每个风格信号都是Gram矩阵的模拟相关联层的特征相关性的归一化平坦上三角。
在一些实施方案中,风格比较应用程序使用风格距离度量和B-rep编码器来计算参考B-rep与任何数量的查询B-rep之间的风格距离。针对B-rep中的每一个,风格比较应用程序使用B-rep编码器来计算包括在风格距离度量中的风格信号。针对每个查询B-rep,风格比较应用程序使用风格距离度量基于参考B-rep和查询B-rep的风格信号来计算参考B-rep与查询B-rep之间的风格距离。风格比较应用程序基于对应的风格距离对查询B-rep执行任何数量和/或类型的过滤、排名、任何其他比较操作或它们的任何组合。风格比较应用程序可通过风格评估GUI在视觉上显示结果。
在相同或其他实施方案中,风格比较应用程序生成两个B-rep之间的风格距离度量关于B-rep的梯度的可视化。针对B-rep中的每一个,风格比较应用程序计算风格距离度量关于B-rep的每个无掩模样本的3D绝对位置的偏导数以生成风格距离度量关于B-rep的梯度。风格比较应用程序将梯度乘以否定的常数缩放因子以生成适合可视化的缩放梯度。通过风格评估GUI,风格比较应用程序将每个缩放梯度的每个向量叠加在相关联B-rep的3D绝对位置处,以指示可移动对应样本点以增加两个B-rep的风格相似性的方向。
所公开的技术相对于现有技术的至少一个技术优势在于所公开的技术实现少样本学习方法以为多对不同的3D CAD对象生成有效的个性化风格比较度量。就此而言,通过所公开的技术,可使用具有相似风格的3D CAD对象的少至两个用户指定示例来学习单个用户所感知的参数化风格比较度量中不同项对几何风格的相对重要性。另外,参数化风格比较度量中的项可从由神经网络生成的数据导出,所述神经网络经过训练以使用无监督技术来处理B-rep,所述无监督技术不需要带标记的训练数据。因此,与现有技术方法不同,所公开的技术可用于比较由B-rep表示的多对不同的3D CAD对象的几何风格,从而相对于现有技术增加几何风格比较的准确性。这些技术优势提供优于现有技术方法的一项或多项技术进步。
1、在一些实施例中,一种用于为多对不同的三维(3D)计算机辅助设计(CAD)对象生成风格比较度量的计算机实现方法,所述方法包括:执行一次或多次的经训练的神经网络以将多个3D CAD对象映射到多个特征映射图;基于所述多个特征映射图来计算多个风格信号;基于所述多个风格信号来确定多个权重的多个值;以及基于所述多个权重和参数化风格比较度量来生成所述风格比较度量。
2.如条款1所述的计算机实现方法,其中包括在所述多个3D CAD对象中的第一3DCAD对象包括目标风格的正例。
3.如条款1或2所述的计算机实现方法,其中包括在所述多个3D CAD对象中的第二3D CAD对象包括所述目标风格的负例。
4.如条款1至3中的任一项所述的计算机实现方法,其还包括:从3D CAD对象的数据集随机选择第一3D CAD对象并将所述第一3D CAD对象包括在所述多个3D CAD对象中;以及将所述第一3D CAD对象指定为目标风格的负例。
5.如条款1至4中的任一项所述的计算机实现方法,其中确定所述多个权重的所述多个值包括:基于所述多个风格信号和所述多个权重来生成参数化损失;以及对所述参数化损失执行一个或多个优化操作以确定所述多个权重的所述多个值。
6.如条款1至5中的任一项所述的计算机实现方法,其中计算所述多个风格信号包括:对包括在所述多个特征映射图中的第一特征映射图执行一个或多个每面重定中心操作以生成第一归一化特征映射图;以及提取所述第一归一化特征映射图的Gram矩阵的至少一部分以生成包括在所述多个风格信号中的第一风格信号。
7.如条款1至6中的任一项所述的计算机实现方法,其中生成所述风格比较度量包括用包括在所述多个值中的第一值替换在所述参数化风格比较度量中指定并包括在所述多个权重中的第一权重。
8.如条款1至7中的任一项所述的计算机实现方法,其中所述经训练的神经网络包括经训练的UV-net编码器,并且其还包括:基于表示包括在所述多个3D CAD对象中的第一3D CAD对象的第一B-rep来生成第一UV-net表示;以及将所述第一UV-net表示输入到所述经训练的UV-net编码器中。
9.如条款1至8中的任一项所述的计算机实现方法,其中包括在所述多个3D CAD对象中的第一3D CAD对象的表示包括边界表示(B-rep)、3D网格或3D点云。
10.如条款1至9中的任一项所述的计算机实现方法,其中所述经训练的神经网络包括经训练的编码器或经训练的分类器。
11.在一些实施例中,一种或多种非暂时性计算机可读介质,其包括指令,所述指令在由一个或多个处理器执行时致使所述一个或多个处理器通过执行以下步骤来为多对不同的三维(3D)计算机辅助设计(CAD)对象生成风格比较度量:执行一次或多次的经训练的神经网络以将多个3D CAD对象映射到多个特征映射图;基于所述多个特征映射图来计算多个风格信号;基于所述多个风格信号来确定多个权重的多个值;以及基于所述多个权重和参数化风格比较度量来生成所述风格比较度量。
12.如条款11所述的一种或多种非暂时性计算机可读介质,其中包括在所述多个3D CAD对象中的第一3D CAD对象包括目标风格的用户指定正例。
13.如条款11或12所述的一种或多种非暂时性计算机可读介质,其中包括在所述多个3D CAD对象中的第二3D CAD对象包括所述目标风格的负例。
14.如条款11至13中的任一项所述的一种或多种非暂时性计算机可读介质,其还包括:从3D CAD对象的数据集随机选择第一3D CAD对象并将所述第一3D CAD对象包括在所述多个3D CAD对象中;以及将所述第一3D CAD对象指定为目标风格的负例。
15.如条款11至14中的任一项所述的一种或多种非暂时性计算机可读介质,其中确定所述多个权重的所述多个值包括:基于所述多个风格信号和所述多个权重来生成参数化损失;以及对所述参数化损失执行一个或多个优化操作以确定所述多个权重的所述多个值。
16.如条款11至15中的任一项所述的一种或多种非暂时性计算机可读介质,其中计算所述多个风格信号包括:对包括在所述多个特征映射图中的第一特征映射图执行一个或多个实例归一化操作以生成第一归一化特征映射图;以及提取所述第一归一化特征映射图的Gram矩阵的至少一部分以生成包括在所述多个风格信号中的第一风格信号。
17.如条款11至16中的任一项所述的一种或多种非暂时性计算机可读介质,其中生成所述风格比较度量包括用包括在所述多个值中的第一值替换在所述参数化风格比较度量中指定并包括在所述多个权重中的第一权重。
18.如条款11至17中的任一项所述的一种或多种非暂时性计算机可读介质,其中所述经训练的神经网络包括经训练的面编码器和经训练的图编码器。
19.如条款11至18中的任一项所述的一种或多种非暂时性计算机可读介质,其中包括在所述多个3D CAD对象中的第一3D CAD对象的表示包括边界表示(B-rep)、3D网格或3D点云。
20.在一些实施例中,一种系统,其包括:一个或多个存储器,所述一个或多个存储器存储指令;以及耦接到所述一个或多个存储器的一个或多个处理器,所述一个或多个处理器在执行所述指令时执行以下步骤:执行一次或多次的经训练的神经网络以将多个3DCAD对象映射到多个特征映射图;基于所述多个特征映射图来计算多个风格信号;基于所述多个风格信号来确定多个权重的多个值;以及基于所述多个权重和参数化风格比较度量来生成风格比较度量。
权利要求中任一项所述的权利要求元素中的任一者和/或本申请所描述的任何元素的以任何方式进行的任何和全部组合落在本发明和保护的设想范围内。
对各种实施方案的描述已经出于说明目的加以呈现,但并不意图是详尽的或限于所公开的实施方案。在不脱离所描述的实施方案的范围和精神的情况下,许多修改和变化对于本领域普通技术人员将是显而易见的。
本发明实施方案的各方面可体现为系统、方法或计算机程序产品。因此,本公开的各方面可采取完全硬件实施方案、完全软件实施方案(包括固件、常驻软件,微代码等)或结合软件方面与硬件方面的实施方案的形式,所述实施方案在本文中通常可全部称为“模块”或“系统”。此外,本公开所述的任何硬件和/或软件技术、过程、功能、组件、引擎、模块或系统可实现为电路或一组电路。此外,本公开的方面可采取体现在一个或多个计算机可读介质中的计算机程序产品的形式,所述一个或多个计算机可读介质具有在其上体现的计算机可读程序代码。
可利用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于电子、磁性、光学、电磁、红外或半导体系统、设备或装置,或前述项的任何合适的组合。计算机可读存储介质的更具体示例(非详尽列表)将包括以下项:具有一个或多个导线的电气连接、便携式计算机软盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪速存储器)、光纤、便携式光盘只读存储器(CD-ROM)、光学存储装置、磁性存储装置或前述项的任何合适组合。在本文档的上下文中,计算机可读存储介质可以是可包含或存储供指令执行系统、设备或装置使用或与其结合使用的程序的任何有形介质。
以上参考根据本公开的实施方案的方法、设备(系统)和计算机程序产品的流程图图解和/或框图描述了本公开的各方面。将理解,可通过计算机程序指令来实现流程图图解和/或框图中的每个框以及流程图图解和/或框图中的框的组合。这些计算机程序指令可提供给通用计算机、专用计算机或其他可编程数据处理设备的处理器以产生一种机器。指令在通过计算机或其他可编程数据处理设备的处理器执行时使得能够实现流程图和/或框图的一个或多个框中指定的功能/动作。此类处理器可以是但不限于通用处理器、专用处理器、应用程序特定的处理器或现场可编程门阵列。
附图中的流程图和框图示出根据本公开的各种实施方案的系统、方法和计算机程序产品的可能的实现方式的架构、功能和操作。就这一点而言,流程图或框图中的每个框可表示包括用于实现一个或多个指定逻辑功能的一个或多个可执行指令的代码的模块、片段或部分。还应注意,在一些替代实现方式中,框中指出的功能可不按附图中指出的次序发生。例如,连续示出的两个框实际上可基本上同时执行,或者所述框有时可按相反的次序执行,这取决于所涉及的功能。还应注意,框图和/或流程图图解中的每个框以及框图和/或流程图图解中的框的组合可由执行指定功能或动作的基于专用硬件的系统或专用硬件与计算机指令的组合来实现。
虽然前述内容涉及本公开的实施方案,但在不脱离本公开的基本范围的情况下可想出本公开的其他和另外的实施方案,并且本公开的范围由下面的权利要求确定。
Claims (20)
1.一种用于为多对不同的三维(3D)计算机辅助设计(CAD)对象生成风格比较度量的计算机实现方法,所述方法包括:
执行一次或多次的经训练的神经网络以将多个3D CAD对象映射到多个特征映射图;
基于所述多个特征映射图来计算多个风格信号;
基于所述多个风格信号来确定多个权重的多个值;以及
基于所述多个权重和参数化风格比较度量来生成所述风格比较度量。
2.如权利要求1所述的计算机实现方法,其中包括在所述多个3D CAD对象中的第一3DCAD对象包括目标风格的正例。
3.如权利要求2所述的计算机实现方法,其中包括在所述多个3D CAD对象中的第二3DCAD对象包括所述目标风格的负例。
4.如权利要求1所述的计算机实现方法,其还包括:
从3D CAD对象的数据集随机选择第一3D CAD对象并将所述第一3D CAD对象包括在所述多个3D CAD对象中;以及
将所述第一3D CAD对象指定为目标风格的负例。
5.如权利要求1所述的计算机实现方法,其中确定所述多个权重的所述多个值包括:
基于所述多个风格信号和所述多个权重来生成参数化损失;以及
对所述参数化损失执行一个或多个优化操作以确定所述多个权重的所述多个值。
6.如权利要求1所述的计算机实现方法,其中计算所述多个风格信号包括:
对包括在所述多个特征映射图中的第一特征映射图执行一个或多个每面重定中心操作以生成第一归一化特征映射图;以及
提取所述第一归一化特征映射图的Gram矩阵的至少一部分以生成包括在所述多个风格信号中的第一风格信号。
7.如权利要求1所述的计算机实现方法,其中生成所述风格比较度量包括用包括在所述多个值中的第一值替换在所述参数化风格比较度量中指定并包括在所述多个权重中的第一权重。
8.如权利要求1所述的计算机实现方法,其中所述经训练的神经网络包括经训练的UV-net编码器,并且其还包括:
基于表示包括在所述多个3D CAD对象中的第一3D CAD对象的第一B-rep来生成第一UV-net表示;以及
将所述第一UV-net表示输入到所述经训练的UV-net编码器中。
9.如权利要求1所述的计算机实现方法,其中包括在所述多个3D CAD对象中的第一3DCAD对象的表示包括边界表示(B-rep)、3D网格或3D点云。
10.如权利要求1所述的计算机实现方法,其中所述经训练的神经网络包括经训练的编码器或经训练的分类器。
11.一种或多种非暂时性计算机可读介质,其包括指令,所述指令在由一个或多个处理器执行时致使所述一个或多个处理器通过执行以下步骤来为多对不同的三维(3D)计算机辅助设计(CAD)对象生成风格比较度量:
执行一次或多次的经训练的神经网络以将多个3D CAD对象映射到多个特征映射图;
基于所述多个特征映射图来计算多个风格信号;
基于所述多个风格信号来确定多个权重的多个值;以及
基于所述多个权重和参数化风格比较度量来生成所述风格比较度量。
12.如权利要求11所述的一种或多种非暂时性计算机可读介质,其中包括在所述多个3D CAD对象中的第一3D CAD对象包括目标风格的用户指定正例。
13.如权利要求12所述的一种或多种非暂时性计算机可读介质,其中包括在所述多个3D CAD对象中的第二3D CAD对象包括所述目标风格的负例。
14.如权利要求11所述的一种或多种非暂时性计算机可读介质,其还包括:
从3D CAD对象的数据集随机选择第一3D CAD对象并将所述第一3D CAD对象包括在所述多个3D CAD对象中;以及
将所述第一3D CAD对象指定为目标风格的负例。
15.如权利要求11所述的一种或多种非暂时性计算机可读介质,其中确定所述多个权重的所述多个值包括:
基于所述多个风格信号和所述多个权重来生成参数化损失;以及
对所述参数化损失执行一个或多个优化操作以确定所述多个权重的所述多个值。
16.如权利要求11所述的一种或多种非暂时性计算机可读介质,其中计算所述多个风格信号包括:
对包括在所述多个特征映射图中的第一特征映射图执行一个或多个实例归一化操作以生成第一归一化特征映射图;以及
提取所述第一归一化特征映射图的Gram矩阵的至少一部分以生成包括在所述多个风格信号中的第一风格信号。
17.如权利要求11所述的一种或多种非暂时性计算机可读介质,其中生成所述风格比较度量包括用包括在所述多个值中的第一值替换在所述参数化风格比较度量中指定并包括在所述多个权重中的第一权重。
18.如权利要求11所述的一种或多种非暂时性计算机可读介质,其中所述经训练的神经网络包括经训练的面编码器和经训练的图编码器。
19.如权利要求1所述的一种或多种非暂时性计算机可读介质,其中包括在所述多个3DCAD对象中的第一3D CAD对象的表示包括边界表示(B-rep)、3D网格或3D点云。
20.一种系统,其包括:
一个或多个存储器,所述一个或多个存储器存储指令;以及
耦接到所述一个或多个存储器的一个或多个处理器,所述一个或多个处理器在执行所述指令时执行以下步骤:
执行一次或多次的经训练的神经网络以将多个3D CAD对象映射到多个特征映射图;
基于所述多个特征映射图来计算多个风格信号;
基于所述多个风格信号来确定多个权重的多个值;以及
基于所述多个权重和参数化风格比较度量来生成风格比较度量。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063113755P | 2020-11-13 | 2020-11-13 | |
US63/113,755 | 2020-11-13 | ||
US17/523,725 US20220156415A1 (en) | 2020-11-13 | 2021-11-10 | Techniques for generating subjective style comparison metrics for b-reps of 3d cad objects |
US17/523,725 | 2021-11-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114494109A true CN114494109A (zh) | 2022-05-13 |
Family
ID=78617303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111369029.3A Pending CN114494109A (zh) | 2020-11-13 | 2021-11-12 | 用于为3d cad对象的b-rep生成主观风格比较度量的技术 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220156415A1 (zh) |
EP (1) | EP4002190A1 (zh) |
CN (1) | CN114494109A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024015400A1 (en) * | 2022-07-12 | 2024-01-18 | Interdigital Vc Holdings, Inc. | Deep distribution-aware point feature extractor for ai-based point cloud compression |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990054793A (ko) * | 1997-12-26 | 1999-07-15 | 정선종 | 3차원 형상 데이터로부터 특징형상을 추출하는 방법 |
EP3507773A1 (en) * | 2016-09-02 | 2019-07-10 | Artomatix Ltd. | Systems and methods for providing convolutional neural network based image synthesis using stable and controllable parametric models, a multiscale synthesis framework and novel network architectures |
US10318889B2 (en) * | 2017-06-26 | 2019-06-11 | Konica Minolta Laboratory U.S.A., Inc. | Targeted data augmentation using neural style transfer |
US20190164055A1 (en) * | 2017-11-29 | 2019-05-30 | Microsoft Technology Licensing, Llc | Training neural networks to detect similar three-dimensional objects using fuzzy identification |
US10467820B2 (en) * | 2018-01-24 | 2019-11-05 | Google Llc | Image style transfer for three-dimensional models |
EP3674983A1 (en) * | 2018-12-29 | 2020-07-01 | Dassault Systèmes | Machine-learning for 3d modeled object inference |
US11620330B2 (en) * | 2020-06-09 | 2023-04-04 | Adobe Inc. | Classifying image styles of images based on image style embeddings |
US11880957B2 (en) * | 2020-09-04 | 2024-01-23 | Adobe Inc. | Few-shot image generation via self-adaptation |
-
2021
- 2021-11-10 US US17/523,725 patent/US20220156415A1/en active Pending
- 2021-11-12 CN CN202111369029.3A patent/CN114494109A/zh active Pending
- 2021-11-12 EP EP21207987.5A patent/EP4002190A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20220156415A1 (en) | 2022-05-19 |
EP4002190A1 (en) | 2022-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11861461B2 (en) | Techniques for generating designs that reflect stylistic preferences | |
Xiao et al. | CAD mesh model segmentation by clustering | |
US20190164055A1 (en) | Training neural networks to detect similar three-dimensional objects using fuzzy identification | |
CN108073682A (zh) | 基于参数视图函数查询数据库 | |
CN111382778A (zh) | 形成用于推测实体cad特征的数据集 | |
De Bie et al. | Stochastic deep networks | |
US20220245510A1 (en) | Multi-dimensional model shape transfer | |
Raffo et al. | Reverse engineering of CAD models via clustering and approximate implicitization | |
CN112823319B (zh) | 用于对异常识别方法进行参数化的方法和辅助系统 | |
EP4071650A2 (en) | Graph alignment techniques for dimensioning drawings automatically | |
CN114494109A (zh) | 用于为3d cad对象的b-rep生成主观风格比较度量的技术 | |
Danglade et al. | A priori evaluation of simulation models preparation processes using artificial intelligence techniques | |
Bergamasco et al. | A graph-based technique for semi-supervised segmentation of 3D surfaces | |
US20220156420A1 (en) | Techniques for generating visualizations of geometric style gradients | |
US11941771B2 (en) | Multi-dimensional model texture transfer | |
KR20150112832A (ko) | 산출 프로그램, 산출 장치 및 산출 방법 | |
Kulczycki et al. | Bayes classification for nonstationary patterns | |
CN115997213A (zh) | 计算机辅助设计(cad)组件的约束的基于机器学习的生成 | |
Mohd et al. | MaxD K-means: A clustering algorithm for Auto-generation of centroids and distance of data points in clusters | |
CN107203916B (zh) | 一种用户信用模型建立方法及装置 | |
CN115146333A (zh) | 用于生成机器学习模型的3D CAD对象的UV-net表示的技术 | |
JP2008533614A (ja) | 整合輪郭プロファイルを生成するシステム及び方法 | |
Takashima et al. | Shape descriptor-based similar feature extraction for finite element meshing | |
Prasad | PRO: A novel approach to precision and reliability optimization based dominant point detection | |
CN114331827B (zh) | 风格迁移方法、装置、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |