基于YOLACT++的秀丽隐杆线虫显微图像分割方法*

2023-09-29 05:52胡旭祥
计算机与数字工程 2023年6期
关键词:隐杆线虫损失

胡旭祥 刘 俊

(武汉科技大学计算机科学与技术学院 武汉 430065)

1 引言

秀丽隐杆线虫[1]是一种生长在土壤中,以微生物为食,生命周期短(约为2 周~3 周),容易繁殖等特点。秀丽隐杆线虫作为现代生物学研究和观察的流行生物模式,有着简单且易于研究的器官,包括口、咽、肠、性腺和胶原质表皮。当下,秀丽隐杆线虫的多数生理变化都是通过研究人员的视觉评估而缺少量化标准,通过图像处理技术来取代认为评估,对秀丽隐杆线虫各种生理变化的量化都会有很大帮助,为了实现利用计算机视觉自动进行量化评估,从显微图像中分割出秀丽隐杆线虫就成为了首要的,也是重要的一个环节。这是本研究的目标。

现如今,人类的科学技术已取得巨大进步,但是生命健康依然是大多数领域所探索的话题。秀丽隐杆线虫作为该研究方向的一个研究载体,它的一些特定的基因在细胞研究的过机器学习自动分割程中起着重要作用,对将来医学、科学的发展有着深远的影响。因此如何利用机器学习自动分割显微图像具有重要意义。

传统的图像分割算法[2]由于是以像素灰度值为基础对图像进行分割,通过一个或多个阈值吧图像中的像素点进行分类,以此实现对图像的分割,但是显微图像中的环境比较复杂,目标与杂质的灰度值较为相近,因此,选择合适的阈值完成高精度分割具有一定的难度。近些年,一些相关研究人员已经探索出了用于微观生物图像研究的相关图像处理算法。例如,如文献[3]中提到在显微图像中分割了重叠的宫颈细胞,在文献[4]提出一种用于从血细胞的显微图像中分割血小板的方法。文献[5]中提出了一种包括图像变换,阈值和形态学运算的方法分割秀丽隐杆线虫。本文在YOLACT++的基础上,引入了Attention 机制,目的是为了让网络分割模型更好地识别图片中的特征信息,进而提高网分割模型的分割准确度,实验表明,该方法能有效处理原始YOLACT++对秀丽隐杆线虫头尾分割不精确、图片周围分割精度不高等问题,实现了网络分割模型对秀丽隐杆线虫的高精度分割。

2 本文方法

2.1 深度学习分割模型

现如今在目标检测方面主要可分为One-stage型网络和Two-stage型网络。这两种网络模型的侧重点不太一样,Two-stage 型网络的分割精度较高,更加重视高精度的实力分割,其中Mask-RCNN[6],Faster-RCNN[7]等都是采用的这种目标检测网络;而One-stage 型网络更加注重分割的速度,此类网络直接通过主干网络给出目标物体的类别和位置信息,这样的算法速度更快,但是分割的准确性相比于Two-stage来说有所降低,比较经典的YOLO系列[8~9],Retina-Net[10]等都是这种类型的检测网络。

YOLACT[11]是丹尼尔·波利亚、崇洲等在2019年提出的一个实时实例分割模型,此模型是一个One-stage 模型,通过两个并行的子网络来实现图像分割,YOLACT 有着速度快、掩码质量高、普适性强等优势。YOLACT++在YOLACT 的基础上,在保证了实时性(大于或者等于30fps)的情况下,对先前的的YOLACT做出几点改进,为了提升各个监测分割模型的准确度,模型中把可变形的卷积由自由行使的采样代替传统CNN 中使用的刚性网格采样,也就是在不同的卷积层的后面再加上一个卷积层,用来学习特征图中每个像素点的偏移情况。然后,将学习到的偏移位置信息输入到特征图中,之后再进行后续的卷积。为了可以检测到不同尺寸大小的物体,YOLACT 采用了和SSD 相同的多尺度特征图,也就是在比较大的特征图上检测小目标,在小的特征图上检测大目标。同时,为了使得网络模型学习到的特征更加丰富,从而更好地分割不同尺寸的目标,实验的分割模型采用的是FPN 网络,模型输入的图片大小为550*550,采用的Backbone为ResNet101。

如图1 所示,它是在经过一个卷积层处理后,由C5 层得到的P5 层,然后再进行双线性插值操作,使得P5 的特征图扩大了一倍,经过上述操作后,由C4 层得到了P4 层,由C3 层得到了P3 层,接下来就是把P5 进行卷积和下采样操作得到了P6,对P6 进行同样的操作得到了P7,从而搭建起了一个FPN网络。

表1 ResNet结构

图1 秀丽隐杆线虫检测、分割的网络框架

针对提高分割速度,可以进行实行分割,丹尼尔·波利亚、崇洲等在Retina-Net 的基础上进行改进,采用了共享卷积网络,从而可以提高分割速度,达到实时分割的目的。在受到MASK R-CNN[12]的启发下,因为仅仅从包围框这个因素来评判mask的好坏不太合理,所以在模型后添加了Mask Re-Scoring 分支,直接使用全尺寸的mask 作为scoring 分支的输入,输出则是对应每个类的GT-mask 的IoU,在scoring 的分支中没有使用FC层,所以提升了网络的分割速度。

2.2 损失函数

损失函数(Loss function)是用来度量模型的预测值f(x)与实际值Y的差异程度,损失值越小,代表模型的鲁棒性就越好,反之越差,如果所得的预测值与实际值相等,代表没有损失,损失函数的核心部分是经验风险函数也使其结构的重要组成部分。

YOLACT++中的损失函数由三部分组成,包括分类损失(Lcls),框回归损失(Lbox)以及掩码损失(Lmask),其损失函数为L=Lcls+Lbox+Lmask,每一个目标区域都会生成一个的特征层,其中特征层中的的每个值为二进制的掩码(0 或1)。根据当前RoI 区域预测的分类,含有K∗n∗n维度的输出,K代表类别的数量,n*n是提取的ROI 图像的大小。mask 损失值是预测值(预测mask)与实际值(group truth)的逐像素二进制交叉熵[13]。为了产生实例masks,通过结合原型分支和mask 系数分支的工作,使用前者和后者的线性组合作为系数,然后通过一个sigmoid[14]非线性来产生最终的mask。使用单个矩阵乘法和sigmoid 可以有效地实现这些操作。逐像素二进制交叉熵的公式如式(1)所示:

其中概率分布m和n来度量信息量,yi表示label 的类别,本文的实验中1表示线虫的虫体部分,0表示背景。ŷi为模型的预测概率,模型在通过计算得到特征值后,根据Sigmoid 函数计算出概率。Sigmoid函数计算如式(2)。

本次实验的实验数据设置如下:分类损失Lmask设置为1,盒回归损失Lbox设置为1.5,mask 损失Lmask设置为6.125。图为训练状态曲线,图的纵坐标为loss 的值。由图2 可见,实验在迭代4000 次之后达到一个相对稳定的状态,平均损失值稳定在0.09 左右。Lbox的定义方式与SSD 中的定义的相同,然后计算掩模损耗,取集合掩模M与地面真掩模Mgt之间像素方向的二元交叉熵Mgt:Lmask=BCE(M,Mgt)。图2为损失下降曲线图。

图2 损失下降曲线图

2.3 Attention机制

为了加深分割网络对特征图的理解,解决在低层特征中缺失的语义信息,存在的一些噪声对虫体分割造成一定的干扰,所以引入Attention机制来获取高级语义信息,增加线虫虫体区域的权重信息,增加网络模型对线虫图片的学习能力,从而提高分割模型的准确率。

因为本次实验是分割线虫虫体部分,Attention机制通过Attention 权重0<<β<<1 来识别线虫虫体的特征区域,注意力权重的计算公式为

在式(3)中,m是像素空间的大小;表示低级的特征图,表示高级的特征图;式(4)中的为中间值;b1和b2均为偏置项;σ1和σ2分别为Re-LU 函数和Sigmoid 函数,目的是对Attention 权重进行一个归一化的处理。Attention 机制在训练过程中可以自动学习目标结构,不需要额外的监督。

3 实验结果分析

3.1 实验数据设置

论文中所使用的数据,是通过光学显微镜拍摄得到的纤维图像。因为训练出一个比较好的分割网络权重有两个重要因素,首先是需要大量的数据,其次是大量的参数,且以人为的方式难以获取大量的线虫数据,所以实验过程中对线虫数据有一个数据增强的过程,以致于可以拥有更多的线虫数据,来使得文章所采用的网络模型有更好的分割效果,来提升网络模型的鲁棒性。经过一系列数据增强的操作后,将现有的2500 张数据,选出其中的2200 张数据作为训练集,剩余的300 作为测试集。数据集的制作完成后,再使用标注软件(本次实验所使用的的是labelme)对数据中的虫体部分进行标注,标注完成后则会得到一个对应的json类型的文件。图3 为本次实验的实验环境。Labelme 标注如图4所示。

图3 实验环境

图4 labelme标注数据结果

图5 实验效果对比

3.2 实验步骤

本文实验的大致步骤如下:

1)将所得到的数据进行预处理,选取可用的数据,去除重复数据。

2)对已有的数据进行标注,完成数据集的制作。3)使用得到的模型对测试集数据进行实验。4)对模型进行评估。

3.3 结果分析

本次实验在使用YOLACT++网络分割模型是引入了Attention机制,结合改进后的模型对不同体态下的秀丽隐杆线虫有较好的分割效果,原来的YOLACT++分割模型容易造成线虫头部和尾部的信息缺失,图片的边缘部分也有些许无法分割出来。可以看出,在经过改进后的分割模型在一定程度上的提升了分割的准确性,使分割的精确度更加趋近于真实值。

本文的实验利用AP,AP50来进行结果评估。为了检测出一个合适的值,在此AP50代表的是IOU的值为0.5。AP 表示的IOU 的值设置在0.50~0.95之间,增量为0.05。IOU的公式为

式(5)中的P代表的是一个预测值,g代表的是一个实际值。定义IoU 这个概念是为了评价定位算法是否精确,即它衡量了两个边界框的重叠的相对大小。由式(5)可以看出IoU 值越大,越接近于1,表示预测的效果越好,在一般的目标检测过程中,若IoU的值大于0.5,则说明检测正确。式(6)为AP的公式。

表2 实验结果(mIOU)

在实验过程中,从表中的数据表明,网络与传统分割方法相比具有巨大优势。与OSTU 相比,本次实验所使用的方法的mIOU值提升了16%。

4 结语

本次研究是在YOLACT++网络框架的基础上引入了Attention机制,在对光学显微镜下所拍到的秀丽隐杆线虫的数据进行检测分割,原始的YOLACT++在对线虫体态进行分割时,对图像边缘信息会有一定程度的丢失,对线虫的头部和尾部的信息的处理效果也不是很理想。为了在保证分割速度的同时提高了一些网络分割模型的精确性,通过引入Attention机制,结合损失函数算法等方法来提升网络模型的分割效果。实验表明,本方法在秀丽隐杆线虫虫体分割时提高了网络分割模型的精准度,证明了本文方法的有效性。

猜你喜欢
隐杆线虫损失
夏季蔬菜换茬期线虫防治要注意
人参皂苷Ro延长秀丽隐杆线虫的寿命并增强氧化应激抵抗力
胖胖损失了多少元
玉米抽穗前倒伏怎么办?怎么减少损失?
地黄花对秀丽线虫寿命的影响
基于微流控芯片平台的秀丽隐杆线虫衰老模型研究进展
朝鲜孢囊线虫——浙江省孢囊线虫新记录种
线虫共生菌Xenorhabdus budapestensis SN19次生代谢产物的分离纯化与结构鉴定
瘦肉精(硫酸沙丁胺醇)对秀丽隐杆线虫的毒性分析
一般自由碰撞的最大动能损失