1.本公开涉及图形文件处理技术领域,尤其涉及一种图形文件的特征区域识别方法、装置、设备及介质。
背景技术:
2.随着计算机技术的不断提高,计算图形学得到了飞速发展,同时催生了计算机辅助设计(computer aided design,cad)这门学科。目前,cad作为计算机辅助工程(computer aided engineering,cae)的前端开发工具,已广泛应用于机械制造、建筑、航空航天等多个领域。
3.在cad中,常见的三维模型格式包括立体光刻和初始图形交换规范(initial graphics exchange specification,iges)等格式。其中,三角面片模型(stereolithographic,stl)文件凭借格式简单、通用性强、易于读写等优点,广泛应用于3d打印、快速成型、网格生成等领域。stl文件由多个独立的三角面片单元组成,每个三角面片单元包含的几何信息有法向矢量以及三个顶点坐标。在工程实际中,stl文件中的三角形单元的网格质量往往比较差,存在许多长宽比极大和相邻面积相差很大的单元,导致无法直接应用于cae(计算机辅助工程,computer aided engineering)。
技术实现要素:
4.第一方面,本公开提供一种图形文件的特征区域识别方法,所述图形文件为三角面片模型文件,所述方法包括:
5.获取图形文件中各个三角面片的几何信息,所述图形文件中包括多个相互连接的三角面片,所述几何信息包括三个顶点的顶点坐标;
6.基于所述顶点坐标对各个三角面片的顶点进行编号,得到各个三角面片对应的三个顶点编号,相同的顶点坐标对应相同的顶点编号;
7.基于所述各个三角面片对应的三个顶点编号确定各个三角面片与相邻三角面片的共有边以及所述图形文件的第一特征边;
8.将不符合预设要求的所述共有边标识为第二特征边;
9.基于所述第一特征边和所述第二特征边确定各个三角面片所属的特征区域,所述特征区域为多条第一特征边和/或多条第二特征边首尾相连形成的封闭图形。
10.进一步地,所述基于所述各个三角面片对应的三个顶点编号确定各个三角面片与相邻三角面片的共有边以及所述图形文件的第一特征边,包括:
11.基于所述各个三角面片对应的三个顶点编号对各个三角面片的边进行编号,得到各个三角面片的三条边对应边编号;
12.当相同的边编号对应有不同的三角面片时,所述边编号对应的边为所述共有边;
13.当所述边编号不对应有不同的三角面片时,所述边编号对应的边为所述第一特征边。
14.进一步地,所述几何信息包括还包括三角面片的法矢量,所述将不符合预设要求的所述共有边作为第二特征边,包括:
15.基于所述共有边确定所在相邻三角面片的面积比和二面角以及各自的长宽比,其中,所述三角面片的面积和所述长宽比是根据对应三角面片的顶点坐标确定的,所述二面角是根据所述相邻三角面片各自对应的法矢量确定的;
16.当所述面积比大于预设面积比阈值、所述相邻三角面片的长宽比中的一个或两个均不大于预设长宽比阈值,且所述二面角大于预设第一角度阈值时,则确定所述共有边不符合预设要求,将所述共有边标识为所述第二特征边。
17.进一步地,所述方法还包括:
18.当所述相邻三角面片的长宽比中的一个长宽比大于预设长宽比阈值、所述共有边为所在三角面片中最短的边,且所述二面角大于预设第一角度阈值时,则确定所述共有边不符合预设要求,将所述共有边标识为所述第二特征边。
19.进一步地,所述方法还包括:
20.当所述相邻三角面片中的一个三角面片的面积与全部三角面片的面积的比值大于预设比例阈值,且所述二面角大于预设第一角度阈值时,则确定所述共有边不符合预设要求,将所述共有边标识为所述第二特征边。
21.进一步地,所述方法还包括:
22.当所述二面角大于预设第二角度阈值时,则确定所述共有边不符合预设要求,将所述共有边标识为所述第二特征边。
23.进一步地,所述基于所述第一特征边和所述第二特征边确定各个三角面片所属的特征区域,所述特征区域为多条第一特征边和/或多条第二特征边首尾相连形成的封闭图形,包括:
24.在指定特征区域中选取目标面片;
25.判断所述目标面片是否对应有区域标识编号;
26.若所述目标面片没有对应有区域标识编号,则为所述目标面片添加区域标识编号;
27.分别判断所述目标面片的三条边是否为所述第一特征边或所述第二特征边;
28.当所述目标面片的边为所述第一特征边或所述第二特征边时,记录所述第一特征边或所述第二特征边的数量;
29.为所述目标面片的三条边中不是所述第一特征边或所述第二特征边的相邻三角面片添加所述区域标识编号,并以所述目标面片相邻的三角面片作为所述目标面片;
30.重复执行:分别判断所述目标面片的其余两条边是否为所述第一特征边或所述第二特征边;当所述目标面片的边为所述第一特征边或所述第二特征边时,记录所述第一特征边或所述第二特征边的数量;为所述目标面片的其余两条边中不是所述第一特征边或所述第二特征边的相邻三角面片添加所述区域标识编号,直至所述目标面片的边为所述第一特征边和所述第二特征边的数量与指定特征区域中的所述第一特征边和所述第二特征边的数量均相同。
31.另一方面,本公开提供一种图形文件的特征区域识别装置,所述图形文件为三角面片模型文件,所述装置包括:
32.信息获取模块,用于获取图形文件中各个三角面片的几何信息,所述图形文件中包括多个相互连接的三角面片,所述几何信息包括三个顶点的顶点坐标;
33.编号模块,用于基于所述顶点坐标对各个三角面片的顶点进行编号,得到各个三角面片对应的三个顶点编号,相同的顶点坐标对应相同的顶点编号;
34.边确定模块,用于基于所述各个三角面片对应的三个顶点编号确定各个三角面片与相邻三角面片的共有边以及所述图形文件的第一特征边;
35.第二特征边标识模块,用于将不符合预设要求的所述共有边标识为第二特征边;
36.特征区域识别模块,用于基于所述第一特征边和所述第二特征边确定各个三角面片所属的特征区域,所述特征区域为多条第一特征边和/或多条第二特征边首尾相连形成的封闭图形。
37.另一方面,本公开提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现如上述所述图形文件的特征区域识别方法。
38.另一方面,本公开提供一种电子设备,包括至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如上述所述图形文件的特征区域识别方法。
39.本公开的实施例提供的技术方案至少带来以下有益效果:
40.本说明书实施例提供的图形文件的特征区域识别方法、装置、设备及介质,通过重构stl文件的几何拓扑,建立了点、边、单元之间的对应关系,不仅有利于提高特征区域识别的精度和效率,更方便对stl文件进行处理和二次开发。并且在识别特征区域时,不需要计算曲面在顶点处的曲率,极大地节省了计算量,提升了计算效率。
41.本公开通过二面角对特征区域识别的影响以及三角面片单元长宽比以及面积比等参数对特征区域识别的影响,极大地提高了特征区域识别的准确率。此外,本公开无需对stl文件中的基本形状进行分类,通过以点、边、单元为对象进行特征区域识别,减少了stl文件识别步骤,并且能够适应各种复杂形状的stl文件,扩大stl文件特征区域识别的应用范围。
42.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
43.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
44.图1是根据一示例性实施例示出的一种应用环境的示意图;
45.图2是根据一示例性实施例示出的一种图形文件的特征区域识别方法的流程图;
46.图3是根据一示例性实施例示出的另一种图形文件的特征区域识别方法的流程图;
47.图4是根据一示例性实施例示出的一种图形文件的特征区域识别装置框图;
48.图5是根据一示例性实施例示出的一种用于图形文件的特征区域识别的电子设备
的框图。
具体实施方式
49.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
50.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
51.请参阅图1,图1是根据一示例性实施例示出的一种应用环境的示意图,该应用环境可以包括终端110、服务器120,该终端110和服务器120之间可以通过有线网络或者无线网络连接。
52.终端110包括智能手机、台式电脑、平板电脑、笔记本电脑、数字助理、智能可穿戴设备等类型的实体设备,也可以包括运行于实体设备中的软件,如应用程序(application,简称为app),该应用程序可以是专门提供用于读取stl文件的应用程序,也可以是具有读取stl文件的其他应用程序,例如cad等。本技术实施例中实体设备上运行的操作系统可以包括但不限于安卓系统、ios系统、linux、unix、windows等。终端110可以包括ui(user interface)层,终端110通过ui层对外提供stl文件的输入及显示,另外,基于api(application programming interface,应用程序接口)将相应的信息发送给服务器120。
53.服务器120可以是为终端110中的应用程序提供后台服务的服务器,具体的,服务器120提供的服务可以是特征区域的识别。服务器120可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。
54.第一方面,本公开提供一种图形文件的特征区域识别方法,图2是根据一示例性实施例示出的一种图形文件的特征区域识别方法的流程图,如图2所示,该方法可以应用于上述终端或服务器中,本公开主要处理的图形文件可以是三角面片模型文件(stl文件)所述方法可以包括以下步骤:
55.在步骤s201中,获取图形文件中各个三角面片的几何信息,所述图形文件中包括多个相互连接的三角面片,所述几何信息包括三个顶点的顶点坐标。
56.具体的,stl文件具有格式简单,只能描述三维物体的几何信息,不支持颜色材质等信息的特点,是计算机图形学处理cg,数字几何处理如cad,数字几何工业应用,如三维打印机支持的最常见文件格式。
57.具体的,二进制stl文件用固定的字节数来给出三角面片的几何信息。如,文件起始的80个字节是文件头,用于存贮文件名;紧接着用4个字节的整数来描述模型的三角面片个数,后面逐个给出每个三角面片的几何信息。每个三角面片占用固定的50个字节如,b0~b49,依次是:3个4字节浮点数b0~b11用于表示角面片的法矢量、3个4字节浮点数b12~b23
用于表示1个顶点的坐标、3个4字节浮点数b24~b35用于表示2个顶点的坐标、3个4字节浮点数b36~b47用于表示3个顶点的坐标、三角面片的最后2个字节b48、b49用来描述三角面片的属性信息。一个完整二进制stl文件的大小为三角面片数乘以50再加上84个字节。
58.在终端或服务器获取到stl文件后,可以读取出stl文件中各个三角面片的几何信息,该几何信息可以包括三角面片的法矢量以及三个顶点的顶点坐标。
59.可以理解的是,图形文件即stl文件中可以包括多个相互连接的三角面片,即该图形文件可以是一个单独的器件模型,如车辆模型等。
60.在步骤s203中,基于所述顶点坐标对各个三角面片的顶点进行编号,得到各个三角面片对应的三个顶点编号,相同的顶点坐标对应相同的顶点编号;
61.具体的,图形文件中各个三角面片是相互连接的,即相邻的三角面片具备两个相同的顶点坐标。
62.在实际应用中,可以按照顶点坐标对各个三角面片的顶点进行编号,即相同的顶点坐标对应相同的顶点编号。如三角面片a的三个顶点坐标分别为a1、a2和a3,三角面片b的三个顶点坐标分别为a1、a2和b1,则可以确定出,三角面片a和三角面片b相邻。在对各个顶点进行编号时,可以任意选取一个顶点作为初始编号,之后的编号可以采用累加的方式确定,如初始编号为1,则之后的编号为2....n,n为大于2的正整数。编号时,相邻的三角面片可以设置有相同的顶点编号。如三角面片a的三个顶点编号分别为1、2和3,三角面片b的三个顶点坐标分别为1、2和4,以此类推,直至全部顶点坐标编号完成。即可得到各个三角面片对应的三个顶点编号。
63.本说明书实施例通过各个顶点坐标比对的方式,对各个顶点进行编号,以构建出三角面片与顶点之间的拓扑关系,以便于查找相邻的三角面片。
64.在一个可选的实施例中,可以按照编号的大小顺序对各个顶点进行排序,可以建立三角面片与重新排序后的顶点之间的关系。
65.在步骤s205中,基于所述各个三角面片对应的三个顶点编号确定各个三角面片与相邻三角面片的共有边以及所述图形文件的第一特征边。
66.具体的,相邻的三角面片对应有相同的两个顶点编号,通过查找顶点编号的方式即可确定出各个三角面片与相邻三角面片的共有边以及图形文件的第一特征边。
67.在一个可选的实施例中,图3是根据一示例性实施例示出的另一种图形文件的特征区域识别方法的流程图,如图3所示,基于所述各个三角面片对应的三个顶点编号确定各个三角面片与相邻三角面片的共有边以及所述图形文件的第一特征边,包括:
68.在步骤301中,基于所述各个三角面片对应的三个顶点编号对各个三角面片的边进行编号,得到各个三角面片的三条边对应边编号。
69.具体的,可以选定任意三角面片作为当前三角面片,并将当前三角面片的三条边分别记为1号、2号、3号边;之后选取相邻的三角面片,对比当前三角面片中每一条边的两个端点的编号是否与已存在编号的边的端点编号相同,若相同则忽略,若不同则新增一个边编号,并记录这条边两个端点的编号,并以相邻的三角面片作为当前三角面片,重复执行:对比当前三角面片中每一条边的两个端点的编号是否与已存在编号的边的端点编号相同,若相同则忽略,若不同则新增一个边编号,并记录这条边两个端点的编号,直至所有三角面片的三条边均编号完成。
70.在步骤303中,当相同的边编号对应有不同的三角面片时,所述边编号对应的边为所述共有边;
71.在步骤305中,当所述边编号不对应有不同的三角面片时,所述边编号对应的边为所述第一特征边。
72.其中,共有边为不同的三角面片对应有相同的两个顶点编号和/或相同的边编号。如三角面片a和三角面片b的共有边为顶点a1和顶点a2的连线。
73.第一特征边可以理解为图形文件的边界,即第一特征边所在的三角面片的没有与之共有第一特征边的三角面片,也即边的右侧单元为空。可以理解的是,第一特征边对应的顶点编号不在不同的三角面片中存在。如三角面片c对应的顶点编号为5、6、7,边编号5a,5a表示5和6的连线、6a表示5和7的连线、7a表示6和7的连线,而其他三角面片均不存在5和6、或不存在5a,则可以确定顶点5和6的连线5a为第一特征边。
74.在步骤s207中,将不符合预设要求的所述共有边标识为第二特征边。
75.具体的,预设要求可以是预先设定的。
76.在一个可选的实施例中,所述将不符合预设要求的所述共有边标识为第二特征边,包括:
77.基于所述共有边确定所在相邻三角面片的面积比和二面角以及各自的长宽比。
78.具体的,每个三角面片的面积可以根据三角面片的顶点坐标计算出。其中面积比可以包括两个,即三角面片a与三角面片b的比值,以及三角面片b与三角面片a的比值。本说明书实施例采用面积大的三角面片与面积小的三角面片进行比对得到。
79.长宽比可以理解为三条边的边长与高的比值的最大值。可以理解的是,上述边长与高的乘积为该三角面片的面积。
80.其中,法矢量指的是三角面片指向实体外部的法矢量坐标。通过相邻三角面片各自对应的法矢量即可确定出二面角确定的。
81.之后可以依次对上述面积比与预设的面积比阈值进行比对、将长宽比与预设的长宽比阈值进行比对,将二面角与预设的角度阈值进行比对。
82.当所述面积比大于预设面积比阈值、所述相邻三角面片的长宽比中的一个或两个均不大于预设长宽比阈值,且所述二面角大于预设第一角度阈值时,则确定所述共有边不符合预设要求,将所述共有边标识为所述第二特征边。
83.具体的,预设面积比阈值、预设长宽比阈值和预设第一角度阈值在本说明书实施例中不做具体限定,可以根据实际需要进行设置,如预设面积比阈值可以设置为5,预设长宽比阈值可以设置为5,预设第一角度阈值可以设置为0.001
°
。
84.具体的,面积比用于表征相邻三角面片中存在面积较大的三角面片,在stl文件中,如面积比较大,则可以确定该共有边为第二特征边,本公开为了更好的确定第二特征边,进一步对长宽比以及二面角进行限定,避免识别出的第二特征边不准确。
85.在一个可选的实施例中,所述方法还包括:当所述相邻三角面片的长宽比中的一个长宽比大于预设长宽比阈值、共有边为所在三角面片中最短的边,且所述二面角大于预设第一角度阈值时,则确定共有边不符合预设要求,将所述共有边标识为所述第二特征边。
86.具体的,相邻三角面片的长宽比中的一个长宽比大于预设长宽比阈值,表征长宽比大的三角面片的面积相对较大。在stl文件中,三角面片面积越小其生成的表面分辨率越
高,在一个stl文件中各个三角面片的面积均较小,当出现一个三角面片的长宽比大于预设长宽比阈值,共有边为三角面片中最短的边,且二面角大于预设第一角度阈值时,则可以确定共有边不符合预设要求,将共有边标识为第二特征边。
87.在一个可选的实施例中,所述方法还包括:
88.当所述相邻三角面片中的一个三角面片的面积与全部三角面片的面积的比值大于预设比例阈值,且所述二面角大于预设第一角度阈值时,则确定所述共有边不符合预设要求,将所述共有边标识为所述第二特征边。
89.具体的,预设比例阈值可以根据实际需要进行设置,如预设比例阈值可以设置为10%,即当三角面片的面积大于全部三角面片的面积的10%,且所述二面角大于预设第一角度阈值时,即可将共有边标识为第二特征边。
90.在一个可选的实施例中,所述方法还包括:
91.当所述二面角大于预设第二角度阈值时,则确定所述共有边不符合预设要求,将所述共有边标识为所述第二特征边。
92.具体的,预设第二角度阈值用于表征相邻三角面片的角度偏移量的标准值,该预设第二角度阈值在本说明书实施例中不做具体限定,可以根据实际需要进行设置,如设置为30
°
。即二面角超过30
°
则可以确定对应的共有边为第二特征边。
93.可以理解的是,二面角的角度过大说明相邻三角面片不在同一个平面中,其存在弯折。通过二面角与预设第二角度阈值比对的方式可以确定出相邻三角面片是否共面,当相邻三角面片不共面时,即可确定出该共有边为第二特征边。
94.在一个具体的实施例中,可以依次判定共有边两侧的相邻三角面片的面积比、长宽比以及二面角,当共有边的左右单元面积比超过一定的预设面积比阈值,则判定该共有边为第二特征边;当边的左右单元的长宽比均超过一定的预设长宽比阈值,则判定该条边不是第二特征边;当共有边的左右单元中有一个三角面片的长宽比超过一定的预设长宽比阈值,且该共有边为三条边中最短的那条,则判定该条边为第二特征边;当共有边的左右单元中有一个三角形面片单元的面积与全部三角面片的面积的比值大于预设比例阈值,则判定该条边为第二特征边;当共有边的左右单元之间的二面角超过预设第二角度阈值,则判定该条边为第二特征边;当共有边的左右单元之间的二面角小于预设第一角度阈值,则判定该共有边不是第二特征边,可以理解的是,上述判定是针对一条共有边依次判定的,即在全部判定完成才能够确定共有边是否为第二特征边。
95.本说明书实施例通过面积比、二面角以及长宽比依次判定,避免单一评判造成识别出的第二特征边不准确,提高第二特征边识别的准确性,同时扩大stl文件特征边识别的适应场景。
96.在步骤s209中,基于所述第一特征边和所述第二特征边确定各个三角面片所属的特征区域,所述特征区域为多条第一特征边和/或多条第二特征边首尾相连形成的封闭图形。
97.具体的,特征区域用于表征该区域与其他区域不同,即特征区域用于表征该区域中各个三角面片是相同或相关的,其中,特征区域可以是平面或曲面。每个特征区域均是通过多条第一特征边和/或多条第二特征边首尾相连形成的封闭图形。即第一特征边或多条第二特征边是特征区域的边界,特征区域内部不会存在第一特征边或多条第二特征边。识
别出特征区域的三角面片模型文件,可以应用于计算机辅助工程,例如cae中。
98.在一个可选的实施例中,所述基于所述第一特征边和所述第二特征边确定各个三角面片所属的特征区域,所述特征区域为多条第一特征边和/或多条第二特征边首尾相连形成的封闭图形,包括:
99.在指定特征区域中选取目标面片;
100.判断所述目标面片是否对应有区域标识编号;
101.若所述目标面片没有对应有区域标识编号,则为所述目标面片添加区域标识编号;
102.分别判断所述目标面片的三条边是否为所述第一特征边或所述第二特征边;
103.当所述目标面片的边为所述第一特征边或所述第二特征边时,记录所述第一特征边或所述第二特征边的数量;
104.为所述目标面片的三条边中不是所述第一特征边或所述第二特征边的相邻三角面片添加所述区域标识编号,并以所述目标面片相邻的三角面片作为所述目标面片;
105.重复执行:分别判断所述目标面片的其余两条边是否为所述第一特征边或所述第二特征边;当所述目标面片的边为所述第一特征边或所述第二特征边时,记录所述第一特征边或所述第二特征边的数量;为所述目标面片的其余两条边中不是所述第一特征边或所述第二特征边的相邻三角面片添加所述区域标识编号,直至所述目标面片的边为所述第一特征边和所述第二特征边的数量与指定特征区域中的所述第一特征边和所述第二特征边的数量均相同。
106.在具体的实施过程中,在指定特征区域中选取目标面片,从目标面片开始,判断目标面片是否已经属于某个特征区域,若该目标面片尚没有划分区域,则新建一个区域标识编号,同时更改目标面片的特征区域归属状态,并将该目标面片记为区域标识编号;可以理解的是,每个三角形面片单元均包含三条边,每条边均有第一三角面片或第二三角面片的信息,其中,第一三角面片或第二三角面片为相邻的三角面片。而目标面片肯定是相邻的三角面片中的一个,如果相邻的三角面片的共有边不是特征边,则该共有边的另外一侧的三角面片与相邻的三角面片属于同一片特征区域,基于各个三角面片的边,可以将与目标面片处于相同平面或曲面的三角面片标记记为区域标识编号,直至所述目标面片的边为所述第一特征边和所述第二特征边的数量与指定特征区域中的所述第一特征边和所述第二特征边的数量均相同。重复上述步骤,即可确定出各个特征区域内的全部三角面片的信息。
107.在一个可选的实施例中,所述方法还包括:
108.基于指定区域标识编号,将所述指定区域标识编号对应的三角面片的几何信息输出,得到目标文件,所述目标文件可应用于计算机辅助工程中,所述指定特征区域为所述图形文件中的一个或多个特征区域。
109.具体的,终端或服务器可以按照指定区域标识编号将指定区域标识编号对应的三角面片的几何信息输出,以得到目标文件,即该目标文件中包括三角面片的几何信息以及标识的特征区域,其中,上述特征区域可以包括三角面片中的第一特征边或第二特征边。
110.本说明书实施例通过指定区域标识编号的方式,可以将指定区域中的全部三角面片的解信息等进行输出得到目标文件,方便用户对三角面片模型文件的拆分使用,无需在终端的页面进行删除,提高办公效率。
111.本说明书实施例提供的图形文件的特征区域识别方法,通过重构stl文件的几何拓扑,建立了点、边、单元之间的对应关系,不仅有利于提高特征区域识别的精度和效率,更方便对stl文件进行处理和二次开发。并且在识别特征区域时,不需要计算曲面在顶点处的曲率,极大地节省了计算量,提升了计算效率。
112.本公开通过二面角对特征区域识别的影响以及三角面片单元长宽比以及面积比等参数对特征区域识别的影响,极大地提高了特征区域识别的准确率。此外,本公开无需对stl文件中的基本形状进行分类,通过以点、边、单元为对象进行特征区域识别,减少了stl文件识别步骤,并且能够适应各种复杂形状的stl文件,扩大stl文件特征区域识别的应用范围。
113.再一方面,本公开提供一种图形文件的特征区域识别装置,图4是根据一示例性实施例示出的一种图形文件的特征区域识别装置框图,参照图4,该装置包括:
114.信息获取模块401,用于获取图形文件中各个三角面片的几何信息,所述图形文件中包括多个相互连接的三角面片,所述几何信息包括三个顶点的顶点坐标;
115.编号模块402,用于基于所述顶点坐标对各个三角面片的顶点进行编号,得到各个三角面片对应的三个顶点编号,相同的顶点坐标对应相同的顶点编号;
116.边确定模块403,用于基于所述各个三角面片对应的三个顶点编号确定各个三角面片与相邻三角面片的共有边以及所述图形文件的第一特征边;
117.第二特征边标识模块404,用于将不符合预设要求的所述共有边标识为第二特征边;
118.特征区域识别模块405,用于基于所述第一特征边和所述第二特征边确定各个三角面片所属的特征区域,所述特征区域为多条第一特征边和/或多条第二特征边首尾相连形成的封闭图形。
119.关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
120.再一方面,本公开提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现如上述所述图形文件的特征区域识别方法。
121.图5是根据一示例性实施例示出的一种用于图形文件的特征区域识别的电子设备的框图,该电子设备可以是终端,也可以是监管系统,其内部结构图可以如图5所示。该电子设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该电子设备的处理器用于提供计算和控制能力。该电子设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该电子设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图形文件的特征区域识别的方法。该电子设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该电子设备的输入装置可以是显示屏上覆盖的触摸层,也可以是电子设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
122.本领域技术人员可以理解,图5中示出的结构,仅仅是与本公开方案相关的部分结构的框图,并不构成对本公开方案所应用于其上的电子设备的限定,具体的电子设备可以
包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
123.在示例性实施例中,还提供了一种电子设备,包括至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如上述所述图形文件的特征区域识别。
124.在示例性实施例中,还提供了一种计算机可读存储介质,当该计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行本公开实施例中的图形文件的特征区域识别方法方法。计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
125.在示例性实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本公开实施例中的图形文件的特征区域识别方法。
126.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
127.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
128.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
技术特征:
1.一种图形文件的特征区域识别方法,其特征在于,所述图形文件为三角面片模型文件,所述方法包括:获取图形文件中各个三角面片的几何信息,所述图形文件中包括多个相互连接的三角面片,所述几何信息包括三个顶点的顶点坐标;基于所述顶点坐标对各个三角面片的顶点进行编号,得到各个三角面片对应的三个顶点编号,相同的顶点坐标对应相同的顶点编号;基于所述各个三角面片对应的三个顶点编号确定各个三角面片与相邻三角面片的共有边以及所述图形文件的第一特征边;将不符合预设要求的所述共有边标识为第二特征边;基于所述第一特征边和所述第二特征边确定各个三角面片所属的特征区域,所述特征区域为多条第一特征边和/或多条第二特征边首尾相连形成的封闭图形。2.根据权利要求1所述图形文件的特征区域识别方法,其特征在于,所述基于所述各个三角面片对应的三个顶点编号确定各个三角面片与相邻三角面片的共有边以及所述图形文件的第一特征边,包括:基于所述各个三角面片对应的三个顶点编号对各个三角面片的边进行编号,得到各个三角面片的三条边对应边编号;当相同的边编号对应有不同的三角面片时,所述边编号对应的边为所述共有边;当所述边编号不对应有不同的三角面片时,所述边编号对应的边为所述第一特征边。3.根据权利要求2所述图形文件的特征区域识别方法,其特征在于,所述几何信息包括还包括三角面片的法矢量,所述将不符合预设要求的所述共有边作为第二特征边,包括:基于所述共有边确定所在相邻三角面片的面积比和二面角以及各自的长宽比,其中,所述三角面片的面积和所述长宽比是根据对应三角面片的顶点坐标确定的,所述二面角是根据所述相邻三角面片各自对应的法矢量确定的;当所述面积比大于预设面积比阈值、所述相邻三角面片的长宽比中的一个或两个均不大于预设长宽比阈值,且所述二面角大于预设第一角度阈值时,则确定所述共有边不符合预设要求,将所述共有边标识为所述第二特征边。4.根据权利要求3所述图形文件的特征区域识别方法,其特征在于,所述方法还包括:当所述相邻三角面片的长宽比中的一个长宽比大于预设长宽比阈值、所述共有边为所在三角面片中最短的边,且所述二面角大于预设第一角度阈值时,则确定所述共有边不符合预设要求,将所述共有边标识为所述第二特征边。5.根据权利要求3所述图形文件的特征区域识别方法,其特征在于,所述方法还包括:当所述相邻三角面片中的一个三角面片的面积与全部三角面片的面积的比值大于预设比例阈值,且所述二面角大于预设第一角度阈值时,则确定所述共有边不符合预设要求,将所述共有边标识为所述第二特征边。6.根据权利要求3所述图形文件的特征区域识别方法,其特征在于,所述方法还包括:当所述二面角大于预设第二角度阈值时,则确定所述共有边不符合预设要求,将所述共有边标识为所述第二特征边。7.根据权利要求3所述图形文件的特征区域识别方法,其特征在于,所述基于所述第一特征边和所述第二特征边确定各个三角面片所属的特征区域,所述特征区域为多条第一特
征边和/或多条第二特征边首尾相连形成的封闭图形,包括:在指定特征区域中选取目标面片;判断所述目标面片是否对应有区域标识编号;若所述目标面片没有对应有区域标识编号,则为所述目标面片添加区域标识编号;分别判断所述目标面片的三条边是否为所述第一特征边或所述第二特征边;当所述目标面片的边为所述第一特征边或所述第二特征边时,记录所述第一特征边或所述第二特征边的数量;为所述目标面片的三条边中不是所述第一特征边或所述第二特征边的相邻三角面片添加所述区域标识编号,并以所述目标面片相邻的三角面片作为所述目标面片;重复执行:分别判断所述目标面片的其余两条边是否为所述第一特征边或所述第二特征边;当所述目标面片的边为所述第一特征边或所述第二特征边时,记录所述第一特征边或所述第二特征边的数量;为所述目标面片的其余两条边中不是所述第一特征边或所述第二特征边的相邻三角面片添加所述区域标识编号,直至所述目标面片的边为所述第一特征边和所述第二特征边的数量与指定特征区域中的所述第一特征边和所述第二特征边的数量均相同。8.一种图形文件的特征区域识别装置,其特征在于,所述图形文件为三角面片模型文件,所述装置包括:信息获取模块,用于获取图形文件中各个三角面片的几何信息,所述图形文件中包括多个相互连接的三角面片,所述几何信息包括三个顶点的顶点坐标;编号模块,用于基于所述顶点坐标对各个三角面片的顶点进行编号,得到各个三角面片对应的三个顶点编号,相同的顶点坐标对应相同的顶点编号;边确定模块,用于基于所述各个三角面片对应的三个顶点编号确定各个三角面片与相邻三角面片的共有边以及所述图形文件的第一特征边;第二特征边标识模块,用于将不符合预设要求的所述共有边标识为第二特征边;特征区域识别模块,用于基于所述第一特征边和所述第二特征边确定各个三角面片所属的特征区域,所述特征区域为多条第一特征边和/或多条第二特征边首尾相连形成的封闭图形。9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或至少一段程序由处理器加载并执行以实现如权利要求1-7中任一项所述图形文件的特征区域识别方法。10.一种电子设备,其特征在于,包括至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令实现如权利要求1-7中任一项所述图形文件的特征区域识别方法。
技术总结
本公开关于图形文件的特征区域识别方法、装置、设备及介质,方法包括:获取图形文件中各个三角面片的几何信息;基于顶点坐标对各个三角面片的顶点进行编号,得到各个三角面片对应的三个顶点编号,相同的顶点坐标对应相同的顶点编号;基于各个三角面片对应的三个顶点编号确定各个三角面片与相邻三角面片的共有边以及图形文件的第一特征边;将不符合预设要求的共有边标识为第二特征边;基于第一特征边和第二特征边确定各个三角面片所属的特征区域,特征区域为多条第一特征边和/或多条第二特征边首尾相连形成的封闭图形。本公开在识别特征区域时,不需要计算曲面在顶点处的曲率,极大地节省了计算量,提升了计算效率。提升了计算效率。提升了计算效率。
技术研发人员:丁力
受保护的技术使用者:中汽创智科技有限公司
技术研发日:2021.11.29
技术公布日:2022/3/8