APP下载

改进YOLOv5s的输液瓶目标检测

2022-07-23长江大学电子信息学院周箩鱼熊莉娅邹学玉

电子世界 2022年1期
关键词:中心点预测性能

长江大学电子信息学院 喻 旸 周箩鱼 熊莉娅 邹学玉

针对医疗环境趋于复杂,为提高输液瓶目标检测的精度,本文利用视频和图像素材,提出一种改进的YOLOv5s方法检测输液瓶目标。采用CIoU Loss和DIoU NMS等方法进行优化。在PASCAL VOC数据集和自建输液瓶目标数据集上检测mAP(mean Average Precision)和FPS(Frames Per Second)。相较于原始YOLOv5s,改进后的YOLOv5s_CIoU在mAP上提高5.53%,检测速度可达34.7FPS。

目标检测在监测、追踪等领域发挥着重要作用,将目标检测与医疗输液相结合,可以提高医护工作效率。传统目标检测通过手工提取特征,其中可变形组件模型(Deformable Parts Model,DPM)具有代表性意义:提取人工特征后再用latentSVM分类。

KRIZHEVSKY等首先提出深度卷积神经网络,GIRSHICK等将深度神经网络应用到目标检测中,从R-CNN(Region-CNN)到Fast R-CNN,再到Faster R-CNN。但由于R-CNN系列结构复杂,牺牲了计算速度,实时性无法保障。因此,REDMON等提出YOLO(You Only Look Once),提高速度的同时拥有一定准确率。LIU等将YOLO的回归思想和Faster R-CNN的anchor box机制结合提出SSD(Single Shot MultiBox Detector)。随后,REDMON等对YOLO进行优化,提出了YOLOv3等。Bochkovskiy等在YOLOv3基础上,从数据处理、主干网络等方面引入优化方法,提出YOLOv4,Jocher等通过马赛克数据增强、自适应图片缩放等优化方法提出YOLOv5。

目前,YOLO系列应用广泛于目标检测,王沣使用YOLOv5对口罩佩戴进行检测。Yuwen Chen等使用YOLOv5对图像中船舶进行检测。Kuznetsova等使用YOLOv5对果园苹果进行检测。输液瓶目标检测对精度和速度有着高要求,而YOLOv5的优秀性能可以胜任。本文主要分析YOLOv5的损失函数,制作实验所需数据集,并对YOLOv5优化并验证性能。

1 YOLOv1-YOLOv4

YOLO的核心思想是将整张图作为输入,直接在输出层回归目标位置和类别,具有较强的泛化能力。在一个卷积神经网络中进行特征提取、分类和回归,不再生成候选区域,充分考虑图片所包含背景信息。YOLOv1到YOLOv4的演变如图1所示。

图1 YOLO系列主要改进

YOLOv1直接拟合坐标位置x,y,物体宽和高w,h,置信度。但x,y还可能取负值,不符合实际场景。因此,YOLOv2采用anchor机制进行局部预测,通过gird预测x,y的坐标,通过anchor框的宽和高预测w,h的值。YOLOv2在Backbone上改为darknet19,使用卷积层连接检测头部分,但在小目标检测上有待提高。YOLOv3的性能提升得益于残差网络,可以构建更多层的网络,Backbone改为darknet53,使用多尺度检测头。YOLOv4的Backbone改为CSPDarknet53,使用mosaic数据增强等方法,mish损失函数,采用SPP、PAN、SAM等网络结构。

2 YOLOv5

YOLOv5按网络深度大小分为YOLOv5s、YOLOv5m、YOLO5l、YOLOv5x,其中YOLOv5s深度最小,模型大小仅有27M。因此本文采用YOLOv5s作为试验模型,分为Input,Backbone,Neck,Prediction四个部分。

在Input部分采用Mosaic数据增强,增加小目标样本数量。YOLOv5s在训练过程中自动计算不同训练集的anchor值,通过自适应图片大小的缩放模式,减少图片黑边避免算力消耗,提高检测速度。

在Backbone部分采用CSPDarknet53网络。提高网络学习能力,在保证准确率的同时减少计算量,降低了存储成本。下采样阶段,通过Focus模块最大的减少信息损失。

在Neck部分加入SPP和FPN+PAN结构,更好地提取目标融合特征。CSP2结构使网络特征融合能力得到提高。使用SPP模块扩大主干特征的接受范围,并显著分离上下文特征。FPN+PAN结构将不同主干层的不同检测层的参数进行聚合,进一步提高网络特征提取能力。

3 YOLOv5s优化

YOLOv5s在目标检测上表现优异,但可以针对特定的输液瓶目标作出相应优化,获得更好地检测结果。

3.1 使用CIoU Loss(Complete Intersection over Union Loss,完全交并损失)

损失函数对于检测效果有着直接影响,因此需要不断调整网络参数,将损失函数的值降到最低。目标框示意图如图2所示。

图2 目标框图

对于A和B,二者的IoU(Intersection over Union)的计算公式分别如下:

式中,A表示目标的标注框,B表示目标的预测框,C代表一个能够包住A和B的最小方框。当标注框完全包裹预测框时,IoU和GIoU(Generalized Intersection over Union)得到的结果是相同的,这时无法保正检测的准确性。DIoU(Distance Intersection over Union)把目标与anchor之间的距离、重叠率以及尺度都考虑在内,使目标框回归更加稳定,训练过程中不会出现发散等问题。

好的回归损失函数会考虑覆盖面积、中心点距离和长宽比这三个方面。而DIoU只考虑到覆盖面积和中心点距离,所以基于DIoU引入入长宽比,提出CIoU Loss。因此本文选择CIoU Loss,将覆盖面积、中心点距离和长宽比这三个方面都考虑在内。

3.2 使用DIoU NMS(Non-Maximum Suppression)

在数据后处理阶段,通常使用NMS筛选出最好的预测框。通过NMS给每个预测框一个分数,得分越高证明效果越好。当两个目标高度重叠,所得IoU值很大。经过NMS处理只会得到一个预测框信息,导致漏检。YOLOv5s采用的就是NMS。相较于NMS,DIoUNMS将两个框中心点之间的距离也考虑在内。即使两个预测框的IoU值较大,但是考虑到中心点距离也大,便认为是两个物体。本文使用CIoU Loss和DIoU-NMS分别代替原始YOLOv5s中的GIoU Loss和NMS,能更有效的检测重叠目标和小目标。

4 结果分析

本文使用PC进行试验,基于Windows10。硬件配置为Intel-Core i5-8300H CPU,GTX-Gforce 1060(6G),使用PyTorch深度学习框架。试验选取SSD、YOLOv5s以及优化后YOLOv5s进行性能对比,验证优化效果。超参数设置:最大训练轮数为100,初始学习率为0.01,权值衰减为0.0005,动量和批量大小分别为0.937和2.0。本文通过平均精度均值(mean Average Precision,mAP)和FPS(Frames Per Second)进行性能评价。

4.1 YOLOv5s_CIoU和YOLOv5s mAP比较

通过PASCAL VOC2012公共数据集训练测试,原始算法为YOLOv5s,优化后为YOLOv5s_CIoU,2种算法的mAP变化曲线如图3所示。通过输液瓶数据集训练测试,结果如图4所示,检测数据结果如表1所示。

图3 mAP变化(公共数据集)

图4 mAP变化(输液瓶数据集)

表1 算法对比结果

由图6和表1可知:经过13轮训练以后,YOLOv5s_CIoU的mAP超过YOLOv5s,训练完成后,mAP提高5.47%,速度上有所下降,但也超过30FPS,在实时性和精度上可以满足输液场景的要求。

图6 多目标检测对比

4.2 YOLOv5s_CIoU和YOLOv5s性能比较(输液瓶目标数据集)

4.2.1 模型训练

YOLOv5s_CIoU(虚线)和YOLOv5s(实线)的损值曲线图见图5所示。可以看出YOLOv5s_CIoU的各类损失可以更快的收敛,mAP也得到提高。

图5 算法各项性能对比

表2 输液瓶目标检测数据集(张)

图7 重叠目标检测对比

4.2.2 数据集制作

由于没有公开数据集,本文自建输液瓶目标检测数据,采用YOLO数据集格式,通过预处理和筛选后选取10000张不同分辨率和大小的图片充分训练,自建数据集见表2所示。

4.2.3 结果分析

在多目标场景中:图6(a)和图6(b)均检测到了2个输液瓶目标,图6(b)中YOLOv5s_CIoU的预测框置信度更高。

在重叠目标场景中,图7(a)中的YOLOv5s_GIoU未能检测出重叠目标,而图7(b)中的YOLOv5s_CIoU可以检测到重叠目标,并准确标记出来。可见优化策略提高了YOLOv5s对于重叠目标的检测能力。

本文基于YOLOv5s,采用CIoU loss、DIoU NMS等策略对YOLOv5s进行优化。试验结果表明在小目标和重叠目标上的有良好的检测效果。通过试验SSD、YOLOv5s等进行性能比较,结果表明:改进后的YOLOv5s_CIoU与原始YOLOv5s相比,mAP提高5.47%,同时检测速度达到34.7FPS,满足输液场景对实时性和准确率的高要求。将YOLOv5s_CIoU与计算机相结合,在复杂多变的医疗环境中检测输液瓶目标,可以提高医疗工作效率。在后续的研究中,系统性能需要更大的数据集和更复杂的分类才能得到更好的效果。

猜你喜欢

中心点预测性能
无可预测
选修2-2期中考试预测卷(A卷)
选修2-2期中考试预测卷(B卷)
选修2—2期中考试预测卷(A卷)
保暖袜透湿性能测定的不确定度分析
一种基于标准差的K-medoids聚类算法
Scratch 3.9更新了什么?
如何设置造型中心点?
提供将近80 Gbps的带宽性能 DisplayPort 2.0正式发布
Al-Se双元置换的基于LGPS的thio-LISICON的制备与性能表征