李智能 刘任任 梁光明
(湘潭大学信息工程学院 湖南 湘潭 411105)(国防科技大学计算机学院 湖南 长沙 410000)
当今社会中,大部分的疾病的检测依赖于医学影像的分析,然而最终病症结果的得出还是依赖于病理医生的主观经验判断,这一过程容易误诊且耗时。因此通过利用计算机视觉领域的相关技术对医学图像进行分析,再借助病理医生的判断和分析将会得到更好的结果。医学细胞图像的语义分割存在以下难点:图像中目标的大小方向等因素;不同类别的层次模糊度;图像的明亮程度、模糊程度影响;细胞的粘连问题等。综合目前国内外医学图像的分割方法,主要有以下几种:(1) 基于阈值的分割方法,如针对传统的灰度分割算法不能完整地分割细胞的问题,提出了一种自适应阈值调整粘连细胞分割方法[1];(2) 基于边缘的分割方法,如在组织工程培养细胞图像检测中,需要得到较完整的清晰轮廓线及获取生长信息,提出了一种基于Snake算法自动边缘检测算法[2];(3) 基于区域的分割方法,如在贴壁细胞图像分割中,需要得到完整的细胞边缘,提出了一种基于Cabor滤波与区域生长的分割算法[3];(4) 基于聚类的分割方法,如在髓细胞涂片中的各类细胞,提出了一种基于小波分析的聚类算法[4]。
近年来,卷积神经网络快速发展,它可以通过卷积操作从大量的样本图像数据中提取到图像特征,避免了人工提取特征的局限性,并且可以实现从人工、半自动分割方法向自动化分割方法过渡。如针对细胞图像尺寸大小、形态各异,导致从图像中分割出精确的细胞十分困难的问题,提出了一种以卷积神经网络为基础的结合染色校正方法和简单线性迭代的超像素聚类算法[5];为了提高肾透明细胞癌细胞核分割的质量,提出了一种基于深度卷积神经网络的细胞核分割方法[6]。本文针对宫颈TCT显微细胞图像的核质分割提出了一种多尺度多层次输入,通过卷积和反卷积的全卷积网络进行特征提取并完成语义分割的网络模型。
卷积神经网络中,为了让网络的输出为原始图像大小的分割后的图像,把网络最后的全连接层改变为卷积层,再通过上采样得到与原始图像大小相同的分割图,这种网络一般被称为全卷积网络[7]。本文针对目前在医学图像领域运用最广泛的语义分割网络Unet进行改进,改进后的网络结构图如图1所示。
图1 本文的网络结构图
Block1-Block7的具体结构如图2所示。
图2 Block1-Block7具体结构
Block8-Block9的具体结构如图3所示。
图3 Block8-Block9具体结构
Block10-Block16的具体结构如图4所示。
图4 Block10-Block16具体结构
Conv1的具体结构如图5所示。
图5 Conv1具体结构
首先,将原始输入图像(512×512)送入卷积神经网络中,经过Block1下采样过程,再将不同尺度的原始输入图像(360×360)送入网络中,经过Block2之后,将不同尺度的原始输入图像(252×252)送入网络中,经过Block3之后,将不同尺度的原始输入图像(176×176)送入网络中,经过Block4之后,将不同尺度的原始输入图像(122×122)送入网络中,其中Block1-Block7的内部结构一致,为两个连续的卷积核为3×3的卷积层,而后再进行多尺度的feature map的提取。多尺度的feature map的提取通过对输入feature map分别进行卷积核为1×1的卷积操作,进行卷积核为1×1的卷积操作再进行卷积核为3×3的卷积操作,进行Fractional Max-Pooling池化操作再进行卷积核为3×3的卷积操作,将上述三个多尺度的feature map的提取结果串接(concat)起来,再进行Fractional Max-Pooling池化操作。接着进入Block2-Block7的操作,具体细节等同Block1。然后将feature map进行Block8-Block9操作,Block8-Block9的内部结构一致,为一个卷积核为3×1的卷积操作,再进行一个卷积一致核为1×3的卷积操作。接着进入Block10-Block13的上采样操作,Block7-Block13的内部结构一致,为一个上采样操作,再接两个卷积核为3×3的卷积操作。另外,图1中虚线箭头连接(Block1—Block16,Block2—Block15等)为将下采样的feature map裁剪成对应上采样的feature map大小并进行串接(concat)。最后进行Conv1的操作,具体为先进行卷积核个数为2的1×1的卷积操作,再进行卷积核个数为1的1×1的卷积操作得出输出分割图像。每一个卷积层后都使用Relu激活函数,最后一层卷积层后使用tanh激活函数。
对于医学图像分割,图像的底层信息有助于提高精度,高层信息可以提取复杂的特征。结合上述的网络模型,Block1-Block7可提取图像的底层特征信息,Block8-Block9可提取图像的高层特征信息。通过多尺度的原始图像的输入,可以更多保留原始图像的信息,使得分割效果更好。通过多尺度feature map的串接,可以更好地提取图像的特征,并且减少了计算量,提高了网络模型的训练速度。在网络模型中,Pooling操作会导致信息的丢失,而且是不可逆,对于分类任务中,只需要预测每一类的概率,所以不需要考虑Pooling会导致图像细节信息的问题,但是对于语义分割任务中,是要做到像素级的分类,所以有必要考虑Pooling操作带来的问题。故本文使用FMP(Fractional Max-Pooling),来减小Pooling带来的图像信息丢失的问题。
传统的卷积神经网络可以达到降低网络参数的功能,但直接反卷积重建的效果不好。为了保证重建之后的图像效果,本文在下采样和上采样过程中将下采样尺寸相同的feature map串接到上采样的feature map,充分地利用下采样过程中结构信息,达到更好的语义分割效果。
本文网络模型参数表如表1所示。
表1 网络参数表
针对细胞核质分割的结果,本文使用均交并化(Mean Intersection over Union,MIoU)定量评估指标。假设图像数据集中有n_class个语义类别,Pii表示像素i预测为像素i的总数,Oi表示原始类别i的像素总数,Pi表示预测类别i的总数。对于单个类别的IoU,有:
(1)
那么对于整幅图的目标的平均IoU,有:
(2)
本文制作了基于长沙市第二人民医院的基于新柏氏液基细胞学检测(Thinprep cytologic test,TCT)制片技术的宫颈TCT细胞涂片的CCTCT数据集。通过CCD采集的细胞图像,采集的图片大小为(512×512),在资深病理医生的指导下,使用labelme标记软件对图像进行标注,共有2 000幅图像,标记后的图像包含原始图像和标签图像,将图像语义分为三类:细胞质、细胞核、背景,对应的标签分别为1、2、0。为了避免因为数据集过小造成过拟合问题,本文使用了人工增加训练样本的方法,将原始数据扩大了9倍。
本文主要是通过随机旋转图像一定角度、左右平移、上下平移和随机放大或缩小的变换方法同时对原始图像和标签图像进行操作,保证变换后的图像和标签可以一一对应。变换效果如图6所示。
图6 样本扩充效果图
最终的训练数据集大小为20 000幅。按照训练集75%验证集20%测试集5%的比例进行数据划分,数据集分布如表2所示。
表2 数据集分布
为了验证算法的有效性,本文在Ubuntu18系统下进行实验并采用Python编程语言和Pytorch深度学习框架。本文分割效果如图7所示。
图7 本文分割效果
为了体现本文方法的优越性,实验中与Unet网络模型进行对比实验,经过50次迭代之后的结果如图8所示。
两种算法迭代第50次的MIoU值如表3所示。
表3 两种算法迭代第50次MIoU值对比
可以看出,本文方法达到了94.7%的准确率,说明本文的方法在宫颈细胞核质分割上具有优越的性能。
本文提出的基于卷积神经网络的医学宫颈细胞图像的语义分割算法,为精确识别宫颈细胞病变判别奠定了基础。同时,建立了宫颈细胞TCT涂片细胞图像CCTCT数据集。通过利用原始多尺度融合和多尺度feature map融合的方法,使用Fractional Max-Pooling池化操作的全卷积神经网络,实现了对宫颈细胞核质的精确分割。实验表明,本文算法达到了94.7%的精确度,对于宫颈癌的筛选诊断具有重大的辅助意义。