蝴蝶对周围环境敏感,能作为反应生态环境的指示物种,因此对其进行识别研究对研究生态稳定性具有重大意义。但蝴蝶分类细致,相似度高,传统识别方法效率低。为解决上述问题,本文以野外蝴蝶图像的种类自动识别为目标,提出了一种基于YOLOv5s的改进的目标检测方法。为了减少信息丢失,提高精度,在YOLOv5s的主干特征提取网络上设计了CSandGlass模块来代替残差模块;并加入了SE注意力机制和对损失函数进行改进。实验结果表明,改进后模型平均精度为92.6%,相比原模型平均精度提升2%,且具有较强的鲁棒性和稳定性,可满足自然环境下的蝴蝶种类识别需求。
蝴蝶是动物界的一种昆虫,在生态系统中起着重要的作用,其对周围环境敏感,可作为地方生态环境的指示物种[1],研究生态学的专家们会通过对蝴蝶的种类识别来判断当地的生态环境[2],因此研究蝴蝶种类识别对研究生态系统的稳定十分重要。地球上所有的蝴蝶都有相似的外表,科学家根据蝴蝶翅膀的形状和行为将蝴蝶分为不同的类别, 世界上已记载的有两万多种, 在中国有2100 多种[3]。
值得注意的是,蝴蝶幼虫大部分是农作物和树木的害虫,与农作物和人类和动物的环境有着直接的关系。因此,可靠的物种鉴定方法在害虫防治、边境防治和环境保护等方面具有非常重要的实际应用价值。蝴蝶的种间差异很小,而种内变异很大,这使得昆虫学家很难确定蝴蝶的种类。此外,采集、识别和存档标本图像对昆虫学家来说也是一项繁琐而昂贵的工作。蝴蝶种类的自动准确识别具有重要的现实意义,可以为生物多样性研究和物种分析提供帮助。
在蝴蝶识别领域,早期大多采用传统的机器学习算法,如局部二进制模式(LBP)、K-最近邻(KNN)和支持矢量机(SVM),被广泛用于解决分类问题,特别是在小数据集上表现良好。G.M 等使用二值化等图像处理工具对蝴蝶进行分割, 并将RGB 图像转换为HIS 颜色模型, 对9 种蝴蝶进行分类取得了良好的识别效果[4]。但对于更复杂的数据集,深度学习的表现优于传统的机器学习。谢娟英等基于他们的数据集提出了一种新的数据分区方法和数据扩展技术,并在RetinaNet 模型上实现了最高79.7%的mAP [5]。
李飞等人提出LDResNet 网络对自然环境蝴蝶图像进行识别,引入可变形卷积,注意力机制和改进的深度可分离卷积,取得了87.61%的平均识别准确率[6]。目标检测识别算法具有高效,准确地自动学习、检测分类能力。其主要分为单阶段和两阶段目标检测算法。两阶段目标检测算法会先在第一阶段生成一些候选框,然后在第二阶段进行对生成的候选框进行分类和回归。而单阶段算法则直接在整个图像上预测目标的位置和类别。双阶段算法对目标检测的精度较高,而单阶段算法的效率更高。YOLO 系列算法是目前目标检测的主流算法[7] [8] [9]。Liang 等综合不同训练机制下的YOLO 模型的结果,提出了一种基于YOLO 算法的蝴蝶自动检测分类算法。
极大地提高了YOLO 算法的泛化能力, 使其具有更好地解决小样本问题的能力[10]。