基于改进的YOLOv8和双重验证的实时裂纹鸡蛋检测方法,采用三重分类粒度

《IEEE Access》:Real-Time Detection Method for Cracked Eggs Based on Improved YOLOv8 and Dual Verification With Triple Classification Granularity

【字体: 时间:2026年04月30日 来源:IEEE Access 3.6

编辑推荐:

  摘要:为了解决生产线中实时检测破裂鸡蛋的迫切需求,本研究提出了一种基于改进的YOLOv8框架的高精度实时检测算法。该创新性地引入了一种双重检测方法,结合了“裂纹区域”分类来帮助区分完好鸡蛋和破裂鸡蛋。该方法通过识别局部或整体的裂纹特征来识别破裂鸡蛋,有效减少了假阴性和假阳性。在架

  摘要:为了解决生产线中实时检测破裂鸡蛋的迫切需求,本研究提出了一种基于改进的YOLOv8框架的高精度实时检测算法。该创新性地引入了一种双重检测方法,结合了“裂纹区域”分类来帮助区分完好鸡蛋和破裂鸡蛋。该方法通过识别局部或整体的裂纹特征来识别破裂鸡蛋,有效减少了假阴性和假阳性。在架构层面,模型创新性地集成了加权双向特征金字塔(BiFPN)以优化多尺度特征融合、可变形卷积网络v2(DCNv2)以增强对裂纹不规则几何变形的感知、加权交并比v2(WIoUv2)损失函数以提高遮挡样本的检测精度,并添加了一个小目标检测层以加强对微小缺陷的识别。实验表明,改进后的模型在测试集上的平均精度(mAP)达到了92.9%,比原始模型提高了5.2%,并优于当前主流检测模型。在实际生产部署测试中,系统实现了45 FPS的实时检测速度,完好鸡蛋的假阴性率为0.46%,假阳性率为2.18%,而破裂鸡蛋的假阳性率低于2%。这一性能远超原始模型,完全满足了工业级实时在线质量检测的要求。本研究为鸡蛋质量检测提供了一种高效的解决方案,具有重要的工程应用价值。CCBY - IEEE不是该材料的版权持有者。请通过https://creativecommons.org/licenses/by/4.0/遵循指示以获取全文文章和API文档中的规定。

第一部分:引言
在自动化鸡蛋生产线上,快速准确地识别蛋壳损伤是确保产品质量和减少企业损失的关键技术环节[1]、[2]、[3]。大约3%的鸡蛋在生产和运输过程中因挤压和撞击而损坏[4]。目前,中国业界主要依赖人工检测,这种方法效率低下且精度不够理想[5]。现有的技术包括声学响应和计算机视觉。声学方法容易受到环境干扰且成本较高[6],而基于视觉的方法因其非接触性和低成本优势成为研究重点[7]、[8]。一些研究人员采用了传统的图像处理技术进行破裂鸡蛋检测。例如,Liang等人使用基于直方图和Otsu方法的阈值分割实现了98.18%的识别精度[9]。Yao等人通过图像增强和形态学特征分析将散落蛋黄鸡蛋的检测精度提高到了97.33%[10]。然而,传统的图像处理方法需要手动特征提取,导致检测速度慢且泛化能力有限。近年来,深度学习为对象检测提供了新的方法[11]、[12]。Datta等人使用Faster R-CNN检测严重破裂的鸡蛋,平均精度(mAP)达到了75%,同时精确定位了受损区域[13]。Turkoglu的CNN-BiLSTM混合模型将精度进一步提高到了96.3%[14]。Botta等人使用卷积神经网络(CNN)检测破裂鸡蛋,精度达到了95.38%[15]。在国内研究中,Li等人使用ShuffleNet模型实现了99%的精度[16]。Qi等人结合CNN特征提取和SVM分类,实现了97.97%的精度[17]。在模型优化方面,Nasiri等人通过改进的VGG16模型和五折交叉验证达到了94.84%的平均精度[7]。Tang等人使用优化的MobileNet V3_ large模型检测破裂的腌制鸡蛋,精度达到了96.3%[18]。此外,Xiao等人使用改进的GoogLeNet-Mini网络实现了95.88%的总体精度[19]。Chen等人使用基于EfficientNet的迁移学习模型实现了96.7%的全面精度[20]。Yao等人通过将改进的CNN与分层SVM结合,进一步将精度提高了1.74%-4.31%[21]。然而,这些研究大多集中在静态图像的优化上,或者网络复杂度较高,或者依赖于串行处理机制,导致推理速度难以满足生产线的实时需求。

尽管实际生产线环境对检测精度(>99%)和速度(≥30 FPS)有严格要求,但目前关于生产线环境中破裂鸡蛋实时检测的研究仍然有限。YOLO(You Only Look Once)系列算法凭借其单阶段检测架构和高效的并行计算能力,在实时检测中实现了高效率,适用于高速要求的动态应用场景[22]。近年来,在改进YOLO系列算法方面取得了显著进展。例如,Yin等人在YOLOv5中引入了Ghost模块和ECA注意力机制,实现了93.8%的破裂鸭蛋检测精度[23]。Yao和Li等人通过集成MobileNetv3创建了一个轻量级的YOLOv5模型,计算成本降低了35%,同时保持了95%以上的检测精度[24]。Huang等人集成了CA注意力机制、BiFPN和GSConv模块,使他们的YOLOv5模型在动态场景中实现了96.4%的破裂鸡蛋检测精度[25]。Yang等人通过K均值聚类优化了锚框并替换了Hardswish激活函数,使用YOLOv5实现了98.3%的破裂鸽子蛋检测平均精度[26]。尽管上述研究在禽蛋缺陷检测方面取得了一定成果,但仍存在几个关键问题未解决。首先,大多数方法缺乏展示整个蛋壳的旋转机制,导致裂纹位于底部时出现假阴性。其次,现有算法主要针对静态图像设计,不适合生产线上的高速运动和复杂光照条件。最后,在大规模检测场景中,模型的检测速度和精度仍有优化空间。为了解决这些问题,本文以广州穗平企业有限公司收集的破裂鸡蛋作为研究对象。在YOLOv8检测模型的基础上,提出了一种适用于动态生产线环境的改进YOLOv8破裂鸡蛋检测方法。本文的主要贡献如下:本研究收集了实际生产线的动态图像,建立了包含完好鸡蛋、破裂鸡蛋和破裂区域三个类别的精细标注数据集,并提出了一种双重判别机制,要求同时检测破裂鸡蛋中的破裂区域,提高了裂纹识别的可靠性和工业应用的稳定性。提出了一个改进的YOLOv8模型结构,用于在生产线的高速运动和复杂光照条件下识别小裂纹。通过引入BiFPN、DCNv2、WIoUv2和小目标检测层,显著增强了模型的裂纹区域感知能力、多尺度特征融合和处理复杂情况的能力。该模型在实验平台和实际生产线上成功部署,显著提高了检测性能。测试结果显示,改进后的模型具有高精度、稳定性和可靠性,其检测速度满足了工业生产线应用的要求。

第二部分:材料与方法
A. 计算机视觉检测系统
在本研究中,使用了图1所示的设备来运输鸡蛋,该设备由传送带和控制箱组成。控制箱调节传送带速度和灯光。传送带有六个通道,每个通道每分钟传输60个鸡蛋,总计每分钟360个鸡蛋。传送带上的滚筒由电机驱动,使鸡蛋在传送带上进行平移和旋转的复合运动。
图1. 鸡蛋传送设备。

基于传送设备,设计了如图2所示的机器视觉系统,包括计算机、摄像头、光源和鸡蛋传送装置。摄像头平面与鸡蛋运动平面平行,以防止失真。当鸡蛋旋转经过摄像头视野时,摄像头会捕捉到鸡蛋的整个表面。算法部署在检测系统的计算机上进行测试。
图2. 提出的机器视觉系统。

本研究将改进的YOLOv8检测模型集成到系统中,并采用基于双重验证的后期处理决策方法。这种决策方法基于三种鸡蛋特征分类:“完好鸡蛋”、“破裂鸡蛋”和“裂纹区域”。在这种后期处理方法下,每当模型检测到“破裂鸡蛋”或“裂纹区域”时,系统就将鸡蛋分类为损坏。

B. 数据材料
1) 图像采集
为了使数据集更适应实际工作条件,研究人员拍摄了广州穗平公司鸡蛋加工生产线上的未清洗鸡蛋的照片。该数据集包含628张图片,每张图片中包含一个或多个完好鸡蛋和破裂鸡蛋,以确保样本的多样性。在拍摄生产线上的鸡蛋时,研究人员在不同位置、角度、光照条件和背景下捕捉了鸡蛋的图像数据。在此过程中,研究人员故意选择了破裂鸡蛋进行拍摄,以增加图片中破裂鸡蛋的比例,从而确保正样本和负样本的数量平衡。
2) 数据集生成与划分
本研究采用基于提出的三重分类粒度的双重验证后期处理方法进行数据集生成和划分。研究使用了开源注释工具LabelImg对图像数据集进行注释。标签类别包括“1”、“2”和“3”,分别对应“完好鸡蛋”、“破裂鸡蛋”和“裂纹区域”。这种鸡蛋特征的分类为模型提供了关于损伤特征的更丰富信息,有助于提高模型的感知和泛化能力。与传统的二分类(完好鸡蛋 vs. 破裂鸡蛋)相比,模型不仅可以基于整体损伤特征进行判断,还可以结合局部裂纹区域的特征,从而降低仅依赖整体特征进行识别时可能出现的漏检风险。标注后的数据集被分为训练集(377张图片)、验证集(126张图片)和测试集(125张图片),比例为6:2:2。为了提高模型的泛化能力和鲁棒性,对训练集(377张图片)应用了数据增强技术,包括随机裁剪和随机水平/垂直翻转(概率为50%)等。数据增强后,数据集被过滤掉无效数据。最终训练集包含2,972张图片。结合验证集(126张图片)和测试集(125张图片),数据集总共包含3,222张图片,其中包括7,611个完好鸡蛋、2,711个破裂鸡蛋和2,935个破裂区域。模型使用这3,222张图片学习鸡蛋的各种损伤特征。随后,生成的.xml注释文件使用脚本转换为符合YOLOv8网络要求的.txt文件。

C. 检测模型
YOLOv8在之前的YOLO版本基础上引入了最新的主干网络和颈部架构,增强了特征提取和对象检测性能。它采用了无锚点的分割Ultralytics头部,提高了检测过程的准确性和效率。此外,YOLOv8注重在准确性和速度之间保持最佳平衡,使其更适合实时对象检测任务,特别是在工业装配线场景中。因此,本文基于YOLOv8改进了模型,以实现生产线上破裂鸡蛋的实时检测。
1) YOLOv8模型改进方法
为了使模型能够全面学习和整合图像中的局部细节和全局信息,从而提高检测精度,减少假阴性和假阳性,同时满足实时在线检测要求,本研究对原始YOLOv8模型进行了一系列改进。这些改进包括重新设计损失函数、添加小目标检测头部和可变形卷积网络(DCNv2),以及嵌入加权双向特征金字塔网络(BiFPN)。改进后的模型架构如图3所示。
图3. 改进后的YOLOv8网络结构图。

应在以下四个方面进行改进:
WIoU损失函数
WIoU提供了三个版本(v1、v2、v3),以适应不同的数据集和检测任务要求[27]。WIoU v2动态调整焦点系数,以适应不同质量样本的梯度贡献,从而加速模型收敛并减少计算开销。此外,在优化过程中,WIoU v2综合考虑了正样本和负样本之间的权重分布,有效缓解了类别不平衡问题,提高了模型区分复杂样本的能力。其核心方法涉及将IoU损失进行标准化,并结合一个指数调整因子,从而实现更稳定和高效的训练过程。计算公式如下:LWIoUv2 = Lγ?IoU / LWIoUv1,其中γ > 0。(1)LWIoUv1是WIoU v1的损失函数;LWIoUv2是WIoU v2的损失函数;γ代表调制系数;Lγ?IOU是一个动态缩放因子。

可变形卷积(DCNv2)标准卷积核的固定几何结构限制了它们有效表示具有显著变形或不同尺度物体特征的能力,这在检测不规则蛋壳裂纹时是一个关键挑战。假设输入特征图像X和标准方形卷积感受野为H,则输出特征图像Y中的每个像素q可以表示为:Y(q) = ∑k=1K wkX(q+qk)。(2)其中qk代表H中的位置,wk代表不同位置的采样值的权重。为了克服固定几何结构的限制,可变形卷积网络(DCNv1)引入了可学习的空间偏移量{Δqk|k=1,?,K},使采样网格能够适应目标物体的几何结构[28]。在此基础上,改进的DCNv2加入了调制机制[29]。该机制不仅学习空间偏移量,还为每个采样点分配一个动态调制标量Δmk,以调整特征幅度。因此,公式演变为:Y(q) = ∑k=1K wkX(q+qk+Δqk)Δmk。(3)其中Δqk和Δmk分别表示第k个采样点的位置偏移量和权重调制参数。两者都是通过具有与当前卷积层相同空间分辨率和膨胀率的单独卷积层获得的。这种双重机制使DCNv2不仅能够调整感受野以适应不规则轮廓(如蛋壳裂纹),还能通过放大关键采样点的贡献来关注更关键的区域,同时抑制信息量较少的区域。因此,该研究用DCNv2替换了YOLOv8主干网络中的标准卷积层,以增强其感知和表示细微且变化多端的裂纹特征的能力。图4提供了标准卷积、DCNv1和DCNv2采样策略的对比示意图。

BiFPN是一种高效的多尺度特征融合网络,它在传统特征金字塔网络(FPN)的基础上进行了扩展。标准FPN通过自上而下的路径和横向连接将高级语义特征与低级空间特征集成在一起。PANet通过增加一个自下而上的路径进一步增强了这一架构,实现了双向特征融合。BiFPN通过引入加权特征融合和重复块结构进一步细化了这一过程,显著提高了融合效果[30]。破裂鸡蛋中的受损区域可能相对较小且特征不明显。通过整合浅层和深层特征,BiFPN生成了更具表现力的特征图,使模型能够更准确地识别破裂鸡蛋的特征,从而减少误报和漏报。此外,BiFPN的模块化设计使模型在复杂场景下(如光照条件和背景杂乱)仍能保持高检测性能,这对于破裂鸡蛋检测的实际应用至关重要。因此,在这项研究中,YOLOv8模型中的PANet结构被BiFPN所替代。FPN、PANet和BiFPN的架构如图5所示。

YOLOv8在检测小物体时的性能不佳主要是由于小目标的大小限制。默认情况下,YOLOv8以640×640的分辨率处理输入图像,主干网络执行五次下采样操作。检测头得到的特征图尺寸分别为80×80、40×40和20×20。80×80的特征图负责检测小物体。当这些特征图映射到640×640的输入图像上时,每个单元格的感受野为8×8像素。如果输入图像中的物体长度或高度小于8像素,网络难以学习目标的特征信息。为了克服这一限制并提高检测精度,可以使用专门为小物体检测设计的额外检测层。这促进了多尺度特征学习,使模型能够利用早期网络阶段的更精细空间细节,从而提高识别微小目标的能力[31]。

D. 实验环境和参数配置
在本研究中,实验硬件配置和软件环境如下:操作系统为Windows 10,编程语言为Python 3.8,深度学习框架为PyTorch 1.13.1。处理器是Intel(R) Core (TM) i5-10400F,基础频率为2.9GHz。显卡为NVIDIA GeForce RTX 3060,配备12GB的VRAM。系统内存为32GB(3200MHz频率),CUDA版本为11.6。在模型训练期间,输入图像的分辨率为640×640像素。总训练迭代次数为300次,每次批量处理16张图像。初始学习率设置为0.01,种子值设置为42。此外,在训练过程中没有使用预训练的模型权重文件。

E. 评估指标
为了验证该方法的有效性,本研究采用精确度(P)、召回率(R)、平均精确度(mAP)和每秒帧数(FPS)作为评估指标。这些指标用于全面评估模型的检测准确性和处理速度。

F. 实验方法
基于改进的YOLOv8和CCD相机的在线破裂鸡蛋检测系统包括三个主要步骤。首先,捕获完整鸡蛋和破裂鸡蛋的图像并进行预处理,然后根据模型要求分割数据集。接下来,选择神经网络模型进行训练。考虑到检测精度和实时性能的要求,选择了目前最流行的YOLOv8目标检测算法作为基础,并对其进行改进。通过对测试集进行精确度-召回率(P-R)曲线比较和进行消融实验来评估模型性能,如图6所示。最后,将原始YOLOv8模型和改进后的破裂鸡蛋检测模型部署到设备上,从而使用CCD相机实现在线实时检测破裂鸡蛋,如图7所示。

第三节 结果与分析
A. 消融实验
进行了消融实验以验证所提出改进的有效性。在本研究中,使用原始YOLOv8作为基线网络。将CIoU损失函数替换为WIoU损失函数,并将DCNv2集成到主干网络中。此外,在颈部采用了BiFPN模块,并在网络中添加了小物体检测层。消融实验的结果如表1所示。
表1 消融实验
从表1可以看出,所有提出的改进都在不同程度上提升了模型的性能。结果表明,将CIoU损失函数替换为WIoU使模型的平均精确度(mAP)提高了2.6%。加入小物体检测层和BiFPN模块后,mAP分别提高了5.3%和4.4%。当四种改进策略结合使用时,模型的整体mAP提高了5.2%。尽管仅添加小目标头的变体获得了最高的mAP(93.0),但模型选择标准并不仅基于单一的mAP指标,而是基于整体检测精度、精确度和鲁棒性之间的综合权衡。集成模型(DCNv2 + BiFPN + WIoU + 小目标头)结合了这四种改进,每种改进都在不同层面上提升了性能。特别是,该模型不仅在mAP(mAP = 92.9)方面表现出色,还实现了最高的精确度(P = 94.1%)。因此,研究选择了集成模型(DCNv2 + BiFPN + WIoU + 小目标头)作为最终模型,以更准确地从鸡蛋图像中提取与裂纹相关的特征。
鉴于该模型最终将部署在生产设备上,本研究对原始YOLOv8算法和本文提出的改进算法进行了比较实验,评估了它们在各种复杂指标上的表现,如参数数量、浮点运算次数(FLOPs)和模型大小(MB)。实验结果详细列在表2中。

B. 不同检测模型的比较实验
为了进一步评估改进算法在检测破裂鸡蛋方面的性能,本研究在同一数据集上训练了Faster RCNN、YOLOv5、YOLOv8和YOLOv11,并进行了比较分析。使用精确度(P)、召回率(R)、平均精确度(mAP)和每秒帧数(FPS)作为性能指标进行比较。在实验中,Faster RCNN模型使用ResNet50作为主干网络,训练了300个周期,并使用了预训练的权重。比较结果如表3所示。可以观察到,与原始模型相比,改进后的YOLOv8在同一数据集上取得了最高的准确率,mAP为92.9%。由于添加了小物体检测层和BiFPN模块,改进后的模型大小增加,检测速度下降了14.5%,导致FPS为45。尽管如此,这一帧率仍然满足实时检测的要求,使模型更适合在实际生产线中用于破裂鸡蛋检测。需要注意的是,在此实验中,Faster R-CNN使用了预训练权重的微调,而改进后的YOLOv8是从头开始训练的。尽管如此,所提出的模型仍然表现出更好的性能,进一步突显了所提出改进的鲁棒性。

C. 实际检测性能的比较
为了彻底验证改进后的YOLOv8算法的实用性,将训练好的破裂鸡蛋检测模型部署到设备上进行在线检测实验。首先,在实验室设置的模拟实验平台上对原始模型和改进模型之间的检测精度进行了比较分析。随后,在工厂传送带上测试了该模型,以评估其在实际条件下的性能。
在线检测破裂鸡蛋时,使用了原始YOLOv8和改进后的YOLOv8在实验平台上进行检测,以评估改进后YOLOv8模型在实际动态检测场景中的性能。在动态检测过程中,可以明显观察到改进后的YOLOv8模型实现了更高的检测精度。为了清楚地展示模型改进前后的检测效果,使用CCD相机记录了鸡蛋在实验平台上的移动视频。随后从该视频中提取帧,得到115张图像。根据第II-B2节描述的方法对这些图像进行了标注,创建了一个新的测试集。最后,使用训练原始模型和改进模型生成的best.pt权重文件运行test.py脚本,得到了新测试集上的检测结果,如图8和图9所示。
图8. 模型改进前后的在线检测准确性。
图9. 模型改进前后在线检测效果的比较。
图8显示了在新测试集上评估原始模型和改进模型得到的精确度-召回率(PR)曲线。可以看出,改进后的YOLOv8的平均精确度(mAP)比原始YOLOv8高出了2.5%。图9中,红色边界框表示完整的鸡蛋,粉色框表示破裂的鸡蛋,棕色框表示受损区域。结果表明,原始模型和改进后的YOLOv8模型都能准确检测到完整的鸡蛋。对于有较大损坏区域的裂纹鸡蛋,两种模型都取得了令人满意的检测结果。然而,当损坏区域较小时,改进后的YOLOv8在裂纹鸡蛋的检测准确性上明显优于原始模型。此外,改进后的模型在检测损坏区域方面也表现更好。上述实验结果表明,改进后的YOLOv8模型具有更强的特征提取和融合能力,从而在鸡蛋识别方面具有更高的整体准确性,并且在检测裂纹鸡蛋方面表现出更优越的性能。

D. 在工厂设备上的实际测试
为了确保检测模型在实际生产线上成功应用,该研究将所研究的裂纹鸡蛋检测模型部署在一家本地合作鸡蛋生产企业的鸡蛋输送线上(Kyowa/FP-600),输送带以0.1米/秒的速度运行,使用A3200CU000(1920×1080)相机以120帧/秒的帧率捕获图像。系统设备的计算机硬件配置如表4所示。与实验室中设置的实验平台类似,Kyowa/FP-600设备上的鸡蛋也进行“平移+旋转”的复合运动。这种由输送带滚筒引起的旋转确保了即使损坏区域最初位于鸡蛋的底部,它也会被旋转到相机的视野中,从而提高检测准确性。

表4 系统设备配置
在实际工程应用中,假阴性率(FNR)和假阳性率(FPR)是最关键的指标。FNR(或漏检率)反映了模型未能识别的目标鸡蛋的比例,而FPR(或误检率)表示被错误分类为目标的非目标鸡蛋的比例。这两个指标直接决定了裂纹鸡蛋检测系统的可靠性及其在现实世界场景中的实际价值。由于原始模型和改进模型在相同的软件和硬件条件下,以不同的速率检测以相同速度移动的鸡蛋,因此在线检测的帧数是不相等的。因此,为了更准确和直接地比较模型改进前后的在线检测准确性,本研究采用了以下程序:使用CCD相机捕捉鸡蛋在输送带上移动的视频。然后从该视频中提取帧,得到106张图像。根据第II-B2节描述的方法对这些图像进行标记,创建一个新的测试集。最后,使用训练原始模型和改进模型生成的best.pt权重文件执行detect.py脚本,得到这个新测试集的检测结果。然后将检测结果与真实标注进行比较,统计三个类别的假阴性和假阳性数量:完整鸡蛋、裂纹鸡蛋和损坏区域。并计算了三个类别的假阴性和假阳性率,如表5和表6所示。检测结果如图10所示。

表5 模型改进前的在线检测准确性
表6 模型改进后的在线检测准确性
图10. 在实际生产线上的检测效果

如图5和表6所示,与原始模型相比,改进后的YOLOv8模型在所有三个类别(完整鸡蛋、裂纹鸡蛋和损坏区域)的假阴性和假阳性率上都显著降低。具体来说,假阴性率分别降低了0.80%、4.65%和3.78%,而假阳性率分别降低了1.82%、2.04%和0.29%。这些结果表明模型的检测能力得到了全面提升,尤其是在识别裂纹鸡蛋方面改进最为显著。在图10中,绿色边界框代表完整鸡蛋,紫色框表示裂纹鸡蛋,棕色框表示损坏区域。可以看出,原始模型和改进后的YOLOv8模型都能准确检测到完整鸡蛋。然而,对于裂纹鸡蛋和损坏区域,原始YOLOv8的假阴性率较高,而改进后的模型在这些具有挑战性的情况下表现出显著更好的性能。最终的实验结果表明,所提出的改进模型显著提高了目标检测任务中感兴趣区域的识别和定位准确性。在双重验证机制下,第2类和第3类都会检测鸡蛋是否破裂。只有当第2类和第3类同时未能检测到裂纹鸡蛋时,才认为该鸡蛋被漏检。如表6所示,关于破裂鸡蛋和损坏区域的假阳性和假阴性率的数据表明,改进后的YOLOv8将破裂鸡蛋的假阴性率(即既未检测到鸡蛋破裂也未检测到损坏区域的情况)降低到了1.06%(5.52% × 19.19% = 1.06%),同时将破裂鸡蛋的假阳性率保持在2%以下(裂纹鸡蛋类别2和3的假接受率分别为1.16%和0.58%)。

图11 展示了原始模型和改进后的YOLOv8模型之间的在线检测速度比较。在在线检测过程中,记录了每帧的推理时间。然后将前400帧的推理时间转换为帧率(FPS)并存储在.csv文件中,用于绘制FPS比较图。结果表明,原始模型和改进模型的检测帧率均满足实时在线检测的要求,这一点也从显示器的视觉输出中得到了确认。具体来说,原始模型的平均在线检测帧率约为52 FPS,而改进模型的平均帧率约为45 FPS,略低于原始模型。

图11. 模型改进前后的在线检测速度

第四节. 讨论
本研究成功开发并验证了一个针对工业生产线的改进型YOLOv8基础裂纹鸡蛋检测模型。实验结果表明,我们引入的一系列增强策略,包括用于多尺度特征融合的BiFPN、用于不规则裂纹几何适应的DCNv2、用于优化难例的WIoUv2以及添加的小目标检测层——有效地协同工作,显著提高了模型的整体性能。模型的最终性能需要在准确性和速度之间取得平衡。如表3所示,我们的改进模型在mAP方面显著优于Faster R-CNN、YOLOv5和YOLOv11等主流模型。尽管由于模型复杂性的增加,检测速度(45 FPS)略低于原始YOLOv8(52 FPS),但它仍然远高于生产线实时检测的要求(≥ 30 FPS)。这种在速度上略有牺牲以换取检测准确性显著提升的权衡对于专注于确保产品质量和减少浪费的工业应用来说至关重要且非常有价值。

与最近专注于改进YOLO模型以进行鸡蛋检测的研究[30]、[31]相比,我们的研究提供了一个针对实际动态场景的端到端解决方案。虽然之前的工作主要优化了静态数据集上的模型准确性,但我们的方法通过在模拟平台和实际生产线(Kyowa/FP-600)上的部署,展示了对运动模糊、光照变化和其他动态干扰的鲁棒性。更重要的是,我们提出的裂纹鸡蛋和损坏区域的双重验证机制,结合生产线固有的鸡蛋旋转装置,建立了一个可靠的检测和分类决策过程。这一过程将裂纹鸡蛋的假阴性率降低了4.65%(表5和表6)。

还应注意的是,本研究中测试的鸡蛋是未经清洗的,而实验室平台测试中使用的鸡蛋是直接从超市购买的并且已经预先清洗过。实验结果表明,所提出的模型不仅对未经清洗的鸡蛋有效,也能检测到预先清洗过的鸡蛋中的裂纹。尽管该模型对这两种类型的鸡蛋都有很好的适应性,但其对更多不同类型损坏(例如网状裂纹)和不同种类的家禽鸡蛋的泛化能力仍有待验证。对于具有均匀、单一颜色外壳的鸡蛋(如鸭蛋),预计该方法将保持相对较强的性能。这是因为损坏的视觉线索,主要是颜色和表面光泽度的突然变化,是模型在训练过程中可以有效学习的显著特征。相反,对于具有复杂图案的鸡蛋(如鹌鹑蛋),情况则更为复杂:完整的外壳提供了复杂的背景,但一旦破裂并且蛋黄泄漏,损坏区域的独特“湿润和反射”特征仍然提供了可靠的检测信号。更大的挑战在于识别复杂的裂纹图案,例如细小的“网状”裂纹。这些缺陷通常在图像中占据较小的像素区域,边缘梯度信息较弱,容易与自然外壳纹理或轻微污渍混淆,特别是在未经清洗的鸡蛋上。解决这一特定挑战的关键是收集更多多样化的复杂裂纹样本并设计更细致的特征提取机制。未来的工作将重点关注采用新颖的方法,如暗箱照明来增强裂纹特征的可见性。

未来的研究将集中在几个方向:首先,探索更先进的小目标检测算法,例如特征超分辨率或注意力引导的放大机制,以专门降低损坏区域的假阴性率。其次,我们计划收集具有更多不同损坏模式和不同种类家禽鸡蛋的数据集,以进一步测试和增强模型的泛化能力。最后,我们考虑将系统集成到更广泛的家禽鸡蛋质量检测框架中,以实现内部缺陷(如散落的蛋黄和血点)的统一检测。

第五节. 结论
本研究旨在解决鸡蛋生产线上实时、精确检测裂纹鸡蛋的挑战。为此,我们提出了一个基于YOLOv8的改进检测模型,并建立了一个涵盖数据收集、模型优化和生产线部署的全面技术工作流程。本研究创新性地引入了一种双重验证、精细化的检测方法。只要模型检测到“裂纹鸡蛋”或“裂纹区域”,系统就将其分类为裂纹鸡蛋。通过分别学习局部损坏区域的特征,模型提高了其对各种损坏模式的感知和泛化能力,增强了对未见样本和复杂环境的检测鲁棒性。通过引入BiFPN、DCNv2、WIoUv2和小目标检测层等结构改进,模型感知裂纹区域、多尺度特征融合和处理困难案例的能力得到了显著提升。离线实验表明,在测试数据集上,模型的mAP达到了92.9%,比原始YOLOv8提高了5.2%,并优于其他比较模型。本研究将改进版的YOLOv8模型部署在鸡蛋输送线上,并使用Python推理框架实现了端到端的在线检测。测试结果显示高准确性。完整鸡蛋的假阴性率为0.46%,假阳性率为2.18%,比模型优化前的4.00%有所改善。在实施双重验证机制后,裂纹鸡蛋的假阴性率约为1%,假阳性率约为2%。此外,模型实现了每秒45帧的实时检测速度,准确性和操作速度均符合工业要求。

总之,本研究为鸡蛋生产线的自动化质量检测提供了一个可靠且高效的解决方案,对提高家禽鸡蛋行业的智能化水平和经济效益发挥了积极作用。
相关新闻
生物通微信公众号
微信
新浪微博

热点排行

    今日动态 | 人才市场 | 新技术专栏 | 中国科学人 | 云展台 | BioHot | 云讲堂直播 | 会展中心 | 特价专栏 | 技术快讯 | 免费试用

    版权所有 生物通

    Copyright© eBiotrade.com, All Rights Reserved

    联系信箱:

    粤ICP备09063491号