CN116721414A - 一种医学图像细胞分割与跟踪方法 - Google Patents
一种医学图像细胞分割与跟踪方法 Download PDFInfo
- Publication number
- CN116721414A CN116721414A CN202310514483.6A CN202310514483A CN116721414A CN 116721414 A CN116721414 A CN 116721414A CN 202310514483 A CN202310514483 A CN 202310514483A CN 116721414 A CN116721414 A CN 116721414A
- Authority
- CN
- China
- Prior art keywords
- tracking
- yolov8
- image
- cell
- segmentation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 230000011218 segmentation Effects 0.000 title claims abstract description 59
- 238000001514 detection method Methods 0.000 claims abstract description 54
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 32
- 230000033001 locomotion Effects 0.000 claims abstract description 17
- 238000012545 processing Methods 0.000 claims abstract description 15
- 230000007246 mechanism Effects 0.000 claims abstract description 13
- 238000000605 extraction Methods 0.000 claims abstract description 11
- 238000004458 analytical method Methods 0.000 claims abstract description 6
- 230000004927 fusion Effects 0.000 claims abstract description 6
- 210000004027 cell Anatomy 0.000 claims description 108
- 230000006870 function Effects 0.000 claims description 57
- 238000012549 training Methods 0.000 claims description 25
- 238000004364 calculation method Methods 0.000 claims description 24
- 239000011159 matrix material Substances 0.000 claims description 21
- 210000002569 neuron Anatomy 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 14
- 238000001914 filtration Methods 0.000 claims description 12
- 238000013461 design Methods 0.000 claims description 11
- 230000006872 improvement Effects 0.000 claims description 8
- 230000003068 static effect Effects 0.000 claims description 8
- 238000012795 verification Methods 0.000 claims description 8
- 238000007781 pre-processing Methods 0.000 claims description 7
- 238000012805 post-processing Methods 0.000 claims description 6
- XXUZFRDUEGQHOV-UHFFFAOYSA-J strontium ranelate Chemical compound [Sr+2].[Sr+2].[O-]C(=O)CN(CC([O-])=O)C=1SC(C([O-])=O)=C(CC([O-])=O)C=1C#N XXUZFRDUEGQHOV-UHFFFAOYSA-J 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 6
- 238000010606 normalization Methods 0.000 claims description 4
- 230000009466 transformation Effects 0.000 claims description 4
- 101100481876 Danio rerio pbk gene Proteins 0.000 claims description 3
- 101100481878 Mus musculus Pbk gene Proteins 0.000 claims description 3
- 230000002776 aggregation Effects 0.000 claims description 3
- 238000004220 aggregation Methods 0.000 claims description 3
- 230000009087 cell motility Effects 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000013079 data visualisation Methods 0.000 claims description 3
- 238000004880 explosion Methods 0.000 claims description 3
- 238000013100 final test Methods 0.000 claims description 3
- 230000012010 growth Effects 0.000 claims description 3
- 238000003709 image segmentation Methods 0.000 claims description 3
- 230000009467 reduction Effects 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 25
- 238000010586 diagram Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000002474 experimental method Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 201000010099 disease Diseases 0.000 description 2
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 2
- 210000002950 fibroblast Anatomy 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 206010027476 Metastases Diseases 0.000 description 1
- 206010028980 Neoplasm Diseases 0.000 description 1
- 208000037273 Pathologic Processes Diseases 0.000 description 1
- 241000669244 Unaspis euonymi Species 0.000 description 1
- 238000002679 ablation Methods 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 201000011510 cancer Diseases 0.000 description 1
- 230000032823 cell division Effects 0.000 description 1
- 230000010261 cell growth Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000002790 cross-validation Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000013209 evaluation strategy Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000002055 immunohistochemical effect Effects 0.000 description 1
- 230000002757 inflammatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000009401 metastasis Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000005305 organ development Effects 0.000 description 1
- 230000009054 pathological process Effects 0.000 description 1
- 230000035790 physiological processes and functions Effects 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000009168 stem cell therapy Methods 0.000 description 1
- 238000009580 stem-cell therapy Methods 0.000 description 1
- 230000025366 tissue development Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/69—Microscopic objects, e.g. biological cells or cellular parts
- G06V20/695—Preprocessing, e.g. image segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/62—Extraction of image or video features relating to a temporal dimension, e.g. time-based feature extraction; Pattern tracking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/69—Microscopic objects, e.g. biological cells or cellular parts
- G06V20/698—Matching; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明属于图像识别分割技术领域,公开了一种医学图像细胞分割与跟踪方法,包括如下步骤:步骤1:数据处理;特征提取:模型中的骨干部分用于从经预处理后的图像中提取特征,YOLOv8采用了CSPDarknet结构;步骤3:FPN‑PAN多尺度特征融合;步骤4:Head根据多尺度特征进行预测。本发明通过与deepsort等跟踪算法相结合,实现对细胞的运动轨迹进行实时的跟踪。本方法主要基于YOLOv8框架,采用了Simam注意力机制和多尺度proto方法对模型进行优化,进一步提高YOLOv8的检测效果。本发明可以全自动地完成医学图像的分析与检测,便捷性高,使用方便。
Description
技术领域
本发明属于图像识别分割技术领域,尤其涉及一种医学图像细胞分割与跟踪方法。
背景技术
试想你有一张包含了分布较为密集细胞的医学图像,让你把这张图像中的所有细胞都给标注出来(包括细胞所在的边界框和其对应的掩码)。如果你没有比较专业的知识,你将无法完成相关的标注工作。而如果你有相关的专业知识,面对这张有着较多数量细胞的图像,你也将要花费非常多的时间和精力来完成这些工作。那如果让你同时处理多张图像甚至视频数据呢?这将是一项很棘手的任务。因此,医学图像中的细胞分割是一项非常繁琐和重复性的工作,靠人工完成会非常的费时费力,而且效果也较差。
随着计算机技术的进步,依靠算法和机器视觉来完成这一任务变得越来越普遍,它们不仅效率高,而且还能准确地将细胞分割出来。即使图像分辨率较高,其中的细胞也较为密集,它的效果也是非常不错的,在很多时候甚至能超过人工标注的效果。在早期,这种技术主要依靠一些图像处理算法,如分水岭、阈值分割算法等,这些算法虽然速度上较快,但精度上欠佳,存在着过分割或欠分割的缺点。随着深度学习技术的发展和计算机算力的进步,基于机器学习模型的细胞分割取得了引人注目的效果。它不仅能取得较好的分割效果,具有较高的检出率和分割精度,而且效率也较高。
在细胞分割方面,效果比较好的有UNet网络、Mask RCNN网络和hovernet等。UNet是一种语义分割方法,如果想要得到每个细胞的分割结果,还需要添加分水岭等后处理操作,步骤较为繁琐,也影响了检测的精度。Mask RCNN网络是一个两阶段实例分割网络,模型参数较多,检测流程较为复杂,虽然精度较高,但速度受到了限制。Hovernet可以达到较好的检测效果,然而,它有着较多的前后处理操作,在NVIDIA GeForce RTX 3090显卡上对一张1536*1536的医学图像进行检测时需要大约20秒的时间,速度也较慢。在目标检测方面,YOLO系列模型作为一个单阶段检测模型,它同时有着较高的检测精度和速度,在实际应用中有着较高的实用价值。在前面算法的相关设计经验的积累下,Ultralytics提出了YOLOv8模型,包括yolov8n、yolov8s、yolov8m、yolov8l、yolov8x共五种,它们的参数量逐渐变多,精度也相应地提高,我们可以根据自己的应用需求来选择适合自己的模型。同时,YOLOv8可以同时完成边界框的预测、分类与实例分割,能够完成细胞分割任务。然而,在实验过程中,我们发现YOLOv8在细胞分割数据集上的效果还不够好,尤其是dice指标较低。
细胞跟踪问题是一个常常被忽略的问题。细胞跟踪是细胞生物学和医学图像处理领域中的一个重要课题。细胞跟踪的目的是定位和追踪图像序列中特定细胞的位置和运动轨迹,从而揭示细胞生长、分裂等生理和病理过程中的细胞动态信息。
目前,细胞跟踪技术主要分为手动跟踪和自动跟踪两种。手动观测方案准确性取决于观察者的经验水平,并且无法处理大量数据。自动跟踪技术已经成为研究的主要方向,可以有效挖掘数据信息并自动跟踪细胞位置和运动轨迹,利用机器学习技术,如随机森林、深度学习等进行细胞物体检测和跟踪,逐渐被广泛采用。但目前的算法和模型对于细胞跟踪的准确性和效率都不高,如何通过合理的算法和模型来提高准确性和效率成为目前研究的重点。
发明内容
本发明目的在于提供一种医学图像细胞分割与跟踪方法,以解决上述的技术问题。
为解决上述技术问题,本发明的一种医学图像细胞分割与跟踪方法的具体技术方案如下:
一种医学图像细胞分割与跟踪方法,包括如下步骤:
步骤1:数据处理:包括图像归一化、图像去噪、图像切分以及图像增强;
步骤2:特征提取:对缩放到640*640后的图像进行特征提取,模型中的骨干部分用于从经预处理后的图像中提取特征,YOLOv8采用了CSPDarknet结构,即具有CSP结构的Darknet网络;
步骤3:FPN-PAN多尺度特征融合:FPN自顶向下传达语义特征,PAN自底向上传达强定位特征,PAN与FPN两两联手,从不同的主干层对不同的检测层进行参数聚合;
步骤4:Head根据多尺度特征进行预测:检测头部中,通过两个子模块Proto与cv4分别预测出掩码的判别标准与掩码的置信度特征矩阵,然后这两个模块的输出结果进行矩阵乘法最终得到每个网格对应的掩码置信度矩阵,该矩阵在sigmoid函数处理后即为每个像素点属于细胞的概率值。
进一步地,所述步骤2采用CSPDarknet53骨干网络用来提取目标特征,它包含了5个CSP模块,每个CSP模块的下采样通过大小为3×3的卷积核来实现,YOLOv8网络模型将输入图片的大小定义为640×640,经过主干网络中的五个CSP模型进行特征化提取后,特征图尺寸变化了五次,最终从640×640变成20×20大小的特征图,实现特征图的快速降维。
进一步地,所述步骤3中YOLOv8采用了分离头部Decoupled-Head的设计思想,即分类与定位采用两个互不干扰的分支。
进一步地,所述步骤4包括如下具体步骤:
步骤4.1:为每个尺度分别设置一个单独的Proto,则每个尺度下对应的Proto矩阵预测可以表示为:
protos[i](x[i])
其中,x表示模型提取到的不同尺度下的特征集合,protos表示不同尺度下对应的Proto模块集合;
步骤4.2:对输入Segment模块的特征使用Simam注意力机制;
步骤4.3:在PAN-FPN模块中添加一层,来将骨干网络中的第二层输出引入进来,以让模型更好地将底层特征融入进来;
步骤4.4:在分割部分,采用BCE+LovaszHingeLoss的损失函数;
步骤4.5:将YOLOv8与deepsort跟踪算法相结合,实现对细胞的运动轨迹跟踪。
进一步地,在分类分支中,使用二分类交叉熵BinaryCrossEntropy损失,其计算公式为:
其中,当预测的类别与真实类别相同时,yi是1,否则,是0。
进一步地,在回归分支中,使用CIOU+DFL作为损失函数,其中,CIOU是对IOU的一种改进方案,IOU全称Intersectionoverunion,即交并比,其计算公式为:
提出GIOU、DIOU与CIOU作为损失函数,
GIOU直接把IOU设置为回归的loss,其计算公式如下:
其中,Ac是两个框的最小闭包区域面积,即同时包含了预测框和真实框的最小框的面积,U是两个框的并集区域面积,指的是闭包区域中不属于两个框的区域占闭包区域的比重,最终使用1-GIOU作为损失函数;
DIOU计算公式为:
其中,b,bgt分别代表了预测框和真实框的中心点,且ρ代表的是计算两个中心点间的欧氏距离,c代表的是能够同时包含预测框和真实框的最小闭包区域的对角线距离;CIOU损失函数在GIOU、DIOU函数的基础上,将bbox回归三要素中的长宽比也考虑到了计算中,添加了惩罚项,如下式所示:
其中,α是权重函数,而v用来度量长宽比的相似性,定义为
完整的CIOU损失函数定义为:
LCfOU=1-(IOU-RCfOU)
CIOU损失的梯度类似于DIOU损失,但还要考虑v的梯度,在长宽为[0,1]的情况下,w2+h2的值通常很小,会导致梯度爆炸,因此在实现时将替换为1;
DFL损失全称DistancebasedFocalLoss,它是一种用于分类任务的损失函数,基于FocalLoss和欧几里得距离的改进,旨在更好地处理分类不平衡和难易度不均的问题,其公式为:
其中,y_true是真实标签向量,y_pred是预测标签向量,N是样本数量,γ是调整难易度权重的超参数,d是欧几里得距离。
进一步地,在分割分支中,使用二分类交叉熵损失函数添加LovaszHingeLoss,LovaszHingeLoss同样是一种用于分类任务的损失函数,被设计用于最小化多标签分类任务的平均排名误差,公式定义如下:
其中n为标签的数量,y为真实标签向量,为预测标签向量,π为一个排列函数,yπ(i)表示第i个标签在排列后的位置,li表示在该位置上的hinge损失函数;
具体到每一个标签上的hinge损失函数为:
其中yi∈{-1,1}表示第i个标签的真实值,表示第i个标签的预测值。
进一步地,所述步骤4包括如下具体步骤:
在Head部分即Segment模块中,添加Simam注意力机制,Simam在不增加原始网络参数的情况下,为特征图推理出三维注意力权重,求得每个神经元的最小能量为
由于能量越低,神经元t与周围神经元的区别越大,重要性也就越高,因此,神经元的重要性通过1/e*得到,根据注意力机制的定义,通过下式对特征进行增强处理:
YOLOv8取消了之前模型中采用的Anchor-based的设计方法,采用Anchor-free,在训练过程中,YOLOv8摒弃了静态的正样本分配策略,采用TaskAlignedAssigner的动态正样本分配策略;
TaskAlignedAssigner的匹配策略为:根据分类与回归的分数加权的分数选择正样本;对于每一个标签框,对所有的预测框,基于标签框类别对应分类分数与预测框与标签框的IOU的加权得到一个关联分类以及回归的对齐分数alignment_metrics;
对于每一个标签框,直接基于alignment_metrics对齐分数选取topK大的作为正样本。进一步地,在实例分割的基础上,结合deepsort跟踪方法,实现流媒体中细胞的运功轨迹跟踪,其中,Deepsort全称DeepSimpleOnlineandRealtimeTracking,用于在视频中跟踪目标并用连续的ID标识它们,所述细胞跟踪的具体步骤如下:
(1)数据预处理:将包含细胞运动轨迹的流媒体逐帧输入给YOLOv8;
(2)目标检测与分割:使用YOLOv8算法检测细胞并获取它们的位置和大小等信息;
(3)目标分配:使用Deepsort算法将每个检测到的细胞与之前跟踪到的细胞进行匹配,并为之赋予唯一的ID号;
(4)连续跟踪:Deepsort使用卡尔曼滤波进行跟踪,将之前和当前的细胞位置信息进行融合,以便更准确地估计未来的运动;
(5)细胞属性提取:根据跟踪结果,可以提取细胞的各种属性,比如运动速度、生长率等;
(6)数据可视化:将跟踪结果可视化,以便进一步分析和研究细胞的行为。
为了得到训练模型的数据集,使用labelme软件对图像中的细胞进行标注,最终得到每个细胞的分割掩码数据,每张图像中的每个细胞使用一个整数唯一标识,然后使用opencv得到每个细胞对应的边界框,这些数据经过一些过滤和切分后,再对每张小图进行清洗,最终便得到了细胞分割数据集,为了准确地评估模型的性能,使用三次交叉验证方法,将数据集分成三份,每次取其中两份作为训练集,另一份作为验证集,依次训练与验证,并取在验证集上的测试指标的平均值作为最终的测试结果。
进一步地,包括YOLOv8的推理和后处理流程,所述YOLOv8的推理和后处理流程包括如下几步:
(1)bbox积分形式转换为4d bbox格式:对Head输出的bbox分支进行转换,利用Softmax和Conv计算将积分形式转换为4维bbox格式;
(2)维度变换:YOLOv8输出特征图尺度为80x80、40x40和20x20的三个特征图,Head部分输出分类和回归共6个尺度的特征图,将3个不同尺度的类别预测分支、bbox预测分支进行拼接,并进行维度变换,为了后续方便处理,将原先的通道维度置换到最后,类别预测分支和bbox预测分支shape分别为(b,80x80+40x40+20x20,80)=(b,8400,80),(b,8400,4);
(3)解码还原到原图尺度:分类预测分支进行Sigmoid计算,而bbox预测分支需要进行解码,还原为真实的原图解码后xyxy格式;
(4)阈值过滤:遍历batch中的每张图,采用score_thr进行阈值过滤,在这过程中还需要考虑multi_label和nms_pre,确保过滤后的检测框数目不会多于nms_pre;
(5)还原到原图尺度和nms:基于前处理过程,将剩下的检测框还原到网络输出前的原图尺度,然后进行nms即可,最终输出的检测框不能多于max_per_img。
本发明的一种医学图像细胞分割与跟踪方法具有以下优点:
(1)本发明时效性高。基于卷积神经网络的细胞分割方法具有较高的效率。
(2)本发明抗干扰性能强。在数据处理阶段我们对数据进行了过滤和预处理,在训练过程中我们也使用了较多的数据增强方法,减轻了模型过拟合的风险。而在用模型对测试图像进行预测时,它也可以保证较高的泛化能力。
(3)本发明性能指标较高。由于采用了Simam注意力机制和多尺度proto方法对模型进行优化,模型的分割效果和效率都有着不错的表现。
(4)本发明可以同时高效地完成医学图像中细胞的边界框预测、分割与分类,同时,由于其满足实时性的要求,将改进后的YOLOv8模型与Deepsort等跟踪算法相结合,还能够实现流媒体中的细胞运动轨迹跟踪。
(5)本发明可以全自动地完成医学图像的分析与检测,便捷性高,使用方便,依赖于python的可移植性,用户可以在笔记本电脑、台式机、服务器等终端系统上安装运行整个网络。同时,YOLOv8可以很容易地使用TensorRT进行加速,这可以大大加速用户使用过程中模型的推理速度。
附图说明
图1为IOU的局限性说明图;
图2为YOLOv8模型Head部分示意图;
图3为改进后的YOLOv8模型的Head部分示意图;
图4为模型进行推理时的流程图;
图5为测试时使用的数据集示例图;
图6为Qupath软件的推理结果示意图;
图7为YOLOv8-simam+mproto模型的推理结果示意图;
图8为细胞跟踪视频流中的一组图像推理结果示意图;
图9为细胞跟踪视频流中的另一组图像推理结果示意图。
具体实施方式
为了更好地了解本发明的目的、结构及功能,下面结合附图,对本发明一种医学图像细胞分割与跟踪方法做进一步详细的描述。
一种基于改进的轻量化模型YOLOv8的高效医学图像细胞分割与跟踪方法,该方法包括数数据处理部分、特征提取部分、FPN-PAN多尺度特征融合部分、Head根据多尺度特征进行预测(边界框回归、分类和分割)。
步骤1:数据处理:主要包括图像归一化、图像去噪、图像切分以及图像增强等,由于细胞分割数据集较小,为了增强后续模型的训练效果,这些处理是非常重要的。并且为了提高模型的泛化能力,我们使用了官网提供的coco数据集上的预训练权重,当然由于参数及一些结构的不同,我们只是进行了选择性地加载。
步骤2:特征提取:对缩放到640*640后的图像进行特征提取,模型中的骨干部分用于从经预处理后的图像中提取特征,提取特征的好坏将影响到最终的预测效果。为了提高模型的表达能力,YOLOv8采用了CSPDarknet结构,即具有CSP结构的Darknet网络。它是具有跨阶段的局部网络架构,加入CSP结构之后,解决了主干网络中的信息重复问题,尤其是在一些大型神经网络梯度优化过程中,这样可以在很大程度上减少模型的参数数量和FLOPS(floatingpointoperations)数量,并且使得最终模型的推理速度有所提升,模型的效果也有所改善。CSP结构的主要思想是将卷积层输出的特征图分为两个部分,一部分继续进行卷积操作,另一部分与上一部分进行卷积操作之后的特征图进行融合,经过CSP模块能够将输出的特征图进行快速降维。由于这种思想的加入,使得YOLOv4网络模型的尺寸能够缩小,在没有损失检测精度的同时提高了检测速度。目前主流使用CSP结构的网络都已经取得了一定的效果,例如DenseNet和图中使用的ResNet,未来在网络结构中的发展中大多会保留此设计。一个模型的输入输出参数,卷积层层数都会影响模型的检测效果。CSPDarknet53骨干网络用来提取目标特征,它包含了5个CSP模块。每个CSP模块的下采样可以通过大小为3×3的卷积核来实现。YOLOv8网络模型将输入图片的大小定义为640×640,经过主干网络中的五个CSP模型进行特征化提取后,特征图尺寸变化了五次,最终从640×640变成了20×20大小的特征图,也因此实现了特征图的快速降维。YOLOv8选择使用CSPDarknet53网络结构为主干网的优点包括了两个方面,首先在不损失检测精度的前提下,提升卷积网络对特征提取的能力,提升了检测速度;其次是降低整个模型的计算损耗,使得模型在配置简单的CPU上也能实现对YOLOv4模型的训练。值得注意的是,与之前的CSPDarknet结构不同的是,其中的C3模块被替换成了C2f模块,这可以实现进一步的轻量化。YOLOv8模型的最后一部分则分别使用分类、回归和分割三个分支来完成对应的任务,这种多任务的训练模式可以融合来自多个任务的信息,对每个子任务都起到了监督和减轻过拟合的作用。而且,YOLOv8在这里采用了流行的Decoupled-Head的设计理念,这可以减少在参数优化时不同任务之间的干扰,同时尽可能保留多任务之间的协同优化作用。同时,YOLOv8依旧使用了YOLOv5等架构中使用的SPPF模块;之后,FPN-PAN会将来自不同深度下的特征进行融合,这可以有效提高模型对不同大小目标的检测效果。最终,我们可以得到三个不同尺度下的特征图。
步骤3:FPN-PAN多尺度特征融合:PAN-FPN可以完成对特征进行多尺度融合,其中FPN全称FeaturePyramidNetwork即特征金字塔网络,可以自顶向下传达语义特征,而PAN全称PyramidAttentionNetwork即金字塔注意力网络,可以自底向上传达强定位特征,PAN与FPN两两联手,从不同的主干层对不同的检测层进行参数聚合,使得目标的位置信息和类别信息都最大程度地进行了保留,这种结构上的设计提高了模型的分类与定位精度;
与YOLO系列以往架构不同的是,YOLOv8采用了分离头部Decoupled-Head的设计思想,即分类与定位采用了两个互不干扰的分支,这可以提高模型在这两个任务上的性能。
步骤4:Head根据多尺度特征进行预测:检测头部中,为了实现细胞的分割,我们还需要使用一个分割分支,这部分是通过两个子模块Proto与cv4分别预测出掩码的判别标准与掩码的置信度特征矩阵,然后这两个模块的输出结果进行矩阵乘法最终得到每个网格对应的掩码置信度矩阵。该矩阵在sigmoid函数处理后即为每个像素点属于细胞的概率值;
在使用原本的YOLOv8模型进行细胞分割时,我们发现YOLOv8的分割效果还欠佳,为了进一步提高模型的分割效果,尤其是dice指标,我们提出了如下几点改进思路:
(1)FPN结构输出的是多尺度的特征图,如图2中YOLOv8的模型结构所示,k表示卷积核大小,s表示步长,p表示填充值,c表示通道数,Conv2d表示卷积层,在Head部分即Segment模块中,模型需要通过proto和cv4这两个子模块分别预测出掩码的判别标准与掩码的置信度特征矩阵,然后这两个模块的输出结果进行矩阵乘法最终得到每个网格对应的掩码置信度矩阵。该矩阵在sigmoid函数处理后即为每个像素点属于细胞的概率值。然而模型在Segment模块中对这些特征进行处理时,使用的是同一个Proto子模块来生成掩码的判别标准矩阵,这虽然可以减少模型的参数量,加快模型的推理速度,然而对多尺度特征图,我们也相应地使用一个多尺度的Proto子模块,在每个尺度上都生成一个单独的Proto矩阵,则模型的性能应该会获得提升。因此,为了提高模型的拟合效果,我们为每个尺度分别设置一个单独的Proto,则每个尺度下对应的Proto矩阵预测可以表示为
protos[i](x[i])
其中,x表示模型提取到的不同尺度下的特征集合,protos表示不同尺度下对应的Proto模块集合。
改进后的YOLOv8的Head部分可以用图3表示,k表示卷积核大小,s表示步长,p表示填充值,c表示通道数,Conv2d表示卷积层。
(2)与此同时,为了增强特征的表达能力,让模型能更加关注有效的信息,我们对输入Segment模块的特征使用了Simam注意力机制。这是一种无参数的注意力模块,它可以让网络学习到更具区分性的神经元,在改善卷积网络的表征能力上具有灵活性和有效性。
(3)由于YOLOv8模型要求输入的分辨率大小为640*640的图像,我们需要将高分辨率的医学图像缩放到640*640,这可能导致有些目标尺寸较小,提高了检测的难度。而且YOLOv8模型采用的下采样倍数较大,从上面的论述中我们也可以知道,较深的特征图较难学习到小目标的特征信息,因此我们提出增加小目标检测层即对较浅特征图与较深特征图相加后进行检测,这可以提高模型对小目标的关注度,从而提高检测效果。因此,我们在PAN-FPN模块中又添加了一层,来将骨干网络中的第二层输出引入进来,以让模型更好地将底层特征融入进来。
(4)为了提高模型的分割性能,在分割部分,我们采用了BCE+LovaszHingeLoss的损失函数,后者适用于标签不平衡的情况,能够有效处理类别不平衡的问题。
分类分支中,使用二分类交叉熵BinaryCrossEntropy损失,其计算公式为
其中,当预测的类别与真实类别相同时,yi是1,否则,是0。交叉熵损失函数可以加速训练时模型的收敛,加速参数的更新,可以避免均方误差损失函数学习速率下降的问题,因为如果采用了sigmoid激活函数,使用均方误差时会存在着梯度消失的问题。
回归分支中,使用CIOU+DFL作为损失函数。
其中,CIOU是对IOU的一种改进方案。IOU全称Intersectionoverunion,即交并比,其计算公式为
它可以反映预测边界框与真实边界框之间的匹配程度,从而反映了检测效果的好坏;它还有一个很好的特性是尺度不变性,即对尺度不敏感。然而,将其作为损失函数,存在着两个主要的缺点:
(1)如果两个框没有相交,根据定义,IOU=0,不能反映两者的距离大小(重合度)。同时因为loss=0,没有梯度回传,无法进行学习训练;
(2)IOU无法精确的反映两者的重合度大小。如图1所示,三种情况下两个边界框之间的IOU都相等,但从左到右,它们的GIOU依次为0.33、0.24和-0.1,当两个边界框之间的方向更加一致时,GIOU值也将会更高,因此,GIOU能更好地反映这些边界框之间的重合度。
为了解决这两个问题,GIOU、DIOU与CIOU相继被提出。
(1)GIOU认为可以直接把IOU设置为回归的loss,其计算公式如下
其中,Ac是两个框的最小闭包区域面积,即同时包含了预测框和真实框的最小框的面积,U是两个框的并集区域面积,指的是闭包区域中不属于两个框的区域占闭包区域的比重。最终我们就可以使用1-GIOU作为损失函数,与IOU相比,它不仅关注重叠区域,还关注其他非重合区域,能更好地反映两个框的重合度。
(2)DIOU比GIOU更加符合目标框回归的机制,将目标与anchor之间的距离,重叠率以及尺度都考虑进去,使得目标框回归变得更加稳定,不会像IOU和GIOU一样出现训练过程中发散等问题。其计算公式为
其中,b,bgt分别代表了预测框和真实框的中心点,且ρ代表的是计算两个中心点间的欧氏距离,c代表的是能够同时包含预测框和真实框的最小闭包区域的对角线距离。DIOU还可以替换普通的IOU评价策略,应用于NMS中,使得NMS得到的结果更加合理有效。
(3)CIOU损失函数在前述函数的基础上,将bbox回归三要素中的长宽比也考虑到了计算中,添加了惩罚项,如下式所示
其中,α是权重函数,而v用来度量长宽比的相似性,定义为
完整的CIOU损失函数定义为
LCfOU=1-(IOU-RCfOU)
需要注意的是,CIOU损失的梯度类似于DIOU损失,但还要考虑v的梯度,在长宽为[0,1]的情况下,w2+h2的值通常很小,会导致梯度爆炸,因此在实现时将替换为1。
另一方面,DFL损失全称DistancebasedFocalLoss,它是一种用于分类任务的损失函数,基于FocalLoss和欧几里得距离的改进,旨在更好地处理分类不平衡和难易度不均的问题,其公式为:
其中,y_true是真实标签向量,y_pred是预测标签向量,N是样本数量,γ是调整难易度权重的超参数,d是欧几里得距离;
DFL对于样本预测正确的类别,将不考虑其损失值,因此只关注被误分类的样本。同时,DFL还利用欧几里得距离来计算误分类样本的损失,这样可以更加准确地反映样本的分类错误程度。此外,γ参数的引入可以使样本的难易度不同,从而更好地解决分类不平衡和难易度不均的问题;
综上所述,DFL在分类任务中能够更好地处理难易度不均的问题,并且能够更加准确地衡量分类错误程度,从而提高模型的性能。
分割分支中,我们不仅使用了二分类交叉熵损失函数,还添加了LovaszHingeLoss,它同样是一种用于分类任务的损失函数,被设计用于最小化多标签分类任务的平均排名误差,相比于BCE损失函数,它能更好地处理类别不平衡和标签噪声问题。后者的公式定义如下:
其中n为标签的数量,y为真实标签向量,为预测标签向量,π为一个排列函数,yπ(i)表示第i个标签在排列后的位置,ei表示在该位置上的hinge损失函数。
具体到每一个标签上的hinge损失函数为:
其中yi∈{-1,1}表示第i个标签的真实值,表示第i个标签的预测值。
相比于交叉熵损失函数,Lovasz Hinge Loss的优势在于它针对多标签数据的训练进行了优化,考虑了标签间互相影响的情况,并适用于标签不平衡的情况。此外,LovaszHinge Loss基于排列函数,无需设定各标签权重,提高了实现的简便性。
(5)将YOLOv8与deepsort等跟踪算法相结合,可以实现对细胞的运动轨迹跟踪。
如图2中YOLOv8的模型结构所示,在Head部分即Segment模块中,模型需要使用来自PAN结构输出的多个尺度的特征图来生成最终的预测结果。为了改善这些特征的分布,我们添加了Simam注意力机制。Simam可以在不增加原始网络参数的情况下,为特征图推理出三维注意力权重。它提出了优化能量函数来挖掘每个神经元的重要性,且针对能量函数推导出了一种快速解析解,实现方便,能够在增加少量计算量不增加参数量的前提下改善模型的性能。经过一系列公式推导,最终我们可以求得每个神经元的最小能量为
由于能量越低,神经元t与周围神经元的区别越大,重要性也就越高,因此,神经元的重要性可以通过1/e*得到。根据注意力机制的定义,我们可以通过下式对特征进行增强处理:
YOLOv8取消了之前模型中采用的Anchor-based的设计方法,而是采用了流行的Anchor-free。
目标检测中,Anchor Free(无锚)算法和Anchor Based(基于锚点)算法是两种常见的方法。它们有以下几点区别:
(1)Anchor Free算法不需要先验信息,也就是不需要提前设定锚框,而AnchorBased算法需要先设定一些锚框作为参考。这可以通过聚类算法或者像Mask RCNN那样的两阶段模型,在第一阶段中使用RegionProposalNetwork来完成;
(2)Anchor Free算法通常更快,因为它不需要为每个锚框计算分类和回归信息。而Anchor Based算法需要计算每个锚框的分类和回归信息;
(3)Anchor Based算法对小物体和大物体的检测效果更好,因为它可以使用不同大小的锚框来适应不同大小的目标。而Anchor Free算法在处理小目标时可能会受限;
(4)Anchor Free算法的鲁棒性更好,因为它不受先验信息的影响,可以自适应地检测不同大小和形状的目标。同时,Anchor Based算法的效果也受锚框的设定影响;
综上,Anchor Free算法适合强调速度和鲁棒性的应用,而Anchor Based算法适合对目标大小和形状要求较高的应用。
在训练过程中,YOLOv8摒弃了静态的正样本分配策略,而是采用了TaskAlignedAssigner的动态正样本分配策略。
(1)TaskAlignedAssigner策略是动态分配正样本的,它会根据当前网络输出的预测框和真实框的IOU值动态决定哪些预测框是正样本。而静态正样本分配策略则是固定地选择一定比例的预测框为正样本;
(2)TaskAlignedAssigner策略的优点是可以动态地适应不同的目标大小和比例,能够更好地减少过拟合。而静态正样本分配策略则不具备这个优点;
(3)TaskAlignedAssigner策略的缺点是速度相对较慢,因为要计算每个预测框和真实框的IOU值。而静态正样本分配策略则可以在训练之前就确定,速度相对较快;
(4)在实验中,TaskAlignedAssigner策略的效果比静态正样本分配策略好,并且在相同的计算量下,TaskAlignedAssigner能够获得更高的AP(Average Precision)值;
综上,TaskAlignedAssigner策略相对于静态正样本分配策略具有更好的效果和鲁棒性,但是速度较慢。因此,在实际使用中需要根据具体的场景和需求进行选择。
TaskAlignedAssigner的匹配策略简单总结为:根据分类与回归的分数加权的分数选择正样本。
(1)对于每一个标签框,对所有的预测框,基于标签框类别对应分类分数与预测框与标签框的IOU的加权得到一个关联分类以及回归的对齐分数alignment_metrics;
(2)对于每一个标签框,直接基于alignment_metrics对齐分数选取topK大的作为正样本。
由于YOLOv8的推理速度较快,满足实时性的要求,在实例分割的基础上,我们结合deepsort等跟踪方法,可以进一步实现流媒体中细胞的运功轨迹跟踪。其中,Deepsort全称DeepSimpleOnlineandRealtimeTracking,可以用于在视频中跟踪目标并用连续的ID标识它们。细胞跟踪的具体步骤如下:
(1)数据预处理:将包含细胞运动轨迹的流媒体逐帧输入给YOLOv8;
(2)目标检测与分割:使用YOLOv8算法检测细胞并获取它们的位置和大小等信息;
(3)目标分配:使用Deepsort算法将每个检测到的细胞与之前跟踪到的细胞进行匹配,并为之赋予唯一的ID号;
(4)连续跟踪:Deepsort使用卡尔曼滤波进行跟踪,将之前和当前的细胞位置信息进行融合,以便更准确地估计未来的运动;
(5)细胞属性提取:根据跟踪结果,可以提取细胞的各种属性,比如运动速度、生长率等;
(6)数据可视化:将跟踪结果可视化,以便进一步分析和研究细胞的行为。
为了得到训练模型的数据集,我们需要使用labelme软件对图像中的细胞进行标注,最终可以得到每个细胞的分割掩码数据,每张图像中的每个细胞使用一个整数唯一标识,然后我们可以使用opencv得到每个细胞对应的边界框,这些数据经过一些过滤(如去除面积较小的细胞)和切分后,我们再对每张小图进行清洗(如去除图像边缘处因切分而只剩下极小部分的细胞),最终我们便得到了细胞分割数据集。为了准确地评估模型的性能,我们还需要使用三次交叉验证方法,将数据集分成三份,每次取其中两份作为训练集,另一份作为验证集,依次训练与验证,并取在验证集上的测试指标的平均值作为最终的测试结果。
本发明模型可以实现端到端的训练,且能在保证较高检测准确率和检出率的同时,有着较快的推理速度。由于模型参数较少,模型的轻量化结构设计,而且YOLOv8可以方便地使用TensorRT进行部署,这都使其应用起来非常方便。其中,TensorRT是一个有助于在NVIDIA图形处理单元GPU上进行高性能推理的C++库,它只在与TensorFlow、Caffe、Pytorch以及MXNet等训练框架以互补的方式进行工作,专门致力于在GPU上快速有效地进行网络推理。TensorRT可以在没有框架的开销的前提下,对网络进行压缩、优化以及运行时部署,它能通过combineslayers,kernels优化选择,以及根据指定的精度执行归一化和转换成最优的matrixmath方法,改善网络的延迟、吞吐量和效率。由于YOLOv8需要输入的图像尺寸为640*640,在训练与测试过程中,我们统一将图像缩放到了640*640;
该模型属于单阶段目标检测模型。与Mask RCNN等两阶段的目标检测模型相比,YOLO仅仅一个网络就能完成检测框和分类任务,在这个基础上,再添加Segment模块,YOLO也可以同时完成细胞的分割任务。YOLO全称Youonlylookonce,即只需要看一次就能识别出图像的物体,它的检测流程更加简单清晰,模型的参数量更小,检测速度更快,能够达到实时性目标检测的要求。
YOLOv8的推理和后处理流程如图4所示,包括如下几步:
(1)bbox积分形式转换为4d bbox格式:对Head输出的bbox分支进行转换,利用Softmax和Conv计算将积分形式转换为4维bbox格式;
(2)维度变换:YOLOv8输出特征图尺度为80x80、40x40和20x20的三个特征图。Head部分输出分类和回归共6个尺度的特征图。将3个不同尺度的类别预测分支、bbox预测分支进行拼接,并进行维度变换。为了后续方便处理,会将原先的通道维度置换到最后,类别预测分支和bbox预测分支shape分别为(b,80x80+40x40+20x20,80)=(b,8400,80),(b,8400,4);
(3)解码还原到原图尺度:分类预测分支进行Sigmoid计算,而bbox预测分支需要进行解码,还原为真实的原图解码后xyxy格式;
(4)阈值过滤:遍历batch中的每张图,采用score_thr进行阈值过滤。在这过程中还需要考虑multi_label和nms_pre,确保过滤后的检测框数目不会多于nms_pre;
(5)还原到原图尺度和nms:基于前处理过程,将剩下的检测框还原到网络输出前的原图尺度,然后进行nms即可。最终输出的检测框不能多于max_per_img。
为了提升YOLOv8在细胞分割任务上的性能,本方法对Head部分进行了部分改进。下面将对这几部分改进进行性能评估,我们使用的实验数据集为私有的免疫组化分割数据集,图5所示为使用的数据集示例图。
实施例1:
下面以要从一张医学图像中分割出细胞为例,从图5可以看出,这张图片中包含了大量的细胞,为了尽可能对每个细胞都标记出一个且唯一一个边界框,使用人工来完成这项工作将花费大量的时间和精力,我们也使用了一个开源软件Qupath对这张图片进行分析,结果如图6所示,从结果可以看出,Qupath的检测结果并不令人满意。而使用改进的YOLOv8方法进行检测的结果如图7所示。从下图可以看出,我们的方法可以取得更好的效果。
实施例2:
对于前文提到的Simam策略和多尺度proto策略,我们进行了相关的消融实验,我们使用是Monuseg数据集。Monuseg数据集有四种类型的细胞核:上皮细胞核、炎性细胞核、成纤维细胞细胞核和纤维母细胞细胞核,一共有37张1000*1000的训练图像和14张同样分辨率大小的验证图像。
经过实验我们可以得到如下表所示的对比结果。从中可以看出与YOLOv8m模型相比,再分别添加了Simam和多尺度proto模块后,模型的性能都能取得一定的提高,而最终,YOLOv8m-simam-mproto的检测效果是最好的。
实施例3:
细胞跟踪在干细胞治疗到癌症转移研究等多种应用中都有价值,对于研究细胞起源、了解组织器官发育过程以及探讨疾病的发生和发展机制都具有重要的意义,有助于医生对疾病进行更加有效和高效的检测。
Deepsort是一种基于目标检测的多目标跟踪算法Multi-ObjectTracking,将其与YOLOv8结合起来进行细胞追踪的流程大致如下:
(1)获取原始视频帧;
(2)利用YOLOv8对每帧图像中的细胞进行检测与分割;
(3)将检测到的细胞对应的边界框中的特征提取出来,该特征包括表观特征和运动特征,前者可以方便特征的对比,后者则方便卡尔曼滤波对其进行预测;
(4)利用匈牙利算法和级联匹配计算前后两帧目标之间的匹配程度,为每个追踪到的目标分配ID。
我们在一个公开数据集上对方法进行了测试,并截取了两组图像来展示该方法对前后帧之间的跟踪效果,分别如图8、9所示。
可以理解,本发明是通过一些实施例进行描述的,本领域技术人员知悉的,在不脱离本发明的精神和范围的情况下,可以对这些特征和实施例进行各种改变或等效替换。另外,在本发明的教导下,可以对这些特征和实施例进行修改以适应具体的情况及材料而不会脱离本发明的精神和范围。因此,本发明不受此处所公开的具体实施例的限制,所有落入本申请的权利要求范围内的实施例都属于本发明所保护的范围内。
Claims (10)
1.一种医学图像细胞分割与跟踪方法,其特征在于,包括如下步骤:
步骤1:数据处理:包括图像归一化、图像去噪、图像切分以及图像增强;
步骤2:特征提取:对缩放到640*640后的图像进行特征提取,模型中的骨干部分用于从经预处理后的图像中提取特征,YOLOv8采用了CSPDarknet结构,即具有CSP结构的Darknet网络;
步骤3:FPN-PAN多尺度特征融合:FPN自顶向下传达语义特征,PAN自底向上传达强定位特征,PAN与FPN两两联手,从不同的主干层对不同的检测层进行参数聚合;
步骤4:Head根据多尺度特征进行预测:检测头部中,通过两个子模块Proto与cv4分别预测出掩码的判别标准与掩码的置信度特征矩阵,然后这两个模块的输出结果进行矩阵乘法最终得到每个网格对应的掩码置信度矩阵,该矩阵在sigmoid函数处理后即为每个像素点属于细胞的概率值。
2.根据权利要求1所述的医学图像细胞分割与跟踪方法,其特征在于,所述步骤2采用CSPDarknet53骨干网络用来提取目标特征,它包含了5个CSP模块,每个CSP模块的下采样通过大小为3×3的卷积核来实现,YOLOv8网络模型将输入图片的大小定义为640×640,经过主干网络中的五个CSP模型进行特征化提取后,特征图尺寸变化了五次,最终从640×640变成20×20大小的特征图,实现特征图的快速降维。
3.根据权利要求1所述的医学图像细胞分割与跟踪方法,其特征在于,所述步骤3中YOLOv8采用了分离头部Decoupled-Head的设计思想,即分类与定位采用两个互不干扰的分支。
4.根据权利要求1所述的医学图像细胞分割与跟踪方法,其特征在于,所述步骤4包括如下具体步骤:
步骤4.1:为每个尺度分别设置一个单独的Proto,则每个尺度下对应的Proto矩阵预测可以表示为:
protos[i](x[i])
其中,x表示模型提取到的不同尺度下的特征集合,protos表示不同尺度下对应的Proto模块集合;
步骤4.2:对输入Segment模块的特征使用Simam注意力机制;
步骤4.3:在PAN-FPN模块中添加一层,来将骨干网络中的第二层输出引入进来,以让模型更好地将底层特征融入进来;
步骤4.4:在分割部分,采用BCE+LovaszHingeLoss的损失函数;
步骤4.5:将YOLOv8与deepsort跟踪算法相结合,实现对细胞的运动轨迹跟踪。
5.根据权利要求4所述的医学图像细胞分割与跟踪方法,其特征在于,在分类分支中,使用二分类交叉熵BinaryCrossEntropy损失,其计算公式为:
其中,当预测的类别与真实类别相同时,yi是1,否则,是0。
6.根据权利要求4所述的医学图像细胞分割与跟踪方法,其特征在于,在回归分支中,使用CIOU+DFL作为损失函数,其中,CIOU是对IOU的一种改进方案,IOU全称Intersectionoverunion,即交并比,其计算公式为:
提出GIOU、DIOU与CIOU作为损失函数,
GIOU直接把IOU设置为回归的loss,其计算公式如下:
其中,Ac是两个框的最小闭包区域面积,即同时包含了预测框和真实框的最小框的面积,U是两个框的并集区域面积,指的是闭包区域中不属于两个框的区域占闭包区域的比重,最终使用1-GIOU作为损失函数;
DIOU计算公式为:
其中,b,bgt分别代表了预测框和真实框的中心点,且ρ代表的是计算两个中心点间的欧氏距离,c代表的是能够同时包含预测框和真实框的最小闭包区域的对角线距离;CIOU损失函数在GIOU、DIOU函数的基础上,将bbox回归三要素中的长宽比也考虑到了计算中,添加了惩罚项,如下式所示:
其中,α是权重函数,而v用来度量长宽比的相似性,定义为
完整的CIOU损失函数定义为:
LCIOU=1-(IOU-RCIOU)
CIOU损失的梯度类似于DIOU损失,但还要考虑v的梯度,在长宽为[0,1]的情况下,
w2+h2的值通常很小,会导致梯度爆炸,因此在实现时将替换为1;
DFL损失全称DistancebasedFocalLoss,它是一种用于分类任务的损失函数,基于FocalLoss和欧几里得距离的改进,旨在更好地处理分类不平衡和难易度不均的问题,其公式为:
其中,y_true是真实标签向量,y_pred是预测标签向量,N是样本数量,γ是调整难易度权重的超参数,d是欧几里得距离。
7.根据权利要求4所述的医学图像细胞分割与跟踪方法,其特征在于,在分割分支中,使用二分类交叉熵损失函数添加LovaszHingeLoss,LovaszHingeLoss同样是一种用于分类任务的损失函数,被设计用于最小化多标签分类任务的平均排名误差,公式定义如下:
其中n为标签的数量,y为真实标签向量,为预测标签向量,π为一个排列函数,yπ(i)表示第i个标签在排列后的位置,li表示在该位置上的hinge损失函数;
具体到每一个标签上的hinge损失函数为:
其中yi∈{-1,1}表示第i个标签的真实值,表示第i个标签的预测值。
8.根据权利要求4所述的医学图像细胞分割与跟踪方法,其特征在于,所述步骤4包括如下具体步骤:
在Head部分即Segment模块中,添加Simam注意力机制,Simam在不增加原始网络参数的情况下,为特征图推理出三维注意力权重,求得每个神经元的最小能量为
由于能量越低,神经元t与周围神经元的区别越大,重要性也就越高,因此,神经元的重要性通过1/e*得到,根据注意力机制的定义,通过下式对特征进行增强处理:
YOLOv8取消了之前模型中采用的Anchor-based的设计方法,采用Anchor-free,在训练过程中,YOLOv8摒弃了静态的正样本分配策略,采用TaskAlignedAssigner的动态正样本分配策略;
TaskAlignedAssigner的匹配策略为:根据分类与回归的分数加权的分数选择正样本;对于每一个标签框,对所有的预测框,基于标签框类别对应分类分数与预测框与标签框的IOU的加权得到一个关联分类以及回归的对齐分数alignment_metrics;
对于每一个标签框,直接基于alignment_metrics对齐分数选取topK大的作为正样本。
9.根据权利要求4所述的医学图像细胞分割与跟踪方法,其特征在于,在实例分割的基础上,结合deepsort跟踪方法,实现流媒体中细胞的运功轨迹跟踪,其中,Deepsort全称DeepSimpleOnlineandRealtimeTracking,用于在视频中跟踪目标并用连续的ID标识它们,所述细胞跟踪的具体步骤如下:
(1)数据预处理:将包含细胞运动轨迹的流媒体逐帧输入给YOLOv8;
(2)目标检测与分割:使用YOLOv8算法检测细胞并获取它们的位置和大小等信息;
(3)目标分配:使用Deepsort算法将每个检测到的细胞与之前跟踪到的细胞进行匹配,并为之赋予唯一的ID号;
(4)连续跟踪:Deepsort使用卡尔曼滤波进行跟踪,将之前和当前的细胞位置信息进行融合,以便更准确地估计未来的运动;
(5)细胞属性提取:根据跟踪结果,可以提取细胞的各种属性,比如运动速度、生长率等;
(6)数据可视化:将跟踪结果可视化,以便进一步分析和研究细胞的行为。
为了得到训练模型的数据集,使用labelme软件对图像中的细胞进行标注,最终得到每个细胞的分割掩码数据,每张图像中的每个细胞使用一个整数唯一标识,然后使用opencv得到每个细胞对应的边界框,这些数据经过一些过滤和切分后,再对每张小图进行清洗,最终便得到了细胞分割数据集,为了准确地评估模型的性能,使用三次交叉验证方法,将数据集分成三份,每次取其中两份作为训练集,另一份作为验证集,依次训练与验证,并取在验证集上的测试指标的平均值作为最终的测试结果。
10.根据权利要求4所述的医学图像细胞分割与跟踪方法,其特征在于,包括YOLOv8的推理和后处理流程,所述YOLOv8的推理和后处理流程包括如下几步:
(1)bbox积分形式转换为4d bbox格式:对Head输出的bbox分支进行转换,利用Softmax和Conv计算将积分形式转换为4维bbox格式;
(2)维度变换:YOLOv8输出特征图尺度为80x80、40x40和20x20的三个特征图,Head部分输出分类和回归共6个尺度的特征图,将3个不同尺度的类别预测分支、bbox预测分支进行拼接,并进行维度变换,为了后续方便处理,将原先的通道维度置换到最后,类别预测分支和bbox预测分支shape分别为(b,80x80+40x40+20x20,80)=(b,8400,80),(b,8400,4);
(3)解码还原到原图尺度:分类预测分支进行Sigmoid计算,而bbox预测分支需要进行解码,还原为真实的原图解码后xyxy格式;
(4)阈值过滤:遍历batch中的每张图,采用score_thr进行阈值过滤,在这过程中还需要考虑multi_label和nms_pre,确保过滤后的检测框数目不会多于nms_pre;
(5)还原到原图尺度和nms:基于前处理过程,将剩下的检测框还原到网络输出前的原图尺度,然后进行nms即可,最终输出的检测框不能多于max_per_img。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310514483.6A CN116721414A (zh) | 2023-05-05 | 2023-05-05 | 一种医学图像细胞分割与跟踪方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310514483.6A CN116721414A (zh) | 2023-05-05 | 2023-05-05 | 一种医学图像细胞分割与跟踪方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116721414A true CN116721414A (zh) | 2023-09-08 |
Family
ID=87870458
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310514483.6A Pending CN116721414A (zh) | 2023-05-05 | 2023-05-05 | 一种医学图像细胞分割与跟踪方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116721414A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116934757A (zh) * | 2023-09-18 | 2023-10-24 | 电子科技大学 | 一种用于肺结节假阳性删减的方法、设备及存储介质 |
CN117274183A (zh) * | 2023-09-18 | 2023-12-22 | 江苏同人医疗电子科技有限公司 | 一种用于甲襞微循环血管的微循环智能分析方法 |
CN118015432A (zh) * | 2024-04-09 | 2024-05-10 | 西北农林科技大学深圳研究院 | 一种害虫识别方法及系统 |
-
2023
- 2023-05-05 CN CN202310514483.6A patent/CN116721414A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116934757A (zh) * | 2023-09-18 | 2023-10-24 | 电子科技大学 | 一种用于肺结节假阳性删减的方法、设备及存储介质 |
CN116934757B (zh) * | 2023-09-18 | 2023-11-21 | 电子科技大学 | 一种用于肺结节假阳性删减的方法、设备及存储介质 |
CN117274183A (zh) * | 2023-09-18 | 2023-12-22 | 江苏同人医疗电子科技有限公司 | 一种用于甲襞微循环血管的微循环智能分析方法 |
CN118015432A (zh) * | 2024-04-09 | 2024-05-10 | 西北农林科技大学深圳研究院 | 一种害虫识别方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112418117B (zh) | 一种基于无人机图像的小目标检测方法 | |
US20230289979A1 (en) | A method for video moving object detection based on relative statistical characteristics of image pixels | |
CN112507777A (zh) | 一种基于深度学习的光学遥感图像舰船检测与分割方法 | |
CN116721414A (zh) | 一种医学图像细胞分割与跟踪方法 | |
CN111898432B (zh) | 一种基于改进YOLOv3算法的行人检测系统及方法 | |
CN110348357A (zh) | 一种基于深度卷积神经网络的快速目标检测方法 | |
Chen et al. | Corse-to-fine road extraction based on local Dirichlet mixture models and multiscale-high-order deep learning | |
Cepni et al. | Vehicle detection using different deep learning algorithms from image sequence | |
Fu et al. | A two-stage attention aware method for train bearing shed oil inspection based on convolutional neural networks | |
CN114842238A (zh) | 一种嵌入式乳腺超声影像的识别方法 | |
Guo et al. | Grape leaf disease detection based on attention mechanisms | |
CN113657414B (zh) | 一种物体识别方法 | |
Li et al. | Fast recognition of pig faces based on improved Yolov3 | |
CN115019039A (zh) | 一种结合自监督和全局信息增强的实例分割方法及系统 | |
Deng et al. | ELMGAN: A GAN-based efficient lightweight multi-scale-feature-fusion multi-task model | |
Liu et al. | An improved lightweight network based on deep learning for grape recognition in unstructured environments | |
CN114241250A (zh) | 一种级联回归目标检测方法、装置及计算机可读存储介质 | |
Wang et al. | Water hazard detection using conditional generative adversarial network with mixture reflection attention units | |
CN114170625A (zh) | 一种上下文感知、噪声鲁棒的行人搜索方法 | |
Tong et al. | Cell image instance segmentation based on PolarMask using weak labels | |
Zeng et al. | Swgan: A new algorithm of adhesive rice image segmentation based on improved generative adversarial networks | |
CN113436115A (zh) | 一种基于深度无监督学习的图像阴影检测方法 | |
Pang et al. | Target tracking based on siamese convolution neural networks | |
Lv et al. | An image rendering-based identification method for apples with different growth forms | |
Cheng et al. | An Effective Anchor-Free model with Transformer for Logo Detection< Subtitle> Efficient Logo Detection via Transformer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |