本发明属于计算机视觉目标检测识别与野生动物保护,具体是一种基于改进yolov8与知识蒸馏技术的野生动物目标检测方法。
背景技术:
0、技术背景
1、随着智能驾驶技术的飞速发展,其在现代交通领域的应用日益广泛,为提升交通安全性与效率带来了革命性的变革。然而,这一技术的广泛应用也引发了一个重要的问题:如何平衡野生动物迁徙与人类社会活动之间的关系。野生动物迁徙是自然界中不可或缺的生态现象,但随着人类社会的不断扩张,其迁徙路线常受到干扰,给野生动物与人类都带来了潜在的风险。在这一背景下,计算机视觉技术作为智能驾驶的核心组成部分,展现出了巨大的潜力。通过实时感知和识别周围环境,检测是否存在野生动物,智能驾驶系统能够自动调整行驶策略,避免与野生动物迁徙路线的冲突,从而在保障野生动物生态安全的同时,确保人类社会活动的正常进行。
2、当前,深度学习在目标检测领域的应用中,传统的目标检测方法通常采用滑动窗口或区域建议的方式,通过复杂的特征提取和分类器训练来实现物体的定位和分类。然而,这些方法往往计算量大、速度慢,难以满足实时应用的需求。yolo模型通过构建一个卷积神经网络来直接预测图像中物体的边界框和类别概率,从而避免了传统目标检测算法中复杂的区域提议和特征提取步骤。这种一体化的设计使得yolo模型在保持较高精度的同时,大大提升了处理速度,使其非常适合于实时应用。
3、随着yolo系列的不断发展,如最近几年的yolov5、yolov7和yolov8等不断对模型结构和性能进行优化,进一步提升了检测精度和速度。这些模型通过引入更多的卷积层、改进损失函数、采用多尺度特征融合等技术手段,使得yolo系列在目标检测领域取得了显著的成果。
4、现有技术的缺点:
5、基于yolov8的野生的动物目标检测方法面临以下两个难题。首先,由于是部署在智能驾驶上的目标检测任务,必须充分考虑到安全问题,因此对检测模型的算法精度提出了更高的要求。其次,考虑到如果将网络模型部署在远程服务器端,遇到网络延迟等意外情况可能造成不可挽回的损失,必须把网络模型部署在本地边缘设备进行实时推理,但是车载设备等嵌入式设备的资源十分有限。因此,综合以上问题,通过对yolov8模型进行改进,轻量化网络模型,提高推理速度,利用知识蒸馏的方式在不影响模型大小的前提下提高模型精度对于将yolov8应用到车载的野生动物目标检测上具有非常重要的意义。
技术实现思路
1、针对上述现有问题,本发明在于提供一种基于改进yolov8与知识蒸馏技术的野生动物目标检测方法,主要解决上述技术背景中存在的问题。
2、为达到上述目的,本发明采用以下技术方案实现:
3、获取野生动物图像数据,并进行预处理,对图像数据集进行标注,将数据集按照7:2:1比例划分为训练集、验证集和测试集。
4、进一步地,建立知识蒸馏的教师模型网路。以yolov8网路为基础模型,将原始网络中的backbone替换为swin transformer作为主干网络,提高其精度。其中,主干网络主要分为四个阶段,每个阶段都包含若干swin transformer block。输入图像首先通过patchpartition被划分成小块,并通过linear embedding转换成向量序列。各个阶段通过patchmerging操作降低特征图的分辨率,同时增加特征维数。最后得到相对于输入图像1/8、1/16、1/32的特征图,再将这些特征图输入到的yolov8模型的neck网络中。
5、进一步地,在neck网络中添加seam注意力机制,进一步提升模型精度。其中,seam注意力机制的第一部分是带有残差连接的深度可分离卷积,随后通过逐点(1x1)卷积进行组合。然后,使用两层全连接网络来融合每个通道的信息,使网络可以强化所有通道之间的连接。最后,通过指数函数处理,将值范围从[0,1]映射到[1,e],使结果对位置误差更具鲁棒性。
6、进一步地,将改进后的高精度模型进行消融实验,验证后的模型作为知识蒸馏的教师模型。
7、进一步地,建立知识蒸馏的学生模型网路。以yolov8网路为基础模型,将网络中的backbone替换为ghosthgnetv2模型网络作为骨干网络,减少模型参数量和计算量。其中主干网络由hgstem和若干ghost_hgblock模块组成,第一层由hgstem模块构成。hgstem由一系列convbnact(conv+bn+act,类似于resnet的分支残差),第二层到第五层由若干ghost_hgblock和dwconv构成。通过各阶段的操作降低特征图的分辨率的同时增加特征维数。最后得到相对于输入图像1/8、1/16、1/32的特征图,再将这些特征图输入到的yolov8模型的neck网络中。
8、进一步地,对yolov8的检测头进行重设计,提出efficient_detect,使网络变得更加轻化。在原始网络的检测头部分先通过两次3x3的group conv,最后再产生分支分别计算bbox loss和cls loss。
9、进一步地,将改进后的轻量级网络模型进行消融实验验证,验证后的模型作为知识蒸馏的学生模型。
10、进一步地,采用知识蒸馏的方法提升学生模型的精度,得到本发明的最终模型。其中,蒸馏方法采用logits蒸馏,其特征在于,通过将教师模型的输出作为学生模型的目标,通过最小化教师模型和学生模型在logits层面上的差异,来训练学生模型。
11、进一步地,将模型部署在国产开发板axera-pi上进行推理验证。
12、本发明的有益效果:
13、本发明通过在原始yolov8模型的基础上进行改进,通过将模型的主干网络替换为swin transformer,以及在neck网络中加入seam注意力机制的方式,大大提升了模型的精度,将其作为知识蒸馏的教师模型;通过将模型的主干网络替换为ghosthgnetv2,以及重新设计模型检测头的方式,使模型变得十分轻量化,提高推理的速度;通过知识蒸馏的方式使改进后的学生模型在模型轻量化的基础上进一步提升了模型的精度;最后通过将其部署在国产嵌入式硬件axera-pi上验证了本发明的方法将有助于将计算机视觉模型高性能地部署在硬件资源有限的嵌入式设备上。
1.一种基于改进yolov8与知识蒸馏的野生动物目标检测方法,其特征在于,包括:
2.根据权利要求1所述的一种基于改进yolov8与知识蒸馏的野生动物目标检测方法,所述的野生动物图像数据,其特征在于,图片数据来源于网络上公开的三个野生动物数据集,对图像数据集进行标注,将数据集按照7:2:1比例划分为训练集、验证集和测试集。
3.根据权利要求1所述的一种基于改进yolov8与知识蒸馏的野生动物目标检测方法,所述的采用swin transformer作为教师模型的主干网络,其特征在于,主干网路主要由swin transformer组成,分为四个阶段,每个阶段都包含若干swin transformer block。输入图像首先通过patch partition被划分成小块,并通过linear embedding转换成向量序列。各个阶段通过patch merging操作降低特征图的分辨率,同时增加特征维数。最后得到相对于输入图像1/8、1/16、1/32的特征图,再将这些特征图输入到的yolov8模型的neck网络中。
4.根据权利要求1所述的一种基于改进yolov8与知识蒸馏的野生动物目标检测方法,所述的seam注意力机制包括,其特征在于,在原本的neck网络中添加seam注意力机制,其第一部分是带有残差连接的深度可分离卷积,随后通过逐点(1x1)卷积进行组合。然后,使用两层全连接网络来融合每个通道的信息,使网络可以强化所有通道之间的连接。最后,通过指数函数处理,将值范围从[0,1]映射到[1,e],使结果对位置误差更具鲁棒性。
5.根据权利要求1所述的一种基于改进yolov8与知识蒸馏的野生动物目标检测方法,所述ghosthgnetv2模型网络作为学生模型的骨干网络,其特征在于,学生模型的骨干网络由hgstem和若干ghost_hgblock模块组成,第一层由hgstem模块构成。hgstem由一系列convbnact(conv+bn+act,类似于resnet的分支残差),第二层到第五层由若干ghost_hgblock和dwconv构成。通过各阶段的操作降低特征图的分辨率的同时增加特征维数。最后得到相对于输入图像1/8、1/16、1/32的特征图,再将这些特征图输入到的yolov8模型的neck网络中。
6.根据权利要求1所述的一种基于改进yolov8与知识蒸馏的野生动物目标检测方法,所述的对学生网络的检测头进行重新设计,提出efficient_detect,其特征在于,在原始网络的检测头部分先通过两次3x3的group conv,最后再产生分支分别计算bbox loss和clsloss。通过这种共享卷积参数的方式可以大大减少参数量。其中,groupconv(分组卷积)是一种轻量化的卷积操作,与普通的卷积不同,group conv首先将输入的feature map分成n组,卷积核也相应地分成n组,在对应的组内做卷积,每组卷积都生成一个feature map,共生成n个feature map,最后合并在一起。
7.根据权利要求1所述的一种基于改进yolov8与知识蒸馏的野生动物目标检测方法,所述的消融实验,其特征在于,分别在三个公开的数据集上进行训练验证,每个数据集进行150代训练,选用precision(精确度),recall(召回率),map50,map(50-95),fps(每秒帧数)作为评价指标。不同指标的计算公式如下:
8.根据权利要求1所述的一种基于改进yolov8与知识蒸馏的野生动物目标检测方法,所述的采用logits蒸馏提升学生模型的精度,其特征在于,通过将教师模型的输出(即logits)作为学生模型的目标,通过最小化教师模型和学生模型在logits层面上的差异,来训练学生模型。其中模型的损失函数定义如下:
9.根据权利要求1所述的一种基于改进yolov8与知识蒸馏的野生动物目标检测方法,所述的将改进后的模型部署在国产开发板axera-pi上进行推理验证,其特征在于,先将训练完得到的最终模型保存为onnx格式,采用爱芯派官方提供的pulsar模型量化和格式转换工具,将模型转化为axera-pi支持的格式,将转化后的模型导入axera-pi,调用摄像头获取图像并在屏幕上显示,模型通过检测每一帧图像信息进行目标检测分类,并将检测结果绘制在图像上并在屏幕上实时显示。
