CN116342849A - 在三维网格上生成牙模倒凹区域的方法 - Google Patents

在三维网格上生成牙模倒凹区域的方法 Download PDF

Info

Publication number
CN116342849A
CN116342849A CN202310603006.7A CN202310603006A CN116342849A CN 116342849 A CN116342849 A CN 116342849A CN 202310603006 A CN202310603006 A CN 202310603006A CN 116342849 A CN116342849 A CN 116342849A
Authority
CN
China
Prior art keywords
point
vertex
points
vector
plane
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
Application number
CN202310603006.7A
Other languages
English (en)
Other versions
CN116342849B (zh
Inventor
彭栩涛
王志涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Chenglian Laser Technology Co Ltd
Original Assignee
Nanjing Chenglian Laser Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Chenglian Laser Technology Co Ltd filed Critical Nanjing Chenglian Laser Technology Co Ltd
Priority to CN202310603006.7A priority Critical patent/CN116342849B/zh
Publication of CN116342849A publication Critical patent/CN116342849A/zh
Application granted granted Critical
Publication of CN116342849B publication Critical patent/CN116342849B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2012Colour editing, changing, or manipulating; Use of colour codes
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明涉及牙模技术领域,具体为一种在三维网格上生成牙模倒凹区域的方法,包括:对牙模顶点进行颜色标记,并且导入标准的STL牙模数据,将牙模数据存入到Mesh管理器中;找到与该颜色标记相同的所有点,并将它们标记为已访问状态,对于每个已选中的点,遍历其所有邻居节点,并计算它们在给定平面上的投影点,根据投影点和邻居节点到平面的距离计算每个点的权重;将该点集的边界进行密集化,生成更多的权重点;根据计算结果,将各个顶点标记为不同的颜色值,以展示网格的倒凹程度;根据上述计算出的倒凹区域,确定倒凹区域的上边界。基于边界密集化的改进使得权重分布更加均匀,从而在实现自然流畅的动画效果时能够减少非期望的扭曲和形变。

Description

在三维网格上生成牙模倒凹区域的方法
技术领域
本发明涉及牙模的仿真和建模技术领域,具体为一种使用边界密集化和投影技术在三维网格上生成牙模倒凹区域的方法。
背景技术
倒凹区域是三维网格中一个重要的概念,在建模和仿真过程中经常需要对其进行处理,因此,实际在牙模的建模和仿真应用中,由于倒凹区域具有复杂的形状和结构,因此难以通过传统的方法来精确地捕捉这种几何体的边界。为了解决这个问题,研究人员提出了一种称为边界密集化和投影技术的方法,用于生成倒凹区域的三维网格。
发明内容
针对上述不足,本发明的目的是提供一种使用边界密集化和投影技术在三维网格上生成牙模倒凹区域的方法。
本发明提供了如下的技术方案:
在三维网格上生成牙模倒凹区域的方法,包括如下具体步骤:
S1.对牙模顶点进行颜色标记,并且导入标准的STL牙模数据,将牙模数据存入到Mesh管理器中;
S2.通过搜索与步骤S1中颜色标记相关联的点,并将它们标记为已访问状态,对于每个已选择的点,执行邻域搜索算法得到其所有邻居节点,然后使用给定平面方程来计算它们在该平面上的投影点,并结合距离度量方法计算每个点的权重;
S3.将步骤S1中牙模顶点点集的边界进行密集化,生成更多的权重点;
S4.基于计算出的权重值和阈值,对牙模三角形网格上的每个顶点赋予不同的颜色值以呈现网格表面的微小起伏和倒凹区域;
S5.根据步骤S4计算出的倒凹区域,确定倒凹区域的上边界。
作为一种三维网格上生成牙模倒凹区域的方法的优选技术方案,步骤S1具体包括如下步骤:
S01.将牙模的每个顶点i的坐标沿着Y轴方向偏移0.0001mm得到新的顶点i;
S02.顶点i处发射一条与向量m_dir方向相同的射线,并检测该射线是否与牙模三角形网格相交,即计算射线与牙模三角形网格的最近相交点;其中,m_dir是顶点i相对于坐标原点的方向向量;
S03.分别计算最近相交点到i的距离Vi和最近相交点到点i相邻顶点点j的距离Vj,如果Vi大于Vj,则认为j是一个凸出顶点,并进行颜色标记。
作为一种三维网格上生成牙模倒凹区域的方法的优选技术方案,步骤S03具体为:
在处理凸出顶点的判别时,需要计算顶点i与其附近所有距离小于某个阈值的顶点j的法向量cross;
cross的计算公式为:
Figure SMS_1
(1)
其中,Avg_j是所有与顶点j相连接的顶点的平均3D坐标位置,
Figure SMS_2
为顶点i的3D坐标位置,/>
Figure SMS_3
为顶点j的3D坐标位置;
然后根据cosinecross与cosinem_dir之间的大小关系,判断顶点j是否为凸出顶点。
作为一种三维网格上生成牙模倒凹区域的方法的优选技术方案,
若cosinecross>cosinem_dir,顶点j是为凸出顶点;
若cosinecross<cosinem_dir,顶点j不是凸出顶点;
其中,cosinecross为法向量cross的方向余弦,cosinem_dir为指定方向m_dir的方向余弦。
作为一种三维网格上生成牙模倒凹区域的方法的优选技术方案,步骤S2具体包括如下步骤:
S21.计算每个点的投影点,并创建切平面;
S22.权重计算:通过计算点在法向量方向上的分量,将点到平面的距离乘以正或负符号进行修正,得到顶点的权重w。
作为一种三维网格上生成牙模倒凹区域的方法的优选技术方案,步骤S21具体包括:
将三维空间中的一个点point投影到由 point1和 point2两个点确定的线段上,得到在线段上距离point最近的点 projPoint;
投影点projPoint的计算公式,如下:
Figure SMS_4
(2)
其中,t表示 projPoint与线段起点point1之间的比例关系,其数学表达式为:
Figure SMS_5
(3)
其中,
Figure SMS_6
表示从point1指向point 的向量,/>
Figure SMS_7
表示由point1指向point2的向量,/>
Figure SMS_8
是/>
Figure SMS_9
的长度平方;
Figure SMS_10
=[point1,point2]]表示由两点确定线段的方向向量,根据投影点projPoint和/>
Figure SMS_11
定义平面的法向量,由于/>
Figure SMS_12
是线段的方向向量,根据切平面的几何含义,我们可以将/>
Figure SMS_13
视为切平面的法向量;
根据平面定义,可以使用投影点p即projPoint 和法向量
Figure SMS_14
来构造平面方程:
Figure SMS_15
(4)
其中,
Figure SMS_16
表示空间中任一点坐标位置,p表示为投影点的空间坐标位置,/>
Figure SMS_17
是切平面的法向量也就是/>
Figure SMS_18
投影点位置方程为:
Figure SMS_19
(5);
使用投影点和法向量构造切平面:将投影点位置方程(5)带入上述平面方程(4)中,可得到切平面的解析式:
Figure SMS_20
(6)
其中,p是投影点的空间坐标位置,
Figure SMS_21
是线段的方向向量,p1是线段起点,该平面与直线垂直,且过给定点p。
作为一种三维网格上生成牙模倒凹区域的方法的优选技术方案,步骤S22具体包括:
Figure SMS_22
投影到法向量/>
Figure SMS_23
方向上,得到投影向量长度d,根据点p在法向量方向上的位置,判断投影点 projPoint是否在法向量/>
Figure SMS_24
的同侧,若不是,则将d取反,从而保证最终权重值的符号正确,即:
Figure SMS_25
(7)
其中,
Figure SMS_26
表示从点p到已知平面上的任意一点p~ 的位置向量,/>
Figure SMS_27
表示已知点p0的位置向量,/>
Figure SMS_28
表示待投影点的位置向量,平面由法向量/>
Figure SMS_29
和过平面上已知点p0的一个位置向量/>
Figure SMS_30
确定,/>
Figure SMS_31
表示法向量的模长,(a,b,c)为/>
Figure SMS_32
的分量。
作为一种三维网格上生成牙模倒凹区域的方法的优选技术方案,步骤S3具体为:
S31.计算边界点:对于每个点pi,找到以pi为中心,半径为r(即邻域半径)内的所有点组成邻域点集Nr(pi);
Figure SMS_33
(8)
计算点pi的领域密度p(pi),即邻域点个数,公式为:
Figure SMS_34
(9)
定义点pi的距离di,di表示与pi距离最近的、邻域密度比pi更高的点的距离,如果pi的一圈相邻点的领域密度都小于点pi的邻域密度,则di等于邻域半径r,如果点pi的领域密度小于等于阈值Pmin,或者di小于等于距离阈值Dmin,则将它标记为边界点;
S32.计算边界边:根据S31得到的边界点,计算边界边Eij的长度Lij以及方向
Figure SMS_35
计算边界边Eij的长度:
Figure SMS_36
(10)
其中,
Figure SMS_37
表示pi和pj之间的距离;
计算边界边Eij的方向,pi在三维空间中的坐标(xi,yi,zi),pj在三维空间中的坐标(xj,yj,zj);
Figure SMS_38
(11)
最后将连接所有相邻边界点pi、pj所得到的边界边Eij存储到集合Eb中;
S33.边界密集化:首先对于每一条边界边Eij∈Eb,将其按照一定长度Ls平均地分割成Ns段小线段Si={(Xi1,Yi1 ),…,(Xim,Yim)},其中m=Ns+1;
每个小线段包含起点和终点,即Xij和Yij为两个三维坐标系下的点,接着,在每个小线段上等间距生成多个权重点Pijk,即Si上的第j段小线段中的第k个权重点,它的位置由以下公式计算得来:
Figure SMS_39
(12)
其中,Xij和Yij表示小线段Si的两个端点;Ls为小线段Si的长度;N为在该小线段上均匀生成的权重点数目;j为当前处理的小线段Si的序号,范围从1到Ns;k为当前处理的小线段Si中的第k个点,范围从1到N;kL8和N8为Khovanov-Piazzola匹配理论中的名词,代表偶零链的Kashiwara-Lusztig基底和对应的拟单纯复形的节点数目;
需要注意:在计算Pijk时,第一个加数为小线段Si起点Xij,第二个加数相当于从Si起点把Si平均分成N等份中的第k份,并按比例沿着Si在空间中定位;第三个加数用于平移到不同的小线段Si之间,并保证细分后的面片具有与原始面片相同的拓扑结构。
作为一种三维网格上生成牙模倒凹区域的方法的优选技术方案,步骤S5具体为:
对于倒凹区域中的每个顶点,找到其所有相邻的三角形,并将这些三角形的法向量投影到平面上,得到的投影向量构成了该顶点周围三角形法向量所在的二维空间;
设倒凹区域中的某个顶点为P,其相邻三角形法向量为
Figure SMS_40
、/>
Figure SMS_41
、...、/>
Figure SMS_42
,且投影后所得到的向量在平面上的分量为v1、v2...vm
将每个投影向量展开到极坐标系中,计算每个向量与x轴之间的极角
Figure SMS_43
,表示为:
Figure SMS_44
(13)
其中,atan2(y,x)是求点(x,y)与原点的连线与x轴正半轴之间的夹角;
Figure SMS_45
表示向量/>
Figure SMS_46
在x轴上的分量,/>
Figure SMS_47
表示向量/>
Figure SMS_48
在y轴上的分量,考虑到第二象限和第三象限的情况,使用atan2而不是简单的arctan函数;
对于所有的角度
Figure SMS_49
,按照从小到大的顺序排序,将排序后的角度构成一个有序集合/>
Figure SMS_50
计算累积分布函数(CDF),即集合中每个元素出现的概率值,可以表示为:
Figure SMS_51
(14)
其中,i为
Figure SMS_52
集合中第i个元素,n为/>
Figure SMS_53
中所有元素的数量;
根据阈值
Figure SMS_54
确定哪些角度被认为是倾斜的,可以通过查找CDF中最靠近阈值/>
Figure SMS_55
的元素来实现,令CDF(j)≈theta,则认为前j个角度是倾斜的;
对于每个倾斜的角度
Figure SMS_56
,在对应的方向上沿着平面法向量/>
Figure SMS_57
构造一条射线,表示为:
Figure SMS_58
(15)
其中,u是一条射线上的参数值,参数u表示从倒凹区域的顶点沿着某一投影方向到交点的距离,通过逐渐增加参数u的值来移动该点,直至该点处于投影后的平面上,并与曲面相交的第一个点Q即为倒凹区域的上边界点。
本发明的有益效果是:
1.通过投影点计算和切平面构造,能够实现根据该点周围几何信息生成权重的功能,可以有效地控制变形效果,同时保持原始网格的几何特征;
2.基于边界密集化的改进使得权重分布更加均匀,从而在实现自然流畅的动画效果时能够减少非期望的扭曲和形变;
3.使用倒凹深度值作为衡量标准,能够客观评估网格的形状变化程度,方便进行后续的模型处理和动画渲染;
4.该方法可以应用于广泛的计算机图形学和动画应用领域,例如角色绑定、形状插值和表情变形等,具有一定的通用性和适用性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
图1是本发明提供的一种实施例所述的在三维网格上生成牙模倒凹区域的方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
名词解释:
Mesh管理器:存储读入的模型数据,在应用的时候只进行一次实例化,并且对每一个模型设置一个默认的名字,后续可以通过名字进行查询;
边界点:指在该点周围领域密度小于等于阈值Pmin,或距离阈值Dmin之内的点被标记为边界点。
邻域点集:对于每个点pi,以pi为中心、半径为r的圆形区域内包含的所有点组成该点的邻域点集Nr(pi)。
倒凹深度值:用于衡量顶点与相邻权重点之间的距离,表示顶点的倒凹程度。
切平面:经过投影点projPoint且法向量为
Figure SMS_59
的平面,用于计算顶点的权重。
投影点:将一个点沿着由point1和point2确定的线段方向向量
Figure SMS_60
上的投影点,用于计算切平面的位置和顶点的权重。
权重点:在网格的边界上添加的一组额外节点,用于生成更加均匀的权重分布。
边界密集化:对网格的边界进行加密,以增加权重点的数量,实现更加精细的权重计算。
倒凹区域:一颗牙齿直立,从上向下垂直看,视线无法直接照射到的区域;
倒凹上边界:指在该区域内沿着投影方向与曲面相交的第一个点,也就是该区域中距离顶部最近的点或边缘,因为它是沿着正常以下显示的视角在该区域中的最顶端,即倒凹区域的上部“边缘”。在计算机图形学和几何建模等领域中,对于倒凹区域进行处理和绘制时,通常需要确定倒凹区域的上边界,以便更准确地表达其形状和特征。
实施例1:参照图1,本实施例提供一种使用边界密集化和投影技术在三维网格上生成牙模倒凹区域的方法,包括如下具体步骤:
S1.对牙模顶点进行颜色标记,并且导入标准的STL牙模数据,将牙模数据存入到Mesh管理器中;
S2.通过搜索与步骤S1中颜色标记相关联的点,并将它们标记为已访问状态,对于每个已选择的点,执行邻域搜索算法得到其所有邻居节点,然后使用给定平面方程来计算它们在该平面上的投影点,并结合距离度量方法计算每个点的权重;
S3.将步骤S1中牙模顶点点集的边界进行密集化,生成更多的权重点;
S4.基于计算出的权重值和阈值,对牙模三角形网格上的每个顶点赋予不同的颜色值以呈现网格表面的微小起伏和倒凹区域;
S5.根据步骤S4计算出的倒凹区域,确定倒凹区域的上边界。
步骤S1具体包括如下步骤:
S01.将牙模的每个顶点i的坐标沿着Y轴方向偏移0.0001mm得到新的顶点i;
S02.顶点i处发射一条与向量m_dir方向相同的射线,并检测该射线是否与牙模三角形网格相交,即计算射线与牙模三角形网格的最近相交点;其中,m_dir是顶点i相对于坐标原点的方向向量;
S03.分别计算最近相交点到i的距离Vi和最近相交点到点i相邻顶点点j的距离Vj,如果Vi大于Vj,则认为j是一个凸出顶点,并进行颜色标记。
步骤S03具体为:在处理凸出顶点的判别时,需要计算顶点i与其附近所有距离小于某个特定阈值的顶点j的法向量cross,根据牙模三角形网格的质量,特定阈值的范围0.01mm至0.1mm;
cross的计算公式为:
Figure SMS_61
(1)
其中,Avg_j是所有与顶点j相连接的顶点的平均3D坐标位置,
Figure SMS_62
为顶点i的3D坐标位置,/>
Figure SMS_63
为顶点j的3D坐标位置;在计算cross向量时,需要将两个向量(/>
Figure SMS_64
到/>
Figure SMS_65
)和(/>
Figure SMS_66
到Avg_j)进行点乘运算,从而得到结果向量cross(i,j);
然后根据cosinecross与cosinem_dir之间的大小关系,判断顶点j是否为凸出顶点。
若cosinecross>cosinem_dir,顶点j是为凸出顶点;
若cosinecross<cosinem_dir,顶点j不是凸出顶点;
其中,cosinecross为法向量cross的方向余弦,cosinem_dir为指定方向m_dir的方向余弦。
实施例2:步骤S2具体包括如下步骤:
S21.计算每个点的投影点,并创建切平面;
S22.权重计算:通过计算点在法向量方向上的分量,将点到平面的距离乘以正或负符号进行修正,得到顶点的权重w。
进一步的,步骤S21具体包括:将三维空间中的一个点point 投影到由point1和point2两个点确定的线段上,得到在线段上距离point最近的点projPoint;
投影点projPoint的计算公式,如下:
Figure SMS_67
(2)
其中,t表示projPoint与线段起点point1之间的比例关系,其数学表达式为:
Figure SMS_68
(3)
其中,
Figure SMS_69
表示从point1指向point 的向量,/>
Figure SMS_70
表示由point1指向point2的向量,/>
Figure SMS_71
是/>
Figure SMS_72
的长度平方;
Figure SMS_73
=[point1,point2]表示由两点确定线段的方向向量,根据投影点projPoint和/>
Figure SMS_74
定义平面的法向量,由于/>
Figure SMS_75
是线段的方向向量,根据切平面的几何含义,我们可以将
Figure SMS_76
视为切平面的法向量;
根据平面定义,可以使用投影点p即projPoint 和法向量
Figure SMS_77
来构造平面方程:
Figure SMS_78
(4)
其中,
Figure SMS_79
表示空间中任一点坐标位置,p表示为投影点的空间坐标位置,/>
Figure SMS_80
是切平面的法向量也就是/>
Figure SMS_81
使用投影点和法向量构造切平面,具体为:
将投影点位置方程:
Figure SMS_82
(5)
带入上述平面方程(4)中,可得到下式:
Figure SMS_83
(6)
上式(6)展开可得:
Figure SMS_84
(7)
上式(7)整理可得:
Figure SMS_85
(8)
将上式(8)带回(6)中可得到切平面的解析式:
Figure SMS_86
(9)
Figure SMS_87
(10)
其中,p是投影点的空间坐标位置,
Figure SMS_88
是线段的方向向量,p1是线段起点的空间坐标位置,该平面与直线垂直,且过给定点p。
进一步的,步骤S22具体包括:
Figure SMS_89
投影到法向量/>
Figure SMS_90
方向上,得到投影向量长度d,根据点p在法向量方向上的位置,判断投影点projPoint是否在法向量/>
Figure SMS_91
的同侧,若不是,则将d取反,从而保证最终权重值的符号正确,即:
Figure SMS_92
(11)
其中,
Figure SMS_93
表示从点p到已知平面上的任意一点p~ 的位置向量,/>
Figure SMS_96
表示已知点p0的位置向量,/>
Figure SMS_99
表示待投影点的位置向量,平面由法向量/>
Figure SMS_94
和过平面上已知点p0的一个位置向量/>
Figure SMS_97
确定,/>
Figure SMS_98
表示法向量/>
Figure SMS_100
的模长,(a,b,c)为/>
Figure SMS_95
的分量。
实施例3:步骤S3具体为:
S31.计算边界点:对于每个点pi,找到以pi为中心,半径为r(即邻域半径)内的所有点组成邻域点集Nr(pi);
Figure SMS_101
(12)
需要说明的是:pj 表示某个数据集P中的另一个点,j是该点的索引值。pj和pi都属于数据集P。P表示一个数据集,它包括了多个数据点 {p1,p2,...,pn},其中每个数据点pi都有特定的属性和位置信息。d(pi,pj)表示pi和pj 之间的距离。在聚类算法中,通常采用欧式距离或曼哈顿距离等常见的距离度量方式计算两个点之间的距离。
计算点pi的领域密度p(pi),即邻域点个数,公式为:
Figure SMS_102
(13)
需要说明的是:|Nr(pi)|表示以数据点pi 为圆心,在距离其不超过r的范围内,与它距离不超过r的所有数据点的数量。其中,||表示计算集合中元素个数的操作符,也就是所谓的“集合的基数”或“集合的势”。例如,|{1,2,3}|=3,即集合 {1,2,3} 中有三个元素。因此,|Nr(pi)| 就表示邻域半径为r时,以数据点pi为圆心的邻域内共有多少个数据点。di表示与pi距离最近的、邻域密度比pi更高的点的距离,如果如果pi的一圈相邻点的领域密度都小于点pi的邻域密度,则di等于邻域半径r,如果点pi的领域密度小于等于阈值Pmin,或者di小于等于距离阈值Dmin,则将它标记为边界点;
S32.计算边界边:根据S31得到的边界点,计算边界边Eij的长度Lij以及方向
Figure SMS_103
计算边界边Eij的长度:
Figure SMS_104
(14)
其中,
Figure SMS_105
表示pi和pj之间的距离;
计算边界边Eij的方向,pi在三维空间中的坐标(xi,yi,zi),pj在三维空间中的坐标(xj,yj,zj);
Figure SMS_106
(15)
最后将连接所有相邻边界点pi、pj所得到的边界边Eij存储到集合Eb中;
S33.边界密集化:首先对于每一条边界边Eij∈Eb,将其按照一定长度Ls平均地分割成Ns段小线段Si={(Xi1,Yi1 ),…,(Xim,Yim)},其中m=Ns+1;
每个小线段包含起点和终点,即Xij和Yij为两个三维坐标系下的点,接着,在每个小线段上等间距生成多个权重点Pijk,即Si上的第j段小线段中的第k个权重点,它的位置由以下公式计算得来:
Figure SMS_107
(16)
其中,Xij和Yij表示小线段Si的两个端点;Ls为小线段Si的长度;N为在该小线段上均匀生成的权重点数目;j为当前处理的小线段Si的序号,范围从1到Ns;k为当前处理的小线段Si中的第k个点,范围从1到N;kL8和N8为Khovanov-Piazzola匹配理论中的名词,代表偶零链的Kashiwara-Lusztig基底和对应的拟单纯复形的节点数目;
需要注意:在计算Pijk时,第一个加数为小线段Si起点Xij,第二个加数相当于从Si起点把Si平均分成N等份中的第k份,并按比例沿着Si在空间中定位;第三个加数用于平移到不同的小线段Si之间,并保证细分后的面片具有与原始面片相同的拓扑结构。
实施例4:步骤S5具体为:
对于倒凹区域中的每个顶点,找到其所有相邻的三角形,并将这些三角形的法向量投影到平面上,得到的投影向量构成了该顶点周围三角形法向量所在的二维空间;
需要说明的是:设倒凹区域中的某个顶点为P,其相邻三角形法向量为
Figure SMS_108
、/>
Figure SMS_109
、...、/>
Figure SMS_110
,且投影后所得到的向量在平面上的分量为v1、v2...vm
将每个投影向量展开到极坐标系中,计算每个向量与x轴之间的极角
Figure SMS_111
,表示为:
Figure SMS_112
(13)
其中,atan2(y,x)是求点(x,y)与原点的连线与x轴正半轴之间的夹角;
Figure SMS_113
表示向量/>
Figure SMS_114
在x轴上的分量,/>
Figure SMS_115
表示向量/>
Figure SMS_116
在y轴上的分量,考虑到第二象限和第三象限的情况,使用atan2而不是简单的arctan函数;
对于所有的角度
Figure SMS_117
,按照从小到大的顺序排序,将排序后的角度构成一个有序集合/>
Figure SMS_118
计算累积分布函数(CDF),即集合中每个元素出现的概率值,可以表示为:
Figure SMS_119
(14)
其中,i为
Figure SMS_120
集合中第i个元素,n为/>
Figure SMS_121
中所有元素的数量;
根据阈值
Figure SMS_122
确定哪些角度被认为是倾斜的,可以通过查找CDF中最靠近阈值/>
Figure SMS_123
的元素来实现,令CDF(j)≈theta,则认为前j个角度是倾斜的;
对于每个倾斜的角度
Figure SMS_124
,在对应的方向上沿着平面法向量/>
Figure SMS_125
构造一条射线,表示为:
Figure SMS_126
(15)
其中,u是一条射线上的参数值,参数u表示从倒凹区域的顶点沿着某一投影方向到交点的距离,通过逐渐增加参数u的值来移动该点,直至该点处于投影后的平面上,并与曲面相交的第一个点Q即为倒凹区域的上边界点。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (9)

1.在三维网格上生成牙模倒凹区域的方法,其特征在于,包括如下具体步骤:
S1.对牙模顶点进行颜色标记,并且导入标准的STL牙模数据,将牙模数据存入到Mesh管理器中;
S2.通过搜索与步骤S1中颜色标记相关联的点,并将它们标记为已访问状态,对于每个已选择的点,执行邻域搜索算法得到其所有邻居节点,然后使用给定平面方程来计算它们在该平面上的投影点,并结合距离度量方法计算每个点的权重;
S3.将步骤S1中牙模顶点点集的边界进行密集化,生成更多的权重点;
S4.基于计算出的权重值和阈值,对牙模三角形网格上的每个顶点赋予不同的颜色值以呈现网格表面的微小起伏和倒凹区域;
S5.根据步骤S4计算出的倒凹区域,确定倒凹区域的上边界。
2.根据权利要求1所述在三维网格上生成牙模倒凹区域的方法,其特征在于,步骤S1具体包括如下步骤:
S01.将牙模的每个顶点的坐标沿着Y轴方向偏移0.0001mm得到新的顶点i;
S02.顶点i处发射一条与向量m_dir方向相同的射线,并检测该射线是否与牙模三角形网格相交,即计算射线与牙模三角形网格的最近相交点;其中,m_dir是顶点i相对于坐标原点的方向向量;
S03.分别计算最近相交点到i的距离Vi和最近相交点到点i相邻顶点点j的距离Vj,如果Vi大于Vj,则认为j是一个凸出顶点,并进行颜色标记。
3.根据权利要求2所述在三维网格上生成牙模倒凹区域的方法,其特征在于,步骤S03具体为:
在处理凸出顶点的判别时,计算顶点i与其附近所有距离小于某个阈值的顶点j的法向量cross;
cross的计算公式为:
Figure QLYQS_1
(1)
其中,Avg_j是所有与顶点j相连接的顶点的平均3D坐标位置,
Figure QLYQS_2
为顶点i的3D坐标位置,/>
Figure QLYQS_3
为顶点j的3D坐标位置。
4.根据权利要求3所述在三维网格上生成牙模倒凹区域的方法,其特征在于,根据cosinecross与cosinem_dir之间的大小关系,判断顶点j是否为凸出顶点,
若cosinecross>cosinem_dir,顶点j是为凸出顶点;
若cosinecross<cosinem_dir,顶点j不是凸出顶点;
其中,cosinecross为法向量cross的方向余弦,cosinem_dir为指定方向m_dir的方向余弦。
5.根据权利要求1所述在三维网格上生成牙模倒凹区域的方法,其特征在于,步骤S2具体包括如下步骤:
S21.计算每个已选择的点的投影点,并创建切平面;
S22.权重计算:通过计算每个已选择的点在法向量方向上的分量,将点到平面的距离乘以正或负符号进行修正,得到顶点的权重w。
6.根据权利要求5所述在三维网格上生成牙模倒凹区域的方法,其特征在于,步骤S21具体包括:
将三维空间中的一个点point投影到由 point1和point2两个点确定的线段上,得到在线段上距离点point最近的点projPoint;
投影点projPoint的计算公式,如下:
Figure QLYQS_4
(2)
其中,t表示projPoint与线段起点point1之间的比例关系,其数学表达式为:
Figure QLYQS_5
(3)
其中,
Figure QLYQS_6
表示从point1指向point 的向量,/>
Figure QLYQS_7
表示由point1指向point2的向量,
Figure QLYQS_8
是/>
Figure QLYQS_9
的长度平方;
Figure QLYQS_10
=[point1,point2]表示由两点确定线段的方向向量,根据投影点projPoint和切平面的几何含义,将/>
Figure QLYQS_11
视为切平面的法向量;
根据平面定义,使用投影点p即projPoint和法向量
Figure QLYQS_12
来构造平面方程:/>
Figure QLYQS_13
(4)
其中,
Figure QLYQS_14
表示空间中任一点坐标位置,p表示为投影点的空间坐标位置,/>
Figure QLYQS_15
是切平面的法向量也就是/>
Figure QLYQS_16
投影点位置方程为:
Figure QLYQS_17
(5);
使用投影点和法向量构造切平面:将投影点位置方程(5)带入上述平面方程(4)中,可得到切平面的解析式:
Figure QLYQS_18
(6)
其中,p是投影点的空间坐标位置,
Figure QLYQS_19
是线段的方向向量,p1是线段起点的空间坐标位置,该平面与直线垂直,且过给定点p。
7.根据权利要求6所述在三维网格上生成牙模倒凹区域的方法,其特征在于,步骤S22具体包括:
Figure QLYQS_20
投影到法向量/>
Figure QLYQS_21
方向上,得到投影向量长度d,根据点p在法向量方向上的位置,判断投影点projPoint是否在法向量/>
Figure QLYQS_22
的同侧,若不是,则将d取反,从而保证最终权重值的符号正确,即:
Figure QLYQS_23
(7)
其中,
Figure QLYQS_24
表示从点p到已知平面上的任意一点p~ 的位置向量,/>
Figure QLYQS_27
表示已知点p0的位置向量,/>
Figure QLYQS_29
表示待投影点的位置向量,平面由法向量/>
Figure QLYQS_26
和过平面上已知点p0的一个位置向量/>
Figure QLYQS_28
确定,/>
Figure QLYQS_30
表示法向量/>
Figure QLYQS_31
的模长,(a,b,c)为/>
Figure QLYQS_25
的分量。
8.根据权利要求1所述在三维网格上生成牙模倒凹区域的方法,其特征在于,步骤S3具体为:
S31.计算边界点:找以顶点pi为中心、领域半径r内所有点的组成,即邻域点集Nr(pi):
Figure QLYQS_32
(8)
计算点pi的领域密度
Figure QLYQS_33
,即邻域点个数,公式为:/>
Figure QLYQS_34
(9)
如果pi的一圈相邻点的领域密度都小于点pi的邻域密度,则di等于邻域半径r;
如果点pi的领域密度小于等于阈值Pmin,或者di小于等于距离阈值Dmin,则将它标记为边界点;
其中,di表示与pi距离最近的、邻域密度比pi高的点的距离;
S32.计算边界边:根据S31得到的边界点,计算边界边Eij的长度Lij以及方向
Figure QLYQS_35
计算边界边Eij的长度:
Figure QLYQS_36
(10)
其中,
Figure QLYQS_37
表示pi和pj之间欧几里得距离;
计算边界边Eij的方向,pi在三维空间中的坐标(xi,yi,zi),pj在三维空间中的坐标(xj,yj,zj);
Figure QLYQS_38
(11)
最后将连接所有相邻边界点pi、pj所得到的边界边Eij存储到集合Eb中;
S33.边界密集化:首先对于每一条边界边Eij∈Eb,将其按照长度Ls平均地分割成Ns段小线段;
Si={(Xi1,Yi1 ),…,(Xim,Yim)},其中,m=Ns+1,Si表示为Ns段小线段的集合;
每个小线段包含起点和终点,即Xij和Yij为指两个三角形面片中的三维坐标点,代表边界边Eij的两个端点的在牙模网格上的位置,接着,在每个小线段上等间距生成多个权重点Pijk,即Si上的第j段小线段中的第k个权重点,它的位置由以下公式计算得来:
Figure QLYQS_39
(12)
其中,Xij和Yij表示小线段Si的两个端点;Ls为小线段Si的长度;N为在该小线段上均匀生成的权重点数目;j为当前处理的小线段Si的序号,范围从1到Ns;k为当前处理的小线段Si中的第k个点,范围从1到N;kL8和N8为Khovanov-Piazzola匹配理论中的名词,代表偶零链的Kashiwara-Lusztig基底和对应的拟单纯复形的节点数目。
9.根据权利要求1所述在三维网格上生成牙模倒凹区域的方法,其特征在于,步骤S5具体为:
设倒凹区域中的某个顶点为P,其相邻三角形法向量为
Figure QLYQS_40
、/>
Figure QLYQS_41
、...、/>
Figure QLYQS_42
,且投影后所得到的向量在平面上的分量为v1、v2...vm
将每个投影向量展开到极坐标系中,计算每个向量与x轴之间的极角
Figure QLYQS_43
,表示为:
Figure QLYQS_44
(13)
其中,atan2(y,x)是求点(x,y)与原点的连线与x轴正半轴之间的夹角;
Figure QLYQS_45
表示向量
Figure QLYQS_46
在x轴上的分量,/>
Figure QLYQS_47
表示向量/>
Figure QLYQS_48
在y轴上的分量;
对于所有的角度
Figure QLYQS_49
,按照从小到大的顺序排序,将排序后的角度构成一个有序集合
Figure QLYQS_50
计算累积分布函数CDF,即集合中每个元素出现的概率值,表示为:CDF(i)=(i-0.5)/n(14)
其中,i为
Figure QLYQS_51
集合中第i个元素,n为/>
Figure QLYQS_52
中所有元素的数量;
查找出靠近阈值
Figure QLYQS_53
的CDF(j),则认为前j个角度是倾斜的;
对于每个倾斜的角度
Figure QLYQS_54
,在对应的方向上沿着平面法向量/>
Figure QLYQS_55
构造一条射线,表示为:
Figure QLYQS_56
(15)
其中,u是一条射线上的参数值,参数u表示从倒凹区域的顶点沿着某一投影方向到交点的距离;
通过增加参数u的值来移动该点,直至该点处于投影后的平面上,并与曲面相交的第一个点Q即为倒凹区域的上边界点。
CN202310603006.7A 2023-05-26 2023-05-26 在三维网格上生成牙模倒凹区域的方法 Active CN116342849B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310603006.7A CN116342849B (zh) 2023-05-26 2023-05-26 在三维网格上生成牙模倒凹区域的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310603006.7A CN116342849B (zh) 2023-05-26 2023-05-26 在三维网格上生成牙模倒凹区域的方法

Publications (2)

Publication Number Publication Date
CN116342849A true CN116342849A (zh) 2023-06-27
CN116342849B CN116342849B (zh) 2023-09-08

Family

ID=86884379

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310603006.7A Active CN116342849B (zh) 2023-05-26 2023-05-26 在三维网格上生成牙模倒凹区域的方法

Country Status (1)

Country Link
CN (1) CN116342849B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014104819A1 (de) * 2014-03-26 2015-10-01 Heraeus Deutschland GmbH & Co. KG Träger und/oder Clip für Halbleiterelemente, Halbleiterbauelement und Verfahren zur Herstellung
CN108961398A (zh) * 2018-07-12 2018-12-07 杭州美齐科技有限公司 一种基于法向量夹角的牙齿倒凹网格模型自动填充算法
CN112308895A (zh) * 2019-07-31 2021-02-02 天津工业大学 一种构建真实感牙列模型的方法
CN112699808A (zh) * 2020-12-31 2021-04-23 深圳市华尊科技股份有限公司 密集目标检测方法、电子设备及相关产品
CN114663637A (zh) * 2022-04-24 2022-06-24 杭州雅智医疗技术有限公司 三维牙齿模型倒凹区域填充方法、装置及应用

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014104819A1 (de) * 2014-03-26 2015-10-01 Heraeus Deutschland GmbH & Co. KG Träger und/oder Clip für Halbleiterelemente, Halbleiterbauelement und Verfahren zur Herstellung
CN108961398A (zh) * 2018-07-12 2018-12-07 杭州美齐科技有限公司 一种基于法向量夹角的牙齿倒凹网格模型自动填充算法
CN112308895A (zh) * 2019-07-31 2021-02-02 天津工业大学 一种构建真实感牙列模型的方法
CN112699808A (zh) * 2020-12-31 2021-04-23 深圳市华尊科技股份有限公司 密集目标检测方法、电子设备及相关产品
CN114663637A (zh) * 2022-04-24 2022-06-24 杭州雅智医疗技术有限公司 三维牙齿模型倒凹区域填充方法、装置及应用

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
缪永伟;林海斌;寿华好;: "基于Hermite插值的网格拼接和融合", 中国图象图形学报, no. 12 *

Also Published As

Publication number Publication date
CN116342849B (zh) 2023-09-08

Similar Documents

Publication Publication Date Title
US8711143B2 (en) System and method for interactive image-based modeling of curved surfaces using single-view and multi-view feature curves
CN107610061B (zh) 一种基于二维投影的保边点云孔洞修补方法
Sheffer et al. Robust spherical parameterization of triangular meshes
WO2021203711A1 (zh) 一种基于几何重建模型的等几何分析方法
US20060164415A1 (en) Method, apparatus and computer program product enabling a dynamic global parameterization of triangle meshes over polygonal domain meshes
WO2011079421A1 (zh) 对点云数据进行全局参数化和四边形网格化方法
Campen et al. Walking on broken mesh: Defect‐tolerant geodesic distances and parameterizations
Lai et al. An incremental approach to feature aligned quad dominant remeshing
CN110689620A (zh) 一种多层次优化的网格曲面离散样条曲线设计方法
CN116342849B (zh) 在三维网格上生成牙模倒凹区域的方法
KR101032397B1 (ko) 구면 좌표계를 사용하는 3차원 형상 표현장치 및 방법
CN110796735B (zh) Nurbs曲面有限元板壳网格划分方法及计算机实现系统
Vidal et al. Combinatorial mesh optimization
Wang et al. A novel slicing-based regularization method for raw point clouds in visible IoT
JP2006277712A (ja) 3次元モデルのフィッティング装置、方法及びプログラム
Kou et al. Adaptive spline surface fitting with arbitrary topological control mesh
CN106887042A (zh) 基于gpu的自适应曲面细分方法
JP2000251095A (ja) ポリゴンメッシュの領域分割方法及びその装置並びに情報記録媒体
Ma et al. The application of carving technique based on 3D printing digitalization technology in jewelry design
CN117437362B (zh) 一种三维动漫模型生成方法及系统
CN114296397B (zh) 一种用于神经网络的零件模型几何特征提取方法
CN117171867B (zh) 一种建筑模型显示方法及系统
Liyan et al. Segmentation and parametrization of arbitrary polygon meshes
Huang et al. A novel tool path planning method for machining triangular mesh surfaces based on geodesics in heat theory
Shikhare et al. A two phase technique for optimal tessellation of complex geometric models

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