本发明涉及目标检测领域,具体涉及一种基于卷积神经网络的模型轻量化的应用。
背景技术:
0、技术背景
1、各类目标的检测和跟踪一直以来都是计算机视觉领域的一个研究热点,在视频监控、军事科技、智能交通管理等方面都有着非常广泛的应用。随着计算机视觉的发展,基于深度学习的目标检测技术在计算精度上取得了突破性的进展,并且在现实生活场景中得到了广泛的应用。在实际应用中,尽管神经网络可以在服务器等大型计算机上达到实时检测目标的效果,但是当将网络结构移植到嵌入式设备时却难以达到该效果,因为嵌入式设备的处理器性能远不如服务器等。并且现有的目标检测网络存在着计算成本高,模型存储大的缺点,不利于其在具有严格计算时间要求和低存储器资源设备中的部署,这也严重限制了深度神经网络在便携式设备上的发展与应用。
2、为了提高便携式设备处理图像和视频数据的效率和能力,同时需要满足存储空间和功耗的限制,设计适用于便携式设备的轻量化深度神经网络架构是解决该问题的关键。
3、研究者们主要从三个不同的方向进行研究轻量化,分别为人工设计轻量化神经网络模型、基于神经网络架构搜素的自动化神经网络架构设计、神经网络模型的压缩。
4、(1)人工设计轻量级神经网络的主要思想在于设计更高效的网络计算方式,主要是针对卷积的计算方法。现有的深度卷积神经网络为了能够取得更好的性能,通过设置大规模的特征通道数、卷积核大小的数量,但是往往存在大量的冗余。人工设计轻量级神经网络通过合理的减少卷积核的数量,减少目标特征的通道数,结合设计更高效的卷积操作等方式,从而构造更加有效的神经网络结构,可以在保持神经网络性能的前提下,显著的减少网络的参数和计算量,实现在便携式设备上训练和应用深度神经网络。
5、(2)基于神经网络架构搜素的自动化神经网络架构设计即通过给定所有候选神经网络架构的集合作为搜索空间,使用学习到的搜索策略从搜索空间中构建最优的神经网络架构,利用性能评估策略度量网络架构的性能,并在训练阶段,作为奖励指导搜索策略的学习,通过反复的迭代,从而得到解决特定任务的最优神经网络架构,实现深度神经网络模型的自动搜索。神经网络架构搜索方法与超参数优化和元学习有显著的重叠。神经网络架构搜索方法主要由三部分组成:搜索空间、搜索策略和性能评估策略。
6、(3)神经网络模型压缩根据神经网络中每层的冗余程度,通过将网络权重的全精度的浮点数进行裁剪、对网络中间的特征输出进一步进行量化,以及剪枝、权值共享、低秩分解、知识蒸馏等方法实现神经网络模型的压缩。通过压缩神经网络模型,降低了占用的存储空间,满足功耗的限制,嵌入到便携式设备的芯片上,实现实时的运行。
技术实现思路
1、针对技术背景中,本发明以yolov5为深度学习框架基础,通过在yolov5网络模型中引入分组卷积,减少目标特征的通道数,构造出更加有效的神经网络结构,以解决计算量大,储存量大的问题,使之能在嵌入式开发板上完美运行。
2、为了解决上述技术问题,本发明采用如下方案:
3、一种基于模型轻量化的目标检测方法,步骤包括:首先采集图片;再把图片送入目标检测方法模型进行检测;最后得到图片中的目标信息;其特征是目标检测方法模型的构建步骤包括:
4、步骤1:处理训练集,将图片数据集格式转化为适合yolov5训练的xml格式,并将之划分为训练集和测试集两大部分;
5、步骤2:搭建pytorch深度学习框架,其中深度学习模型的配置利用yolov5算法,步骤包括:
6、2.1)利用输入端的mosaic数据增强、自适应锚框计算和自适应图片放缩对图像进行预处理操作;
7、2.2)利用backbone主干网络中的focus结构、csp结构和spp结构进行网络特征提取,再通过neck的fpn+pan结构、加强网络特征融合的能力;
8、2.3)利用输出端prediction进行三种特征大小输出,按照图像网格划分得到参数矩阵;
9、步骤3:修改yolov5网络,方法为:
10、3.1)利用多层小卷积核替代一层大卷积核
11、使用3×3卷积核代替5×5和7×7大小的大卷积核;对于一个大小5×5的感受野,通过两层3×3大小的卷积实现;对于一个卷积核通过三层卷积实现,;
12、3.2)限制中间特征的通道数量,方法为:
13、采用fire moudle,fire moudle包括压缩squeeze层和扩张expand层;通过减少squeeze层的通道数量来减少整个模型需要的计算量;
14、3.3)利用分组卷积代替标准卷积:
15、特征是步骤3.3)中,利用分组卷积代替标准卷积:
16、分组卷积的方法为:首先对输入特征图feature map进行分组,然后对每组特征图分别卷积;
17、分组卷积的连接方式为:第一组group1输出特征图数为2个,有2个卷积核,每个卷积核的channel数为4,与第一组group1的输入特征图的channel数相同,卷积核只与同组的输入特征图卷积,而不与其他组的输入特征图卷积;
18、以此类推;
19、采用混洗shuffle操作,将来自不同组的特征重新进行排列,使的分组中包含来自之前各个组的特征;
20、步骤4:训练网络;
21、步骤5:利用训练好的模型进行探测detect操作,从而得到基于模型轻量化的目标检测方法模型。
22、本方法在目标检测方法模型的构建过程中,通过多种措施修改yolov5网络,使模型轻量化,以降低了使用过程中的软硬件资源占用,适于嵌入到芯片上,实现实时的运行。
1.一种基于模型轻量化的目标检测方法,步骤包括:首先采集图片;再把图片送入目标检测方法模型进行检测;最后得到图片中的目标信息;其特征是目标检测方法模型的构建步骤包括:
2.根据权利要求1所述的基于模型轻量化的目标检测方法,其特征是步骤1中,在图像数据集中添加困难样本图片,筛除部分质量不佳的图片。
3.根据权利要求1所述的基于模型轻量化的目标检测方法,其特征是步骤3.2)中,首先通过expand层,使用1×1的卷积核对输入特征进行升维,在高纬度特征进行卷积操作;然后在通过squeeze层,使用1×1的卷积核对特征图进行降维,减少中间特征的通道数量。
4.根据权利要求1所述的基于模型轻量化的目标检测方法,其特征是步骤3.3)的分组卷积中,设输入特征图的尺寸为c×h×w,输出特征图的数量为n个,假设要分成g个组,则每组的输入特征图数量为每组的输出特征图数量为每个卷积核的尺寸为卷积核的总数仍为n个,每组的卷积核数量为卷积核只与其同组的输入特征图进行卷积,卷积核的总参数量为
5.根据权利要求1所述的基于模型轻量化的目标检测方法,其特征是步骤3.3)的混洗shuffle的步骤包括:
6.根据权利要求1所述的基于模型轻量化的目标检测方法,其特征是步骤4的方法为方法如下: