融合边界表示与图注意力机制的三维CAD模型分类方法

    专利查询2026-05-11  3


    本发明属于三维cad模型分类技术,尤其涉及一种融合b-rep(boundaryrepresentation,边界表示)与图注意力机制的三维cad模型分类方法。


    背景技术:

    1、随着计算机辅助设计与计算机视觉技术的快速发展,三维cad模型已成为继文本、音频和视频之后的又一种重要信息载体。面对数量庞大的三维cad模型,仅依靠人工进行管理和分析并不现实,故模型自动分类与检索算法应运而生。同时,随着三维cad模型数量的飞速增长,为模型的增量设计提供了丰富素材。

    2、研究表明,在新产品开发过程中,约40%的零件可以直接重用现有设计而无需进行修改,约40%的零件可以在修改现有设计的基础上获得,而仅有约20%的零件需要进行全新设计。这表明大多数的设计工作可重用以前的产品设计知识。因此开发高效的分类和检索算法是研究的重点,不仅有利于提高模型管理的效率,还大大促进了新产品设计过程中已有资源的重用。

    3、目前,三维cad模型分类和检索的主要先进方法集中在处理传感器采集的数据或对其进行后处理和计算得到的数据,如点云、视图、网格和体素等。然而,这些方法往往忽略了实体模型隐含的拓扑信息,仅部分地表示了模型可见的拓扑结构。如何在保留精确拓扑和几何信息的同时,使用通用、统一的三维模型描述符,是一个值得探索的问题。

    4、在cad系统中,b-rep是一种常用的几何建模方法,通过定义实体的边界来描述三维对象。这种方法不仅包含模型的几何形状,还包括模型创建过程中存储的所有拓扑信息。因此,cad格式数据包含更丰富的信息。然而,由于其数据结构的复杂性,很难以原始形式直接输入神经网络。


    技术实现思路

    1、现有三维cad模型分类与检索算法在捕获模型拓扑结构和几何特征方面存在局限性,往往忽略了实体模型隐含的拓扑信息,仅部分地表示了模型可见的拓扑结构。针对以上问题,本发明提供一种融合边界表示与图注意力机制的三维cad模型分类方法。

    2、本发明的一种融合边界表示与图注意力机制的三维cad模型分类方法,包括以下步骤:

    3、步骤s1:基于b-rep的属性图构建。

    4、考虑到数据来源于不同公司、不同cad系统,故采用中性cad文件格式。在众多中性cad格式中,step(standards for the exchange of product model data,产品模型数据交换标准)文件是目前最广泛使用和接受的格式。大多数cad软件都支持导入和导出step文件,从而实现不同系统间的数据互操作。此外,step文件采用精确的b-rep表示,包含几何实体数据、拓扑实体数据和实体几何模型数据。

    5、基于b-rep解析不同cad系统的step文件,将其转换为可学习的统一属性图表示,按照壳-面-环-边-点的层次结构,详细记录构成实体模型相关元素的几何信息以及它们之间的拓扑关系,具体为:

    6、步骤s11:初始化属性图的节点集合v、边集合e和节点属性键集合k,其中k包含type键。

    7、步骤s12:解析三维cad模型step文件的壳集合,获取每个壳的面集合。

    8、步骤s13:解析面集合,对每个面进行以下操作:创建该面非引用参数的属性键并添加到k;将面及其属性键值对添加到v;解析面的环集合。

    9、步骤s14:解析环集合,获取每个环的边集合。

    10、步骤s15:解析边集合,对每条边进行以下操作:创建该边非引用参数的属性键并添加到k;将边及其属性键值对添加到v;将面与边的引用关系添加到e;解析边的顶点集合。

    11、步骤s16:解析顶点集合,对每个顶点进行以下操作:创建该顶点非引用参数的属性键并添加到k;将顶点及其属性键值对添加到v;将边与顶点的引用关系添加到e。

    12、步骤s17:将构建的属性图信息存储为graphml文件;文件定义了属性图的节点、边以及各种属性键。

    13、步骤s2:构建适用的分类图神经网络模型。

    14、构建图注意力池化网络gapnet(graph attention pooling network),采用分层池化架构,通过三个池化模块逐步减小图的规模,提取不同层次的特征表示;每个池化模块包含一个图卷积层和一个图池化层,输出在读出层汇总;通过引入注意力层,实现对三个读出层特征的加权求和;将所得全局特征向量输入到全连接层,全连接层将其映射到预定义的类别空间;神经网络模型具体为:

    15、图卷积层:采用图卷积网络gcn(graph convolutional network)提取属性图特征,实现对属性图的端到端识别。

    16、图池化层:在自注意力图池化sagpool(self-attention graph pooling)的基础上融合注意力机制,全面考虑节点的重要性,既包含节点特征的全局上下文相似度,又结合图卷积对拓扑结构的评估。

    17、读出层:从池化模块中提取并汇总特征表示。

    18、注意力层:对三个读出层输出特征进行加权求和。

    19、全连接层:将全局特征向量映射到预定义的类别空间,预测分类结果。

    20、进一步的,图卷积层中,对于给定的无向图g=(v,e),其中v包含图中所有的n个节点,vi∈v,e代表节点之间的边(vi,vj)∈e;邻接矩阵中的元素为二进制编码或权重实数;度矩阵中dii=∑jaij;节点的特征向量矩阵为其中c为特征向量的维数;图卷积层网络构建具体为:

    21、步骤s211:输入包括图邻接矩阵a和节点特征矩阵h(l)。

    22、步骤s212:在隐藏层,所有节点聚合其邻居节点特征。

    23、步骤s213:通过激活函数得到输出h(l+1)。

    24、该层的特征传播公式如下:

    25、

    26、首先,为了考虑到邻接矩阵a中所有节点自身的特征,将a加上单位矩阵i得到其次,为避免在聚合邻居节点特征时,出现特征向量不断相加导致邻居节点更多的节点特征更大,使用对称归一化拉普拉斯矩阵,即其中w(l)表示当前层的权重矩阵,σ是非线性激活函数,如relu。

    27、进一步的,图池化层中,对sagpool改进,设计一种融合注意力机制的图池化层,图拓扑的生成基于节点的局部结构和特征信息;图池化层网络构建具体为:

    28、步骤s221:通过注意力机制计算节点的特征得分zg,其中

    29、节点的特征向量矩阵表示为第n行hn表示节点n的特征向量;由此计算图的全局上下文c,c通过节点嵌入的加权平均值、添加偏置项,再经过非线性转换得到。

    30、

    31、其中,是可学习的权重矩阵,是可学习的偏置项;使用图中每个节点的特征向量hn与全局上下文c的相似度来表征其注意力分数。

    32、zg=σ(hct)        (3)

    33、其中,σ是sigmoid函数;由于每个节点的注意力分数通过其节点特征向量和全局上下文的内积计算,这样与全局上下文更相似的节点将获得更高的注意力分数。

    34、步骤s222:使用kipf的图卷积公式,计算节点拓扑得分zt,其中

    35、

    36、节点拓扑得分中,是用于计算注意力分数的参数矩阵,其他符号表示与图卷积层相同。

    37、步骤s223:将节点的总分表示为z,其中

    38、z=zg+zt(5)

    39、步骤s224:根据得分排序,保留前k个得分最高的节点组成掩膜。

    40、池化比率k∈(0,1]是一个超参数,它决定要保留的节点数;所保留节点的索引构成池化掩膜。

    41、idx=top-rank(z,kn),zmask=zidx(6)

    42、步骤s225:根据掩膜保留指定节点的特征及这些节点之间的拓扑信息。

    43、根据掩膜索引,从原特征矩阵中抽取相应的特征向量h′,并将这些向量与其对应的注意力系数相乘,得到下一层的特征矩阵。

    44、h′=hidx,:,hout=h′⊙zmask       (7)

    45、在原邻接矩阵中,抽取这些被保留节点之间的邻接关系构成下一层的邻接矩阵。

    46、aout=aidx,idx(8)

    47、进一步的,读出层中,每个池化模块的输出汇总在读出层,读出层的计算过程如下:n表示节点数量,hi表示第i个节点的特征,||表示特征拼接操作。

    48、

    49、进一步的,注意力层中,对三个读出层输出特征进行加权求和,使分类模型能够区分各读出层特征的重要性,从而更关注关键特征;注意力层网络构建具体为:

    50、步骤s241:进行线性变换,统一各读出层的输出特征为并将其拼接为

    51、步骤s242:将hreadouti代入公式(2)计算得到读出层的全局上下文creadout,其中n=3。

    52、步骤s243:将hreadout代入公式(3)计算hreadouti与creadout的相似度分数,其中σ是softmax函数,确保三个读出层注意力分数之和为1;故此得到hreadouti的注意力权重αi。

    53、步骤s244:计算获得整个图的综合描述符hglobal,可以更准确地反映整个图的信息。

    54、

    55、进一步的,全连接层中,将hglobal传递给两个全连接层进一步处理以匹配分类任务指定的类别数;全连接层构建具体为:

    56、步骤s251:第一个全连接层公式如下,其中w1、b1分别是权重矩阵和偏置项。

    57、h1=relu(w1hglobal+b1)      (11)

    58、步骤s252:第二个全连接层公式如下,生成分类分数,其中w2、b2分别是权重矩阵和偏置项。

    59、h2=w2h1+b2(12)

    60、步骤s253:使用log_softmax进行分类,输出最终的预测结果;log是对数函数,exp是指数函数。

    61、

    62、本发明与现有技术相比的有益技术效果为:

    63、针对现有三维cad模型分类算法在捕获模型拓扑结构和几何特征方面的局限性,本发明提出了一种基于属性图的方法。基于b-rep解析三维cad模型的step文件,构建包含模型精确拓扑和几何特征的属性图描述符。基于属性图构建三维cad模型分类的图神经网络。为了提升网络特征的表征能力,改进图池化层,融合注意力机制以在拓扑结构和几何特征两个维度评估节点重要性;同时引入注意力层,用于从读出层中获得全局图表示。实验结果表明,该方法优于基线算法,在traceparts数据集实现100%的准确率,在fabwave数据集实现90.4%的准确率。


    技术特征:

    1.一种融合边界表示与图注意力机制的三维cad模型分类方法,其特征在于,包括以下步骤:

    2.根据权利要求1所述的一种融合边界表示与图注意力机制的三维cad模型分类方法,其特征在于,所述图卷积层中,对于给定的无向图g=(v,e),其中v包含图中所有的n个节点,vi∈v,e代表节点之间的边(vi,vj)∈e;邻接矩阵中的元素为二进制编码或权重实数;度矩阵中dii=∑jaij;节点的特征向量矩阵为其中c为特征向量的维数;图卷积层网络构建具体为:

    3.根据权利要求2所述的一种融合边界表示与图注意力机制的三维cad模型分类方法,其特征在于,所述图池化层中,对sagpool改进,设计一种融合注意力机制的图池化层,图拓扑的生成基于节点的局部结构和特征信息;图池化层网络构建具体为:

    4.根据权利要求3所述的一种融合边界表示与图注意力机制的三维cad模型分类方法,其特征在于,所述读出层中,每个池化模块的输出汇总在读出层,读出层的计算过程如下:n表示节点数量,hi表示第i个节点的特征,||表示特征拼接操作;

    5.根据权利要求4所述的一种融合边界表示与图注意力机制的三维cad模型分类方法,其特征在于,所述注意力层中,对三个读出层输出特征进行加权求和,使分类模型能够区分各读出层特征的重要性,从而更关注关键特征;注意力层网络构建具体为:

    6.根据权利要求5所述的一种融合边界表示与图注意力机制的三维cad模型分类方法,其特征在于,所述全连接层中,将hglobal传递给两个全连接层进一步处理以匹配分类任务指定的类别数;全连接层构建具体为:


    技术总结
    本发明公开了一种融合边界表示与图注意力机制的三维CAD模型分类方法,具体为:首先基于B‑rep解析三维CAD模型的STEP文件,构建包含模型精确拓扑和几何特征的属性图描述符。进一步基于属性图构建三维CAD模型分类的图神经网络。为了提升网络特征的表征能力,改进图池化层,融合注意力机制以在拓扑结构和几何特征两个维度评估节点重要性;同时引入注意力层,用于从读出层中获得全局图表示。本发明优于基线算法,在TraceParts数据集实现100%的准确率,在FabWave数据集实现90.4%的准确率。

    技术研发人员:王淑营,常欣欣,丁国富,黄文培
    受保护的技术使用者:西南交通大学
    技术研发日:
    技术公布日:2024/11/26
    转载请注明原文地址:https://tc.8miu.com/read-35564.html

    最新回复(0)