一种基于拓扑重建的义齿表面局部变形方法

文档序号:6641054阅读:232来源:国知局
一种基于拓扑重建的义齿表面局部变形方法
【专利摘要】本发明公开了一种基于拓扑重建的义齿表面局部变形方法,包括有以下步骤:A、根据义齿模型数据计算拖动点的影响区域;B、在拖动点的影响区域中,删除拖动点之外的所有点的拓扑信息从而形成孔洞,并存储该孔洞边界上所有点的信息;C、根据拖动点和上述孔洞边界点信息,通过变形操作对孔洞进行修补。本发明方法利用投影距离来作为义齿模型上的拓扑距离,更为接近真实拓扑距离的投影距离,并利用插值的方法重建拓扑并作为局部变形的结果,完全避免了义齿模型三角网格自交的问题。本发明作为一种基于拓扑重建的义齿表面局部变形方法可广泛应用于义齿修复领域。
【专利说明】一种基于拓扑重建的义齿表面局部变形方法

【技术领域】
[0001] 本发明涉及义齿修复领域,尤其是一种基于拓扑重建的义齿表面局部变形方法。

【背景技术】
[0002] 名词定义: 1、拖动点:局部变形的依据,牙齿预备体模型根据拖动点移动的始末位置来决定牙齿 预备体模型局部变形的趋势。
[0003] 2、影响区域:拖动点移动的时候,称牙齿预备体模型的变形区域为拖动点的影响 区域。
[0004] 3、投影距离:将牙齿预备体模型上两个点连接起来得到一条线段,该线段在原模 型上的的投影称为投影线段,投影线段的距离称为投影距离。
[0005] 4、插值点:在给定约束条件下生成的点。
[0006] 5、N环邻域点:拓扑模型上,B点到A点所需经过的最短边数,若这个数值为1,就 说B是A的1环邻域点,如果这个数值是N,那么就说B是A的N环邻域点。如图1所示, 根据N环邻域的定义可以得出,B是A的4环邻域(这个路径可以有多条,为了保证一致性, 选取总距离最小的路径)。
[0007] 相关背景: 牙齿修复体曲面局部变形是口腔修复CAD/CAM系统的核心技术之一,其功能是针对患 者口内特定的约束条件修改修复体的表面,该算法的效率直接关联到CAD/CAM系统的交互 体验。对此,现有技术中一公开了相应的研究成果,例如: 1、基于细分变形空间的局部变形方法,该方法首先构造修复体模型的细分变形空间, 并将数据映射到空间中,然后通过改变细分变形空间,间接改变修复体的局部形态;由于该 方法是通过改变细分空间来改变牙齿预备体,但是细分空间的界定并不直观,而且变形范 围难以确定。
[0008] 2、B样条曲线插值修复体模型,该方法通过B样条曲线插值修复体模型,然后通过 改变B样条曲线的控制点实现局部变形;由于该方法通过B样条曲线插值修复体模型,然后 通过改变B样条曲线的控制点实现局部变形,计算量大,对于实时性要求较高的系统来说 并不合适。
[0009] 3、曲线驱动的局部变形算法,该方法拟合特征线,并建立拟合之后的曲线与顶点 的映射关系,通过修改特征曲线来达到局部变形;这种方法虽然计算量相对于上述第二种 方法效率提高,但是效率的提高不足以满足良好交互性要求,以及凹凸处对变形点拓扑距 离的计算偏差较大,同时还可能存在自交问题。


【发明内容】

[0010] 为了解决上述技术问题,本发明的目的是:提供一种基于拓扑重建避免出现牙齿 预备模型三角网格自交问题的义齿表面局部变形方法。 toon] 本发明所采用的技术方案是:一种基于拓扑重建的义齿表面局部变形方法,包括 有以下步骤: A、 根据义齿模型数据计算拖动点的影响区域; B、 在拖动点的影响区域中,删除拖动点之外的所有点的拓扑信息从而形成孔洞,并存 储该孔洞边界上所有点的信息; C、 根据拖动点和上述孔洞边界点信息,通过变形操作对孔洞进行修补。
[0012] 进一步,所述步骤A具体包括有以下子步骤: A1、根据义齿模型数据得到最大投影距离R和最大邻域值N; A2、以最大邻域值N计算拖动点的所有邻域点,并存储于邻域点集合; A3、计算邻域点集合中每个点与拖动点连成的线段在义齿模型的曲面投影距离; A4、曲面投影距离不大于最大投影距离R所对应的领域点存储于影响区域点集合。
[0013] 进一步,所述步骤A3中的曲面投影距离为:邻域点集合中每个点与拖动点连成的 线段在义齿模型的三角形面片上投影线段长度的总和。
[0014] 进一步,所述步骤C具体包括有以下子步骤: C1、按顺序读取孔洞边界上的两个相邻的点; C2、分别在拖动点与上述两个相邻的点之间生成插值点; C3、按顺序连接插值点; C4、重复步骤C1-C3至遍历完孔洞边界上的所有两个相邻的点。
[0015] 本发明的有益效果是:本发明方法利用投影距离来作为义齿模型上的拓扑距离, 更为接近真实拓扑距离的投影距离,并利用插值的方法重建拓扑并作为局部变形的结果, 完全避免了义齿模型三角网格自交的问题。

【专利附图】

【附图说明】
[0016] 图1为四环邻域点示意图; 图2为本发明步骤流程图; 图3为本发明中拓扑网格关系局部图; 图4为本发明中投影线段及曲面示意图; 图5为本发明中投影距离计算示意图a; 图6为本发明中投影距离计算示意图b; 图7为坐标系中投影距离计算示意图; 图8为本发明中模型孔洞图; 图9为本发明中插值点连接图; 图10为本发明中生产插值点示意图。

【具体实施方式】
[0017] 下面结合附图对本发明的【具体实施方式】作进一步说明: 参照图2,本发明所采用的技术方案是:一种基于拓扑重建的义齿表面局部变形方法, 包括有以下步骤: A、根据义齿模型数据计算拖动点的影响区域; B、 在拖动点的影响区域中,删除拖动点之外的所有点的拓扑信息从而形成孔洞,并存 储该孔洞边界上所有点的信息; C、 根据拖动点和上述孔洞边界点信息,通过变形操作对孔洞进行修补。
[0018] 进一步作为优选的实施方式,所述步骤A具体包括有以下子步骤: A1、根据义齿模型数据得到最大投影距离R和最大邻域值N; 最大投影距离R和最大邻域值N根据义齿模型数据的规模产生,本发明将最大投影距 离R和最大邻域值N作为输入处理。
[0019]A2、以最大邻域值N计算拖动点的所有邻域点,并存储于邻域点集合; 邻域点的确定是为了确定投影线段的终点,从而确定投影线段,投影线段的起点为拖 动点。参照图3,以最大邻域值N=2为例,其中A为拖动点,点B、C、D、E为A的一环邻域点, 点F、G为A的二环邻域点,邻域点集合点信息存储至队列V_FIF0中,V_FIF0的数据单元为 一个结构体,定义为: structfifo_unit{ Pointpoint;intdis-N; } 其中point是义齿模型的网格点,dis_N是邻域值。
[0020]A3、计算邻域点集合中每个点与拖动点连成的线段在义齿模型的曲面投影距离; 进一步作为优选的实施方式,所述步骤A3中的曲面投影距离为:邻域点集合中每个点 与拖动点连成的线段在义齿模型的三角形面片上投影线段长度的总和。
[0021] 由于空间距离无法准确处理模型凹凸处的距离,预设邻域值无法解决模型网格不 均匀的情况,本发明技术方案中采用曲面投影距离,其具体计算方法如下: 参照图4,在三角网格模型的曲面AB⑶上,连接AC线段(其中A为拖动点,B为投影线 段的终点,投影终点在V_FIF0依次选取),计算AC在相应三角形面片的投影,计算这些投影 的和值作为AC的投影距离。如图4中A、C两点间的空间折线段AMNPQC,其投影距离很好 的反映了AC之间的拓扑距离。
[0022] 投影距离的计算可以转化为计算线段在单个三角形面片上的投影,分两种情况计 _ _ _ _ _aamammmaaaaia_ 算,参照图5和图6 :三角形ABC是网格模型的三角面片,有向线段J|f是投影向量,_是面ABC的法向。情况一(如图5)是计算的初始情况,起点为三角网格的顶点,投影线段为g ,那么在进进行下一段计算时,起点为N是在一条边上,此时对应的是情况二,如图6所示。 这两种情况涵盖了计算投影距离的所有情况。
[0023] 以情况一为例,具体计算方法如右图7所示,以三角面片ABC的法向为Z轴,以三 角面片所在平面为XY面,并以三角面片的一条边作为X轴,建立空间笛卡尔坐标系。
[0024] 可以在这个局部坐标系中求出N的坐标,将IanI保存并以N为起点进行相同的操 作。最终求和可得投影距离L。
[0025]A4、曲面投影距离不大于最大投影距离R所对应的领域点存储于影响区域点集 合; 根据拖动点的最大邻域值N和最大影响半径R,构建拖动点的邻域信息队列P_FIF0,依 次取出V_FIF0中的点作为投影线段的终点,计算V_FIF0中每个点对应的投影距离L,剔除 L>R对应的点,保留满足条件的点和对应的距离到队列L_FIFO,L_FIFO数据单元如下:structfifo-unit{ Pointpoint;floatdis; } 其中,point是投影线段的终点卿V_FIF0中的邻域点),dis是拖动点和终点的距离, 得到最终的L_FIF0便可进行后续操作。
[0026] 后续操作中,步骤B:在拖动点的影响区域中,删除拖动点之外的所有点的拓扑信 息从而形成孔洞,并存储该孔洞边界上所有点的信息。参照图8,其具体操作为:删除影响 区域(目卩L_FIF0中的点),即在义齿模型上删除这些点的拓扑信息(拖动点除外);删除后形 成一个孔洞,并将孔洞的边界点(如图8中的点A、B、C、D、E)存储到数组V_ARRAY中。
[0027] 进一步作为优选的实施方式,所述步骤C具体包括有以下子步骤: C1、按顺序读取孔洞边界上的两个相邻的点; C2、分别在拖动点与上述两个相邻的点之间生成插值点; C3、按顺序连接插值点; C4、重复步骤C1-C3至遍历完孔洞边界上的所有两个相邻的点。
[0028] 上述变形操作即是一个孔洞修补的过程,如图9所示,以拖动点P和孔洞的一个相 邻边界点xo、Xl为例,孔洞修补的过程包括以下两个主要步骤: 步骤一:分别在P和xo、P和Xl之间生成插值点; 插值点的计算可参照图10,其中P为拖动点,X为边界点。在P,X之间选择一条光滑 的曲线,然后在这条曲线上均匀的生成插值点。设V_FIF0中dis的平均值为avg_dis,P、X 之间的拓扑距离为L,那么生成的插值点个数为: count=L/avg_dis,生成的插值点依次保存在数组arr_vertex中。arr_vertex中的 元素结构如下:

【权利要求】
1. 一种基于拓扑重建的义齿表面局部变形方法,其特征在于:包括有以下步骤: A、 根据义齿模型数据计算拖动点的影响区域; B、 在拖动点的影响区域中,删除拖动点之外的所有点的拓扑信息从而形成孔洞,并存 储该孔洞边界上所有点的信息; C、 根据拖动点和上述孔洞边界点信息,通过变形操作对孔洞进行修补。
2. 根据权利要求1所述的一种基于拓扑重建的义齿表面局部变形方法,其特征在于:所述步骤A具体包括有以下子步骤: A1、根据义齿模型数据得到最大投影距离R和最大邻域值N ; A2、以最大邻域值N计算拖动点的所有邻域点,并存储于邻域点集合; A3、计算邻域点集合中每个点与拖动点连成的线段在义齿模型的曲面投影距离; A4、曲面投影距离不大于最大投影距离R所对应的领域点存储于影响区域点集合。
3. 根据权利要求2所述的一种基于拓扑重建的义齿表面局部变形方法,其特征在于:所述步骤A3中的曲面投影距离为:邻域点集合中每个点与拖动点连成的线段在义齿模型 的三角形面片上投影线段长度的总和。
4. 根据权利要求1所述的一种基于拓扑重建的义齿表面局部变形方法,其特征在于:所述步骤C具体包括有以下子步骤: C1、按顺序读取孔洞边界上的两个相邻的点; C2、分别在拖动点与上述两个相邻的点之间生成插值点; C3、按顺序连接插值点; C4、重复步骤C1-C3至遍历完孔洞边界上的所有两个相邻的点。
【文档编号】G06T19/20GK104504762SQ201410856956
【公开日】2015年4月8日 申请日期:2014年12月31日 优先权日:2014年12月31日
【发明者】王煜, 张继伟, 夏鸿建, 马杰, 孙秦英 申请人:佛山市诺威科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1