本发明属于图像识别、机器学习领域,尤其涉及一种基于区域混淆机制神经网络的血细胞显微图像分类方法。
背景技术:
随着生物医学的发展,医用显微图像技术已经非常成熟,并在医学领域得到了广泛的应用。同时,随着各种图像处理技术的发展,对医学图像的处理和分析研究也越来越多。而血细胞在人体健康中发挥着重要作用,具有防御和免疫功能,是人体免疫系统的重要组成部分。当血细胞的某些特征改变时,如数量和形状,这可能是某些疾病的前兆或症状。因此,分析各种血细胞的形态和数量亚型有助于帮助医生结合其疾病的诊疗方法做出正确的判断和选择合适的治疗方案。
然而,手工分类和计数方法,如人工显微镜检查,需要专业的操作,并且工作量大、时间长,这可能会导致错误的判断,影响病人的治疗。因此,寻找一种自动检测和分类血细胞亚型的方法以帮助血液样本的识别和检测,对准确提取血液包含的生理信息具有重要的价值。
目前,传统的血液细胞图像自动分类方法主要是利用图像分割算法分割细胞图像,然后手动设计特性来提取图像的特征信息,最后通过各种分类器分类,包括支持向量机、贝叶斯分类器、神经网络等等。然而,由于血液样本的颜色和光照条件不同,且血细胞图像往往包含复杂的背景,图像分割较为困难。此外,人工设计特征还具有随机性和不确定性,其效果受主观性的影响较大。而深度学习作为一种新兴的图像识别算法,与传统方法相比,避免了图像分割和手工特征设计等步骤,不需要先验知识。这样既减少了巨大的工作量,又避免了主观性和不确定性,分类效果更加理想。
然而,这些方法都是基于图像全局结构的识别方法,从整个图像中提取特征。而血细胞图像数据集属于细粒度数据集,其特征是不同类别的图像之间存在细微差异。图像通常具有相同或相似的全局结构,只能通过一些局部特征来区分,属于细粒度图像识别问题。上述方法对于这些精细特征的提取效果并不够理想,往往很难达到收敛,分类效果较差。
技术实现要素:
为了克服现有技术存在的缺陷和不足,本发明提出了一种基于区域混淆机制神经网络的血细胞显微图像分类方法,基于区域混淆机制,可有效解决血细胞图像中精细特征提取问题。该方法提出了一种基于区域混淆机制的深度神经网络框架。相较于一般的深度学习方法,在常规的卷积神经网络基础上,于训练阶段引入区域混淆分支,对输入图像进行随机置乱,迫使分类网络放弃全局信息,对局部特征信息进行学习,并通过构建对抗性损失函数消除噪声干扰以及利用区域对齐网络构建图像局部区域之间的语义相关性。通过这种机制结合主干分类网络,可有效提取血细胞图像中具有判别性的局部特征信息,达到良好的分类性能。
本发明具体采用以下技术方案:
一种基于区域混淆机制神经网络的血细胞显微图像分类方法,其特征在于:对用于训练的血细胞显微图像进行预处理操作;将经过处理后的图像数据输入深度神经网络框架中的训练分支,在训练阶段引入区域混淆机制,将输入图像的全局结构打乱,迫使分类器对血细胞图像的局部精细特征进行提取,再通过对抗性学习网络对混淆后引入的噪声干扰进行消除,并通过混淆后图像与原图像的语义相关性,对图像的结构信息进行建模;通过上述分支提取出分类器的最优参数,并将最优参数直接赋予分类主干网络分支,进行最终的分类预测工作。
优选地,包括以下步骤:
步骤s1:对图像数据进行预处理,进行数据增强;
步骤s2:构建基于区域混淆机制的深度神经网络框架,在训练阶段引入区域混淆机制,将经过处理后的图像数据输入深度神经网络框架中的训练分支,对输入图像进行分割,打乱图像的全局结构,并对分割后图像的子区域进行重新布局,迫使分类器对血细胞图像的局部精细特征进行提取;
步骤s3:对步骤s2操作中引入的噪声影响,采用对抗性学习网络根据原始图像与混淆后图像的提取特征进行判别,构建对抗性损失函数,消除噪声图像的影响,并通过混淆后图像与原图像的语义相关性,对图像的结构信息进行建模;
步骤s4:将混淆后的图像与原始图像一起作为训练时分类器的输入,通过参数共享的联合训练提取出分类器的最优参数,并将最优参数直接赋予分类主干网络分支,进行最终的分类预测工作,实现血细胞图像的自动分类。
优选地,步骤s1具体包括以下步骤:
步骤s11:通过减去所有像素的均值,然后除以标准差,对每一幅图像进行标准化;
步骤s12:对输入图像大小进行调整,利用双线性插值方法将图像尺寸大小缩放到指定尺寸;
步骤s13:对于用于训练的图像数据,采用随机旋转、随机剪裁、水平翻转的方法进一步扩展图像数据,用于数据增强;
步骤s14:对用于测试集的图像数据,只进行中心剪裁的操作。
优选地,所述分类器包括分类主干网络、区域混淆网络、对抗性学习网络和区域对齐网络四部分;
第一部分为分类主干网络:采用mobilenetv3作为血细胞分类器的主干网络,训练时对输入图像进行特征提取,学习得到分类器的最优参数;预测时分类器其他网络分支不起作用,通过分类主干网络对输入图像进行预测分类;
第二部分为区域混淆网络:用以破坏图像的全局结构,将混淆后的图像与原始图像组合在一起引入分类主干网络;
第三部分为对抗性学习网络:用以分辨从图像中学习到的是否为噪声特征,消除噪声的干扰;
第四部分为区域对齐网络:用以对图像的结构信息进行建模,构建全局信息与局部信息的联系。
优选地,所述分类器的训练阶段包括以下步骤:
步骤c1:将步骤s1处理后的图像数据分为训练集样本、验证集样本与测试集样本;
步骤c2:将训练样本经过区域混淆后的图像与样本原始图像组合作为分类器的输入对其进行训练;
步骤c3:在训练过程中,经过若干个epoch后通过验证集验证模型效果,通过验证集的效果反馈,判断验证效果是否符合要求,若符合,则继续训练;否则更改超参之后再返回步骤c2;
步骤c4:判断训练次数是否达到预设的最大训练次数,若是则进入步骤c4,否则采用back-propagation算法更新被激活的参数,并返回步骤c2;
步骤c5:由损失函数判断训练误差是否符合预设的值,若是则进入步骤c5,否则返回步骤c2;
步骤c6:获取一系列最优参数,赋予分类主干网络,采用测试集样本对分类器性能进行测试;判断测试集样本识别正确率是否符合预设要求,若符合,终止当前的模型训练;否则返回步骤c2;
步骤c7:得到最终的最优参数,将其赋予分类器,对输入的血细胞显微图像进行自动分类。
即在训练过程中,原始图像、混淆后图像以及它们对应的类别标签组合在一起作为输入沿神经网络信号传播方向计算出网络的输出值,并分别构建区域混淆损失函数、对抗性学习损失函数和区域对齐损失函数,将输出值与期望输出值作比较,若目标函数值不满足误差精度,则采用梯度下降法对网络权重参数进行修正,修正方向沿卷积神经网络传播的逆方向,并再次计算目标函数,循环直到满足误差要求;若满足误差要求,则结束循环,得到训练后的最优参数,赋予分类主干网络。
并且上述的基于区域混淆机制的方法只应用于训练阶段,在预测阶段,只采用轻量级分类网络作为主干网络对图像进行分类。在整个框架中,训练阶段和预测阶段相互独立,网络的训练阶段在整个网络框架内以端到端的方式进行,减少额外的计算开销。
对于主干网络,本发明采用mobilenetv3作为分类主干网络来预测给定图像的类别。在这一分类主干网络中,使用神经结构搜索来搜索网络配置和参数。并通过改进swish激活函数,在有效提高网络精度的同时,减少了庞大的计算量。在网络结构上,通过在预测部分对结尾全连接层优化以及使用深度可分离卷积替代常规卷积操作,减少参数量和计算量。通过更少的网络参数,可以大大提高计算速度,而且保持了精度和速度之间的平衡。除此之外,对于主干网络的网络结构,还引入了squeeze-and-excitation(se)模块和残差结构,通过se模块可增强有效的权重,提升分类性能,而残差结构可加深网络层数,有效解决网络深度增加而出现的梯度消失问题,增加特征表达能力。通过这一分类主干网络,可以极大减少参数量和计算量,对血细胞图像的识别分类具有明显的优势,对给定的输入图像,血细胞分类器能在保证判断准确可靠的基础性,提高分析识别的效率。
优选地,所述区域混淆网络将原始图像分割成若干局部区域并交换它们以生成新的训练图像;在训练时,原始的图像和破坏后的图像将一起作为网络输入共同学习有效的特征;其包含一个区域混淆损失函数,并通过对抗性学习网络消除噪声特征的影响;
所述对抗性学习网络包括判别器和对抗性损失函数;所述判别器通过softmax函数对区域混淆网络从原始的图像和破坏后的图像中学习到的特征向量进行判别;所述对抗性损失函数用于评估判别器的输出结果;
所述区域对齐网络位于分类主干网络之后,输入是分类主干网络第n个卷积层的输出特征图,特征图经过1×1的卷积处理得到的只有两个通道的输出;然后这个输出经过relu的激活函数和平均池化,得到一个大小为2×n×n的特征图;所述特征图输出的二通道分别对应的是行和列位置,即对应一个预测区域位置,分别对原始图像和破坏图像的区域位置进行预测,通过预测位置与原始位置的距离,找到子区域之间的相关性。
相较于现有技术,本发明及其优选方案能有效学习血细胞显微图像的判别性特征,实现血细胞图像中的血细胞的自动分类,并且相较于一般的分类方法,针对血细胞这一类型的医学显微图像,对血细胞图像中的精细特征提取更为准确、可靠,具有更优越的分类性能,也提高了分类任务的效率。
在预测阶段,针对血细胞的图像数据集,为避免网络复杂,参数过多,导致预测的过拟合,采用轻量级分类网络作为主干网络对图像进行分类,可以保证准确率,有效提高预测效率。在训练阶段,引入区域混淆机制,网络通过混淆图像区域,对图像区域进行重组,使分类网络在训练时更加关注图像的局部细节。另外,利用对抗性学习网络消除噪声干扰,以确保学习到正确有效的特征。最后根据区域间的语义相关性找到原始图像和受损图像之间的联系,从而对图像进行重构。在本发明中,由于区域混淆的方法一方面进行了数据增强,另一方面将输入图像的全局信息和局部信息一起进行训练,更有利于与局部特征的提取,相较于传统的深度学习分类方法,增强了学习局部特征的能力,分类效果更好。同时,由于区域混淆的方法只在训练阶段进行,并且训练阶段和预测阶段相互独立,训练阶段在整个网络框架内以端到端的方式进行,可以有效地提高计算速度,用较短的时间便能对血细胞进行准确的预测分类,大大提高了整个分析图像处理的效率。同时针对其他生物医学显微图像,可根据特定任务要求和病理特征对网络结构进一步调整,也可以为其他类似的生物医学图像的处理提供借鉴。
附图说明
下面结合附图和具体实施方式对本发明进一步详细的说明:
图1是本发明实施例基于区域混淆神经网络方法流程示意图;
图2是本发明实施例步骤s1流程示意图;
图3是本发明实施例分类主干网络结构示意图;
图4是本发明实施例分类主干网络中squeeze-and-excitation模块结构及位置示意图;
图5是本发明实施例分类主干网络对于权重参数的修正算法流程图。
具体实施方式
为让本专利的特征和优点能更明显易懂,下文特举实施例,作详细说明如下:
如图1所示,本实施例提供了一种基于区域混淆机制神经网络的血细胞显微图像分类方法,具体包括以下步骤:
步骤s1:对图像数据进行预处理,采用一些常规的数据增强方法丰富图像训练集,泛化模型,以防止模型过拟合,更好地提取图像特征。
步骤s2:构建基于区域混淆机制的深度神经网络框架,在训练阶段引入区域混淆机制,将经过处理后的图像数据输入深度神经网络框架中的训练分支,对输入图像进行分割,打乱图像的全局结构,并对分割后图像的子区域进行重新布局,迫使分类器对血细胞图像的局部精细特征进行提取。
步骤s3:对于步骤s2操作中可能引入的噪声影响,采用对抗性学习网络根据原始图像与混淆后图像的提取特征进行判别,构建对抗性损失函数,消除噪声图像的影响,并通过混淆后图像与原图像的语义相关性,对图像的结构信息进行建模。
步骤s4:上述步骤只在训练阶段进行,将混淆后的图像与原始图像一起作为训练时分类器的输入,通过参数共享的联合训练提取出分类器的最优参数,并将最优参数直接赋予分类主干网络分支,进行最终的分类预测工作,实现血细胞图像的自动分类。
如图2所示,在本实施例中,步骤s1具体包括以下步骤:
步骤s11:通过减去所有像素的均值,然后除以标准差,对每一幅图像进行标准化。
步骤s12:对输入图像大小进行调整,利用双线性插值方法将图像尺寸大小缩放到指定尺寸。
步骤s13:对于用于训练的图像数据,采用随机旋转、随机剪裁、水平翻转的方法进一步扩展图像数据,用于数据增强。
步骤s14:对用于测试集的图像数据,只进行中心剪裁的操作。
如图1所示,在本实施例中,基于区域混淆机制神经网络血细胞分类器包括分类主干网络、区域混淆网络、对抗性学习网络、区域对齐网络四个部分;
(1)第一部分为区域混淆网络:用以破坏图像的全局结构,打乱局部区域的空间分布。首先对输入图像进行划分,每个子区域用ri,j表示。对于第i行的向量子区域元素进行随机排序,可得到第i行区域的新排列
并构建区域混淆损失函数:
式中,i是原始图像,φ(i)是破坏后的图像,l代表了输入图像的类别标签,这三个部分在训练时作为输入,映射到特征向量c(i,θcls)中。当c(i)接近1时,说明学习到原图像中正确特征;当c(φ(i))接近1时,由于破坏产生的某些噪声分布会导致过拟合,分类网络可能认为被破坏的图片中只要符合某些噪声分布就属于该类,并不能保证学习到正确特征,因此需要通过第二部分的对抗性学习来消除噪声特征的影响。通过区域混淆机制,我们可以对图像的区域进行破坏,即将原始图像分割成很多局部区域并交换它们以生成新的训练图像。在训练时,原始的图像和破坏后的图像将一起作为网络输入共同学习有效的特征,这一步破坏的操作在用于数据增强的同时,实质上是打乱了原始图像数据中的全局结构,对血细胞显微图像识别任务无益的信息就会被网络无视,关注到更有益的显著性区域的特征语义信息。
(2)第二部分为对抗性学习网络:用以分辨从图像中学习到的是否为噪声特征,防止过拟合rcm引起的噪声模式进入特征空间,消除噪声的干扰。该方法通过构建一个判别器和对抗性损失实现:
式中d(i,θadv)的实质是一个判别器,用以图像是否被破坏。其输入是从原始/破坏的图像中学习到的特征向量。在这个判别器中,通过这softmax函数映射出来的是一个0~1范围内的值。符合噪声分布的受损图像学习到的是噪声特征,当一部分受损图像经过判别器后出来的值与原始图像不同时,说明它学习到的是噪声特征,与原图像不同。而当对抗性损失最小时,此时d(i)和d(φ(i)都接近于1,此时判别器无法判断出是原始图像还是受损图像,说明所学特征非常接近。此时,可以相信噪声的影响已经被忽略了。这种破坏后的图像学习到的是有效的局部特征。
(3)第三部分为区域对齐网络:用以对图像的结构信息进行建模,构建全局信息与局部信息的联系。在此部分,使用区域构造损失来衡量图像中不同区域的位置精度,引导主干分类网络对区域间的相关性进行建模。区域对齐网络位于分类网络之后,输入是分类网络第n个卷积层的输出特征图,特征图经过1×1的卷积处理得到的只有两个通道的输出。然后这个输出经过relu的激活函数和平均池化,得到一个大小为2×n×n的特征图,输出为:
式中h是区域对齐网络,θloc是区域对齐网络的参数,输出的二通道分别对应的是行和列位置,即对应一个预测区域位置,分别对原始图像和破坏图像的区域位置进行预测,定义区域对齐损失:
通过预测位置与原始位置的距离,找到子区域之间的相关性,帮助主干分类网络建立对目标的深层理解,并对结构信息进行建模。
(4)第四部分为分类主干网络:采用mobilenetv3作为血细胞分类器的主干网络,训练时对输入图像进行特征提取,学习得到分类器的最优参数;预测时分类器其他网络分支不起作用,通过分类主干网络对输入图像进行预测分类;
如图3所示,血细胞分类器采用mobilenetv3作为分类主干网络,其网络结构具体包括三个部分:
(1)起始部分:起始部分只包含单个卷积块,对于该卷积块中的卷积层,设置16个3x3的卷积,步长设置为2,经过卷积层后,进入batchnormalization层,这样做的目的是对输入值进行规范化操作,有助于加快梯度下降法模型的收敛速度,提升模型的精度,并且规范化的参数能够提升模型泛化能力,提高模型的可压缩性。最后进入h-switch激活层,其中h-switch激活函数为:
其中,对于式中的relu函数,限制其最大输出值为6。通过起始部分,提取出特征。
(2)中间部分:由图可知,中间部分是多个含有卷积层的块的网络结构,在这些卷积块中,包括三个基本步骤:
第一步:使用逐点卷积,通过膨胀系数设置升维倍数,逐点卷积卷积核大小设置为1×1×m(m为输入数据的维度),每次卷积一个像素的区域。通过逐点卷积运算将上一层的特征图在深度方向上进行加权组合,生成新的特征图,新的特征图的大小与输入数据大小一致,起到升维的作用。
第二步:进行深度卷积操作,其中输入通道数与输出通道数相等,经过n个3x3或5x5卷积核,设置步长为s,对输入层的每个通道独立进行卷积运算(n为该步操作的输入通道数),通过深度卷积操作得出的特征图各通道之间不关联。
第三步:再次逐点卷积,关联深度卷积后的特征图并输出指定通道数。
以上步骤在进行卷积过后均通过batchnormalization层进行规范化操作,经过上述步骤,实质是进行了一个深度可分离卷积的过程,相较于普通卷积,其按深度逐层获取特征图,并利用逐点卷积将空间信息融入,在获得同样规模的特征图和同样信息量的基础上,减少了大量的计算与参数,即使用了更小的空间代价和更少的时间代价实现了标准卷积层一样的效果。
在上述基本步骤的基础上,在一些卷积块中还引入了squeeze-and-excitation(se)模块:如图4所示,对于se模块,其位于卷积块内部、深度卷积层后,首先对输入的特征图进行全局平均池化,将特征图压缩为1×1×c的向量(c为通道数)池化;再通过两个全连接层和激活层获得1×1×c的空间权重,最后将se模块计算出来的各通道权重值分别和原特征图对应通道的二维矩阵相乘。通过该模块对特征进行校准,优化分类性能。
(3)最后部分:通过将平均池化层提前,减少计算量,将squeeze操作省略,直接用两个1x1的卷积层代替全连接层,可减少计算量和参数量且模型精度没有损失,最后输出类别。
在本实施例中,卷积神经网络采用反向传播的算法对权重参数进行训练更新:
设定目标函数:
l=αlcls+βladv+γlloc
式中目标函数由三个损失函数构成,分别为区域混淆损失函数、对抗性学习损失函数、区域对齐损失函数:
使用梯度下降法分别对卷积神经网络各层的权重参数进行修正更新:
对于池化层的反向传播:
δl-1=upsample(δl)θσ′(zl-1)
对于卷积层的反向传播:
参数更新:
如图5所示,根据上述分类器参数更新法则,按照以下具体步骤进行训练:
步骤c1:将步骤s1处理后的图像数据分为训练集样本、验证集样本与测试集样本;
步骤c2:将训练样本经过区域混淆后的图像与样本原始图像组合作为血细胞分类器的输入对其进行训练;
步骤c3:在训练过程中,经过几个epoch后通过验证集验证模型效果,通过验证集的效果反馈,判断验证效果是否符合要求,若符合,则继续训练;否则更改超参之后再返回步骤c2;
步骤c4:判断训练次数是否达到预设的最大训练次数,若是则进入步骤c4,否则采用back-propagation算法更新被激活的参数,并返回步骤c2;
步骤c5:由损失函数判断训练误差是否符合预设的值,若是则进入步骤c5,否则返回步骤c2;
步骤c6:获取一系列最优参数,赋予分类主干网络,采用测试集样本对分类器性能进行测试。判断测试集样本识别正确率是否符合预设要求,若符合,终止当前的模型训练;否则返回步骤c2;
步骤c7:得到最终的最优参数,将其赋予基于区域混淆机制神经网络的血细胞分类器,可对输入的血细胞显微图像进行自动分类。
即在训练过程中,原始图像、混淆后图像以及它们对应的类别标签组合在一起作为输入沿神经网络信号传播方向计算出网络的输出值,并分别构建区域混淆损失函数、对抗性学习损失函数和区域对齐损失函数,将输出值与期望输出值作比较,若目标函数值不满足误差精度,则采用梯度下降法对网络权重参数进行修正,修正方向沿卷积神经网络传播的逆方向,并再次计算目标函数,循环直到满足误差要求;若满足误差要求,则结束循环,得到训练后的最优参数,赋予分类主干网络。
根据上述内容构建出血细胞显微图像分类器,该分类器基于区域混淆机制,可有效解决血细胞图像中精细特征提取问题,并对额外引入噪声影响也通过对抗性学习网络消除。通过这种机制结合主干分类网络,其收敛速度相较于传统的卷积神经网络快,极大地减少了参数量和计算量,实时性更强,并可以有效提取血细胞图像中具有判别性的局部特征信息,实现良好的分类性能。
本专利不局限于上述最佳实施方式,任何人在本专利的启示下都可以得出其它各种形式的基于区域混淆机制神经网络的血细胞显微图像分类方法,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本专利的涵盖范围。