摘要
随着人工智能(AI)和深度学习技术的不断发展,移动机器人领域也得到了蓬勃发展。移动机器人需要应用计算机视觉技术,其中目标检测技术是帮助智能移动机器人感知周围环境,并根据自身所处状态做出应对措施的技术保障。本文针对移动机器人难以搭载常规目标检测模型,导致检测速度慢的问题,在YOLOv5s的基础上提出轻量化网络设计和网络剪枝两种模型压缩解决方案。轻量化网络设计从模型结构的设计出发,通过构建高效而稀疏的网络连接,从而提高模型的推理速度。网络剪枝技术通过剪除网络中重要性低的权重分支,以达到加快模型运行速度的目的。本文主要工作如下: 轻量化网络设计:在保持YOLOv5s算法检测思想的基础上,从两个角度设计目标检测的网络结构,即稀疏连通性和增加非线性表示。目标检测网络中用于下采样的标准卷积优化为使用动态激活函数改进的Ghost卷积模块,大规模特征提取模块采用可分解卷积平衡网络通道数量和节点连通性,同时使用动态激活函数增大网络非线性表示能力。为了增大网络提取特征的感受野,在主干网络的末端,使用不同膨胀率堆叠的膨胀卷积残差块。根据动态激活函数种类和堆叠膨胀卷积残差块数量,本文共设计了三组网络模型,可根据任务类型选择适合的网络。实验证明,三组方案均可大幅度减少网络参数和计算量,可以在保证精度的同时加速模型推理速度。 网络剪枝:同样在YOLOv5s算法基础上,本文设计一款训练压缩同步进行的剪枝算法,使用BN层中的γ缩放因子作为评价指标,训练过程中按照比例将非重要卷积核置0,在模型训练完成后,再进行一轮训练,剪除掉置0的卷积核。该方法不需要预训练模型,也不用进行微调操作,可以提高训练效率。同时要注意,本文为了残差结构能够进行加法运算而采用非完全剪枝,带有残差结构的部分不进行剪枝操作。经过实验分析验证,本文设计的剪枝算法可以有效提高模型推理速度。 最后,为了验证本实验在移动机器人上的效果,本文使用TensorRT推理引擎将上述两种方法实现的模型压缩目标检测算法部署到Jetbot移动机器人上,并验证其有效性。经过实验证明,本文设计的目标检测模型可以很好的部署在Jetbot移动机器人上,实现移动机器人实时检测的目标。