CN111968146B - 三维牙颌网格模型分割方法 - Google Patents
三维牙颌网格模型分割方法 Download PDFInfo
- Publication number
- CN111968146B CN111968146B CN202010676640.XA CN202010676640A CN111968146B CN 111968146 B CN111968146 B CN 111968146B CN 202010676640 A CN202010676640 A CN 202010676640A CN 111968146 B CN111968146 B CN 111968146B
- Authority
- CN
- China
- Prior art keywords
- tooth
- point
- points
- teeth
- dental
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/181—Segmentation; Edge detection involving edge growing; involving edge linking
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/20—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30004—Biomedical image processing
- G06T2207/30036—Dental; Teeth
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Biomedical Technology (AREA)
- Public Health (AREA)
- Databases & Information Systems (AREA)
- Pathology (AREA)
- Data Mining & Analysis (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Dental Tools And Instruments Or Auxiliary Dental Instruments (AREA)
Abstract
本发明公开了一种三维牙颌网格模型分割方法,属于计算机图像学技术领域,本发明针对三维空间中的牙颌模型数据,对每颗牙齿进行分割提取。首先对牙齿与牙龈间的过渡区域进行定位,通过局部二次曲面拟合的方式计算三维牙颌网格模型每一个点的平均曲率,根据负极小值原则筛选出牙齿与牙龈间的过渡区域凹陷点集;然后基于数学形态学操作将牙齿与牙龈间的凹陷点集构建成围绕牙齿一圈封闭的单点宽度轮廓线,再利用并查集算法将牙齿与牙龈分割出来;最后将分割得到的整体牙齿投影到二维上进行细化得到一条牙弓曲线,从而识别牙齿尖点,最后查找到两个牙齿尖点之间的最短路径作为牙齿之间的分割线,分割得到单颗牙齿。实现牙齿的自动分割提取。
Description
技术领域
本发明属于计算机图像学技术领域,具体涉及一种三维牙颌网格模型分割方法。
背景技术
近年来,随着三维数据扫描技术和计算机图形图像处理技术的应用和发展,计算机辅助设计系统出现在越来越多的领域,他们利用硬件支持的计算机图形图像技术来高效地完成传统上工作量很大的任务。目前全球许多牙科诊所都使用计算机辅助正畸治疗系统对患者的牙齿进行矫正治疗,计算机辅助正畸系统在现代牙科中起着重要作用。它能高效地帮助医生进行牙齿矫正的定位、牙弓形态预测以及牙齿治疗前后配准等医学操作,使临床牙医避免许多重复工作,有助于形成一套准确的治疗计划。计算机辅助正畸系统接受三维扫描设备如“3Shape”扫描获取的患者的三维牙颌点云数据作为输入。三维点云是三维空间中离散的坐标点集,当前技术还可以将得到的点云数据网格化,即将三维离散点集按照一定顺序进行连接,使得点云数据变成一个个三角面片或者其他多边形面片,变成更具有几何结构的三维网格数据,从而让牙医能更直观、方便地在计算机上对三维牙颌网格数据进行可视化观察分析,并利用计算机辅助正畸系统提取、移动、去除和重新排列牙齿,以模拟治疗效果,为医生省去了很多繁琐费时的操作。
而在计算机辅助正畸治疗系统中,牙齿的分割是这些系统中最基本和最关键的组成部分。在通过扫描患者的口腔获取三维牙颌网格模型(即牙颌模型)后,一般都包含有牙齿和牙龈两部分,口腔医生通常需要从牙颌模型中分割出所有牙齿。分割得到牙齿后,医生会在计算机上分析牙齿的位置和排列,并进行模拟以制定适用于患者的治疗计划。所以在牙齿矫正治疗过程中,将三维牙颌网格模型分割成一个个单颗牙齿是至关重要的一步,是否能精确地分割出牙齿会影响后续治疗工作的准确性,同时高效地分割牙齿也会为医生节约很多时间,缩短牙齿正畸治疗的周期。
发明内容
本发明的发明目的在于:针对上述存在的问题,提供一种三维牙颌网格模型分割方法,能够有效地分割出牙龈和每颗牙齿,实现牙齿的准确分割提取。
本发明的三维牙颌网格模型分割方法,包括下列步骤:
牙齿与牙龈过渡区域定位:
基于凹陷感知定位牙齿与牙龈间的过渡区域,得到过渡区域的凹陷点集;即过渡区域为凹陷感知所获取的凹陷点集确定;
牙齿轮廓线构建:
对牙齿与牙龈间的过渡区域的凹陷点集进行三维数学形态学操作,得到封闭的凹陷点集,再将封闭的凹陷点集细化成单点宽度的牙齿轮廓线;
牙齿与牙龈的分割:
基于牙齿轮廓线,采用并查集算法对将牙齿与牙龈进行分割,得到整体牙齿;
牙齿之间的分割:
对整体牙齿进行降维细化并拟合得到一条牙弓曲线;
基于牙齿轮廓线与牙弓曲线识别出每颗牙齿的牙齿尖点;
基于牙弓曲线对识别出的每颗牙齿之间的尖点进行配对,得到每颗牙齿两侧的牙齿尖点对;
查找各颗牙齿的两个牙齿尖点对之间的最短路径,并将该最短路径作为牙齿之间的分割线,分割得到单颗牙齿。
进一步的,牙齿与牙龈过渡区域定位中,通过局部二次曲面拟合的方法计算三维牙颌网格模型的每一个点的平均曲率,根据负极小值原则筛选出牙齿与牙龈间的过渡区域的凹陷点集。
进一步的,牙齿轮廓线构建具体为:对过渡区域的凹陷点集进行膨胀,确保该区域的连通性;并在保持坏连通性的前提下对过渡区域的冗余的点集进行腐蚀,使过渡区域形成将牙齿包含在圈内的单点宽度的封闭三维曲线,即牙齿轮廓线。
进一步的,牙弓曲线的生成过程为:
将整体牙齿从三维空间映射到二维空间,经二维形态学闭操作和细化处理,得到二维的牙齿骨架线;
将二维的牙齿骨架线映射回三维空间,并在三维空间的第一和第二维所构成的平面上,对牙齿骨架线点进行拟合,得到一条牙弓曲线。
进一步的,牙齿与牙龈的分割具体为:
定义Snl表示非牙齿轮廓线的点集;
将Snl中的每个点作为一个子集,初始化每个子集的根节点为当前包括的节点;
记所有子集中节点数最多的子集合的节点数为Max,初始化Max=1;遍历Snl中的每个点对每个点的所有邻居点进行判断,若邻居点/>则查找/>和/>所在的子集合的根节点;其中,下标i,j用于区分不同的点;
判断邻居点的根节点与节点/>的根节点是否相同,若否,则将邻居点/>所在的子集与节点/>所在的子集合并,得到新的子集,并将新的子集的根节点指向邻居点/>所在的子集的根节点,同时子集合并后的根节点记录新的子集的节点数,若当前节点数大于Max,则将新的子集的节点数赋值给Max;
当遍历完Snl中的所有点后,得到多个新的子集;遍历每个子集的根节点,查找根节点记录的子集的节点数为Max的子集,得到牙龈点集合,将所有牙龈点三维从牙颌网格模型中去除,得到牙齿点集,即整体牙齿。
进一步的,基于牙齿轮廓线与牙弓曲线识别出每颗牙齿的牙齿尖点具体为:
将牙齿轮廓线区分为:外部轮廓线和内部轮廓线;
定义f(x,y)表示牙弓曲线方程,qi(xi,yi,zi)表示外部轮廓线上的点,将点qi的第一维和第二维信息(xi,yi)代入牙弓曲线方程f(x,y),根据的正负值将外部轮廓线分为舌侧和颊侧,其中正为颊侧,负为舌侧;
定义位于牙齿外部轮廓线上,且存在某个一环邻居点位于内部轮廓线的点称为轮廓线交点;
定义每个轮廓线交点的法向量为该交点与其左右两边第nr环邻居点构成向量的平分向量Navg;其中,nr为预置的整数;nr的优选取值范围为4-6;
计算每个轮廓线交点与牙弓曲线上最近点构成的向量,记为Nd;
计算将向量Navg与Nd与之间的夹角的余弦,若大于或等于0,则将当前Navg对应的轮廓线交点为牙齿尖点。
进一步的,可以采用基于欧式距离的最近邻点的搜索算法对舌侧和颊侧的牙齿尖点进行匹配,得到舌侧和颊侧的牙齿尖点对。
进一步的,查找各颗牙齿的两个牙齿尖点对之间的最短路径具体为:
将三维牙颌网格构建成一个无向带权图G=(V,E),其中V代表三维牙颌网格的所有点集,E代表三维牙颌网格的所有边集,E中的边就是三维牙颌网格中三角面片的边,每条边由两个点构成,即网格中两点之间的最短路径就是将两个点连通的权值和最小的边集合;
采用Dijkstra算法查找舌侧和颊侧的牙齿尖点对之间的最短路径。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
本发明的分割方法可靠、高效、准确,能分别对整体牙齿和单颗牙齿进行分割提取。本发明中,不需要对任何阈值进行人工设定,也不需要人工交互操作,自动化程度极高;且分割出来的牙齿点云数据方便口腔医生直接进行观察分析,省去了繁琐费时的手动分割操作,降低了人工时间成本,提升了疗效评估的效率、准确性和精确性,具有较强的临床适用性,将在儿童早期错颌畸形矫治中发挥积极和重要的作用。
附图说明
图1为具体实施方式中,本发明的牙齿分割处理过程示意图;
图2为具体实施方式中,曲率为负的牙齿牙龈过渡区域点集;
图3为具体实施方式中,膨胀操作示意图;
图4为具体实施方式中,同种类型天线的初始相位分布;
图5为具体实施方式中,三种复杂度的计算示意图;
图6为具体实施方式中,初始提取的完整的牙齿轮廓线;
图7为具体实施方式中,牙颌网格模型的点所划分的集合示意图;
图8为具体实施方式中,基于牙齿轮廓线对牙齿内部数据点的划分示意图;
图9为具体实施方式中,所提取的所有牙齿点集示意图;
图10为具体实施方式中,数据点从三维向二维转换时所采用的投影网格示意图。
图11为具体实施方式中,初始生成的牙齿灰度图;
图12为具体实施方式中,完整的牙齿灰度图;
图13为具体实施方式中,获取的二维牙齿骨架线图;
图14为具体实施方式中,牙齿骨架线映射回三维空间所得到的三维骨架线点图;
图15为具体实施方式中,生成的牙弓曲线图。
图16为具体实施方式中,每个轮廓线交点与牙弓曲线上最近点构成的向量图;
图17为具体实施方式中,探测到的牙齿尖点图;
图18为具体实施方式中,结合牙齿的外部轮廓线所构建出的完整的牙齿轮廓线图;
图19为具体实施方式中,最终提取出每个完整的牙齿点集。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合实施方式和附图,对本发明作进一步地详细描述。
参见图1,本发明的三维牙颌网格模型分割方法包括:牙齿牙龈过渡区域定位,牙齿轮廓线构建和整体牙齿提取三个部分。
其中,牙齿牙龈过渡区域定位,是利用负极小值原则对牙齿周围的凹陷部分进行定位,找到牙齿大致的轮廓线,本具体实施方式中,通过计算三维牙颌网格模型的曲率来进行凹陷点集的筛选。
牙齿轮廓线构建,是对通过曲率过滤出的凹陷点集进行适当地形态学操作使其完全封闭,然后将封闭的凹陷点集细化成单点宽度的牙齿轮廓线。
整体牙齿提取,是对已经由轮廓线包围的整体牙齿进行提取,用并查集的思想分别将牙齿和牙龈的点集进行分类,提取牙齿部分。单颗牙齿的分割包括牙齿尖点检测与匹配和单颗牙齿提取两个部分。其中,牙齿尖点检测与匹配是先将整体的牙齿通过形态学操作细化并拟合成牙弓曲线,利用牙齿轮廓线与牙弓曲线对牙齿间的尖点进行检测,然后用牙弓曲线的法向距离将牙齿尖点分为舌侧和颊侧,并进行两侧对应点的匹配。单颗牙齿提取是先对已经匹配好的牙齿尖点进行最短路径搜索,找到每颗牙齿之间的分界线,排除牙齿内部非轮廓线的干扰,然后用并查集的思想将单颗牙齿进行分割提取。
三维牙颌网格模型曲率。
首先采用局部二次曲面拟合的方法来计算网格数据中任意点的曲率。
对于三维曲面S(x,y,z)=0,可以使用其第一和第二基本形式计算曲面上任何一点的主曲率,一般的二次曲面表达式为:
S(x,y,z)=ax2+by2+cz2+exy+fyz+gxz+lx+my+nz+d=0 (1)
其中,a、b、c、e、f、g、l、m、n和d分别为对应的系数。
对需要计算曲率的点pi构建局部坐标系。定义O为二次曲面局部坐标系原点,向量h的方向为O点的法向量方向,向量u和向量v正交且位于O点的切平面内。首先基于面积加权法计算点pi的法向量ni:其中mi是曲面的所有边数,wj是曲面的表面积,Nj是周围邻居点的法向量;
然后将点O平移到点pi,点pi所在的世界坐标系X轴和Y轴分别与向量u和向量v重合,Z轴与点pi的法向量ni重合,即构建二次曲面局部坐标系。接下来取顶点pi的二环领域内所有点,在当前局部坐标系下拟合二次曲面,可得二次曲面S的一阶偏导数:
Sx=2ax+ey+gz+l (2)
Sy=2by+ex+fz+m (3)
Sz=2cz+fy+gx+m (4)
可求得第一基本形式的系数e,f,g分别为:
二次曲面S的二阶偏导数为:
Sxx=Syy=Szz=2a (8)
Sxy=Syx=e (9)
Syz=Szy=f (10)
Sxz=Szx=g (10)
梯度的大小为:
则可求得第二基本形式的系数l,m,n分别为:
在求得第一基本形式和第二基本形式的系数后,定义矩阵A和B分别为:
矩阵B-1A的特征值就是点pi的主曲率k1和k2的值,由主曲率即可求得每个点的平均曲率。筛选出平均曲率为负的点如图2所示。
牙齿轮廓线构建。
为确保通过平均曲率过滤出的牙齿与牙龈的过渡区域点集形成一个封闭的圈,需要对这些点集进行适当的形态学膨胀操作,但在膨胀过程中其他非过渡区域点集也会进行扩散,产生很多对分割没有意义的点,而且牙齿与牙龈的过渡区域也存在着过多的点集,实际进行分割只需要一条将牙齿包围的单点宽度的轮廓线即可。
形态学的膨胀操作是用来填充目标区域的一些细小孔洞,并将两个存在间隙的区域进行连通,膨胀的过程中目标区域会向外扩散,面积会逐渐增大。形态学的膨胀操作最初主要应用在二维图像上,对灰度图像的像素值进行处理;随后被拓展到了三维空间上,本发明正是将形态学的膨胀操作应用在了三维牙颌网格模型上。
在三维牙颌网格模型中,所有的顶点可以表示为V={v1,v2,...,vn},其中n表示顶点数量,把三维牙颌网格模型中的过渡区域点集记作F,三维牙颌网络模型中的任意一点vi的一环邻居点nhd定义为:/>
其中,vi,vj∈F,vi≠vj,edge(vi,vj)表示与vi通过边直接相连的点vj。
通常情况下,因为过渡区域的点已经足够密集,只需要对这些区域的每个点进行一环邻域的膨胀操作即可确保连通性。对过渡区域点集F中的一点vi的一环领域膨胀操作定义为式子
式子(18)的含义为:遍历点vi的每个一环邻居点,若该邻居点不属于过渡区域点集F,则将其纳入F,直到顶点vi的所有邻居点都属于过渡区域点集F,膨胀停止。如图3所示,黑色六边形点为当前牙颌模型的过渡区域点,圆形点为它的一环邻居点,黑色代表属于过渡区域点集,白色代表不属于过渡区域点集,经过膨胀后六边形点的所有一环邻居点都纳入了过渡区域点集。这样对三维牙颌网格模型的所有过渡区域点集膨胀一次后可以得到如图4所示处理结果,这样就使得过渡区域点集形成了一个包围所有牙齿的闭合回路,但还存在许多冗余点集需要处理。
经过形态学膨胀操作后已经在牙齿周围形成了一圈闭合回路,即牙齿轮廓线;但后续的牙齿分割只需要单点宽度的轮廓线,因而需要删除轮廓线外围的点以及牙龈上不属于过渡区域的点。要获取的单点宽度轮廓线是能反映出牙齿周围一圈原始拓扑结构的骨架线,它是所有中心点元素构成的集合。在数学上对集合S的骨架线定义为:对于每个x∈S,D(x)为以x为中心的最大圆盘,且若没有比D(x)更大的包含在S中的圆盘,则x位于集合S的骨架上,即骨架是包含在集合S中最大圆盘中心的集合。
将过渡区域点集记作F,对每个vi∈F,f(i)表示顺时针排列的顶点vi的n个一环邻居点的索引序列,定义点vi的复杂度ci为:
其中,如果顶点vi的一环邻居点vμ∈F,则f(i)μ=1;如果顶点vi的一环邻居点则f(i)μ=0。图5是三种复杂度的计算情况,黑色点表示属于过渡区域点集F,七边形点代表当前的顶点vi,圆形点代表点vi的一环邻居点。如果c(i)≥4,则点vi为复杂点。
如果点vi的所有一环邻居点且包括它自身都属于过渡区域点集F,则定义点vi为中心点,而点vi的一环邻居点定义为圆盘点,圆盘点本身也可以是中心点。定义表示所有属于过渡区域点集F的复杂点集合,/>表示所有圆盘点的集合,/>表示所有中心点的集合,Vskeleton表示所有单点宽度的牙齿轮廓线点集合,定义形态学迭代腐蚀获取单点宽度的牙齿轮廓线如式子所示:
Vskeleton=F\(Vdisk∩Vcomplex∪Vcenter) (20)
在每次迭代腐蚀中,除了复杂点,最外层的圆盘点都要被删除,最内层的中心点会被保留,每迭代一次后进行新的顶点类别(复杂点、圆盘点、中心点和牙齿轮廓线点)划分。经过数次迭代后,所有圆盘点都被删除,过渡区域中也不存在中心点,只保留了初始过渡区域中最中心的点作为轮廓线点,这时迭代停止。
经过形态学迭代腐蚀算法后得到了单点宽度的过渡区域骨架线,但是这些骨架线还存在一些也是单点宽度的分支,而且牙龈和牙齿上还存在一些非轮廓线的分支,这些分支点对牙齿的分割毫无意义且会造成不同程度的干扰。这些分支点的特征是非连通的过渡区域点集,为复杂度小于4的非复杂点,删除分支操作每次迭代地删除分支末端的一个非复杂点,删除后它的下一个本来为复杂点的分支点将会变成非复杂点,从而在下一次迭代中被删除。因此骨架线点在经过数次的删除后将不会出现复杂度小于4的分支点,且牙龈和牙齿上的一些不属于轮廓线的非封闭分支也会被删除,只保留复杂度大于4的封闭回路点集,从而形成了完整的牙齿轮廓线,如图6所示。
并查集整体牙齿分割。
将三维牙颌网格模型中的每个三维空间点看作一个节点,将除了牙齿轮廓线以外的点记作S={v1,v2,...,vn},n表示集合S包括的点数,首先把S中的每个点都看成一个集合,每个点的父亲节点都为自身,每个集合的节点个数都是1,记所有集合中节点个数最多的集合的节点个数为Max,初始化Max=1。遍历S中的每个点vi,对每个点的所有邻居点进行判断,如果邻居点vj∈S,则利用并查集数据结构中的查找算法找到vi和vj所在集合的根节点,判断邻居点vj的根节点是否是vi的根节点,如果不是,则用合并算法将vj所在集合跟vi所在集合合并,将vi所在集合的根节点指向vj所在集合的根节点,同时合并集合后的根节点记录新集合的节点个数,如果合并后的新集合节点个数超过了Max,则将新集合节点个数赋值给Max。在遍历完所有除牙齿轮廓线以外的点后,由于有牙齿轮廓线的分隔,牙颌网格模型的点被分成了多个集合,如图7所示,白色的牙龈点通过并查集的合并算法组成了一个集合,灰色的牙齿点组成了一个集合。
如图8所示,牙齿轮廓线也将牙齿内部分成了多个小集合,但在所有的集合中,牙龈点所在集合的点数毫无疑问是最多的,因而通过遍历每个集合的根节点找到节点个数为Max的集合即为牙龈点所在集合,将其从三维牙颌网格模型中去除,就提取出了所有牙齿点集,即整体的牙齿,如图9所示。
牙齿点云降维处理。
在分割得到整体的牙齿后,对每颗牙齿进行分割。首先将牙齿点云进行降温处理,将三维坐标点转换成二维像素点。假设某个点云坐标为P=(x,y,z),其对应的灰度图像像素点的坐标为P′=(x′,y′,),要得到对应的像素点坐标,就需要向像素点所在的XOY平面进行投影,同时因为像素点的坐标都为整数,而点云坐标都是实数,所以要根据点云的密度建立一个投影网格,使生成的像素点保持一定的精度,防止信息丢失。在对点P进行投影的过程中,将点P舍弃一个维度为P′=(x′,y′,),通过最近邻算法计算点P′与各个网格中心的距离,距离最近的网格即为点P′的像素点所在位置,如图10所示,点P′与5号网格的欧式距离最近,则5号网格为点P′所在的像素点位置。
以此类推,对牙齿点云进行该方式映射,将牙齿点云转换成对应的灰度图像像素点,但为了灰度图像看起来更直观,可以将牙齿的像素点与背景像素点对调,白色表示牙齿像素点,黑色表示背景像素点,如图11所示。但生成的牙齿灰度图像是一堆离散的像素点,在牙齿区域内是黑白像素点相间的,如果对当前的牙齿像素点进行细化的话得到的骨架线是不准确的,要得到准确的骨架线就需要所有牙齿区域的像素点保持一致,内部不能有与背景图像相同的像素点,因此,对当前的牙齿点云灰度图像执行二维形态学闭操作,将内部为黑色的像素点填充为白色,从而得到完整的牙齿灰度图像,如图12所示。
得到完整的牙齿灰度图像后,对牙齿区域的像素点进行迭代细化运算。记A为牙齿区域的像素点,B是执行细化运算的结构元素,则牙齿区域的细化操作定义为:
式子表示A减去A被B击中的部分,而B对A的击中变换定义为:
A×B=(A⊙B)∩(AC⊙BC) (22)
其中AC和BC和是A和B的反转,表示将灰度图像A中像素为255的点赋值为0,像素为0的点赋值为255。将式子代入式子可得最基础的牙齿区域细化操作表达式为:
但要提取牙齿区域的骨架线需要进行迭代细化操作,即执行细化运算的结构元素B是一个元素序列:B={B1,B2,...,Bn},具体的牙齿区域细化操作为:
式子(24)表示B中的每一个元素都与A执行一次形态学细化运算,每一次迭代细化运算后,牙齿区域将会向内收缩,收缩为骨架线时迭代停止,并将骨架线上细小的分支迭代腐蚀一定次数,得到细化后的牙齿骨架线如图13所示。在得到细化后的牙齿骨架线后,再将其映射回三维空间中的点云数据,从而在三维空间中拟合一条牙弓线。在映射回三维点云时,将一个网格所包含的多个投影点云都返回到三维空间中,这样虽然在降维的过程中存在多个点云转换成同一个像素点的信息损失,但在重新映射回三维点云时弥补了
降维带来的信息损失,保证最初的每个点云都映射回三维空间,映射后的三维牙齿骨架线点如图14所示,在XOY平面上利用最小二乘法对骨架线点进行拟合,得到一条牙弓曲线如图15所示。
牙齿尖点检测与匹配。
本发明通过并查集算法将三维牙颌网格模型分为了牙齿和牙龈点集,记所有的牙齿轮廓线点为P={p1,p2,...,pn},nhd(i)j表示点pi的一环邻居点pj,T表示牙齿点集合,G表示牙龈点集合,则判断点pi是否属于牙齿的外部轮廓线点可通过遍历pi的一环邻居点来判断,在点pi的所有一环邻居点中存在一个属于牙龈点集合G的就说明点pi是外部轮廓线点。因为得到的三维牙齿骨架线点集位于牙齿外部轮廓线的中间,正好将外部轮廓线分成了前后两侧,所以本发明舍弃骨架线点的第三维信息,利用拟合得到的牙弓曲线f(x,y)来将牙齿外部轮廓线分为两侧。对所有的外部轮廓线点Q={q1,q2,...,qn},qi=(xi,yi,zi),将qi的xi和yi代入牙弓曲线方程f(x,y),则f(xi,yi)的正负表示外部轮廓线点到牙弓曲线法向距离的正负,利用这一正负值将牙齿的外部轮廓线分为了舌侧和颊侧。
在得到舌侧和颊侧的牙齿轮廓线后,对两侧的牙齿尖点分别进行检测。将位于牙齿外部轮廓线上,且存在某个一环邻居点是内部轮廓线点的称为轮廓线交点,而牙齿尖点也具有这些特征,属于轮廓线交点集合。先将所有轮廓线交点提取出来,缩小牙齿尖点的检索范围。记整体的牙齿轮廓线点集为P,内部轮廓线点集为R,外部轮廓线点集为Q={q1,q2,...,qn},则Q∪R=P且nhd(i)j表示点qi的一环邻居点qj,如果对于点qi∈Q, 则点qi就为轮廓线交点。
得到轮廓线交点后,定义每个交点的法向量为该交点与其左右两边第n环邻居点构成向量的平分向量,n的取值过大过小都无法反映出牙齿尖点的特征,经过实验验证,一般n取4到6环即可。记轮廓线交点集合为V={v1,v2,...,vn},vi=(xi,yi,zi),vil=(xil,yil,zil)表示点vi的左边第n环邻居点,vir=(xir,yir,zir)表示点vi的右边第n环邻居点,则轮廓线交点与其左右两边第n环邻居点在XOY平面构成的向量分别为:
Nl=(xil,yil)-(xi,yi)=(xil-xi,yil-yi) (25)
Nr=(xir,yir)-(xi,yi)=(xir-xi,yir-yi) (26)
将左右两边的向量Nl和Nr进行归一化后分别得到单位向量Nl和Nr,则两个向量的平分向量即交点的法向量为
Navg=Nl+Nr (27)
接下来需要计算每个轮廓线交点与牙弓曲线上最近点构成的向量。假设牙弓曲线的方程为y=anxn+an-1xn-1+…+a1x+a0,轮廓线交点(xi,yi)距离牙弓曲线上的最近点为(x,y),则轮廓线交点与该点的距离为
且有限制条件
s.t.anxn+an-1xn-1+…+a1x+a0-y=0 (29)
则求距离d最小时的x和y的值就变成了一个非线性规划问题,任意给定一个曲线上的初始点,利用目标函数和约束函数的一阶导数信息,从初始点开始,在满足约束函数的条件下,沿着目标函数下降的方向迭代,最后收敛到一个最优解(xp,yp)。则轮廓线交点(xi,yi)与牙弓曲线上的最近点(xp,yp)在XOY平面构成的向量为
Nd=(xi,yi)-(xp,yp)=(xi-xp,yi-yp) (30)
参见图16所标注的关节点和对应的最近点,关节点的法向量Navg,关节点与距离牙弓曲线最近点构成的向量Nd,可以从图中看到牙齿尖点的法向量Navg与它距离牙弓曲线最近点构成的向量Nd同方向,而非牙齿尖点的关节点的两个向量正好反向,本发明根据这一特征来识别出所有的牙齿尖点。记两向量的夹角为θ,则两向量夹角的余弦公式为
如果一个关节点两向量夹角的余弦cosθ≥0,则该关节点为牙齿尖点;如果cosθ<0,则该关节点为非牙齿尖点。由此探测到的牙齿尖点如图17所示,同时对每个舌侧的尖点,在颊侧的尖点中采用基于欧式距离的最近邻点搜索算法找到两侧对应的尖点进行匹配,箭头代表舌侧和颊侧对应的尖点。
牙齿分界线构建。
最后探测舌侧和颊侧对应尖点的最短路径,从而构建出牙齿之间的分界线,得到完整的牙齿轮廓线。要找到牙颌网格模型中两点之间的最短路径,就需要将牙颌网格构建成一个无向带权图G=(V,E),其中V代表牙颌网格的所有点集,E代表牙颌网格的所有边集,E中的边就是牙颌网格中三角面片的边,每条边由两个点构成,这样网格中两点之间的最短路径就是将两个点连通的权值和最小的边集合。本具体实施方式中,采用Dijkstra算法来查找舌侧和颊侧对应尖点的最短路径,记舌侧尖点为s,对应的颊侧尖点为d,令集合S表示已求得最短路径的点集,wij表示牙颌网格中点vi和vj相连的边的权值大小,即构成边的两点之间的欧式距离;若两点之间不存在边相连,即两点彼此都不为对方的一环邻居点,则将两点之间的距离赋值为∞。初始化S={s},集合T=V-S表示牙颌点集V中除去集合S剩下未求得最短路径的点集,dist(i)表示当前尖点s到顶点vi的最短路径长度,初始为当(s,vi)∈E,则dist(i)为连接s和vi的边的权值大小,否则dist(i)=∞。则舌侧尖点s和对应的颊侧尖点d的最短路径的查找处理过程如下:
(1)从集合T中选择一个与集合S中顶点有连接关系且dist(i)最小的顶点vi,并令S=S∪{vi},同时T=T\{vi}。
(2)修改从s到集合T中每一个顶点vj的最短路径长度dist(j),如果dist(i)+wij<dist(j),则dist(j)=dist(i)+wij。
(3)重复步骤(1)和(2),直到求得从s到d的最短路径。
基于上述查找方式,可以求得任意一个舌侧尖点与对应颊侧尖点的最短路径,即每颗牙齿之间的分界线,再结合牙齿的外部轮廓线从而构建出完整的牙齿轮廓线,如图18所示。最后利用并查集算法将每个封闭轮廓线内的牙齿顶点合并为一个个集合,再与牙龈点集的顶点个数大小进行比较,筛去顶点个数最多的牙龈点集,提取出每个完整的牙齿点集,如图19所示。
本发明的三维牙颌网格模型分割方法,采用网格曲率和凹陷感知的方式来寻找三维牙颌网格模型中牙齿与牙龈间的过渡区域,并对该过渡区域采用数学形态学的方式进行优化,用并查集算法分割出整体的牙齿与牙龈,然后再将整体的牙齿数据进行降维处理拟合成一条牙弓曲线,使用综合牙齿轮廓线和牙弓曲线的方法找到牙齿尖点,再通过改进的Dijkstra算法找到每颗牙齿的分界线构建出完整的牙齿轮廓线,将整体牙齿分割为单颗牙齿。本发明能够有效地分割出牙龈和每颗牙齿,实现牙齿的自动分割提取。为医生省去重复耗时的工作,可以用于实现儿童口腔矫治的智能化。
以上所述,仅为本发明的具体实施方式,本说明书中所公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换;所公开的所有特征、或所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以任何方式组合。
Claims (8)
1.三维牙颌网格模型分割方法,其特征在于,包括下列步骤:
牙齿与牙龈过渡区域定位:
基于凹陷感知定位牙齿与牙龈间的过渡区域,得到过渡区域的凹陷点集;
牙齿轮廓线构建:
对牙齿与牙龈间的过渡区域的凹陷点集进行三维数学形态学操作,得到封闭的凹陷点集,再将封闭的凹陷点集细化成单点宽度的牙齿轮廓线;
牙齿与牙龈的分割:
基于牙齿轮廓线,采用并查集算法对将牙齿与牙龈进行分割,得到整体牙齿;
牙齿之间的分割:
对整体牙齿进行降维细化并拟合得到一条牙弓曲线;
基于牙齿轮廓线与牙弓曲线识别出每颗牙齿的牙齿尖点;
基于牙弓曲线对识别出的每颗牙齿之间的尖点进行配对,得到每颗牙齿两侧的牙齿尖点对;
查找各颗牙齿的两个牙齿尖点对之间的最短路径,并将该最短路径作为牙齿之间的分割线,分割得到单颗牙齿;
其中,牙齿与牙龈的分割具体为:
记所有子集中节点数最多的子集合的节点数为Max,初始化Max=1;遍历中的每个点,对每个点的所有邻居点进行判断,若邻居点/>,则查找/>和/>所在的子集合的根节点,判断邻居点/>的根节点与节点/>的根节点是否相同,若否,则将邻居点/>所在的子集与节点/>所在的子集合并,得到新的子集,并将新的子集的根节点指向邻居点/>所在的子集的根节点,同时子集合并后的根节点记录新的子集的节点数,若当前节点数大于Max,则将新的子集的节点数赋值给Max;
基于牙齿轮廓线与牙弓曲线识别出每颗牙齿的牙齿尖点具体为:
将牙齿轮廓线区分为:外部轮廓线和内部轮廓线;
定义位于牙齿外部轮廓线上,且存在某个一环邻居点位于内部轮廓线的点称为轮廓线交点;
计算每个轮廓线交点与牙弓曲线上最近点构成的向量,记为Nd;
计算将向量Navg与Nd与之间的夹角的余弦,若大于或等于0,则将当前Navg对应的轮廓线交点为牙齿尖点。
2.如权利要求1所述的方法,其特征在于,牙齿与牙龈过渡区域定位中,通过局部二次曲面拟合的方法计算三维牙颌网格模型的每一个点的平均曲率,根据负极小值原则筛选出牙齿与牙龈间的过渡区域的凹陷点集。
3.如权利要求1所述的方法,其特征在于,牙齿轮廓线构建具体为:对过渡区域的凹陷点集进行膨胀,确保该区域的连通性;并在保持坏连通性的前提下对过渡区域的冗余的点集进行腐蚀,使过渡区域形成将牙齿包含在圈内的单点宽度的封闭三维曲线,即牙齿轮廓线。
4.如权利要求1所述的方法,其特征在于,牙弓曲线的生成过程为:
将整体牙齿从三维空间映射到二维空间,经二维形态学闭操作和细化处理,得到二维的牙齿骨架线;
将二维的牙齿骨架线映射回三维空间,并在三维空间的第一和第二维所构成的平面上,对牙齿骨架线点进行拟合,得到一条牙弓曲线。
5.如权利要求4所述的方法,其特征在于,采用最小二乘法,在三维空间的第一和第二维所构成的平面上,对牙齿骨架线点进行拟合,得到一条牙弓曲线。
6.如权利要求1所述的方法,其特征在于,采用基于欧式距离的最近邻点的搜索算法对舌侧和颊侧的牙齿尖点进行匹配,得到舌侧和颊侧的牙齿尖点对。
8.如权利要求1所述的方法,其中在于,查找各颗牙齿的两个牙齿尖点对之间的最短路径具体为:
将三维牙颌网格构建成一个无向带权图 G=(V,E),其中V代表三维牙颌网格的所有点集,E代表三维牙颌网格的所有边集,E中的边就是三维牙颌网格中三角面片的边,每条边由两个点构成,即网格中两点之间的最短路径就是将两个点连通的权值和最小的边集合;
采用 Dijkstra算法查找舌侧和颊侧的牙齿尖点对之间的最短路径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010676640.XA CN111968146B (zh) | 2020-07-14 | 2020-07-14 | 三维牙颌网格模型分割方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010676640.XA CN111968146B (zh) | 2020-07-14 | 2020-07-14 | 三维牙颌网格模型分割方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111968146A CN111968146A (zh) | 2020-11-20 |
CN111968146B true CN111968146B (zh) | 2023-05-23 |
Family
ID=73361661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010676640.XA Active CN111968146B (zh) | 2020-07-14 | 2020-07-14 | 三维牙颌网格模型分割方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111968146B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112562084B (zh) * | 2020-12-21 | 2024-05-07 | 成都玻尔兹曼智贝科技有限公司 | 一种提取牙齿三维点云模型牙弓曲线的方法及系统 |
CN114429463B (zh) * | 2022-01-25 | 2023-12-22 | 首都医科大学附属北京同仁医院 | 一种牙周软组织治疗效果的评价方法及装置 |
CN114897924B (zh) * | 2022-04-24 | 2023-10-17 | 雅客智慧(北京)科技有限公司 | 牙齿模型分割方法及装置 |
CN115035025A (zh) * | 2022-04-28 | 2022-09-09 | 南通林德安全设备科技有限公司 | 一种基于牙片处理的牙齿校正辅助方法 |
CN115588006B (zh) * | 2022-11-11 | 2023-11-21 | 四川大学 | 一种标准化牙弓形态的提取方法 |
CN116168185A (zh) * | 2022-12-02 | 2023-05-26 | 广州黑格智造信息科技有限公司 | 三维牙齿模型分割方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103700103A (zh) * | 2013-12-05 | 2014-04-02 | 嘉兴学院 | 三维数字化牙列模型牙龈曲线自动提取方法 |
CN106228549A (zh) * | 2016-07-14 | 2016-12-14 | 嘉兴学院 | 一种基于路径规划的三角网格牙齿分割方法 |
CN108364356A (zh) * | 2018-02-28 | 2018-08-03 | 辽宁科技大学 | 一种牙齿三维网格模型的自动分割方法 |
CN108470365A (zh) * | 2018-03-07 | 2018-08-31 | 天津工业大学 | 一种基于上下牙颌的牙弓线绘制方法 |
CN108986111A (zh) * | 2018-07-02 | 2018-12-11 | 西安增材制造国家研究院有限公司 | 一种用于计算机辅助隐形正畸的三维牙颌模型分割方法 |
CN109993751A (zh) * | 2019-03-11 | 2019-07-09 | 常熟理工学院 | 基于凹陷感知调和标量场的牙颌半自动精确分割算法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DK3503839T3 (da) * | 2016-08-24 | 2020-12-21 | Carestream Dental Tech Topco Ltd | Fremgangsmåde og apparat til segmentering af hybrid maske |
-
2020
- 2020-07-14 CN CN202010676640.XA patent/CN111968146B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103700103A (zh) * | 2013-12-05 | 2014-04-02 | 嘉兴学院 | 三维数字化牙列模型牙龈曲线自动提取方法 |
CN106228549A (zh) * | 2016-07-14 | 2016-12-14 | 嘉兴学院 | 一种基于路径规划的三角网格牙齿分割方法 |
CN108364356A (zh) * | 2018-02-28 | 2018-08-03 | 辽宁科技大学 | 一种牙齿三维网格模型的自动分割方法 |
CN108470365A (zh) * | 2018-03-07 | 2018-08-31 | 天津工业大学 | 一种基于上下牙颌的牙弓线绘制方法 |
CN108986111A (zh) * | 2018-07-02 | 2018-12-11 | 西安增材制造国家研究院有限公司 | 一种用于计算机辅助隐形正畸的三维牙颌模型分割方法 |
CN109993751A (zh) * | 2019-03-11 | 2019-07-09 | 常熟理工学院 | 基于凹陷感知调和标量场的牙颌半自动精确分割算法 |
Non-Patent Citations (1)
Title |
---|
基于网格抽取的牙齿模型快速分割算法;马勇;柯永振;杨帅;;计算机应用与软件(第05期);253-258 * |
Also Published As
Publication number | Publication date |
---|---|
CN111968146A (zh) | 2020-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111968146B (zh) | 三维牙颌网格模型分割方法 | |
CN106504331B (zh) | 基于三维模型检索的牙齿建模方法 | |
Xu et al. | 3D tooth segmentation and labeling using deep convolutional neural networks | |
WO2018218988A1 (zh) | 牙颌三维数字模型的分割方法 | |
CN110189352B (zh) | 一种基于口腔cbct图像的牙根提取方法 | |
CN111862171B (zh) | 基于多视图融合的cbct与激光扫描点云数据牙齿配准方法 | |
CN114746952A (zh) | 用于从二维草图创建三维牙科修复体的方法、系统和计算机可读存储介质 | |
WO2019214339A1 (zh) | 牙齿三维数字模型的局部坐标系设定方法 | |
CN115619773B (zh) | 一种三维牙齿多模态数据配准方法及系统 | |
Chung et al. | Automatic registration between dental cone-beam CT and scanned surface via deep pose regression neural networks and clustered similarities | |
CN114757960B (zh) | 一种基于cbct图像的牙齿分割与重建方法及存储介质 | |
CN110288640B (zh) | 基于凸密度极值的点云配准方法 | |
CN112308895A (zh) | 一种构建真实感牙列模型的方法 | |
CN110288517B (zh) | 基于投影匹配组的骨架线提取方法 | |
Jung et al. | Combining volumetric dental CT and optical scan data for teeth modeling | |
Ben-Hamadou et al. | 3DTeethSeg'22: 3D Teeth Scan Segmentation and Labeling Challenge | |
CN111862176B (zh) | 基于腭皱襞的三维口腔点云正畸前后精确配准方法 | |
CN110942433B (zh) | 一种基于颅骨cbct图像的修复导板生成方法 | |
CN115953359A (zh) | 一种数字化口腔模型标志点识别方法、装置及电子设备 | |
Kim et al. | Automatic tooth segmentation of dental mesh using a transverse plane | |
Knyaz et al. | Machine learning for approximating unknown face | |
Mairaj et al. | Teeth segmentation and feature extraction for odontological biometrics | |
Wei et al. | Automatic mesh fusion for dental crowns and roots in a computer-aided orthodontics system | |
CN112330723B (zh) | 一种物理到图像/图像到物理的自动配准方法 | |
KR102496449B1 (ko) | 치아 바운더리 커브를 이용한 3차원 스캔 데이터의 치아 자동 분리 방법 및 이를 컴퓨터에서 실행시키기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록 매체 |
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 |