关键词:
果蝇识别
机器视觉
模型轻量化
边缘计算
数据处理
物联网
摘要:
水果产业在我国具有重要的经济和社会意义。然而,果蝇作为一种重要的农业害虫,对水果产量和品质构成了严重威胁。因此,有效的识别可为后期的果蝇防治提供先机。传统的识别方法存在成本高、效率低和主观性强等诸多局限。而先进的目标检测模型往往依赖高性能设备的支持。鉴于这些问题,探索一种既快速又准确的轻量级果蝇识别模型,并基于此模型构建一个高效的果蝇识别系统,能提高工作效率,并推动水果产业向更高质量的发展迈进。
然而,由于果蝇数据稀缺,导致训练出的模型泛化能力不足。为了应对这一挑战,本课题通过实地拍摄,采集了1325张3472×3472像素的原始图像,涵盖了不同的光线条件和果蝇密度,包含黑腹果蝇和无翅果蝇两种类别,共计37394个标注框。为了改善高分辨率图像中小目标特征丢失的问题,本课题通过图像分割和设置重叠率的数据处理方式,获得了4699张1736×1736像素的图像。进一步地,通过采用旋转、翻转等数据增强技术,构建了一个包含20521张640×640像素图像的大规模数据集,共计161668个标注框。最后,本课题对所构建的数据集进行了可视化分析,确认了数据集中小目标尺寸的特点以及果蝇的密集程度,为后续模型优化提供了重要依据。
在上述构建的数据集中,由于果蝇体型小,当它们分布密集时,这增加了被错误识别或遗漏的可能性。针对这个问题,本课题以anchor-free架构的YOLOv8n为Baseline,进行一系列改进策略,构建了轻量级的果蝇识别模型LFD-YOLOv8n。具体而言,引用GhostNetV2 BottleNeck替代主干部分所有C2f模块的BottleNeck,构建了全新的C2fGhostV2模块,降低了计算代价并提升了识别性能。通过添加卷积层和增加跳跃连接对BiFPN重构,设计了更高效的LBiFPN结构,替代颈部的FPN+PAN结构,提高了特征融合效率和表达能力。采用MBConv替代颈部所有C2f模块的BottleNeck,构建了全新的C2fMBC模块,提高了计算效率和特征复用能力。消融实验结果表明,各个改进单独应用或共同应用都是有效的。在与Baseline模型的对比实验中,LFD-YOLOv8n在参数、权重和FLOPs分别减少48.50%、43.98%和32.10%的情况下,mAP却更高,达到98.32%。此外,结果可视化证实LFD-YOLOv8n改善了Baseline错误识别和遗漏的问题。尽管LFD-YOLOv8n展现出了在多项性能指标上的优势,但在置信度方面,它与Baseline模型却均稍弱于YOLOv5n。
针对LFD-YOLOv8n在置信度方面的不足,本课题选择anchor-based架构的YOLOv5s为Baseline并改进,构建了轻量级的果蝇识别模型FliesYOLOv5s。具体而言,通过引入ShuffleNetV2作为Backbone、移除SPPF模块并进行通道缩减,从而设计了更轻量化的Backbone。这些改进显著降低了模型的参数量和计算复杂度。接着,采取缩减Neck部分的通道并增加深度和宽度的策略,同时引入ConvNeXt Block来构成CNeB模块,取代所有的C3模块。此外,用5×5深度可分离卷积、SE注意力机制和H-swish激活函数构建了DPS Block结构,替代两个步长为2的3×3 Conv,从而设计了更高效的Neck。这些改进在轻量化模型的同时,提高了模型性能。另外,通过在Backbone的最后两个模块中加入SE注意力机制,并将深度卷积的卷积核大小增加为5,同时使用H-swish替代ReLU激活函数,进一步增强Backbone。这些改进在仅增加少量参数的情况下,提高了模型的性能。消融实验证明改进都是有效的。在对比实验中,Flies-YOLOv5s展现了全方位的优势。其中,与Baseline相比,FliesYOLOv5s在参数、FLOPs和权重分别降低78.8%、77.8%、76.1%的情况下,mAP更高,达到98.34%。此外,结果可视化证实Flies-YOLOv5s有优秀的抗干扰能力。与LFD-YOLOv8n相比有显著的置信度优势。
在对上述两个模型综合评估后,选择Flies-YOLOv5s作为最终的果蝇识别模型。为了解决田间网络不稳定和云计算成本过高的问题,本课题构建了基于边缘计算的果蝇识别系统,进行即时信息处理,减少了数据传输延迟并提高了效率和安全性。通过控制模块实现目标检测模块的电源管理,只在需要时启动。系统集成了物联网(Internet of Things,Io T)模块,建立了从边缘设备到物联网平台再到用户端的通信链路,允许用户远程接收数据和操控设备。利用PyQt5开发了友好的可视化界面,支持现场用户操作。该系统针对农业环境中电力和网络问题提供了实用解决方案,构建了具有定时和