《Smart Agricultural Technology》:Lightweight pruning-driven YOLOv8-PMP for visual detection of pine nut rot
编辑推荐:
本研究针对松子因黄曲霉(Aspergillus flavus)污染导致产量损失和品质劣变问题,提出了一种轻量级目标检测模型YOLOv8-PMP。研究通过集成大分离核注意力(LSKA)模块、可变形卷积(DCNv4)、动态采样(DySample)算子和ResBlock_GAM模块增强对微弱、不规则霉变病灶的特征提取能力,并应用层自适应幅度剪枝(LAMP)技术压缩模型。在NVIDIA Jetson Nano边缘设备上部署后,模型精确度、召回率、mAP50和mAP50–95分别达到93.5%、86.9%、93.3%和65.6%,单图推理延迟仅31.4毫秒,为松子霉变实时精准检测提供了可行的边缘计算解决方案。
松子作为一种富含不饱和脂肪、蛋白质和矿物质的高价值食品,其漫长的生长周期和有限的生态分布范围制约了产量,而营养丰富的内核为微生物生长提供了理想基质。采收、储存和运输过程中的机械损伤进一步加速了污染进程。在适宜的温度和湿度条件下,松子极易受到黄曲霉(Aspergillus flavus)污染,该霉菌产生的黄曲霉毒素等有毒代谢物严重威胁食品安全。因此,实现松子霉变的快速、可靠检测对于产业发展至关重要。
传统霉变检测方法主要包括感官检验、理化检测和毒素分析。感官方法依赖视觉和嗅觉,效率较高但严重依赖经验,劳动密集且主观性强,可靠性有限。理化方法通过传感器监测物理化学性质变化来推断污染,覆盖范围更广但受传感器性能和环境条件制约,准确性一般且特异性较弱。毒素分析靶向霉变产生的特定代谢物,准确性较高,但操作流程复杂、耗时且成本高昂,限制了在产业链中的大规模应用。
随着传感和计算技术的进步,智能检测逐渐转向多传感器融合、跨模态成像和基于深度学习的视觉检测三大范式,显著提升了检测速度和准确性。然而,基于可见光的深度学习霉变检测方法仍面临挑战。对于松子而言,核心难题在于如何平衡高精度与轻量化。早期霉变特征往往微弱、对比度低,导致小目标特征提取困难,漏检率高。其次,病斑形态多样,从局部斑点状到覆盖式分布,固定的网格卷积和单一形式的检测头难以适应,降低了模型鲁棒性并增加了误分类。最后,最先进的网络虽然精度高,但通常参数庞大,导致推理速度慢、计算成本高,难以在计算资源有限的边缘设备上实现高效、稳定的性能,限制了其在实际生产现场的应用。
为应对上述挑战,本研究聚焦松子霉变检测及其相关的食品安全风险,基于YOLOv8n基线模型进行增强,提出了YOLOv8-PM模型,进而通过剪枝得到最终的轻量化模型YOLOv8-PMP。具体而言,在骨干网络中,将大分离核注意力(LSKA)模块与空间金字塔池化快速(SPPF)模块集成,以增强多尺度特征提取能力。在颈部网络中,使用可变形卷积网络v4(DCNv4)和动态采样算子(DySample)替代部分标准卷积和上采样操作,提升对不规则病斑区域的适应性同时减少计算量,并引入ResBlock_GAM模块加强多尺度特征融合。为进一步压缩网络,应用了层自适应幅度剪枝(LAMP)方法,在保持精度的同时显著减小模型体积和计算开销。
本研究构建了专门的松子霉变图像数据集,数据采集在东北农业大学农业农村部东北智慧农业技术重点实验室的实验基地完成。通过设计实验并采集在不同光照、焦距条件下的松子图像,经过筛选和标注,最终获得835张原始图像,并按照14:3:3的比例划分为训练集、验证集和测试集。为避免数据泄露,仅对训练集进行了色调调整、噪声添加和翻转等数据增强操作,将数据集总量扩展至5515张图像,以提升模型的鲁棒性和泛化能力。
模型训练在配备NVIDIA RTX 2080 Ti GPU的服务器上进行,软件环境基于PyTorch 2.2.2和Python 3.8。训练超参数设置如下:训练轮数(Epochs)为200,批量大小(Batch size)为32,初始学习率为0.01,优化器使用随机梯度下降(SGD),动量(Momentum)为0.9,输入图像尺寸调整为640x640像素。
2.2.1. 骨干网络增强
2.2.1.1. LSKA注意力模块
LSKA模块将传统大核注意力(LKA)的前两个阶段分解为四个连续的一维卷积层,使模型能够渐进式地捕获空间相关性。在深度可分离卷积分支中,使用级联的1×k和k×1卷积核替代原始的k×k卷积核,既增大了有效感受野,增强了对长程特征的敏感性,有助于精确提取微小的霉变细节,又抑制了深度wise卷积带来的参数和计算量的二次增长,实现了精度与轻量化设计的平衡。
2.2.2. 颈部网络增强
2.2.2.1. DySample动态采样算子
DySample从点采样的基本原理重构了上采样过程,首先生成内容感知的采样点偏移,然后对连续特征场进行重采样来实现上采样。该方法无需定制CUDA内核,不依赖高分辨率引导特征,降低了计算负载,易于部署,并提升了对复杂霉变场景的适应性。
2.2.2.2. DCNv4模块
在松子霉变检测中,标准的C2f块依赖固定网格采样,难以捕捉复杂病斑形态的边界线索和细微纹理。DCNv4通过动态学习偏移量和调制系数,实现内容自适应的动态采样和动态加权,使卷积采样位置更好地贴合霉变病灶的不规则边界,同时增强对关键纹理的响应并抑制噪声干扰。
2.2.2.3. ResBlock_GAM模块
该模块将逆残差结构(ResBlock)与全局注意力机制(GAM)相结合,共同重新校准通道和空间维度的特征。通道分支增强与霉变相关的纹理响应,抑制背景干扰;空间分支移除池化操作以保留小霉斑的细粒度信息,降低了因早期微弱病灶特征衰减导致的漏检风险。
3.1. 消融实验
消融研究评估了LSKA、DySample、DCNv4和ResBlock_GAM每个组件对模型性能的贡献。结果表明,单独添加LSKA模块或DySample算子均能一致提升精确度、召回率和mAP,同时仅轻微增加权重和参数数量,GFLOPs变化可忽略不计。使用DCNv4替换基线模型中的标准卷积,在提升精度的同时降低了模型权重、参数数量和GFLOPs。集成ResBlock_GAM后,精度指标显著提升,但模型复杂度和计算开销也明显增加。多种组合实验显示,LSKA与DySample、DCNv4、ResBlock_GAM的特定组合能在性能和复杂度之间取得较好平衡。最终集成了所有四个模块的YOLOv8-PM模型,相比基线YOLOv8n,精确度提升2.6个百分点,召回率提升1.9个百分点,mAP50提升2.1个百分点,mAP50–95提升6.0个百分点,同时保持了相对较低的参数和计算量。
3.3. 轻量化与部署
3.3.1. 剪枝方法选择
比较了滤波器剪枝(Filter pruning)和LAMP剪枝在不同剪枝率下的性能。结果表明,在相同剪枝率下,采用LAMP方法剪枝的模型性能始终优于滤波器剪枝的模型。选择0.4作为剪枝率,此时模型大小减小至7.48 MB,mAP50和mAP50–95相比剪枝前的YOLOv8-PM分别提升了3.1和8.7个百分点,实现了精度与紧凑性的最佳权衡。
3.3.2. 剪枝后模型比较
经过LAMP剪枝后得到的最终模型命名为YOLOv8-PMP。该模型精确度达到93.5%,召回率86.9%,mAP50为93.3%,mAP50–95为65.6%,相比YOLOv8n基线均有显著提升。同时,剪枝去除了约40%的冗余参数,GFLOPs降低了约42%,显著推进了模型的轻量化。
3.3.4. Jetson Nano部署
为满足实时性要求,研究将最终模型导出为ONNX格式,并利用TensorRT编译为针对NVIDIA Jetson Nano优化的引擎。在Jetson Nano上进行测试,YOLOv8-PMP模型在TensorRT加速下,精确度、召回率、mAP50和mAP50–95进一步提升,同时平均每张图像的推理延迟从PyTorch版本的282.0毫秒大幅降低至62.8毫秒,完全满足松子霉变实时检测的要求。
本研究成功开发了一种适用于松子黄曲霉污染检测的轻量级、高精度目标检测模型YOLOv8-PMP。通过引入LSKA、DCNv4、DySample和ResBlock_GAM等先进模块,显著增强了对微弱、不规则霉变病灶的特征提取和识别能力。应用LAMP剪枝技术有效压缩了模型,使其更适合在资源受限的边缘设备(如NVIDIA Jetson Nano)上部署。实验结果表明,该模型在保持高精度的同时实现了实时检测,为松子产业链中的霉变早期识别和食品安全控制提供了一种有效的技术手段,对推动智能农业技术在农产品质量安全领域的应用具有重要意义。未来工作将集中于扩大数据集的多样性和进行跨领域验证,以进一步提升模型的泛化能力和实际应用价值。