牙齿锥形束计算机断层扫描图像分割

2021-07-03 03:52周秀蓉靳蕴瑶柴林
现代计算机 2021年12期
关键词:每颗骰子牙齿

周秀蓉,靳蕴瑶,柴林

(四川大学计算机学院,成都610065)

0 引言

传统的正畸诊疗主要依靠正畸医生对牙齿锥形束计算机断层扫描(CBCT)图像和铸造的牙齿石膏模型进行分析、诊断和治疗。随着CBCT 在临床中应用越来越广泛,为了更好地利用CBCT 图像重建牙齿的三维模型以辅助医生诊断和治疗,自动分割出CBCT 图像中的牙齿区域是关键步骤之一。

现有的牙齿CBCT 图像分割方法可以大致分为两类:基于传统方法的二维逐片分割和基于深度学习的三维分割。第一类方法中,Akhoondali 等人[1]提出了一种基于区域增长的分割算法,刘世伟等人[2]提出了一种基于局部高斯分布拟合的分割算法,Gan 等人[3]提出了一种基于水平集的分割算法。这些方法由于没有考虑相邻切片的三维空间信息,都对牙齿复杂的咬合条件缺乏鲁棒性,并且不能精确地分割出牙尖部分。近几年,机器学习成功运用在了各种医学影像分析问题上,包括尘肺检测、肺结节检测、心脏肝脏影像分割等,但在牙齿CBCT 图像上的应用仍比较少。Ezhov 等人[4]提出一种基于3D FCN[5]的由粗到细牙齿CBCT 图像分割框架,它可以从CBCT 图像中直接分割出33 类牙齿,但其需要大量的训练数据,标注工作量大,而且训练33类语义分割网络非常耗时,对计算机性能要求非常高。此外,由于牙齿和牙槽骨的强度相近,咬合状态下CBCT 图像中上下牙交界处结构复杂,牙髓腔较小且包含在牙齿内部,上述两类方法均很难精确分割CBCT图像中的单颗牙齿。

本文提出三级分割网络高效、精确地从CBCT 图像中分割出单颗牙齿。本文首先统计上下牙在CBCT图像中的分布规律,据此确定包含上牙和下牙的切片范围,然后分别训练上牙和下牙的分割模型。以下牙分割模型为例:①首先根据统计结果提取每组数据中包含下牙的48 张CBCT 图像,然后对其进行阈值分割(阈值设为600 亨氏单位),找到牙齿边界,从原图像中裁剪出牙齿部分的ROI,输入第一级网络进行3 类语义分割;②根据第一级网络的输出,用每一类牙齿部分最大的切面确定该类牙齿部分的ROI 中心,然后从原图像中裁剪出每类牙齿的ROI,输入第二级网络对每类牙齿区域中的单颗牙齿进行弱分割;③根据第二级网络的输出,用每颗牙齿部分最大的切面确定每颗牙齿部分的ROI 中心,然后从原图像中裁剪出每颗牙齿的ROI,输入第三级网络精细分割出单颗牙齿。

本文的主要贡献有以下两个方面:

(1)本文提出了一个基于3D U-Net 的三级分割网络,该网络不需要标注大量的训练数据,并且可以有效地从CBCT 图像中分割出单颗牙齿。

(2)本文分开训练上下牙分割模型,能减少训练时间、节省计算机资源。

1 数据集

本文使用的数据由口腔医院提供,包含37 个人的口腔CBCT 图像,图像分辨率为101×565×565。本文实验中将其中31 个人的数据作为训练数据,其余6 个人的作为测试数据。每个训练数据由三名医学生标注,他们标注结果的公共部分作为最终标注结果。每个测试数据由两名医生标注,同样取他们标注结果的公共部分作为最终标注结果。所有标注均使用3D Slicer[6]完成。注意,实际参与训练数据标注的医学生有11名,每人负责一部分数据。这样分配数据进行标注的原因是能够更好地反映不同人之间标注数据的差异对实验结果的影响。

2 方法

牙齿编号示意图如图1,为了让第二级网络精确定位单颗牙齿,除两颗门牙外其余对称牙齿标记为一类。三级分割模型如图3 所示,包括以下几个部分:①将预处理后的数据输入第一级网络对牙齿进行3 类语义分割(1、2、3 号牙齿为一类,4、5、6 号牙齿为一类,7、8、9 号牙齿为一类);②根据第一级网络的输出,从原图像中裁剪出每一大类牙齿部分的ROI(裁剪中心是每一大类牙齿部分最大切面中该类牙齿的平均像素位置),输入第二级网络对每类牙齿区域中的单颗牙齿进行粗分割(由于牙齿具有对称性,每一类牙齿共用一个分割网络);③根据第二级网络的输出,从原图像中裁剪出每颗牙齿的ROI(裁剪中心是每颗牙齿部分最大切面中该牙齿的平均像素位置),输入第三级网络精细分割每颗牙齿(对称牙齿使用一个网络)。其中弱分割网络W、粗分割网络R 和精分割网络F 均使用3D U-Net 网络。我们使用Adam 优化器对W 网络进行了100 次迭代训练,批量处理大小设为3,学习率初始值设为1e-4,在45 和75 次迭代之后以10 倍的速度衰减。R 网络和F 网络批量处理大小为8,学习率初始值为1e-3,其余设置与W 网络相同。

图1 牙齿编号示意

图3 第一级网络3分类结果

数据集按4:1 的比例随机分为训练集和测试集。为了提高模型的预测性能,通过随机旋转、缩放和翻转来扩充训练数据集,以模拟实际中可能出现的情况。例如,在某些情况下,头部会向左或向右倾斜,且左右脸有不对称的情况。因此,在[-10,10]度范围内进行随机水平旋转来增加训练数据。此外,每个人头的大小是不ol 一样的,并且每个人牙齿的大小也存在差异。因此,将图像放大到[0.9,1.1]的尺度。此外我们还在水平方向翻转训练数据。

本文使用的损失函数是多分类交叉熵函数和(1-DICE(骰子损失[7]))函数,骰子系数是衡量分割质量的指标,它衡量的标准是分割结果和真实值之间的重叠部分面积占分割结果和真实值总面积的比列,骰子系数越大,说明分割效果越好,本文使用骰子系数来改善分割边界的连续性。C.Zhao 等人[8]使用二分类交叉熵函数和(1-DICE)函数作为损失函数分割肺结节,取得了不错的效果。骰子系数定义如下:

其中,y真实值,y1是预测值。最后的损失函数为:

其中,yi表示单个像素点的真实值,y1i表示单个像素点的预测值,N表示语义分割类别数,T表示每类样本总数。

3 实验

本文使用DSC(骰子相似系数)作为分割评价指标。如表1 所示:第一级网络的平均DSC 值为0.889,第二级网络的平均DSC 值为0.916,第三级网络的平均DSC 值为0.958,这说明本文采用三级分割网络逐步精细地分割牙齿效果显著;第一级网络训练耗时90 小时,第二级网络训练耗时27 小时,第三级网络训练耗时33 小时,三级分割网络训练总耗时159 小时,Ezhov等人提出的模型训练总耗时近800 小时,相比之下我们的三级分割网络能大大减少训练时间、节省计算机资源。第一级网络的分割结果如图3 所示,从图中可以看出,第一级网络能比较精确地分割出每一类牙齿。第二级网络的分割结果如图4 所示,从图中可以看出,第二级网络能够粗略地分割出单颗牙齿,但由于牙尖和牙髓腔区域较小,导致分割效果并不理想。第三级网络的分割结果如图5 所示,可以看到单颗牙齿能够被精确分割。图6 是上下牙融合(首先根据第二级网络得到单颗牙齿的ROI 中心结合第三级网络单颗牙齿的分割结果,得到我们上下牙的最终分割结果,再根据上下牙切片位置关系融合上下牙模型,得到最终分割结果)后的最终分割效果图,从图中可以看出我们的单颗牙齿可以被精确分割。

表1 三级网络分割结果

图4 第二级网络分类结果

图5 第三级网络分类结果

图6 牙齿分割效果图

4 结语

本文采集了一个数据集用于单颗牙齿的精确分割,同时也展示了三级分割网络的分割结果,验证了分级网络的有效性,该网络可以有效地分割出单颗牙齿并标号。但牙槽骨和牙齿的关系在正畸医生在给患者制定正畸方案牙时非常重要,所以接下来我们准备扩展实验,实现牙槽骨的精确分割。

猜你喜欢
每颗骰子牙齿
仙居杨梅卖迪拜 每颗售价60元
牵动每颗心
可怜的牙齿
全钻腕表
填数
如何保护牙齿?
爱护牙齿要注意的事
骰子不见了
怎么保护牙齿?
巧猜骰子