CN112116721A - 三维模型的标记方法、装置、电子设备及存储介质 - Google Patents
三维模型的标记方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112116721A CN112116721A CN202010995028.9A CN202010995028A CN112116721A CN 112116721 A CN112116721 A CN 112116721A CN 202010995028 A CN202010995028 A CN 202010995028A CN 112116721 A CN112116721 A CN 112116721A
- Authority
- CN
- China
- Prior art keywords
- dimensional model
- character
- current
- point
- dimensional
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000003860 storage Methods 0.000 title claims abstract description 15
- 238000004590 computer program Methods 0.000 claims description 11
- 238000002372 labelling Methods 0.000 claims description 11
- 230000003044 adaptive effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 16
- 230000000694 effects Effects 0.000 description 7
- 238000010146 3D printing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000009827 uniform distribution Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000007639 printing Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 239000007943 implant Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000012255 powdered metal Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 210000003781 tooth socket Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/62—Text, e.g. of license plates, overlay texts or captions on TV images
- G06V20/63—Scene text, e.g. street names
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/158—Segmentation of character regions using character size, text spacings or pitch estimation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/08—Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2004—Aligning objects, relative positioning of parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- Architecture (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明实施例提供一种三维模型的标记方法、装置、电子设备及存储介质,该方法包括:确定目标三维模型,以及待标记文本中各个字符的字符三维模型;在目标三维模型中选取初始放置点,并确定目标三维模型表面上包含初始放置点的截交线;基于上一放置点的位置,以及上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段;基于上一放置点在当前截交线段所在直线的投影点的位置和预设间隔,确定当前放置点,并将当前字符三维模型放置于当前放置点,直至完成对所有字符三维模型的放置。本发明实施例提供的方法、装置、电子设备及存储介质,实现了字符三维模型的放置自适应目标三维模型表面的起伏变化。
Description
技术领域
本发明涉及计算机图形学技术领域,尤其涉及一种三维模型的标记方法、装置、电子设备及存储介质。
背景技术
3D打印技术,是一种以三维模型文件为基础,运用粉末状金属或塑料等可粘合材料,通过逐层打印的方式来构造物体的技术,3D打印技术广泛应用于建筑行业、汽车制造、航空航天、游戏玩具、食品加工、艺术制作、服装、教育、医疗等诸多领域。
在3D打印领域,三维模型的标记是指在三维模型的表面添加待标记文本,以满足用户个性化的定制需求。现有的三维模型的标记方法只能将待标记文本按照固定的方向进行放置,无法自适应三维模型表面的起伏变化,难以应对表面形状复杂多变的三维模型。
发明内容
本发明实施例提供一种三维模型的标记方法、装置、电子设备及存储介质,用以解决现有技术中无法自适应三维模型表面的起伏变化的缺陷。
本发明实施例提供一种三维模型的标记方法,包括:
确定目标三维模型,以及待标记文本中各个字符的字符三维模型;
在所述目标三维模型中选取初始放置点,并确定所述目标三维模型表面上包含所述初始放置点的截交线,所述截交线包括多个顺次连接的截交线段;
基于上一放置点的位置,以及所述上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段;所述上一放置点用于放置上一字符三维模型,所述上一放置点位于上一截交线段中;
基于所述上一放置点在所述当前截交线段所在直线的投影点的位置和所述预设间隔,确定当前放置点,并将所述当前字符三维模型放置于所述当前放置点,直至完成对所有字符三维模型的放置。
根据本发明一个实施例的三维模型的标记方法,所述基于上一放置点的位置,以及所述上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段,具体包括:
以所述上一截交线段为起点,依次遍历所述截交线中的各个截交线段,若遍历到的截交线段的远端的端点与所述上一放置点之间的距离大于所述预设间隔,则将所述遍历到的截交线段作为所述当前截交线段。
根据本发明一个实施例的三维模型的标记方法,所述确定待标记文本中各个字符的字符三维模型,具体包括:
基于所述待标记文本中任一字符的二维轮廓线,确定所述任一字符的三角网格平面模型;
基于所述三角网格平面模型中的各个外边界线段,确定在所述二维轮廓线内部的有效三角面,并基于有效三角面集合,生成所述任一字符的有效平面模型;
基于所述有效平面模型,以及所述任一字符的预设厚度,生成所述任一字符的字符三维模型。
根据本发明一个实施例的三维模型的标记方法,所述基于所述三角网格平面模型中的各个外边界线段,确定在所述二维轮廓线内部的有效三角面,具体包括:
若任一外边界线段属于所述二维轮廓线,则将以所述任一外边界线段为边的三角面作为第一有效三角面;
否则,遍历与以所述任一外边界线段为边的三角面相邻的三角面,直至得到一条边属于所述二维轮廓线的三角面,并将共用所述属于所述二维轮廓线的边的三角面作为所述第一有效三角面;
将与任一第一有效三角面的非轮廓边相邻的三角面作为第二有效三角面,并将所有第一有效三角面和所有第二有效三角面添加至所述有效三角面集合。
根据本发明一个实施例的三维模型的标记方法,所述基于所述有效平面模型,以及所述任一字符的预设厚度,生成所述任一字符的字符三维模型,具体包括:
基于所述预设厚度,对所述有效平面模型进行平移,得到第一有效平面模型和第二有效平面模型;
将所述第一有效平面模型的边界和所述第二有效平面模型的边界对应连接,得到所述字符三维模型。
根据本发明一个实施例的三维模型的标记方法,所述将所述当前字符三维模型放置于所述当前放置点,具体包括:
将所述当前字符三维模型沿所述当前放置点所在的当前三角面的法线方向放置于所述当前放置点,以使所述当前字符三维模型的底面的法线方向与所述当前三角面的法线方向一致且所述当前字符三维模型的中心与所述当前放置点重合。
根据本发明一个实施例的三维模型的标记方法,所述基于所述上一放置点在所述当前截交线段所在直线的投影点的位置和所述预设间隔,确定当前放置点,并将所述当前字符三维模型放置于所述当前放置点,直至完成对所有字符三维模型的放置,之后还包括:
基于布尔并运算,对所述所有字符三维模型进行融合。
本发明实施例还提供一种三维模型的标记装置,包括:
三维模型生成单元,用于确定目标三维模型,以及待标记文本中各个字符的字符三维模型;
截交线确定单元,用于在所述目标三维模型中选取初始放置点,并确定所述目标三维模型表面上包含所述初始放置点的截交线,所述截交线包括多个顺次连接的截交线段;
截交线段确定单元,用于基于上一放置点的位置,以及所述上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段;所述上一放置点用于放置上一字符三维模型,所述上一放置点位于上一截交线段中;
标记单元,用于基于所述上一放置点在所述当前截交线段所在直线的投影点的位置和所述预设间隔,确定当前放置点,并将所述当前字符三维模型放置于所述当前放置点,直至完成对所有字符三维模型的放置。
本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述三维模型的标记方法的步骤。
本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述三维模型的标记方法的步骤。
本发明实施例提供的一种三维模型的标记方法、装置、电子设备及存储介质,通过设置用于放置字符三维模型的放置点位于截交线段上,使得各个字符三维模型的放置能够尽量贴合目标三维模型的表面,并基于上一放置点到当前截交线段所在直线的投影点和预设间隔,确定当前放置点,使得字符三维模型的放置能够自适应目标三维模型表面的起伏变化,保证了各个字符三维模型之间的均匀分布,提升了三维模型的标记效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的三维模型的标记方法的流程示意图;
图2为本发明实施例提供的初始放置点的示意图;
图3为本发明实施例提供的当前放置点的示意图;
图4为本发明实施例提供的三角网格平面模型的示意图;
图5为本发明实施例提供的字符三维模型的示意图;
图6为本发明另一实施例提供的当前放置点的示意图;
图7为本发明实施例提供的字符三维模型与目标三维模型的合并的示意图;
图8为本发明实施例提供的三维模型的标记装置的结构示意图;
图9是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,3D打印技术的应用越来越广泛,例如在口腔医疗领域,3D打印技术可以应用在术前模拟(例如打印牙齿模型)、矫正器械(例如打印隐形牙套)、种植导板等各个方面。在针对不同的患者进行定制设计时,为了区分患者或设计批号,在进行3D打印之前需要对三维模型进行标记。
现有的三维模型的标记方法只能将待标记文本按照固定的方向进行放置,无法自适应三维模型表面的起伏变化,难以应对表面形状复杂多变的三维模型。
对此,本发明实施例提供一种三维模型的标记方法,图1为本发明实施例提供的三维模型的标记方法的流程示意图,如图1所示,该方法包括:
步骤110,确定目标三维模型,以及待标记文本中各个字符的字符三维模型。
具体地,目标三维模型可以为需要进行标记的三维模型,例如,目标三维模型可以为患者的牙齿模型,待标记文本可以为用于标记三维模型的文本,例如,待标记文本可以为患者的姓名,待标记文本可以包括若干个字符,任一字符可以为数字、汉字或英文字母等。待标记文本中每一字符对应一个字符三维模型,各个字符的字符三维模型的排列顺序与待标记文本中各个字符的排列顺序是一致的。
目标三维模型可以是通过三维扫描仪采集得到的,也可以是通过制图软件制作的,还可以是从三维模型库中选取得到的,本发明实施例对目标三维模型的确定方式不作具体限定。待标记文本中各个字符的字符三维模型可以是根据用户的定制需求,通过制图软件制作生成的,也可以是根据用户的定制需求,从三维字体库中选取得到的,本发明实施例对字符三维模型的确定方式不作具体限定。
步骤120,在目标三维模型中选取初始放置点,并确定目标三维模型表面上包含初始放置点的截交线,截交线包括多个顺次连接的截交线段。
具体地,在得到目标三维模型之后,在目标三维模型的表面选取一个初始放置点,初始放置点用于放置第一个字符三维模型。随即,创建一个包含初始放置点的平面,将该平面与目标三维模型相交,得到该平面与目标三维模型相交所得的截面的截交线。此处,包含初始放置点的平面的法线方向是根据待标记文本在目标三维模型表面的排布方向确定的,例如,若将待标记文本按照水平方向进行排布,则包含初始放置点的平面的法线方向为垂直方向。
由于目标三维模型用于进行3D打印,目标三维模型可以为一个三角网格三维模型,目标三维模型表面可以包括多个连续的三角面,平面与目标三维模型相交所得的截面的截交线为由多个顺次连接的截交线段构成的封闭的折线,其中,截交线段为目标三维模型表面的三角面与平面的交线。
图2为本发明实施例提供的初始放置点的示意图,如图2所示,p0为初始放置点,图2中的实线为目标三维模型的轮廓,细虚线表示包含初始放置点的截面,虚线三角形为初始放置点所在的初始三角面,粗虚线为初始三角面与截面相交的截交线段,p′ 0和p′ 0 ′为截交线段的两个端点。
步骤130,基于上一放置点的位置,以及上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段;上一放置点用于放置上一字符三维模型,上一放置点位于上一截交线段中。
具体地,字符三维模型存在一定的宽度,用于放置上一字符三维模型的上一放置点和用于放置当前字符三维模型的当前放置点之间需要保持一定的间距。
由于任一放置点位于对应的截交线段上,基于上一放置点的位置,以及上一字符三维模型与当前字符三维模型之间的预设间隔,可以确定当前放置点所处的当前截交线段。例如,以上一截交线段为起点,对截交线中各个截交线段进行遍历,并计算遍历到的截交线段与上一截交线段对应端点之间的距离,若该距离大于预设间隔,表示遍历到的截交线段与上一截交线段之间有足够的空间放置当前字符三维模型,则将该截交线段作为当前截交线段。
此处,预设间隔可以是基于上一字符三维模型的宽度和当前字符三维模型的宽度确定的。
具体可以通过如下公式,计算预设间隔width:
width=(width1+width2)*s
式中,width1为上一字符三维模型的宽度,width2为当前字符三维模型的宽度,s为间隔系数,优选地,s=0.6,此处将s设置为0.6而不是0.5可以保证相邻的两个字符三维模型之间存在一定的间隔。
步骤140,基于上一放置点在当前截交线段所在直线的投影点的位置和预设间隔,确定当前放置点,并将当前字符三维模型放置于当前放置点,直至完成对所有字符三维模型的放置。
具体地,由于目标三维模型的表面是一个有起伏的曲面,直接基于上一放置点的位置以及预设间隔确定的当前放置点是不准确的。考虑到目标三维模型表面的起伏变化,在得到当前截交线段之后,将当前截交线段进行延伸,得到当前截交线段所在的直线,并确定上一放置点到当前截交线段所在直线的投影点。随即,以该投影点为起点沿当前截交线段所在直线的方向延伸预设间隔的距离,即可得到位于当前截交线段上的当前放置点。对待标记文本包含的所有字符的字符三维模型依次执行上述相同操作,直至完成对所有字符三维模型的放置。
图3为本发明实施例提供的当前放置点的示意图,如图3所示,p1和p2为上一截交线段的两个端点,p为用于放置上一字符三维模型31的上一放置点,p3为p在当前截交线段所在直线的投影点,p′1和p′2为当前截交线段的两个端点,c为用于放置当前字符三维模型32的当前放置点。
由于各个截交线段是在目标三维模型的表面,通过设置用于放置字符三维模型的放置点位于截交线段上,使得各个字符三维模型的放置能够尽量贴合目标三维模型的表面,并基于上一放置点到当前截交线段所在直线的投影点和预设间隔,确定当前放置点,充分考虑了相互连接的各个截交线段之间的角度变化,使得字符三维模型的放置能够自适应目标三维模型表面的起伏变化,即使对于表面形状复杂的目标三维模型,也可以取得较好的标记效果,同时保证了各个字符三维模型之间的均匀分布,进而提升了三维模型的标记效果。
本发明实施例提供的三维模型的标记方法,通过设置用于放置字符三维模型的放置点位于截交线段上,使得各个字符三维模型的放置能够尽量贴合目标三维模型的表面,并基于上一放置点到当前截交线段所在直线的投影点和预设间隔,确定当前放置点,实现了字符三维模型的放置自适应目标三维模型表面的起伏变化,保证了各个字符三维模型之间的均匀分布,提升了三维模型的标记效果。
基于上述实施例,该方法中,步骤120具体包括:
以上一截交线段为起点,依次遍历截交线中的各个截交线段,若遍历到的截交线段的远端的端点与上一放置点之间的距离大于预设间隔,则将遍历到的截交线段作为当前截交线段。
具体地,在得到上一放置点之后,以上一放置点所在的上一截交线段,依次遍历截交线中的各个截交线段,并计算遍历到的截交线段的远端的端点与上一放置点之间的距离,其中,截交线段的远端的端点为远离上一截交线段的端点。若遍历到的截交线段的远端的端点与上一放置点之间的距离大于预设间隔,表示该截交线段与上一截交线段之间有足够的空间放置当前字符三维模型,则将该截交线段作为当前截交线段,并终止遍历。
需要说明的是,若遍历到的截交线段与初始放置点所在的初始截交线段重合,说明标记的字符三维模型已经环绕模型一周,无法继续添加新的字符三维模型,可以停止添加字符三维模型,或者调整字符三维模型的大小之后重新进行标记。
本发明实施例提供的三维模型的标记方法,通过以上一截交线段为起点,对截交线中的各个截交线段依次进行遍历,并基于遍历到的截交线段的远端的端点与上一放置点之间的距离,确定当前字符三维模型的最优放置位置,保证了各个字符三维模型之间的均匀分布,进而提升了三维模型的标记效果。
基于上述任一实施例,该方法中,步骤110具体包括:
基于待标记文本中任一字符的二维轮廓线,确定任一字符的三角网格平面模型;
基于三角网格平面模型中的各个外边界线段,确定在二维轮廓线内部的有效三角面,并基于有效三角面集合,生成该字符的有效平面模型;
基于有效平面模型,以及该字符的预设厚度,生成该字符的字符三维模型。
具体地,为满足用户个性化定制的需求,可以根据用户输入的文本,以及选定的字体和大小,通过字体库或制图软件获取待标记文本中任一字符的二维轮廓线,并基于该字符的二维轮廓线,采用Delaunay三角剖分算法对二维轮廓线进行网格化,生成该字符的三角网格平面模型。此处,在网格化的过程中,需要限制三角网格平面模型必须包含二维轮廓线上的各条边。
采用三角剖分算法生成的所有三角面的集合是二维轮廓线上散点集的凸包,三角网格平面模型中部分三角面在二维轮廓线的内部,另一部分三角面在二维轮廓线的外部,因此,需要提取出在二维轮廓线内部的有效三角面。图4为本发明实施例提供的三角网格平面模型的示意图,如图4所示,三角网格平面模型包含在二维轮廓线内部的三角面和在二维轮廓线外部的三角面,图4中细实线为三角网格线,粗实线为二维轮廓线。
在得到三角网格平面模型之后,对三角网格平面模型中各个线段进行遍历,从中选取出仅作为一个三角面的边的线段,即为三角网格平面模型的外边界线段。依次遍历三角网格平面模型中各个外边界线段,并对三角网格平面模型中各个三角面进行判断,进而确定在二维轮廓线内部的有效三角面,并将所有有效三角面构成的有效三角面集合作为该字符的有效平面模型,该字符的有效平面模型即为该字符的二维轮廓线对应区域的三角网格模型。
基于该字符的有效平面模型和该字符的预设厚度,生成该字符的字符三维模型。其中,各个字符的预设厚度可以相同,也可以不同,本发明实施例对此不作具体限定。
基于上述任一实施例,该方法中,所述基于三角网格平面模型中的各个外边界线段,确定在二维轮廓线内部的有效三角面,具体包括:
若任一外边界线段属于二维轮廓线,则将以该外边界线段为边的三角面作为第一有效三角面;
否则,遍历与以该外边界线段为边的三角面相邻的三角面,直至得到一条边属于二维轮廓线的三角面,并将共用属于二维轮廓线的边的三角面作为第一有效三角面;
将与任一第一有效三角面的非轮廓边相邻的三角面作为第二有效三角面,并将所有第一有效三角面和所有第二有效三角面添加至有效三角面集合。
具体地,依次遍历三角网格平面模型中的各个外边界线段,若任一外边界线段属于二维轮廓线,表示以该外边界线段为边的三角面一定在二维轮廓线内部,则将以该外边界线段为边的三角面作为第一有效三角面,将该外边界线段作为第一轮廓边。
若该外边界线段不属于二维轮廓线,表示以该外边界线段为边的三角片在二维轮廓线的外部,则对与以该外边界线段为边的三角片相邻的三角片进行遍历,直至得到一条边属于二维轮廓线的三角面,将该条属于二维轮廓线的边作为第一轮廓边。由于该三角面在二维轮廓线外部且该三角面中一条边属于二维轮廓线,则与该三角面共用属于二维轮廓线的边的另一个三角面一定在二维轮廓线的内部,将共用属于二维轮廓线的边的三角面作为第一有效三角面。
由于第一有效三角面为二维轮廓线内部外侧的有效三角面,为进一步获取二维轮廓线内部的其他有效面,遍历任一第一有效三角面的除第一轮廓边之外的另外两条边,若任一条边不属于二维轮廓线,则该条边为非轮廓边,对与非轮廓边相邻的三角面进行遍历,得到第二有效三角面;若该条边属于二维轮廓线,则停止对该条边的遍历。
在此基础上,将所有第一有效三角面和所有第二有效三角面添加至有效三角面集合,以供生成有效平面模型。
基于上述任一实施例,该方法中,所述基于有效平面模型,以及该字符的预设厚度,生成该字符的字符三维模型,具体包括:
基于预设厚度,对有效平面模型进行平移,得到第一有效平面模型和第二有效平面模型;
将第一有效平面模型的边界和第二有效平面模型的边界对应连接,得到字符三维模型。
具体地,在得到有效平面模型之后,可以基于预设厚度,对有效平面模型进行平移,得到相互平行的第一有效平面模型和第二有效平面模型。
例如,可以将有效平面模型作为第一有效平面模型,将有效平面模型沿其法线方向平移预设厚度的距离,得到的第二有效平面模型,此处,第一有效平面模型与第二平面模型的垂直距离为预设厚度。
又例如,可以将有效平面模型沿其法线方向平移预设厚度的距离,得到第一有效平面模型,然后将有效平面模型沿其法线方向的反方向平移两倍的预设厚度的距离,得到第二有效平面模型,此处,第一有效平面模型与第二平面模型的垂直距离为两倍的预设厚度。
由于第一有效平面模型和第二有效平面模型为两个相互平行的平面,为得到一个封闭的三维模型,需要将第一有效平面模型内边界和第二有效平面模型的内边界对应连接,同时将第一有效平面模型外边界和第二有效平面模型的外边界对应连接,进而得到该字符的字符三维模型。
图5为本发明实施例提供的字符三维模型的示意图,如图5所示,M1为第一有效平面模型,M2为第二有效平面模型,图5中字符为“中”字,在得到M1和M2之后,可以基于M1中的孔洞,确定M1的内边界,进而将M1和M2的内外边界对应连接,得到“中”字的字符三维模型。在此基础上,还可以调整生成的字符三维模型中所有三角面的法线方向,将所有三角面的法线方向均指向模型的外部。
基于上述任一实施例,该方法中,所述将当前字符三维模型放置于当前放置点,具体包括:
将当前字符三维模型沿当前放置点所在的当前三角面的法线方向放置于当前放置点,以使当前字符三维模型的底面的法线方向与当前三角面的法线方向一致且当前字符三维模型的中心与当前放置点重合。
具体地,在得到当前放置点之后,将当前字符三维模型沿当前放置点所在的当前三角面的法线方向进行放置,以使当前字符三维模型的底面的法线方向与当前三角面的法线方向一致且当前字符三维模型的中心与当前放置点重合。
图6为本发明实施例提供的当前放置点的示意图,如图6所示,c为当前放置点,图6中的虚线为当前放置点所在的当前三角面,矩形为当前字符三维模型,Z为当前字符三维模型的底面的法线方向。
通过保证当前字符三维模型的底面的法线方向与当前三角面的法线方向一致且当前字符三维模型的中心与当前放置点重合,使得当前字符三维模型垂直居中设置于目标三维模型的表面,进而提升了三维模型的标记效果。
基于上述任一实施例,该方法中,步骤140之后还包括:
基于布尔并运算,对所有字符三维模型进行融合。
具体地,当目标三维模型的表面起伏非常大时,各个字符三维模型之间可能会产生相交的部分,导致生成的目标三维模型的标记不连贯,为避免各个字符三维模型之间的自相交,在完成对所有字符三维模型放置于目标三维模型表面之后,可以对所有字符三维模型进行布尔并预算,以消除各个字符三维模型自相交的部分,将所有字符三维模型融合为一个整体的三维模型。
基于上述任一实施例,该方法中,步骤140之后还包括:基于布尔运算,对所有字符三维模型与目标三维模型进行合并。
图7为本发明实施例提供的字符三维模型与目标三维模型的合并的示意图,如图7所示,字符三维模型72的厚度为预设厚度的两倍,可以对字符三维模型72和目标三维模型71进行布尔并运算,使得字符三维模型72向外凸起;可以对字符三维模型72和目标三维模型71进行布尔差运算,使得字符三维模型72向内凹陷。
图8为本发明实施例提供的三维模型的标记装置的结构示意图,如图8所示,该装置包括:
三维模型生成单元810,用于确定目标三维模型,以及待标记文本中各个字符的字符三维模型;
截交线确定单元820,用于在所述目标三维模型中选取初始放置点,并确定所述目标三维模型表面上包含所述初始放置点的截交线,所述截交线包括多个顺次连接的截交线段;
截交线段确定单元830,用于基于上一放置点的位置,以及所述上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段;所述上一放置点用于放置上一字符三维模型,所述上一放置点位于上一截交线段中;
标记单元840,用于基于所述上一放置点在所述当前截交线段所在直线的投影点的位置和所述预设间隔,确定当前放置点,并将所述当前字符三维模型放置于所述当前放置点,直至完成对所有字符三维模型的放置。
本发明实施例提供的三维模型的标记装置,通过设置用于放置字符三维模型的放置点位于截交线段上,使得各个字符三维模型的放置能够尽量贴合目标三维模型的表面,并基于上一放置点到当前截交线段所在直线的投影点和预设间隔,确定当前放置点,使得字符三维模型的放置能够自适应目标三维模型表面的起伏变化,保证了各个字符三维模型之间的均匀分布,提升了三维模型的标记效果。
基于上述任一实施例,该装置中,截交线段确定单元830具体用于:
以所述上一截交线段为起点,依次遍历所述截交线中的各个截交线段,若遍历到的截交线段的远端的端点与所述上一放置点之间的距离大于所述预设间隔,则将所述遍历到的截交线段作为所述当前截交线段。
基于上述任一实施例,该装置中,三维模型生成单元810具体包括:
三角网格平面模型确定模块,用于基于所述待标记文本中任一字符的二维轮廓线,确定所述任一字符的三角网格平面模型;
有效平面模型确定模块,用于基于所述三角网格平面模型中的各个外边界线段,确定在所述二维轮廓线内部的有效三角面,并基于有效三角面集合,生成所述任一字符的有效平面模型;
字符三维模型生成模块,用于基于所述有效平面模型,以及所述任一字符的预设厚度,生成所述任一字符的字符三维模型。
基于上述任一实施例,该装置中,有效平面模型确定模块具体用于:
若任一外边界线段属于所述二维轮廓线,则将以所述任一外边界线段为边的三角面作为第一有效三角面;
否则,遍历与以所述任一外边界线段为边的三角面相邻的三角面,直至得到一条边属于所述二维轮廓线的三角面,并将共用所述属于所述二维轮廓线的边的三角面作为所述第一有效三角面;
将与任一第一有效三角面的非轮廓边相邻的三角面作为第二有效三角面,并将所有第一有效三角面和所有第二有效三角面添加至所述有效三角面集合。
基于上述任一实施例,该装置中,字符三维模型生成模块具体用于:
基于所述预设厚度,对所述有效平面模型进行平移,得到第一有效平面模型和第二有效平面模型;
将所述第一有效平面模型的边界和所述第二有效平面模型的边界对应连接,得到所述字符三维模型。
基于上述任一实施例,该装置中,标记单元840具体用于:
将所述当前字符三维模型沿所述当前放置点所在的当前三角面的法线方向放置于所述当前放置点,以使所述当前字符三维模型的底面的法线方向与所述当前三角面的法线方向一致且所述当前字符三维模型的中心与所述当前放置点重合。
基于上述任一实施例,该装置还包括:
字符三维模型融合单元,用于基于布尔并运算,对所述所有字符三维模型进行融合。
图9示例了一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)910、通信接口(Communications Interface)920、存储器(memory)930和通信总线940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以调用存储器930中的逻辑指令,以执行三维模型的标记方法,该方法包括:确定目标三维模型,以及待标记文本中各个字符的字符三维模型;在目标三维模型中选取初始放置点,并确定目标三维模型表面上包含初始放置点的截交线,截交线包括多个顺次连接的截交线段;基于上一放置点的位置,以及上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段;上一放置点用于放置上一字符三维模型,上一放置点位于上一截交线段中;基于上一放置点在当前截交线段所在直线的投影点的位置和预设间隔,确定当前放置点,并将当前字符三维模型放置于当前放置点,直至完成对所有字符三维模型的放置。
此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的三维模型的标记方法,该方法包括:确定目标三维模型,以及待标记文本中各个字符的字符三维模型;在目标三维模型中选取初始放置点,并确定目标三维模型表面上包含初始放置点的截交线,截交线包括多个顺次连接的截交线段;基于上一放置点的位置,以及上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段;上一放置点用于放置上一字符三维模型,上一放置点位于上一截交线段中;基于上一放置点在当前截交线段所在直线的投影点的位置和预设间隔,确定当前放置点,并将当前字符三维模型放置于当前放置点,直至完成对所有字符三维模型的放置。
又一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的三维模型的标记方法,该方法包括:确定目标三维模型,以及待标记文本中各个字符的字符三维模型;在目标三维模型中选取初始放置点,并确定目标三维模型表面上包含初始放置点的截交线,截交线包括多个顺次连接的截交线段;基于上一放置点的位置,以及上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段;上一放置点用于放置上一字符三维模型,上一放置点位于上一截交线段中;基于上一放置点在当前截交线段所在直线的投影点的位置和预设间隔,确定当前放置点,并将当前字符三维模型放置于当前放置点,直至完成对所有字符三维模型的放置。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种三维模型的标记方法,其特征在于,包括:
确定目标三维模型,以及待标记文本中各个字符的字符三维模型;
在所述目标三维模型中选取初始放置点,并确定所述目标三维模型表面上包含所述初始放置点的截交线,所述截交线包括多个顺次连接的截交线段;
基于上一放置点的位置,以及所述上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段;所述上一放置点用于放置上一字符三维模型,所述上一放置点位于上一截交线段中;
基于所述上一放置点在所述当前截交线段所在直线的投影点的位置和所述预设间隔,确定当前放置点,并将所述当前字符三维模型放置于所述当前放置点,直至完成对所有字符三维模型的放置。
2.根据权利要求1所述的三维模型的标记方法,其特征在于,所述基于上一放置点的位置,以及所述上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段,具体包括:
以所述上一截交线段为起点,依次遍历所述截交线中的各个截交线段,若遍历到的截交线段的远端的端点与所述上一放置点之间的距离大于所述预设间隔,则将所述遍历到的截交线段作为所述当前截交线段。
3.根据权利要求1或2所述的三维模型的标记方法,其特征在于,所述确定待标记文本中各个字符的字符三维模型,具体包括:
基于所述待标记文本中任一字符的二维轮廓线,确定所述任一字符的三角网格平面模型;
基于所述三角网格平面模型中的各个外边界线段,确定在所述二维轮廓线内部的有效三角面,并基于有效三角面集合,生成所述任一字符的有效平面模型;
基于所述有效平面模型,以及所述任一字符的预设厚度,生成所述任一字符的字符三维模型。
4.根据权利要求3所述的三维模型的标记方法,其特征在于,所述基于所述三角网格平面模型中的各个外边界线段,确定在所述二维轮廓线内部的有效三角面,具体包括:
若任一外边界线段属于所述二维轮廓线,则将以所述任一外边界线段为边的三角面作为第一有效三角面;
否则,遍历与以所述任一外边界线段为边的三角面相邻的三角面,直至得到一条边属于所述二维轮廓线的三角面,并将共用所述属于所述二维轮廓线的边的三角面作为所述第一有效三角面;
将与任一第一有效三角面的非轮廓边相邻的三角面作为第二有效三角面,并将所有第一有效三角面和所有第二有效三角面添加至所述有效三角面集合。
5.根据权利要求3所述的三维模型的标记方法,其特征在于,所述基于所述有效平面模型,以及所述任一字符的预设厚度,生成所述任一字符的字符三维模型,具体包括:
基于所述预设厚度,对所述有效平面模型进行平移,得到第一有效平面模型和第二有效平面模型;
将所述第一有效平面模型的边界和所述第二有效平面模型的边界对应连接,得到所述字符三维模型。
6.根据权利要求1或2所述的三维模型的标记方法,其特征在于,所述将所述当前字符三维模型放置于所述当前放置点,具体包括:
将所述当前字符三维模型沿所述当前放置点所在的当前三角面的法线方向放置于所述当前放置点,以使所述当前字符三维模型的底面的法线方向与所述当前三角面的法线方向一致且所述当前字符三维模型的中心与所述当前放置点重合。
7.根据权利要求1或2所述的三维模型的标记方法,其特征在于,所述基于所述上一放置点在所述当前截交线段所在直线的投影点的位置和所述预设间隔,确定当前放置点,并将所述当前字符三维模型放置于所述当前放置点,直至完成对所有字符三维模型的放置,之后还包括:
基于布尔并运算,对所述所有字符三维模型进行融合。
8.一种三维模型的标记装置,其特征在于,包括:
三维模型生成单元,用于确定目标三维模型,以及待标记文本中各个字符的字符三维模型;
截交线确定单元,用于在所述目标三维模型中选取初始放置点,并确定所述目标三维模型表面上包含所述初始放置点的截交线,所述截交线包括多个顺次连接的截交线段;
截交线段确定单元,用于基于上一放置点的位置,以及所述上一字符三维模型与当前字符三维模型之间的预设间隔,确定当前截交线段;所述上一放置点用于放置上一字符三维模型,所述上一放置点位于上一截交线段中;
标记单元,用于基于所述上一放置点在所述当前截交线段所在直线的投影点的位置和所述预设间隔,确定当前放置点,并将所述当前字符三维模型放置于所述当前放置点,直至完成对所有字符三维模型的放置。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述三维模型的标记方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述三维模型的标记方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010995028.9A CN112116721B (zh) | 2020-09-21 | 2020-09-21 | 三维模型的标记方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010995028.9A CN112116721B (zh) | 2020-09-21 | 2020-09-21 | 三维模型的标记方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112116721A true CN112116721A (zh) | 2020-12-22 |
CN112116721B CN112116721B (zh) | 2023-11-28 |
Family
ID=73800883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010995028.9A Active CN112116721B (zh) | 2020-09-21 | 2020-09-21 | 三维模型的标记方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112116721B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112884870A (zh) * | 2021-02-26 | 2021-06-01 | 深圳市商汤科技有限公司 | 一种三维模型的展开方法、电子设备以及计算机存储介质 |
CN114782652A (zh) * | 2022-06-22 | 2022-07-22 | 深圳市创想三维科技股份有限公司 | 模型放平的方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130102881A (ko) * | 2012-03-08 | 2013-09-23 | 대우조선해양 주식회사 | 선박 외판 곡 부위 선박명 모델 생성 및 배치방법 |
US20140023996A1 (en) * | 2012-07-18 | 2014-01-23 | F3 & Associates, Inc. | Three Dimensional Model Objects |
US20200004402A1 (en) * | 2018-06-29 | 2020-01-02 | Align Technology, Inc. | Visualization of teeth |
CN111300826A (zh) * | 2018-12-12 | 2020-06-19 | 南京普洛德信息科技有限公司 | 一种应用于3d打印的三维模型表面自动加字的方法 |
CN111523531A (zh) * | 2020-04-14 | 2020-08-11 | 北京奇艺世纪科技有限公司 | 文字处理方法、装置、电子设备及计算机可读存储介质 |
-
2020
- 2020-09-21 CN CN202010995028.9A patent/CN112116721B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130102881A (ko) * | 2012-03-08 | 2013-09-23 | 대우조선해양 주식회사 | 선박 외판 곡 부위 선박명 모델 생성 및 배치방법 |
US20140023996A1 (en) * | 2012-07-18 | 2014-01-23 | F3 & Associates, Inc. | Three Dimensional Model Objects |
US20200004402A1 (en) * | 2018-06-29 | 2020-01-02 | Align Technology, Inc. | Visualization of teeth |
CN111300826A (zh) * | 2018-12-12 | 2020-06-19 | 南京普洛德信息科技有限公司 | 一种应用于3d打印的三维模型表面自动加字的方法 |
CN111523531A (zh) * | 2020-04-14 | 2020-08-11 | 北京奇艺世纪科技有限公司 | 文字处理方法、装置、电子设备及计算机可读存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112884870A (zh) * | 2021-02-26 | 2021-06-01 | 深圳市商汤科技有限公司 | 一种三维模型的展开方法、电子设备以及计算机存储介质 |
CN114782652A (zh) * | 2022-06-22 | 2022-07-22 | 深圳市创想三维科技股份有限公司 | 模型放平的方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112116721B (zh) | 2023-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11541601B2 (en) | Systems and methods for printing of 3D models | |
Remacle et al. | Blossom‐Quad: A non‐uniform quadrilateral mesh generator using a minimum‐cost perfect‐matching algorithm | |
US10726618B2 (en) | Systems and methods for generating volumetric models | |
KR102024078B1 (ko) | 삼차원 프린팅을 위한 슬라이싱 및/또는 텍스쳐링 | |
Bartz et al. | Adapted surface visualization of cerebral aneurysms with embedded blood flow information | |
CN112116721A (zh) | 三维模型的标记方法、装置、电子设备及存储介质 | |
US10262447B2 (en) | Systems and methods for virtual entity animation | |
CN103761397A (zh) | 用于面曝光增材成型的3d模型切片及投影面生成方法 | |
Marchandise et al. | High‐quality surface remeshing using harmonic maps—Part II: Surfaces with high genus and of large aspect ratio | |
KR102132369B1 (ko) | 치아 분할 시스템 및 방법 | |
Xin et al. | Image fusion in craniofacial virtual reality modeling based on CT and 3dMD photogrammetry | |
Schmidt | Cutting cubesvisualizing implicit surfaces by adaptive polygonization | |
CN103295268A (zh) | 网格生成设备和方法 | |
Charton et al. | Mesh repairing using topology graphs | |
CN104537704B (zh) | 一种鸟类躯干模型的羽毛实时动态生成方法 | |
EP3230957B1 (en) | Virtual interactive definition of volumetric shapes | |
CN112190353B (zh) | 填补牙齿模型倒凹的方法及设备 | |
KR101699847B1 (ko) | 3차원 그래픽 렌더링을 위한 클리핑 장치 및 방법 | |
Phothong et al. | Quality improvement of 3D models reconstructed from silhouettes of multiple images | |
Yu et al. | Smooth geometry generation in additive manufacturing file format: problem study and new formulation | |
Bohak et al. | Fast segmentation, conversion and rendering of volumetric data using gpu | |
CN112353512B (zh) | 修整牙齿模型的方法及设备 | |
Maneewarn et al. | Haptic rendering for internal content of an implicit object | |
CN110428489B (zh) | 弧形通道规划方法及装置 | |
Onyeako | Resolution-Aware Slicing of CAD Data for 3D Printing |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |