一种基于贝塞尔曲线投影的义齿三维模型网格分割方法技术

技术编号:38661421 阅读:11 留言:0更新日期:2023-09-02 22:44
本发明专利技术涉及义齿模型分割技术领域;扫描过程出现扫描误差或者石膏模型制作时出现气泡等原因,导致扫描的三维模型带有气泡,影响数字化义齿修复设计的准确度。本发明专利技术提供一种基于贝塞尔曲线投影的义齿三维模型网格分割方法,对义齿三维模型的气泡区域进行分割,利用贝塞尔曲线选取裁剪区域,快速对选取的特征点拟合,降低算法的时间复杂度,实现对边界的精细控制,避免出现锯齿状边界,本发明专利技术的方法分割出的三角面片稳定性高、网格质量好,三角面片的边界平滑,能够减少分割出的三角面片边界的锯齿状,计算速度快,提高了分割效率。提高了分割效率。提高了分割效率。

【技术实现步骤摘要】
和第个特征点坐标获取向量再对三个向量求和获得起始点内部向量并将起始点内部向量保存到内部向量集合I中;
[0010]步骤5,创建内部三角面片集合L用于存储内部三角面片,根据边界三角面片集合B中每个边界三角面片的两个交点坐标,得到边界三角面片集合B的细分内部三角面片集合G;根据细分内部三角面片集合G中第一个细分内部三角面片G1的非交点坐标的顶点坐标为种子顶点坐标,循环选取边界三角面片集合B中所有边界三角面片包围区域的三角面片集合T中的内部三角面片,保存到内部三角面片集合L中,在内部三角面片集合L中,内部三角面片的边界光滑,有效减少因对三维模型进行分割而导致的锯齿状边界。
[0011]进一步,步骤1中,利用VTK库读取STL文件格式三维模型,将不同格式的输入网格模型转换为STL文件格式,并在牙齿模型的顶点坐标集合中交互式拾取特征点坐标,特征点坐标集合是三维模型的顶点坐标集合的子集。
[0012]进一步,特征点坐标的选择操作如下:利用VTK库的vtkSTLReader读取STL文件格式三维模型的顶点集合,接着用VTK的LeftButtonPressEvent产生鼠标左键点击信号,利用vtkPointPicker,交互式拾取特征点坐标。
[0013]进一步,步骤3中,将轨迹点坐标集合C的所有轨迹点坐标投影到三角面片集合T上获取轨迹点坐标在三角面片内的投影点坐标集合C'以及投影点坐标所在边界三角面片集合B,具体操作如下:
[0014]第一个轨迹点坐标C1与第一个特征点坐标F1相同,第一个轨迹点坐标C1在三角面片上的投影点坐标C'1就是第一个轨迹点坐标C1本身;
[0015]求第一个投影点坐标C'1以及对应投影点坐标所在的边界三角面片B1的方法为计算第二个轨迹点坐标C2与第一个投影点坐标C'1构成的向量与C'1的一环邻域三角面片质心坐标集合构成的向量集合中角度集合θ的最小值对应的索引idx所在的三角面片,该三角面片即为第一个边界三角面片集合B1,并将第一个投影点坐标C'1保存到投影点坐标集合C'中,第一个边界三角面片B1保存到边界三角面片集合B;
[0016]除去第一个轨迹点坐标C1,设轨迹点坐标集合中第h个轨迹点坐标C
h
(h>1),求投影点坐标以及边界三角面片的方法按的步骤如下:
[0017]步骤3.1对第h个轨迹点坐标C
h
进行移动处理,移动的方向向量为移动距离为方向向量的长度,得到移动后轨迹点坐标M
h

[0018]步骤3.2求移动后轨迹点坐标M
h
在第h

1个边界三角面片B
h
‑1的投影点坐标,即第h个投影点坐标C'
h
,判断第h个投影点坐标C'
h
是否在第h

1个边界三角面片B
h
‑1内;
[0019]若第h个投影点坐标C'
h
在第h

1个边界三角面片B
h
‑1内,则第h个投影点坐标C'
h
所在第h个边界三角面片B
h
就是第h

1个边界三角面片B
h
‑1,则将第h

1个边界三角面片B
h
‑1保存到边界三角面片集合B中;
[0020]若第h个投影点坐标c'
h
不在第h

1个边界三角面片B
h
‑1内,则判断第h个投影点坐标C'
h
所在的一环邻域的三角面片就是第h个边界三角面片B
h
,将第h个边界三角面片B
h
保存到边界三角面片集合B中;
[0021]步骤3.3循环以上步骤得到轨迹点坐标集合在三角面片集合上的投影点坐标集合C'以及边界三角面片集合B,每个边界三角面片至少包含一个投影点坐标。
[0022]进一步,步骤3中,在边界三角面片集合B中按照顺序选取相邻的边界三角面片,根据两个相邻边界三角面片内的投影点获取这两个相邻边界三角面片的交点,保存到交点坐标集合S中,具体操作如下:
[0023]首先,求得的边界三角面片集合B和投影点坐标集合C',每个边界三角面片至少包含一个投影点坐标;两个相邻边界三角面片有公共顶点坐标或者公共边向量,若两个相邻边界三角面片有公共顶点坐标,则该公共顶点坐标就是交点坐标,若两个相邻边界三角面片有公共边向量,则在这两个相邻边界三角面片内可以各自找到投影点坐标与公共边向量欧氏距离最短的公共边向量垂足点坐标,这两个公共边向量垂足点坐标的中点坐标作为相邻边界三角面片的公共边向量的交点坐标,将交点坐标保存到交点坐标集合S中。
[0024]进一步,步骤5中,根据边界三角面片集合B中每个边界三角面片的两个交点坐标和起始点内部向量求出边界三角面片集合B的细分内部三角面片集合G以及内部向量集合I,具体操作如下:
[0025]获取交点坐标集合S,每一个边界三角面片都有不相同的两个交点坐标;
[0026]对于始点内部向量与第一个边界三角面片B1的三个顶点坐标P'1,P'2,P'3,以及B1的两个交点坐标{S1,S2},有
[0027]对于内部向量与第p个边界三角面片B
p
的三个顶点坐标P'
3p
‑2,P'
3p
‑1,P'
3p
,以及B
p
的两个交点坐标{S
p
,S
p+1
};
[0028]求第p个细分内部三角面片G
p
和第p+1个内部向量I
p+1
的步骤如下:
[0029]步骤5.1求交点中心坐标S
c
=(S
p
+S
p+1
)/2,以及第p个边界三角面片B
p
的三个顶点坐标与交点中心坐标S
c
构成的向量分别为
[0030]步骤5.2根据第p个边界三角面片B
p
的三个顶点坐标与交点中心坐标S
c
构成的向量构成的向量与第p个内部向量I
p
的内积正负判断顶点坐标是否处于分割区域内部;若内积大于或者等于零,处于分割区域内部,若内积小于零,处于分割区域外部;将第p个边界三角面片B
p
的处于分割区域内部的顶点坐标保存到内部顶点坐标集合P”中;
[0031]步骤5.3根据内部顶点坐标集合P”的内部顶点坐标个数,分情况讨论;当内部顶点坐标集合P”中只有一个内部顶点坐标时,内部顶点坐标P”1
和交点坐标{S
p
,S
p+1
}将第p个边界三角面片B
p
分割为第p个细分内部三角面片G
p
。内部顶点坐标P”1
与交点中心坐标S
c
构成的向量为第p+1本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于贝塞尔曲线投影的义齿三维模型网格分割方法,其特征在于,利用贝塞尔曲线选取裁剪区域,快速对选取的特征点拟合,降低算法的时间复杂度,实现对边界的精细控制,避免出现锯齿状边界,具体包括以下步骤:步骤1,利用VTK库读取STL文件格式三维模型的顶点坐标集合P和三角面片集合T,并在牙齿模型上根据需要分割的网格区域交互式拾取k个三维模型顶点坐标作为特征点坐标,保存到特征点坐标集合F中;步骤2,将步骤1选取的特征点坐标利用贝塞尔曲线拟合,得到符合三次贝塞尔曲线的轨迹点坐标集合C;步骤3,将步骤2得到的轨迹点坐标集合C中的所有轨迹点坐标投影到三维模型的三角面片集合T上,获取轨迹点坐标在三角面片内的投影点坐标集合h'以及投影点坐标所在边界三角面片集合B;在边界三角面片集合B中按照顺序选取两个相邻的三角面片,根据两个相邻边界三角面片内的投影点获取这两个相邻边界三角面片的交点坐标,保存到交点坐标集合S中;步骤4,根据特征点坐标集合F中所有特征点坐标的一环邻域所在三角面片的法向量求算术平均,得到特征点坐标集合C的平均法向量根据特征点坐标集合F中第一个特征点坐标F1和第个特征点坐标获取向量特征点坐标集合F中第一个特征点坐标F1和第个特征点坐标获取向量再对三个向量求和获得起始点内部向量并将起始点内部向量保存到内部向量集合I中;步骤5,创建内部三角面片集合L用于存储内部三角面片,根据边界三角面片集合B中每个边界三角面片的两个交点坐标,得到边界三角面片集合B的细分内部三角面片集合G;根据细分内部三角面片集合G中第一个细分内部三角面片G1的非交点坐标的顶点坐标为种子顶点坐标,循环选取边界三角面片集合B中所有边界三角面片包围区域的三角面片集合T中的内部三角面片,保存到内部三角面片集合L中,在内部三角面片集合L中,内部三角面片的边界光滑,有效减少因对三维模型进行分割而导致的锯齿状边界。2.根据权利要求1所述的基于贝塞尔曲线投影的义齿三维模型网格分割方法,其特征在于,所述步骤1中,利用VTK库读取STL文件格式三维模型,将不同格式的输入网格模型转换为STL文件格式,并在牙齿模型的顶点坐标集合中交互式拾取特征点坐标,特征点坐标集合是三维模型的顶点坐标集合的子集。3.根据权利要求2所述的基于贝塞尔曲线投影的义齿三维模型网格分割方法,其特征在于,所述特征点坐标的选择操作如下:利用VTK库的vtkSTLReader读取STL文件格式三维模型的顶点集合,接着用VTK的LeftButtonPressEvent产生鼠标左键点击信号,利用vtkPointPicker,交互式拾取特征点坐标。4.根据权利要求1所述的一种基于贝塞尔曲线投影的义齿三维模型网格分割方法,其特征在于:所述步骤3中,将轨迹点坐标集合C的所有轨迹点坐标投影到三角面片集合T上获取轨迹点坐标在三角面片内的投影点坐标集合C'以及投影点坐标所在边界三角面片集合B,具体操作如下:
第一个轨迹点坐标C1与第一个特征点坐标F1相同,第一个轨迹点坐标C1在三角面片上的投影点坐标C'1就是第一个轨迹点坐标C1本身;求第一个投影点坐标C'1以及对应投影点坐标所在的边界三角面片B1的方法为计算第二个轨迹点坐标C2与第一个投影点坐标C'1构成的向量与C'1的一环邻域三角面片质心坐标集合构成的向量集合中角度集合θ的最小值对应的索引idx所在的三角面片,该三角面片即为第一个边界三角面片集合B1,并将第一个投影点坐标C'1保存到投影点坐标集合C'中,第一个边界三角面片B1保存到边界三角面片集合B;除去第一个轨迹点坐标C1,设轨迹点坐标集合中第h个轨迹点坐标C
h
(h>1),求投影点坐标以及边界三角面片的方法按的步骤如下:步骤3.1对第h个轨迹点坐标C
h
进行移动处理,移动的方向向量为移动距离为方向向量的长度,得到移动后轨迹点坐标M
h
;步骤3.2求移动后轨迹点坐标M
h
在第h

1个边界三角面片B
h
‑1的投影点坐标,即第h个投影点坐标C'
h
,判断第h个投影点坐标C'
h
是否在第h

1个边界三角面片B
h
‑1内;若第h个投影点坐标C'
h
在第h

1个边界三角面片B
h
‑1内,则第h个投影点坐标C'
h
所在第h个边界三角面片B
h
就是第h

1个边界三角面片B
h
‑1,则将第h

1个边界三角面片B
h
‑1保存到边界三角面片集合B中;若第h个投影点坐标C'
h
不在第h

1个边界三角面片B
h
‑1内,则判断第h个投影点坐标C'
h
所在的一环邻域的三角面片就是第h个边界三角面片B
h
...

【专利技术属性】
技术研发人员:陈祥宇蔡冬梅牛力赵鹏飞张波刘博
申请(专利权)人:北京联袂义齿技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1