技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种基于整体式草图的CAD模型生成方法及系统  >  正文

一种基于整体式草图的CAD模型生成方法及系统

  • 国知局
  • 2024-07-31 23:21:11

本发明涉及计算机图形学和计算机辅助设计领域,尤其涉及一种基于整体式草图的cad模型生成方法及系统。

背景技术:

1、计算机辅助设计(cad)是利用计算机来构建和编辑产品模型的过程。在计算机辅助设计的过程中,设计者首先会绘制草图来传达和构建他们的粗略想法,然后将草图分解为cad建模序列,并在商用cad软件上手动执行这些命令。这个过程需要将设计分解为建模步骤的战略知识,还需要使用cad软件时的专业知识。

2、基于草图生成建模(sketch-based modeling,sbm)研究从草图自动生成模型,能够使用户的设计理念快速成型。基于草图自动生成cad模型有助于降低新手的软件学习成本和对模型生成步骤的理解和分割要求,有利于cad软件的日常化和在非专业用户群体的推广。有一些算法实现了从单张草图或者线框图自动生成模型的任务,但是这些方法往往仅能生成不可编辑的模型(sketch2mesh,sketch2model),或者可编辑的但仅限于拉伸操作形状简单的模型(sketch2cad,free2cad)。

3、因此,针对这种情况,我们提出了一种新颖的基于整体式草图的cad模型生成系统,用于生成更复杂、语义化和可编辑的cad模型。我们的系统不需要用户进行额外的标注操作,并且生成的模型支持后续编辑。它们还可以直接在商业软件中进行查看和编辑。

技术实现思路

1、本发明设计提出了一种整体式草图的cad模型生成系统,旨在解决现有草图生成建模方法只能生成简单的参数化模型,并且建模序列依赖用户草绘输入顺序,从而使没有三维建模软件使用经验的用户也能使用草绘快捷重建模型,并对模型进行后续编辑修改。

2、本发明的目的是通过以下技术方案来实现的:

3、一种基于整体式草图的cad模型生成方法,该方法包括以下步骤:

4、(1)接收来自用户的一系列笔画输入,并单独保存笔画,同时为每个笔画提取几何类别以及几何信息,并建立笔画之间的拓扑关系;

5、(2)利用多分支的图注意力网络处理基于建模特征的cad草图分割;使用笔画嵌入对笔画几何信息进行编码,并根据基于建模特征构成图节点特征以及计算拓扑关系,建立图的邻接关系;其不同的分支代表不同的笔画距离关系,允许每个节点跨越不同的拓扑距离进行通信,并融合来自不同感受野的笔画特征;

6、(3)根据计算的拓扑关系将笔画分组为相连的形状,并基于步骤(2)cad草图分割的分割结果对每个形状进行重建,得到cad模型;所述重建具体为:首先建立基础拉伸形状,并应用修改特征,即切割、圆角和倒角;同时将生成的cad模型投影为线框图并且与输入草图比较从而优化序列参数。

7、进一步地,所述步骤(1)具体为:对于每一个输入笔画提取几何信息,包括笔画的起始点和末尾点,并对笔画进行采样,并使用几何类别判别算法区分直线和曲线;对每一个笔画生成一个包围框,并计算包围框的尺寸和对角线角度,以描述不同类别笔画的尺度信息和倾斜信息,从而获取不同笔画间的相似性和平行性特征;在获取笔画的几何类别之后,计算每个笔画间的拓扑连接关系,计算笔画的端点和其余笔画采样点之间的距离,如果最小距离小于阈值,则笔画间存在相连关系。

8、进一步地,所述步骤(2)具体为:采用了多分支的图注意力网络,即将从草图中识别特征视为一个图节点分类,将草图作为输入,并预测每一条边对应的建模操作类别;所述多分支的图注意力网络的网络框架具体为:

9、(3.1)使用了笔画的几何特征作为输入,并设计了笔画编码器;

10、(3.2)使用笔画的几何特征构成图的节点,基于笔画之间的拓扑关系构件图节点之间的邻接关系;

11、(3.3)基于节点之间不同的拓扑关系,构建了多分支的网络框架,使得节点能够获取不同感受野的信息。

12、进一步地,所述步骤(3.2)中,使用笔画的几何特征构成图的节点,基于笔画之间的拓扑关系构件图节点之间的邻接关系;其构建方法如下:

13、(4.1)首先将获取的每条边的几何特征,作为每个节点的基本输入信息,包括:每个笔画的采样点坐标(xi,yi),每个笔画采样点个数相同;起点和终点坐标;笔画的几何类型,被编码为一个独热向量type;包围框的对角线倾斜角度α、对角线长度l,以及包围框的大小w、h,如下表达式所示:

14、fi=[{(x,y)n=1,2,...,10},(x,y)1,(x,y)10,type,α,l,w,h]

15、(4.2)初始的节点信息通过包含多层感知器机mlp的笔画编码单元es编码为fi,所有顶点特征被堆叠为fi0∈rn*8,其中n表示编码块的嵌入维度,8表示输入特征的数量,根据步骤(4.1),每个顶点有8个初始输入信息;每个顶点的输入特征如下表达式所示:

16、fi0=concat(es(fi))。

17、进一步地,所述步骤(3.3)中基于节点之间不同的拓扑关系,构建了多分支的网络框架,所述多分支的网络框架该网络框架由三分支构成,并且每个分支将进行如下的操作:

18、(5.1)得到顶点特征vi后,初始节点特征首先输入一个图注意力模块gat头,并通过与之连接的顶点特征并增强其特征;后续输入一个resgat主干,用于更新顶点特征,其由3个残差连接的图注意力单元组成,每个单元使用残差连接来增强稳定性;

19、(5.2)第l层的图为gl=(vl,el,fl),其中,vl为图的节点特征,el为图的边,为图第l层的每个节点特征构成的集合;每个gat模块对图进行节点特征更新,即某节点的下一层节点特征根据注意力权重聚合了该节点临近的节点特征,并使用了残差连接:

20、

21、其中σ为非线性激活函数;fil代表了上一层的节点特征,fil+1代表下一层更新后的节点特征,wv为一个可学习的线性变换矩阵,αij为节点i和节点j之间的注意力权重,计算表达式如下:

22、

23、wq为一个可学习的线性变换矩阵,为注意力机制,用于计算临近节点j对于节点i的重要性,softmax操作用于归一化不同临近节点的系数;在单条分支内部,每个节点的特征会经过gat计算更新,每个分支的输出为每个gat模块节点特征输出的叠加,表达式如下:

24、fbranch=concat(fhead,f1,f2,f3)

25、其中为fbranch为单分支最后输出的融合多阶段的节点特征;fhead为gat头输出的节点特征;f1、f2和f3分别为每个gat块输出的节点特征。

26、进一步地,所述步骤(2)的cad草图分割为多分支的网络框架设计,每个分支针对节点提取与其不同距离的节点特征,并用其更新节点的特征;基本分支专注于直接相连的笔画节点之间的特征更新,与节点拓扑距离为2的笔画特征作为另一分支的输入;对与节点不直接相连的全局笔画特征进行编码,并通过全局分支进行融合;多分支的网络的最终输出如下,融合了来自不同拓扑距离的节点特征:

27、f=concat(fd1,fd2,fglobal)

28、其中,f为三分支的融合特征,fd1为基本分支的输出特征,fd2为专注于拓扑距离为2的分支的输出特征,fglobal为全局分支的输出特征;

29、融合特征f将被输入一个多层的mlp块,并输出每条边对应的建模类别结果y:

30、y=softmax(mlp(f));

31、分割的损失使用交叉熵crossentropy计算,其中ygt为建模类别的真值:

32、losssegmentation=crossentropy(y,ygt)。

33、进一步地,所述步骤(3)具体为:在获得每个草图笔画表示的建模操作类别后,需要根据分割结果重建cad模型;即将cad模型抽象为参数化的cad建模操作序列,设计一个由多个cad子模块组成的cad程序生成方法,该方法能生成准确的建模参数、建模参考和可行的序列顺序;重建cad模型的操作序列流程如下:

34、(7.1)为每个步骤构建建模操作提出了四种cad建模函数,具体为:

35、(7.1.1)拉伸,其变量包括参考平面、拉伸草图和拉伸长度;

36、(7.1.2)切除,其变量包括参考平面、剪切草图和剪切深度;

37、(7.1.3)圆角,其变量包括参考边和圆角半径;

38、(7.1.4)倒角,其变量包括参考边和倒角距离;

39、根据建立的笔画连接关系来确定构成封闭完整的体的笔画,再根据分组结果和建模操作的分割结果对笔画分组进行分析;对于只包含拉伸或切除操作而不包含圆角或倒角特征的笔画分组,基于草图分割结果直接计算包含草图信息和二维拉伸长度及方向的粗略建模操作;若笔画分组包含圆角、倒角或剪切及其他修改特征,则需要首先删除修改特征的笔画,然后补全不完整的草图;获取基体后,再提取二维的草图和深度信息;

40、(7.2)根据每个笔画分组提取约束条件,计算出可行的建模序列顺序;笔画分组之间的距离关系通过计算其自身轮廓形成的面积和各笔画组之间相交面积的比例来确定;对于轮廓不相交的组,由于形状不接触,因此它们的建模顺序不相邻;对于每一组,覆盖率最高的另一组代表与其存在相邻的建模序列;对于切割体,需要确定被执行剪切操作的拉伸体,计算与切割体重叠率最高的拉伸体,按照方法生成约束,能够搜索计算出建模序列顺序;

41、(7.3)渐进式执行cad序列,即在获得粗略的cad子模块和建模顺序后,cad子模块将按照顺序依次执行;对cad模块中存储的二维信息;借助背景模型,即已生成的模型,将其投影到三维空间;提取背景模型每个面的法向量,并根据相机参数计算二维投影,投影向量将与该建模操作拉伸/切割方向向量进行比较,以确定每个拉伸/切割操作的潜在参考平面;同时利用轮廓草图轮廓的二维坐标进行射线拾取,计算其与已有模型的交点,以辅助参考平面的选择;确定参考平面后,计算二维拉伸/切割草图与参考平面的交点,生成参数化的草图;对于圆角和倒角,将计算其特征边线与上下文模型的交点以找到参考边;

42、(7.4)根据输入的草图对生成的cad建模序列进行监督和优化;当输入的草图可能包含多个建模操作步骤时,首先执行若干个潜在cad序列,生成对应的cad模型,并将这些模型渲染为线框图sgen;计算sgen与当前已经执行建模操作的草图sinput之间的二维倒角距离,其表达式如下:

43、

44、选择具有最小二维倒角距离的建模操作序列,并在建模过程中,基于粒子群优化算法以二维倒角距离为目标函数优化cad模型的几何参数,即圆角半径和倒角距离。

45、本发明还提出一种基于整体式草图的cad模型生成系统,该系统包括以下模块:

46、草图笔画预处理模块:接收来自用户的一系列笔画输入,并单独保存笔画,同时为每个笔画提取几何类别以及几何信息,并建立笔画之间的拓扑关系;

47、基于建模特征的草图分割模块:利用多分支的图注意力网络处理基于建模特征的cad草图分割;使用笔画嵌入对笔画几何信息进行编码,并根据基于建模特征构成图节点特征以及计算拓扑关系,建立图的邻接关系;其不同的分支代表不同的笔画距离关系,允许每个节点跨越不同的拓扑距离进行通信,并融合来自不同感受野的笔画特征;

48、参数化模型序列生成模块:根据计算的拓扑关系将笔画分组为相连的形状,并基于建模特征的草图分割模块草图分割的分割结果对每个形状进行重建,得到cad模型;所述重建具体为:首先建立基础拉伸形状,并应用修改特征,即切割,圆角和倒角;同时将生成的cad模型投影为线框图并且与输入草图比较从而优化序列参数。

49、本发明还提供了一种电子设备,包括:

50、一个或多个处理器;

51、存储器,用于存储一个或多个程序;

52、当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现所述基于整体式草图的cad模型生成的方法。

53、以及一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现所述基于整体式草图的cad模型生成方法的步骤。本发明的有益效果如下:

54、本发明不仅生成可编辑的参数化cad模型,且能够从单张手绘草图或线框图中提取更多样的建模操作特征,生成的形状富有多样性,并且不需要基于用户输入序列来生成建模操作序列。此外,本发明可使用户对生成的模型使用草图进行方便快捷的交互式修改和编辑。

本文地址:https://www.jishuxx.com/zhuanli/20240730/197152.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。