本发明涉及医学图像分类的,具体而言,涉及一种基于cnn-sppf和vit的巴氏涂片宫颈细胞图像分类方法。
背景技术:
1、子宫颈癌是全球范围内一种常见的恶性肿瘤,其发病率和死亡率在欠发达国家仍然居高不下。巴氏涂片检查是一种广泛使用的早期发现宫颈癌的筛查技术,而这种人工筛查方法由于人为错误而具有很高的假阳性结果。为了改进手动筛查实践,已经广泛研究了基于机器学习(machine learning,简称ml)和深度学习(deep learning,简称dl)的计算机辅助诊断(如cad)系统以分类宫颈巴氏细胞。
2、细胞病理学筛查是诊断子宫颈恶性肿瘤的常见方法。巴氏试验是检测宫颈癌最主要的方法,普适性强且具有较高的准确率。然而,传统的巴氏试验人工分析,由医生观察细胞切片得出结果,需要大量的人力。手动标记的方法效率低、而且容易因疲劳而出现错误诊断,因此需要更好的解决方案。
3、传统的机器学习主要包括细胞分割、特征提取和分类三个步骤,然而在特征提取这一步,人为的提取操作无法保证最优的分类性能。目前,在细胞分类领域,深度学习方法已经成为主流,并且迁移学习是其中常用的方法之一。迁移学习可以缓解由于样本不足导致的过拟合问题。然而,迁移学习也存在一些缺点。它通过使用在其他大型数据集上训练得到的模型参数和权重来进行模型训练,这样在测试阶段引入了其他数据集的特征,可能对分类准确性产生一定的影响,无法提高分类准确率。
4、先前专利cn111783571a提出了一种宫颈细胞自动分类模型建立及分类方法。该方法通过获取宫颈细胞图像并进行预处理和增广,构建了宫颈细胞图像数据集。接着,利用vgg16模型进行改进,重新设计了模型的全连接层,其中全连接层fc1的神经元个数为a,全连接层fc2的神经元个数为b,a和b的取值范围在[256,512,1024,2048]之间。通过设置初始权重,并利用宫颈细胞图像数据集对改进的vgg16模型进行训练,最终得到了宫颈细胞自动分类模型。然而,该方法也存在一些缺点。首先,该方法依赖于预先获取的宫颈细胞图像数据集,对于缺乏足够训练数据的情况可能不够适用。其次,该方法仅使用了vgg16模型作为基础模型进行改进,对于更复杂的宫颈细胞分类问题,可能需要更深层次或更高级的模型结构。此外,该方法在选择全连接层神经元个数时,仅考虑了几个特定的取值范围,可能无法覆盖到最优的神经元个数选择。
5、因此,我们亟需提供一种全新的巴氏涂片宫颈细胞图像分类方法,用以解决上述现有技术中存在的技术缺陷。
技术实现思路
1、本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
2、为此,本发明的目的在于提出一种基于cnn-sppf和vit的巴氏涂片宫颈细胞图像分类方法。
3、为了实现上述目的,本发明的技术方案,提供了一种基于cnn-sppf和vit的巴氏涂片宫颈细胞图像分类方法,包括:步骤s1:获取宫颈细胞的巴氏涂片在显微镜下的图像数据集;其中,所述图像数据集被分类为n类样本集;步骤s2:按照预设比例将每类样本集中的宫颈细胞图像划分为训练集、验证集和测试集;步骤s3:对所述训练集进行预处理,以得到预处理后的训练集;步骤s4:构建宫颈细胞图像的分类网络模型;其中,所述分类网络模型包括:focus模块、cnn-sppf模块、vit模块、特征融合模块和分类模块;所述cnn-sppf模块包括相互依次连接的第一卷积层、第一深度可分离卷积模块、第一最大池化层、第二卷积层、第二深度可分离卷积模块、第二最大池化层、第三卷积层、第三深度可分离卷积模块、第三最大池化层、第四卷积层、第四深度可分离卷积模块、第四最大池化层、第五卷积层、sppf模块和第五深度可分离卷积模块;所述vit模块包括embedding层、transformerencoder模块组和reshape模块;所述embedding层包括第六卷积层、linearprojection模块和positionembedding模块;所述transformerencoder模块组包括相互串联的第一个transformerencoder模块、第二个transformerencoder模块、…第n个transformerencoder模块,n≥2;每个transformerencoder模块包括一个mlp模块和一个attention block模块;所述attention block模块包括一个多头自注意力模块和一个前馈神经网络;步骤s5:构造所述分类网络模型的损失函数;步骤s6:将所述预处理后的训练集输入到所述分类网络模型,并基于所述损失函数训练所述分类网络模型;步骤s7:在训练所述分类网络模型时,采用基于训练周期的loss阈值去训练,并在每个训练周期的训练过程中,计算两个连续训练周期间的损失差值;若所述损失差值小于给定的所述loss阈值,则进入下一个训练周期的训练,否则对输入所述分类网络模型的训练集进行选择性数据增强处理,直到两个连续的训练周期间的损失差值小于该loss阈值时,进入下一个训练周期的训练;步骤s8:将所述验证集输入到训练后的分类网络模型进行优化,保存最终优化后的分类网络模型;步骤s9:将所述测试集输入所述最终优化后的分类网络模型,并输出所述测试集对应的宫颈细胞图像的分类结果;其中,所述focus模块,用于接收预处理后的训练集、验证集或测试集对应的宫颈细胞图像,并对所述预处理后的训练集、验证集或测试集对应的宫颈细胞图像进行无损下采样;进行无损下采样后的宫颈细胞图像通过相互依次连接的第一卷积层、第一深度可分离卷积模块、第一最大池化层、第二卷积层、第二深度可分离卷积模块、第二最大池化层、第三卷积层、第三深度可分离卷积模块、第三最大池化层、第四卷积层、第四深度可分离卷积模块、第四最大池化层、第五卷积层、sppf模块和第五深度可分离卷积模块进行局部的多层次特征提取,以提取出m维的第一特征向量;以及所述embedding层,具体用于:通过所述第六卷积层,将无损下采样后的宫颈细胞图像划分为若干个不相交的固定大小的patch;通过所述linearprojection模块,将每个pacth映射到一维向量中去,以实现将每个patch压平成对应的一维向量,以输出对应的特征图c1;通过所述position embedding模块,对所述特征图c1添加位置信息,以输出添加位置信息后的特征图c2;通过add操作,将所述特征图c1和所述特征图c2进行相加,以输出特征图c3;以及
4、所述transformerencoder模块组中的第一个transformerencoder模块,具体用于:通过第一layernorm层,将输入的所述特征图c3分别进行3次不同的线性映射,分别得出query矩阵,key矩阵和value矩阵;通过所述多头自注意力模块,将所述query矩阵,key矩阵和value矩阵在通道维度上分成h组,在每个组内均进行多头自注意力的计算,分别得到经过多头自注意力计算的每个组的特征图,以供后续将每个组的特征图在通道维度上进行拼接,形成最终的特征图c4;通过所述前馈神经网络,对所述特征图c4进行非线性变换和映射,以输出特征图c5;通过add操作,将所述特征图c3和所述特征图c5进行相加,以输出特征图c6;通过第二layernorm层,接收所述特征图c6,以输出特征图c7;通过所述mlp模块,接收所述特征图c7,以输出特征图c8;通过add操作,将所述特征图c6和所述特征图c8进行相加,以输出特征图c9;将所述特征图c9依次输入所述transformerencoder模块组中的第二个transformerencoder模块、…第n个transformerencoder模块,以供所述transformerencoder模块组输出最终的特征图c10;所述reshape模块,用于接收所述特征图c10,并对所述特征图c10的形状进行调整,以提取出n维的第二特征向量;所述特征融合模块,用于将所述n维的第二特征向量和m维的第一特征向量进行串行融合,以得到(m+n)维的特征向量;所述分类模块,用于将所述(m+n)维的特征向量依次进行卷积和全局池化操作后,输出所述宫颈细胞图像的分类结果。
5、优选地,在每个组内均进行多头自注意力的计算公式为:
6、
7、式中,q,k,v分别为query矩阵,key矩阵和value矩阵;dhead为每个注意力头处理的特征子集的维度;的计算结果表示为点积注意力分数;所述softmax函数用于将所述点积注意力分数进行归一化处理,以将所述点积注意力分数转换成对应的概率分布。
8、优选地,每个所述深度可分离卷积模块,具体包括:第一separableconv2d层、第二separableconv2d层、separablebottleneck层、第七卷积层、以及第一通道维度拼接模块;所述第一separableconv2d层,用于接收所述第一卷积层、第二卷积层、第三卷积层、第四卷积层、或第五卷积层输出的特征图或所述sppf模块输出的特征图,并对接收到的特征图进行特征提取,以减少该接收到的特征图的通道数,以输出特征图c11,同时所述接收到的特征图通过所述第七卷积层调整自身的通道数,以输出特征图c12;所述separablebottleneck层,用于对所述特征图c11进行特征提取,以输出特征图c13;所述第一通道维度拼接模块,用于将所述特征图c12和所述特征图c13在通道维度上进行拼接,以输出特征图c14;所述第二separableconv2d层,用于接收所述特征图c14,并对该特征图c14进行特征提取,以生成每个所述深度可分离卷积模块最终输出的特征图。
9、优选地,所述sppf模块,具体包括:第八卷积层、第一maxpool2d层、第二maxpool2d层、第三maxpool2d层、第二通道维度拼接模块以及第九卷积层;其中,所述第八卷积层,用于接收所述第五卷积层输出的特征图,并减少该第五卷积层输出的特征图的通道数,以输出特征图c15;所述第一maxpool2d层,用于接收所述特征图c15,并对所述特征图c15进行池化,以增加所述特征图c15的感受野,并捕获所述特征图c15的不同尺度的上下文信息,以输出特征图c16;所述第二maxpool2d层,用于接收所述特征图c16,并对所述特征图c16进行池化,以增加所述特征图c16的感受野,并捕获所述特征图c16的不同尺度的上下文信息,以输出特征图c17;所述第三maxpool2d层,用于接收所述特征图c17,并对所述特征图c17进行池化,以增加所述特征图c17的感受野,并捕获所述特征图c17的不同尺度的上下文信息,以输出特征图c18;所述第二通道维度拼接模块,用于将所述特征图c16、特征图c17和特征图c18,与所述特征图c15在通道维度上进行拼接,以输出特征图c19;所述卷积层9,用于接收所述特征图c19,并对所述特征图c19的通道数进行调整,以生成所述sppf模块最终输出的特征图。
10、优选地,对所述训练集进行预处理,具体包括:对所述训练集进行尺度改变和数据增强。
11、本发明的有益效果:
12、(1)本发明提供的基于cnn-sppf和vit的巴氏涂片宫颈细胞图像分类方法,采用cnn-sppf模块和vit模块同时对无损下采样后的宫颈细胞图像进行特征提取,进而对提取的特征进行串行融合,进而对融合后的特征进行卷积和全局池化操作,从而映射出最终的分类结果,达到大大地提高宫颈细胞图像分类性能的目的。
13、(2)本发明提供的基于cnn-sppf和vit的巴氏涂片宫颈细胞图像分类方法,对预处理后的训练集、验证集或测试集对应的宫颈细胞图像进行无损下采样,该无损下采样操作在减少计算量的同时,尽量减少宫颈细胞图像信息的损失,保留宫颈细胞图像的重要特征,为后续的特征提取做准备。
14、(3)本发明加入sppf模块以对关键特征进行不同尺度的提取,避免关键特征对分类结果产生影响。同时使用可分离的c3卷积模块以减少参数量和计算量,并降低过拟合的风险。
15、(4)本发明提供的基于cnn-sppf和vit的巴氏涂片宫颈细胞图像分类方法,引入了vit模块,扩大了图像的感受野,使得构建的宫颈细胞图像的分类网络模型更关注图像的全局信息。
16、(5)本发明提出了一种基于训练损失的动态数据增强方法,能显著提升模型的泛化能力、减轻过拟合,并通过不断引入随机变换的新样本来增强模型的鲁棒性和学习效率。
17、本发明的附加方面和优点将在下面的描述中变得明显,或通过本发明的实践了解到。
1.一种基于cnn-sppf和vit的巴氏涂片宫颈细胞图像分类方法,其特征在于,包括:
2.根据权利要求1所述的基于cnn-sppf和vit的巴氏涂片宫颈细胞图像分类方法,在每个组内均进行多头自注意力的计算公式为:
3.根据权利要求1所述的基于cnn-sppf和vit的巴氏涂片宫颈细胞图像分类方法,其特征在于,每个所述深度可分离卷积模块,具体包括:第一separableconv2d层、第二separableconv2d层、separablebottleneck层、第七卷积层、以及第一通道维度拼接模块;
4.根据权利要求1所述的基于cnn-sppf和vit的巴氏涂片宫颈细胞图像分类方法,其特征在于,所述sppf模块,具体包括:第八卷积层、第一maxpool2d层、第二maxpool2d层、第三maxpool2d层、第二通道维度拼接模块以及第九卷积层;
5.根据权利要求1至4中任一项所述的基于cnn-sppf和vit的巴氏涂片宫颈细胞图像分类方法,其特征在于,对所述训练集进行预处理,具体包括: