Print

发布时间: 2020-07-16
摘要点击次数:
全文下载次数:
DOI: 10.11834/jig.190575
2020 | Volume 25 | Number 7




    医学图像处理    




  <<上一篇 




  下一篇>> 





图卷积网络下牙齿种子点自动选取
expand article info 李占利, 孙志浩, 李洪安, 刘童鑫
西安科技大学计算机科学与技术学院, 西安 710054

摘要

目的 选取牙齿种子点是计算机正畸中常用牙齿分割方法的关键步骤。目前业内大部分牙齿正畸软件都采用需要交互标记的分割方法,通过人机交互在3维牙颌模型上选取每一颗牙齿的种子点,效率较低。针对这一问题,提出基于特征导向的图卷积网络(feature-steered graph convolutional network,FeaStNet)牙齿种子点自动选取方法。方法 通过分析每个牙齿类型的种子点位置和最终分割效果,设立统一的规则,建立了牙颌模型的种子点数据集;利用特征导向的图卷积构建了新的多尺度网络结构,用于识别3维牙颌模型上的特征信息,为了更好地拟合牙齿特征,加深网络模型的深度;再通过训练调整参数和多尺度网络结构,寻找特定的种子点,使用均值平方差损失函数对模型进行评估,以提高预测模型的精确度;把网络寻找出的特征点作为基础点,在牙颌模型上找出与基础点距离最近的点作为种子点,如果种子点位置准确,则根据种子点将牙齿与牙龈分割开。对于种子点位置不准确的结果,通过人工操作修正种子点位置,再进行分割。结果 实验在自建的数据集中测试,其中种子点全部准确的牙颌占88%,其余情况下只需要调整部分不准确种子点的位置。该方法简单快速,与现有方法相比,需要较少的人工干预,提高了工作效率。结论 提出的种子点自动选取方法,能够自动选取牙齿种子点,解决牙齿分割中需要进行交互标记的问题,基本实现了牙齿分割的自动化,适用于各类畸形牙患者模型的牙齿分割。

关键词

口腔正畸; 牙齿分割; 特征导向的图卷积; 牙齿种子点; 3维牙齿模型

Automatic selection of tooth seed point by graph convolutional network
expand article info Li Zhanli, Sun Zhihao, Li Hongan, Liu Tongxin
College of Computer Science and Technology, Xi'an University of Science and Technology, Xi'an 710054, China
Supported by: Natural Science Basic Research Plan in Shaanxi Province, China (2019JM-162)

Abstract

Objective With the rapid development of 3D digital imaging technology, increasing applications of computer-aided diagnosis and treatment in oral restoration have gradually become the development trend in this field. A key step in orthodontics is to separate the teeth on the digital 3D dental model. The selection of tooth seed points is crucial in the tooth segmentation method commonly used in computer orthodontics. Most orthodontic software in the industry adopts a segmentation method that requires interactive marking, and the seed point of each tooth is selected on the 3D dental model by human-computer interaction. The efficiency is low. To solve this problem, an automatic selection method for tooth seed points based on feature-steered graph convolutional network (FeaStNet) is proposed. Method The seed point position and final segmentation effect of each tooth type are analyzed, and a unified rule is established. A seed point dataset of a dental model is built. A new multiscale graph convolution architecture is constructed using feature-steered graph convolutions to identify the feature information on the 3D dental model. The depth of the network model is deepened to fit the characteristics of the teeth. Training is conducted to adjust parameters, and a multiscale network structure is used to find specific seed points. The prediction model is evaluated using the mean squared difference loss function to improve the accuracy. The feature points identified through the network are regarded as the basic points to find the point closest to the base point on the dental model and set it as the seed point. If the seed point position is accurate, then the teeth are separated from the gums in accordance with the seed point. For the result of inaccurate seed point position, the position of the seed point is corrected by manual operation first and then segmentation is performed. The dental model is simplified to improve the training speed. The simplified model is used to establish an experimental dataset and specify the position of the seed points of different types of teeth.The 3D dental model is divided into the following information for preservation: the 3D coordinate values of all vertices in the dental model, the adjacency relationship of the vertices in the dental model, and the 3D coordinate values of the tooth seed points.The mean squared difference loss function is used to perform an imbalance check. The loss value decreases rapidly at the beginning of training, converges promptly, and tends to be stable after an oscillation period. Result The experiment is conducted on a self-built dataset, in which the exact point of the seed point is 88%. In other cases, only the position of a partially inaccurate seed point needs to be adjusted. The base point of the deviation of the teeth is roughly divided into two cases. One is that the seed point of the incisor deviates, and the other is that the molar is not on the tooth surface. After the basic point is acquired, the point closest to the base point on the dental model is determined as a seed point and applied to the orthodontic software to separate the teeth from the gums.The method is simple and fast and has less manual intervention than existing methods. Thus, its work efficiency improved. After the method is applied to the orthodontic software and the hardware platform, the entire segmentation time is accelerated to approximately 7 s. In the path-planning method, the time taken for segmentation is approximately 20 s. The comparison proves that the current method has obvious advantages in speed. Conclusion The proposed seed-point automatic selection method solves the problem of tooth segmentation requiring interactive marking and automates dental division. It is applicable to all types of dental deformity in patients with tooth model division.The automatic selection of seed points can also be used as a reference for other segmentation methods. In the segmentation of teeth, in addition to the characteristics of seed points, other tooth feature points are important. Future research is suggested to learn additional tooth features, further improve the speed of tooth segmentation, and help doctors improve work efficiency.

Key words

orthodontics; tooth segmentation; feature-steered graph convolutions; tooth seed points; 3D dental meshes

0 引言

随着3维数字化成像技术的飞速发展,计算机辅助诊疗修复越来越多地应用在口腔修复当中,并逐渐成为这一领域的发展趋势(吴婷和张礼兵,2016)。在牙齿正畸当中,一个关键的步骤就是将数字化3维牙颌模型上的牙齿一个个单独分割出来(Kumar等,2013)。目前常用的牙齿分割方法以及市面上大部分牙齿正畸软件,在分割时,都需要通过人机交互选取种子点,再通过计算曲率等方法将牙齿区域划分出来。而分割过程中复杂的人机交互,是牙齿分割技术一直难以解决的问题(吴婷和张礼兵,2018)。

目前市面上的牙齿正畸软件虽然已经有了良好的分割精度,但仍无法解决较多人机交互的问题,例如“3shape”系统,在牙齿分割方面实现了一定程度的自动化,但是它仍需要牙医在分割过程中进行人工干预,效率较低。牙齿的形态、排列因人而异,无法做到统一化的分割,使得快速、精确而又少交互的分割成为领域难题,单颗牙齿分割在牙齿正畸系统中也成为一项耗时耗力的任务。

国内外研究人员对于牙齿分割问题提出了许多解决方法。Kondo等人(2004)基于2维图像,通过从牙颌平面上的深度图像获得牙弓,然后计算出牙齿模型的全景图像,从而检测出牙齿之间的缝隙。再结合两个图像确定缝隙的位置和方向。最后描绘牙龈边缘将牙齿与牙龈分开。该方法需要手动描绘牙龈线且如果患者牙齿存在畸形,方法的精度往往不够。Grzegorzek等人(2010)基于2维模型的轮廓检索算法,通过多个层次的深度图像生成一组候选牙齿轮廓进行评估,找出最合适的分割结果。虽然方法实现了自动化分割牙齿,但是从牙颌平面获得的深度图像在面对拥挤牙时往往不能得出较好的结果。

由于2维图像会遮盖掉一部分信息,3维的分割方法越来越受到欢迎。Yuan等人(2010)利用骨架线计算牙与牙之间的边界,通过曲面最小曲率对3维牙齿模型的不同曲率区域进行分析和分类, 再删除牙齿之间的粘连区域将牙齿一个个分开,精度高但是在识别牙齿之间的粘连区域时需要进行大量的人工交互。Kronfeld等人(2010)通过使用边缘相切流和活动轮廓来计算和优化牙齿和牙龈之间的分离曲线,再计算牙弓和牙齿之间的间隙,实现了牙齿的自动分割,但是相切流容易受到噪声影响,因此分割精度较低。

还有许多比较自动的方法,如:郝国栋等人(2008)Wu等人(2014)使用形态学操作的方法分割牙齿,Wongwaen和Sinthanayothin(2010)采用牙列特征线进行牙齿分割。但是这些方法对牙齿间的融合区域处理得不够好,因而分割的结果不够精确。

针对人工交互多的问题,本文采用深度学习提取特征点,代替人工找特征点。在医学领域中,深度学习取得了很好的成绩,如在诊治阿尔茨海默病(Alzheimer’s disease,AD)时,由于早期诊断在预防中起着至关重要的作用(Suk和Shen,2013),Sarraf等人(2016)使用卷积神经网络(convolutional neural network, CNN)中的LeNet-5框架对AD样本进行训练,取得了较高的准确率。深度学习还在乳腺癌、子宫颈癌和眼科疾病诊治中有着良好的分类效果。

深度学习在医学领域取得的成绩证明了深度学习在医疗领域有广阔的应用。与一般应用于医学领域的2维深度学习方法不同的是,本文采用3维深度学习,为了防止2维图像上牙齿遮挡导致丢失特征,使用了3维图卷积并训练网络模型。

通过改进目前最常用的交互标记方法,提出利用深度学习提取牙齿具有特定特征的种子点,取代人工交互,实现自动化的牙齿分割。通过改进多尺度图卷积网络结构,增加特征复用能力和特征传播效率,提高了网络的特征表征能力。同时,使用均值平方差损失函数,增加网络的学习能力,提高特征提取的准确率。为了更加快速准确地学习特定的种子点特征,将牙齿模型简化,舍去不需要的复杂特征,显化种子点特征。通过建立种子点特征数据库,训练网络模型。将学习得到的特征点作为基础点,找出牙齿表面与基础点距离最近的点作为种子点,进行牙齿分割。

1 数据准备

1.1 牙颌模型的简化

牙颌模型上一般有17万个顶点,过多的顶点数不利于网络模型的训练,将牙颌模型简化后会大大提高网络训练以及预测的速度,舍去牙面上一些不重要的细节特征也有利于种子点特征的学习。简化也被称做多边形消减或网格抽取,其在保持近似原始网格条件下对三角网格中的三角形数量进行消减,通常将牙颌模型简化至6 000个顶点左右。

常用的网格抽取方法有3种,其中Schroeder等人(1997)的方法是最常用的,该方法用边塌陷来删除点和单元,抽取速度较快并且幅度容易控制。Lindstrom(2000)的方法是3个方法中最快的,能够处理大数据模型,但是牙颌模型大小不适合该方法,并且该方法抽取的精度比其他两种方法低。本文使用的简化方法采用的是Garland和Heckbert(1997)提出的二次误差度量,计算速度快并且简化质量在3种方法中最好。二次误差度量通常被认为是比较好的误差度量,具体如下:

将边根据删除成本放置在优先级队列中,对于每一个顶点${\mathit{\boldsymbol{v}}}$,预定义一个$4$×$4$的对称误差矩阵${\mathit{\boldsymbol{Q}}}$,那么顶点${\mathit{\boldsymbol{v}}}$的误差为

$ \Delta (\mathit{\boldsymbol{v}}) = {\mathit{\boldsymbol{v}}^{\rm{T}}}\mathit{\boldsymbol{Qv}} $ (1)

收缩边时,将边的两个顶点的二次误差度量求和,假设收缩边为(${\mathit{\boldsymbol{v}}}_{1}$, ${\mathit{\boldsymbol{v}}}_{2}$),其收缩后顶点变为${\mathit{\boldsymbol{v}}}_{b}$,定义${\mathit{\boldsymbol{v}}}_{b}$的误差矩阵${\mathit{\boldsymbol{Q}}}_{b}$

$ {\mathit{\boldsymbol{Q}}_b} = {\mathit{\boldsymbol{Q}}_1} + {\mathit{\boldsymbol{Q}}_2} $ (2)

式中,${\mathit{\boldsymbol{Q}}}_{1}$${\mathit{\boldsymbol{Q}}}_{2}$分别为顶点${\mathit{\boldsymbol{v}}}_{1}$${\mathit{\boldsymbol{v}}}_{2}$的误差矩阵。计算塌陷点${\mathit{\boldsymbol{v}}}_{b}$的位置时在${\mathit{\boldsymbol{v}}}_{1}$${\mathit{\boldsymbol{v}}}_{2}$和(${\mathit{\boldsymbol{v}}}_{1}$+${\mathit{\boldsymbol{v}}}_{2}$)/2中选择一个使${\mathit{\boldsymbol{v}}}_{b}$变化最小的位置。按式(1)计算出删除它们的新成本之后,将其重新插入优先级队列。该过程一直持续到所需的还原级别为止。图 1为简化前与简化后对比。

图 1 简化前与简化后
Fig. 1 Before and after simplification ((a)before simplification; (b) after simplification)

图 1可以看出:经过简化后的牙齿保留了主要的特征信息,如牙齿的各个尖点,简化后的牙齿由于顶点数目少,将大大提高程序运行速度。

1.2 建立实验数据集

目前,对于牙齿种子点的相关研究较少,本文自建了一个牙颌种子点特征数据集,原有100口牙颌模型来自牙医临床数据,为保证数据充分需要进行数据增强,增加训练的数据量从而提高模型的泛化能力,对原有的100口立体光刻(stereolithography,STL)牙齿数据进行扩充,通过镜像翻转、旋转和平移等方法将数据集扩充至400口,一口牙颌分为上下颌,数据增强后共有数据800个,并在此基础上对牙颌模型的种子点特征进行了研究。

通过对牙齿种子点选择后的分割效果进行观察并总结特点,归纳出每一类牙齿种子点的最佳位置。图 2为要学习的牙齿种子点特征。分为以下4种:

图 2 切牙、尖牙、前磨牙和磨牙规定的种子点位置
Fig. 2 Seed point locations specified for incisors, canine, premolars, and molars((a)incisors; (b) canine; (c) premolars; (d) molars)

1) 规定切牙种子点在切牙切嵴的中点处;

2) 规定尖牙种子点在尖点处;

3) 规定前磨牙种子点在中央沟的中心处;

4) 规定磨牙种子点在中央窝的中心处。

通过总结牙齿特征,在建立数据集时按上述规定操作,牙颌中种子点位置效果如图 3所示。

图 3 牙齿特定种子点特征
Fig. 3 Teeth specific seed point characteristics

之后需要将牙齿信息以3维坐标形式保存,牙齿的3维坐标轴如图 4所示。

图 4 牙齿模型的3维坐标轴
Fig. 4 3D axis of the tooth model

在牙颌3维模型的基础上,将牙颌分为以下3个信息进行保存:

1) 获取牙颌中所有顶点,按顶点的序号排列保存为x.txt文件,如表 1所示,纵列表示顶点号,横行表示每个顶点的3维坐标信息。

表 1 顶点坐标信息
Table 1 Vertex coordinate information

下载CSV
顶点号 x y z
1 -11.336 5 13.127 4 23.065 3
2 -10.275 9 12.458 0 23.989 5
3 -10.844 7 12.846 3 24.043 4
5 999 31.257 0 22.859 3 -14.767 3
6 000 31.121 6 23.086 5 -15.618 2

2) 以邻接表的形式将顶点邻接关系保存,按顶点号依次找寻每个顶点所在三角网格信息,获取这些三角网格中所有点信息并去重保存在adj.txt文件中。如表 2,纵列表示顶点号,横行表示每个顶点的邻接关系,简化后,顶点的邻居数一般不会超过14个,所以规定最多记录14个邻居。

表 2 邻接关系信息
Table 2 Adjacency information

下载CSV
顶点号 邻接点1 邻接点2 邻接点13 邻接点14
1 2 3 0 0
2 1 3 0 0
3 1 2 0 0
5 999 5 984 5 998 0 0
6 000 5 986 5 996 0 0

3) 通过选取种子点提取坐标信息并输出保存在y.txt文件中,如表 3,纵列表示种子点号,横行表示特征点3维坐标信息。

表 3 种子点坐标信息
Table 3 Seed point coordinate information

下载CSV
种子点号 x y z
1 -23.732 0 21.284 6 -14.280 5
2 -21.153 8 16.202 3 -5.792 45
14 27.144 0 21.898 0 -14.661 0

2 特征导向的图卷积网络

2.1 特征导向的图卷积

CNN卷积神经网络在2维图像中有很大的影响力,但是它不容易扩展到无规则的网格数据中,例如它不能直接应用在3维网格数据或其他图结构数据。近几年来也提出了一些推广到3维的网络,例如图卷积神经网络(Defferrard等人,2016)和Kdnetwork(Klokov和Lempitsky,2017)。然而现有方法存在限制。光谱滤波法(Henaff等人,2015Kipf和Welling,2016)依赖于图拉普拉斯算子的特征分解,这种分解不太稳定,应用在不同形状上会有困难。其他方法(如Charles等人(2017))依赖于点云结构,点云结构不能利用点与点之间的邻接信息,因此保存的信息较少,而特征导向的图卷积没有上述问题。

为了更好地学习3维数据,Verma等人(2018)提出了特征导向的图卷积网络(feature-steered graph convolutional network, FeaStNet)。FeaStNet是一种基于新型图卷积算子的深度神经网络,图中的每一个节点可以有不同数量的邻居,通过特征网络层动态地确定滤波器的权重和节点与邻居之间的关联。

对于任意一个顶点${\mathit{\boldsymbol{x}}}_{i}$对应一个特征值${\mathit{\boldsymbol{y}}}_{i}$,运算过程如下:${\mathit{\boldsymbol{x}}}_{i}$以及${\mathit{\boldsymbol{x}}}_{i}$周围的邻居点,如图 5所示,每个点有$X,Y,Z $3个坐标系,就如同2维图像有RGB颜色通道,${\mathit{\boldsymbol{x}}}_{i}$与每个邻居都对应一个滤波器${\mathit{\boldsymbol{W}}}$,如图 5中有5个滤波器,${\mathit{\boldsymbol{x}}}_{i}$分别与每个滤波器相乘,再把所有乘积相加。最后每个点计算的值再相加,得到${\mathit{\boldsymbol{x}}}_{i}$映射的${\mathit{\boldsymbol{y}}}_{i}$的卷积值。

图 5 特征导向的图卷积网络
Fig. 5 Feature-steered graph convolutional network

对于常规的像素网格,滤波器的加权矩阵与对应位置${\mathit{\boldsymbol{x}}}_{i}$的邻居有着明确的一对一映射,3维网格的主要问题是定义${\mathit{\boldsymbol{x}}}_{i}$的邻居与加权矩阵的关系。

特征导向的图卷积不再将${\mathit{\boldsymbol{x}}}_{i}$的每个邻居分配给单个加权矩阵,而是将${\mathit{\boldsymbol{x}}}_{i}$的邻居分配给${\mathit{\boldsymbol{x}}}_{i}$对应的所有权重矩阵。推广式为

$ {\mathit{\boldsymbol{y}}_i} = b + \sum\limits_{m = 1}^M {\frac{1}{{\left| {{\mathit{\boldsymbol{N}}_i}} \right|}}} \sum\limits_{j \in {N_i}} {{\mathit{\boldsymbol{q}}_m}} \left({{\mathit{\boldsymbol{x}}_i}, {\mathit{\boldsymbol{x}}_j}} \right){\mathit{\boldsymbol{W}}_m}{\mathit{\boldsymbol{x}}_j} $ (3)

式中,${\mathit{\boldsymbol{x}}}_{i}$和不同邻居${\mathit{\boldsymbol{x}}}_{j}$对应一个加权矩阵${\mathit{\boldsymbol{q}}}_{m}$${\mathit{\boldsymbol{N}}}_{i}$$i$$i$的邻居的集合。然后用局部特征向量的线性变换softmax定义权重,其中${\mathit{\boldsymbol{u}}}_{m}$${\mathit{\boldsymbol{v}}}_{m}$${\mathit{\boldsymbol{c}}}_{m}$是线性变换的参数,即

$ {\mathit{\boldsymbol{q}}_m}\left({{\mathit{\boldsymbol{x}}_i}, {\mathit{\boldsymbol{x}}_j}} \right) \propto \exp \left({\mathit{\boldsymbol{u}}_m^{\rm{T}}{\mathit{\boldsymbol{x}}_i} + \mathit{\boldsymbol{v}}_m^{\rm{T}}{\mathit{\boldsymbol{x}}_i} + {\mathit{\boldsymbol{c}}_m}} \right) $ (4)

2.2 改进的多尺度图卷积网络结构

使用特征导向的图卷积来替换以往的卷积,并在网络结构上改进,使其适应牙齿模型数据。神经网络的输入为$n×$3, 其中$n$为牙颌模型上顶点的个数,3为顶点的$X, Y, Z$三通道。每个顶点的最后一层输出给出了对应特征点的概率分布,最后输出为$n ×n $

本文参考了Masci等人(2015)的卷积网络结构,它由下列1×1卷积层和图卷积组成:Lin16+Conv32+Conv64+Conv128+Lin256+Lin6 890。在此基础上,为了更好地拟合牙齿特征,增加了网络的深度。如图 6所示,数字表示每层输出通道的数量。在结合了U-Net(Ronneberger等,2015)的特点之后,网络结构可以在不损失细节特征的情况下继续加深,找寻更高层次的特征。

图 6 多尺度图卷积网络结构
Fig. 6 Multi-scale graph convolution architecture

$n$×3经过两次卷积得出$n ×$32之后,再经过池化后得到$n $/4×32,为寻找更高层次特征,再通过一系列卷积、池化后链接成为$n ×16$的输出。在网络中,上一层的输出特征值经过卷积和池化,然后通过激活函数可以得到这一层的输出特征值。

本文放弃常用的sigmoid函数,使用ReLU作为激活函数。因为在训练时,sigmoid函数的梯度在饱和区域非常平缓,接近于0,容易造成梯度消失,减缓收敛速度,而ReLU的梯度在多数情况下是常数,收敛速度快。输入数据在经过一系列卷积、池化后,最后通过1×1卷积核输出每个顶点对应的特征点概率分布。

2.3 Loss函数——均值平方差

本文引入均值平方差损失函数进行不平衡校正,均值平方差从数理统计中演化而来,均方误差指参数估计值和参数真实值之差平方的期望值。在此处主要是对每个预测值与真实值作差求平方的平均值,具体为

$ \frac{1}{n}\sum\limits_{i = 1}^n {{{\left({Y - {Y_{{\rm{pred }}}}} \right)}^2}} $ (5)

式中,$Y$为真实值,$Y_{\rm pred}$为预测值。经过测试表明,均值平方差损失函数在训练过程中不断递减,提升了预测的牙齿特征的精确度。

2.4 训练

在自建数据集上训练特征导向的图卷积网络,其软硬件平台分别为CPU:Intel(R) Core(TM) i5-8400 CPU @ 2.80 GHz 2.81 GHz; GPU:NVIDIA GeForce GTX 1060;深度学习框架:TensorFlow。学习率设置为0.001,最高迭代次数设置为10 000次。使用Adam做优化算法,Adam计算高效,内存使用少,被很多深度网络使用。具体参数见表 4

表 4 参数设置
Table 4 Parameter settings

下载CSV
参数
学习率 0.001
一阶矩估计的指数衰减率 0.9
二阶矩估计的指数衰减率 0.999
学习率衰减浮动 0.0
最高迭代次数 10 000

对网络结构进行训练,具体步骤如下:

1) 数据初始化,读取数据集中txt文件并以数组形式保存;在保存时先检查所有顶点,当有顶点无邻接点或邻接点数量超过规定时,删除该点;删除时要从x.txt中删掉对应顶点,从y.txt中删掉顶点对应的邻接关系。

2) 对学习率等超参数进行初始化,网络每一层的参数都是随机正态分布,激活函数替换为ReLU。

3) 将预处理后的数据作为训练数据输入到待训练网络中。

4) 数据经过网络模型进行一次前向传播,计算输出。

5) 根据式(5)计算损失函数值。

6) 根据损失函数值优化目标函数,利用反向传播算法计算反馈传递误差,更新网络模型的参数值。

7) 循环步骤4)—6),直至损失值低于期望。

图 7为本文训练得到的种子点效果,可以看出:学习效果与人工点出来的效果没有明显差别,证明特征导向的图卷积寻找的牙齿种子点完全可以替代人机交互选取的种子点,也说明本文方法比需要交互标记的分割方法更加方便快捷。由于训练得出来的点与实际的种子点之间有些偏差,需要将图 7所示的特征点作为基础点,方便进行下一步处理。

图 7 训练得出的基础点
Fig. 7 Basic point of training

利用损失函数对本文模型进行评估,如图 8所示,横轴为训练迭代次数,纵轴为损失值。可以看出,预测结果与真实标签的误差在训练开始时迅速下降,并且快速收敛,在一段时间的振荡之后趋于稳定。

图 8 特征导向的图卷积模型的训练损失曲线
Fig. 8 Training loss curve for feature-steered graph convolution model

3 实验结果分析及处理

将本文方法应用在牙齿正畸软件后,输入牙颌模型,测试并得出结果。由于深度学习所得到的结果并不能确保完全正确,从全部牙颌测试检查效果来看,有两个共性偏差如图 9所示。

图 9 基础点的偏差
Fig. 9 Deviation of base point((a)incisors; (b) molars)

分析可得,这些出现偏差的牙齿基础点大致分两种情况,一是切牙的种子点偏离,二是磨牙不在牙齿表面。在得到基础点之后,寻找牙颌模型上距离基础点最近的点作为种子点,最后应用于牙齿正畸软件,将牙齿与牙龈分开。

本文已经成功分离出牙齿,具有良好效果,并应用于牙齿正畸软件中。分离效果前后对比如图 10所示。

图 10 牙齿分割过程
Fig. 10 Tooth segmentation process((a)basic point; (b) seed point; (c) curvature calculation; (d) tooth segmentation)

目前,将牙齿种子点自动选取的方法应用在牙齿正畸软件之后,已经能自动化地分割牙齿模型,牙颌模型在经过特征导向的图卷积网络自动寻找出基础点后,在牙颌模型上找出与基础点最近的点,作为种子点再进行分割。实验在自建的数据集中测试,其中种子点全部准确的牙颌占88 %,对于不准确的结果,通过人工交互修正种子点位置,再进行分割。整个牙齿分割的操作流程如图 11

图 11 自动化牙齿分割流程图
Fig. 11 Flow chart of automatic tooth segmentation

由于本文使用深度学习方法直接学习了人工操作所要寻找的种子点特征,所以对比目前常用方法,本文方法基本不需要人工操作,输入3维模型,即可得到最终分割效果。

分割方法整体过程速度快,是本文方法的优点,在本文软硬件平台上将本文方法应用到牙齿正畸软件后整个分割时间加快到了7 s左右,而吴婷和张礼兵(2018)的方法中整体分割过程在13 s左右,Wu等人(2014)的方法中整体分割过程需要1—2 min,业内有名的“3shap”软件完成分割需要消耗数分钟时间进行交互操作。对比证明本文方法在速度上具有一定优势。

4 结论

本文通过改进目前常用的需要进行交互标记的分割方法,提出利用特征导向的图卷积网络提取牙齿上具有特定特征的特征点作为种子点,取代人工交互,实现自动化的牙齿分割。本文算法分3步进行:

1) 将牙颌模型简化,可以更好地学习种子点特征,提高学习效率,再通过分析牙齿特征,设立统一规则,建立牙颌模型的种子点数据集。

2) 利用特征导向的图卷积建立网络模型,通过加深多尺度网络模型,提高了网络模型对牙齿特征的学习能力。再引入均值平方差损失函数提高特征提取的准确率,并训练网络模型,得出的特征点作为牙齿种子点的基础点。

3) 找出牙颌模型中距离基础点最近的点作为种子点。为了保证软件可靠性,可以通过手动修改仍不准确的种子点位置,以确保分割成功。

在自建的数据库中进行测试,88 %的数据可以成功自动分割,其他数据需要人工交互修改部分种子点位置。本文方法已经成功应用在牙齿正畸软件中,基本实现了牙齿分割的自动化。速度比人工操作更快,大大缩短了分割时间,减轻了牙医负担,让牙医把更多时间精力放在更专业的正畸治疗方案上。

本文方法在实际使用中的不足之处在于当基础点的位置出现错误时仍需人工操作进行纠正。原因是部分牙颌在自动选取种子点时仍存在误差。牙齿分割中,除了种子点特征,其他牙齿特征点也十分重要,通过学习其他特征点进一步提高分割效率与精度以及学习其他特征点构建新的网络模型,也是未来的研究方向。

参考文献

  • Charles R, Su H, Mo K C and Guibas L.2017.PointNet: deep learning on point sets for 3D classification and segmentation//Proceedings of 2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, Hi: IEEE: 77-85[DOI: 10.1109/CVPR.2017.16]
  • Defferrard M, Bresson X and Vandergheynst P. 2016. Convolutional neural networks on graphs with fast localized spectral filtering[EB/OL].[2017-02-05]. https://arxiv.org/pdf/1606.09375.pdf
  • Garland M and Heckbert P. 1997. Surface simplification using quadric error metrics//Proceedings of the 24th Annual Conference on Computer Graphics and Interactive Techniques. New York: ACM Press: 209-216[DOI: 10.1145/258734.258849]
  • Grzegorzek M, Trierscheid M, Papoutsis D and Paulus D. 2010. A multi-stage approach for 3D teeth segmentation from dentition surfaces//Proceedings of the 4th International Conference on Image and Signal Processing. Trois-Rivières, QC, Canada: Springer: 521-530[DOI: 10.1007/978-3-642-13681-8_61]
  • Hao G D, Cheng X S, Dai N, Yu Q. 2008. The morphology-based interactive segmentation of dental models. Manufacturing Information Engineering of China, 37(1): 36-39 (郝国栋, 程筱胜, 戴宁, 俞青. 2008. 基于形态学的牙齿模型交互分割. 中国制造业信息化, 37(1): 36-39) [DOI:10.3969/j.issn.1672-1616.2008.01.009]
  • Henaff M, Bruna J and LeCun Y. 2015. Deep convolutional networks on graph-structured data[EB/OL].[2018-05-10]. https://arxiv.org/pdf/1506.05163.pdf
  • Kipf T N and Welling M. 2016. Semi-supervised classification with graph convolutional networks[EB/OL].[2017-02-22]. https://arxiv.org/pdf/1609.02907.pdf
  • Klokov R and Lempitsky V. 2017. Escape from cells: deep Kd-networks for the recognition of 3D point cloud models//Proceedings of 2017 IEEE International Conference on Computer Vision. Venice, Italy: IEEE: 863-872[DOI: 10.1109/ICCV.2017.99]
  • Kondo T, Ong S H, Foong K W C. 2004. Tooth segmentation of dental study models using range images. IEEE Transactions on Medical Imaging, 23(3): 350-362 [DOI:10.1109/TMI.2004.824235]
  • Kronfeld T, Brunner D, Brunnett G. 2010. Snake-based segmentation of teeth from virtual dental casts. Computer-Aided Design and Applications, 7(2): 221-233 [DOI:10.3722/cadaps.2010.221-233]
  • Kumar Y, Janardan R, Larson B. 2013. Automatic virtual alignment of dental arches in orthodontics. Computer-Aided Design and Applications, 10(3): 371-398 [DOI:10.3722/cadaps.2013.371-398]
  • Lindstrom P. 2000. Out-of-core simplification of large polygonal models//Proceedings of the 27th Annual Conference on Computer Graphics and Interactive Techniques. New York: ACM Press: 259-262[DOI: 10.1145/344779.344912]
  • Masci J, Boscaini D, Bronstein M and Vandergheynst P. 2015. Geodesic convolutional neural networks on Riemannian manifolds//Proceedings of 2015 IEEE International Conference on Computer Vision Workshop. Santiago, Chile: IEEE: 832-840[DOI: 10.1109/ICCVW.2015.112]
  • Ronneberger O, Fischer P and Brox T. 2015. U-Net: Convolutional networks for biomedical image segmentation//Proceedings of the 18th Medical Image Computing and Computer-Assisted Intervention - MICCAI 2015. Munich, Germany: Springer: 234-241[DOI: 10.1007/978-3-319-24574-4_28]
  • Sarraf S, DeSouza D D, Anderson J and Tofighi G. 2016. DeepAD: Alzheimer's disease classification via deep convolutional neural networks using MRI and fMRI[EB/OL].[2016-08-21]. https://www.biorxiv.org/content/10.1101/070441v4[DOI: 10.1101/070441]
  • Schroeder W J, Zarge J A, Lorensen W E. 1997. Decimation of triangle meshes. ACM SIGGRAPH Computer Graphics, 26(2): 65-70 [DOI:10.1145/133994.134010]
  • Suk H I and Shen D G. 2013. Deep learning-based feature representation for AD/MCI classification//Proceedings of the 18th Medical Image Computing and Computer-Assisted Intervention - MICCAI 2013. Nagoya, Japan: Springer: 583-590[DOI: 10.1007/978-3-642-40763-5_72]
  • Verma N, Boyer E and Verbeek J. 2018. FeaStNet: feature-steered graph convolutions for 3D shape analysis//Proceedings of 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City, UT, USA: IEEE: 2598-2606[DOI: 10.1109/CVPR.2018.00275]
  • Wongwaen N and Sinthanayothin C. 2010. Computerized algorithm for 3D teeth segmentation//Proceedings of 2010 International Conference on Electronics and Information Engineering. Kyoto, Japan: IEEE: V1-277-280[DOI: 10.1109/ICEIE.2010.5559877]
  • Wu K, Chen L, Li J, Zhou Y H. 2014. Tooth segmentation on dental meshes using morphologic skeleton. Computers and Graphics, 38: 199-211 [DOI:10.1016/j.cag.2013.10.028]
  • Wu T, Zhang L B. 2016. Three dimention tooth reconstruction using level set active contour model. Journal of Image and Graphics, 21(8): 1078-1087 (吴婷, 张礼兵. 2016. 水平集活动轮廓模型的3维牙齿重建. 中国图象图形学报, 21(8): 1078-1087) [DOI:10.11834/jig.20160812]
  • Wu T, Zhang L B. 2018. Tooth segmentation on 3D dental meshes based on path planning. Journal of Image and Graphics, 23(1): 84-94 (吴婷, 张礼兵. 2018. 3维牙颌模型牙齿分割的路径规划方法. 中国图象图形学报, 23(1): 84-94) [DOI:10.11834/jig.170337]
  • Yuan T R, Liao W H, Dai N, Cheng X S, Yu Q. 2010. Single-tooth modeling for 3D dental model. International Journal of Biomedical Imaging, 22(4): 703-710 [DOI:10.1155/2010/535329]