王永琪, 张远民, 王学渊
(1.西南科技大学 信息工程学院, 四川 绵阳 621000; 2.联通(四川)产业互联网研究院, 四川 成都 610000)
随着数字化骨科和3D打印技术的发展,通过不同分割技术将患者的CT影像数据转化为三维模型,实现虚拟与现实的转化,做到了术前精准规划和术中精准导航。目前,分割仍然以手动和半自动分割为主,效率低耗时长;同时,分割人员的经验不一,造成分割结果不一致。因此,准确的自动髋关节图像分割是精准手术的先决条件。
已有很多研究人员开展了图像分割的探索和研究。阈值和拓扑形状的方法都是现在比较普遍的方法。Natshah A等人[1]提出了组织映射的骨分割算法;Janc K等人[2]采用了一种遗传算法的骨分割方法;申铉京等人[3]基于梯度、灰度、距离实现多阈值的骨分割;杨陶等人[4]将边界检测和阈值结合的分割方式,阈值方法对条件良好的图像有较好的分割效果,但对于病变髋关节的粘连问题,分割效果通常都不好。
另一种基于地理拓扑形状的分割方式分水岭算法[5],该方法对于弱边界和目标粘连图像都能有较好的分割效果,张新良等人[6]利用K-means和分水岭实现棉花的分割;赵君君等人[7]使用分水岭和面积加权对粘连枸杞分割;缪慧司等人[8]结合距离变换和梯度信息对粘连血细胞分割。但是分水岭方法仅仅用于对多目标的分割数量统计,分割的精度不高。
为了解决髋关节的弱边缘和目标的粘连问题,提出了一种改进的Otsu双阈值和分水岭拟合圆的分割算法。主要作了以下几个方面的研究:1)针对股骨头和髋臼窝之间的弱边界和狭窄性,采用了一个形态学闭运算的增强方式;2)利用改进的Otsu双阈值分割算法,在双阈值算法的基础上加上8领域判断,对髋关节初分割;3)根据股骨头的形状特性,进行了分水岭拟合圆方法,实现髋关节的准确分割,相对于传统算法分割精度有较大提升。
髋关节的分割难点之一是股骨头和髋臼窝之间区域的狭窄性以及骨密度的不均匀性,同时病变常发生在这里,造成髋臼窝和股骨头粘连,仅依靠灰度信息很难把两者分开,如图1所示。
图1 病变髋关节序列CT图像
为了增强股骨头和髋臼窝之间的对比度,方便后续的图像的处理,本文采用了一种基于形态学闭运算的预处理方式
Yc=(F-(C-F))
(1)
式中F为原图图像,C为闭运算得到的图像,Yc为增强图像。
对比图2(a)和(b)可以发现,增强图像骨骼的体素强度得以保存,加强了髋和股骨头之间连接处的对比度,方便后续的分割。
图2 原始图像与增强图像
由于骨密度的不均匀,数据采集设备等原因使得骨骼直方图并不是只有一个峰值,常规的单阈值分割是将图像分为骨骼和非骨骼两类,造成部分灰度值小的骨骼划分到非骨骼里,使得二值图像分割不连续、有空洞。
本文在Otsu双阈值图像分割方法[9]的基础上,根据骨骼CT图像的特点,对Otsu双阈值分割结果采用连通域判断,对于灰度值在高阈值和低阈值之间使用8连通区域确定是否为骨骼。
Otsu双阈值算法的核心思想是寻找最佳的阈值,使得类间方差最大。遍历所有的灰度等级,找到使类间方差最大的高阈值与低阈值,即为所求最佳的双阈值。
大于高阈值的像素可以认为是骨骼,小于低阈值的像素认为是非骨骼。灰度值在双阈值之间的像素点有可能是骨骼,也有可能是噪声或者颜色变化引起的。为得到全部真实的骨骼,通常认为骨骼的像素都是连通的,所有在高低阈值之间的像素检查8领域连通的像素值,如果存在骨骼,那么就认为此像素为真实的骨骼应该保留。
图3(a)是采用传统的Otsu算法,对于骨骼灰度值较低的区域并不能很好地分割出来,图3(b)是采用改进的Otsu双阈值算法,能分割出大部分的骨骼信息。
图3 结果对比
利用上述的二值图像,骨组织内部常常会出现空洞,多目标粘连等现象。为了更好完成目标分割,利用形态学方法对所得到的二值图像进行“孔洞”填充(如图4)。
图4 形态学处理后的二值图像
由于病变髋关节存在粘连问题,填充处理之后,常常会把髋臼窝和股骨头两个目标分割成了一个目标。利用分水岭拟合圆的方式实现目标分割。
分水岭算法:通过模拟地理学中的盆地地形涨水而实现的,像素的灰度信息看做是该位置的海拔高度,极小值可以看成一个聚水盆,随着水位上涨防止聚水盆融合,在两个聚水盆相遇的地方修大坝,也就达到分离的目的。
对于二值图像,首先计算距离地理图,距离越远边界越远认为该点的海拔越低,对目标标记区域,基于一个目标一个区域的原则。
计算每一个点到标记区域的测地距离,按照测地距离远近分到标记的区域,到标记区域距离相同的点即为修大坝的位置也就是分水岭如图5(a)。沿分水岭方向将图像分开得到髋臼窝和股骨头的二值图像如图5(b)。
图5 分水岭分割
拟合圆方法:由于人的股骨头是圆球形,在单层切片中就呈圆形,有效的利用股骨头的形状信息实现准确的目标分割。
首先,按照顺序找到图5(a)中外边界的坐标记为
N={a1,a2,a3,…,aL-1aL}
(2)
式中L为外边界像素点的个数。
其次,找到分水岭(图5(a)中的线),分水岭的端点记作ap和aq。从N中取出ap到aq所有的坐标点记作
M={ap,ap+1,…,aq-1,aq}
(3)
取集合M中起始点ap(xp,yp),结束点aq(xq,yq)和中间任意一点ai(xi,yi),则圆的方程可以表示为
(xp-xo)2+(yp-yo)2=r2,(xq-xo)2+(yq-yo)2=r2,
(xi-xo)2+(yi-yo)2=r2
(4)
假设M中一共有m个点,则可以计算出m-2组圆心坐标和半径,设置一个二维数组S,大小为当前图像的大小,将计算出的圆心坐标在S中标记
S(xi,yi)=S(xi,yi)+1
(5)
得到所有圆心坐标后,求取S的最大值所在为的位置,所在的位置(xo,yo)也就是当前层拟合出的圆心,如图6所示。图6(a)中为式(4)计算出的最佳拟合圆心和半径,图6(b)是分水岭拟合圆方法得到的髋臼窝和股骨头的二值图像。
图5(b)只是按照标记区域的信息进行分类,分割结果不准确。图6(b)是结合股骨头的结构信息,能够准确的分割出股骨头和髋臼窝。
图6 拟合圆分割
本文采用戴斯相似系数指标对分割结果进行评价,公式如下
(6)
式中Agt为医院专家分割出的标准图像;Aseg为本文算法所分割出来的图像;Agt∩Aseg为正确分割出来的图像区域;Np(•)为该区域的像素点个数。
本文所使用的数据由佛山市中医院放射科提供,成像系统为GE Medical Systems,切片分辨率为512×512,层厚为0.625 mm。本实验平台为Intel®CoreTMi5—9300HF 2.4 GHz,16 GB内存,仿真环境为MATLAB R2020a。
本文选取20例病变髋关节进行分割,医学处理软件ITK-Snap,分水岭算法以及本文算法的结果对比,结果如图7所示。
图7 结果对比
从图7看出,病变髋关节的分割要结合髋臼窝和股骨头本身的特性。图7(a)是医学处理软件ITK-Snap的分割结果,表明通用的图像处理算法并不能将粘连的髋臼窝和股骨头分离开,且对于图像的弱边界效果也不好。图7(b)是利用分水岭算法实现对象分割,此方法仅仅能够将粘连部分分开,但是分割精度不高。图7(c)是本文算法的分割结果,结合髋关节的结构信息,能够准确地分割出股骨头和髋臼窝。各算法的精度对比如图8所示。
图8 不同方法分割精度对比
针对病变髋关节CT影像难分割的问题,本文提出了一种改进Otsu双阈值和分水岭拟合圆的分割算法,能够克服骨骼的灰度不均、目标粘连带来的难题,得到准确的分割结果。实验结果表明:该方法平均精度为97.51 %,ITK-Snap算法、分水岭算法平均分割精度分别为65.79 %,92.69 %,可见本文算法提高了病变髋关节的分割的精度,具有很好的鲁棒性。