基于树莓派与YOLOv5-Lite模型的行人检测系统设计

2023-09-25 19:32郑尚坡陈德富邱宝象张龙
计算机时代 2023年9期
关键词:树莓派目标检测

郑尚坡 陈德富 邱宝象 张龙

摘  要: 把在PC端上训练好的YOLOv5s与YOLOv5-Lite目标检测模型分别部署在搭载Linux系统的树莓派4B平台上,并在此平台上搭建深度学习环境,构建道路行人检测系统。对这两个模型进行分析对比,实验结果表明,在识别准确率相差0.1%的情况下,YOLOv5-Lite模型相对于原YOLOv5s模型,网络参数量下降了78.26%,模型计算量下降了77.91%,模型内存大小下降了75.52%,检测速度提高了91.67%。综上,本文提出的基于树莓派和轻量化YOLOv5-Lite目标检测网络模型的行人检测系统兼顾了识别准确、适用性好、小型化、成本低等综合性能优势。

关键词: 行人识别; 树莓派; YOLOv5-Lite; 目标检测; 模型部署

中图分类号:TP391.4          文献标识码:A     文章编号:1006-8228(2023)09-116-04

Design of pedestrian detection system based on Raspberry Pi and YOLOv5-Lite model

Zheng Shangpo1, Chen Defu1, Qiu Baoxiang2, Zhang Long2

(1. College of Information Engineering, Zhejiang University of Technology, Hangzhou, Zhejiang 310023, China; 2. Wanxiang Qianchao Co., Ltd)

Abstract: The YOLOv5s and YOLOv5-Lite target detection models trained on PC are deployed on the Raspberry Pi 4B platform equipped with Linux system respectively, and a deep learning environment is built on this platform to construct a road pedestrian detection system. The two algorithms are analyzed and compared. The experimental results show that in the case of 0.1% difference in recognition accuracy, the YOLOv5-Lite model has a 78.26% decrease in network parameters, a 77.91% decrease in model computation, a 75.52% decrease in model memory size, and a 91.67% improvement in detection speed. It takes into account the comprehensive performance advantages of accurate identification, good applicability, miniaturization and low cost.

Key words: pedestrian recognition; Raspberry Pi; YOLOv5-Lite; target detection; model deployment

0 引言

行人檢测系统可以为智能驾驶车辆后续路径规划、决策、控制提供必要的感知信息[1]。研究行人检测系统对于实现车辆的智能驾驶具有重要意义。本次实验设计的搭载在树莓派上的基于轻量化YOLOv5-Lite模型的行人检测系统,可以有效地完成对行人检测的工作,具有高精度、低成本、体积小、低功耗等特点,并且该模型复杂度低,易于在树莓派上进行部署应用。

1 系统方案

行人检测系统工作原理:首先分别在PC端和树莓派上搭建模型训练测试的环境,并构建行人识别数据集,然后由计算机远程连接上树莓派,将在PC端训练好的YOLOv5-Lite模型与YOLOv5s模型分别移植到树莓派上进行测试,由树莓派读取行人的测试图像,并传输到树莓派上进行图像处理、识别,在PC端显示检测的效果。系统集成流程如图1所示。

行人检测系统主要由硬件环境和软件环境两部分组成,硬件环境主要由树莓派4B主板、SD卡、散热风扇、读卡器、支架、保护外壳等构成。软件环境中主要搭建了Python3.7.2环境,使用pip指令安装了Numpy(1.21.5),Opencv(4.5.5),Torch(1.8.0),Torchvision(0.9.0)等库,完成了在树莓派上深度学习环境的配置。

2 Yolo v5-Lite算法原理及其改进

2.1 YOLOv5算法简介

相对于R-CNN[2]、Fast R-CNN[3]、Faster R-CNN[4]等two-stage的目标检测算法,该两阶段算法在检测速度上难以满足实际的需求,随后Redmin[5]等人提出了one-stage的目标检测算法YOLO,极大提高了目标检测速度。本次实验选择YOLOv5s[6]网络模型作为基础进行改进。如图2为YOLOv5s的网络结构。

YOLOv5s网络模型可分为四个部分。第一部分为输入端,负责Mosaic数据增强,自适应Anchor计算,自适应缩放图片。第二部分为Backbone,有Focus结构、C3结构、SPP结构。其中Focus结构主要是通过slice操作来对输入图片进行裁剪,切片过程如图3所示,结构如图4所示。C3结构分为C3 1_X与C3 2_X两种,SPP模块由池化模块、卷积模块和Concat模块组成,该部分主要负责目标特征的提取。第三部分为Neck网络,采用了FPN+PAN结构,由于FPN只传递了高层强语义特征信息而未传递定位信息[7],所以PAN在FPN的基础上引入自底向上路径以增强结构传达强定位特征,更好地提取融合特征。第四部分为输出端,采用CIoU Loss[8]作为Bounding Box回归的损失,采用BCE Loss作为分类损失和置信度损失。

2.2 YOLOv5-Lite网络模型结构

YOLOv5-Lite网络[9]在原来的YOLOv5s基础上做了以下改进:①摘除了Focus层和四次slice操作;②选择ShuffleNetV2替代C3作为骨干网提取特征,加入了Shuffle Channel,并摘除ShuffleNetV2的1024卷积和5×5池化操作,在原基础上减少了C3层的多次使用,从而减少了缓存空间的占用,加快了运行速度;③其次对YOLOv5 head进行了通道剪枝。

以上方法使得YOLOv5-Lite网络与在YOLOv5版本中模型最小的YOLOv5s相比更轻,Flops更小,模型内存占用更低,参数更少,检测速度更快,因此,该轻量化模型更容易部署在嵌入式设备上。本此实验所用的YOLOv5-Lite-s模型结构如图5所示。

3 实验设置与结果分析

3.1 计算机实验运行环境

本文计算机使用的显卡型号为NVIDIA GEFORCE RTX 3070(8G显存)、CPU为Intel(R) Core(TM) i9-12900H,2.50 GHz,Python版本为3.9、基于Pytorch(版本1.10.1)深度学习框架、计算机训练模型環境使用软件PyCharm 、GPU加速工具为CUDA 11.3。

3.2 数据集

本文使用的数据集来源于PASCAL VOC 2007[10],本次实验通过从PASCAL VOC 2007筛选出其中只含有行人类别的图片,按照8:2的比例将数据集划分为训练集和测试集,共计训练集3299张,测试集893张。

3.3 模型训练与移植

本文训练所用的初始权重分别为yolov5s.pt和v5lite-s.pt,其中Batch_size设为128,迭代周期epochs设为200,置信度阈值0.45,iou阈值为0.5,模型训练时在初始三个epochs选择较小的学习率数值0.001进行Warm up预热学习,增加模型在训练阶段的稳定性。本文训练过程中的超参数设置如表1所示。通过训练模型,分别得到了两个最好的权重文件。

然后将在PC端训练好的模型文件.pt格式转换为.onnx格式,使用MobaXterm_Personal软件移植至树莓派中,在树莓派上执行测试文件,即测试这两种模型对行人的检测效果。

3.4 评估指标

为评估两种模型的检测效果,本文使用参数量、模型占用内存、检测速度以及识别精确度(Prepision)作为评价指标。

3.5 实验结果与检测效果

通过对训练好的两种模型进行测试,表2为在树莓派上测试所得的网络对比结果。

实验结果表明,YOLOv5-Lite网络与原YOLOv5s网络相比,其识别精确度和YOLOv5s数值非常相近,网络参数量下降了78.26%,GFLOPs下降了77.91%,模型内存大小下降了75.52%,检测速度提高了91.67%。因此YOLOv5-Lite综合性能优势明显,成功满足了实验需求。树莓派通过读取测试数据集图像,最终实现的检测效果图如图6所示。

4 结论

本文提出了一种基于改进 YOLOv5-Lite 轻量级的行人检测算法,通过将训练好的网络模型YOLOv5s与YOLOv5-Lite分别部署在树莓派平台上,成功搭建了一个树莓派嵌入式行人检测系统,最后在树莓派上读取测试图像来对这两种模型进行测试与性能对比分析,基于轻量化的YOLOv5-Lite网络模型的行人检测系统优势更加明显,满足实验需求,适用于资源受限的环境下,具有检测精度高、体积小、成本低、推理速度快等综合性能优势,对智能驾驶领域中的行人检测算法具有极高的参考与使用价值。

参考文献(References):

[1] 方卓琳.基于YOLOv3的道路交通环境行人检测技术研究[D].

广东:华南理工大学,2019.

[2] TAO X,ZHANG D P, WANG Z H, et al.Detection of power

line insulator defects using aerial images analyzed with convolutional neural networks[J].IEEE Transactions on Systems, Man, and Cybernetics:Systems,2020,50(4):1486-1498.

[3] Girshick R.Fast R-CNN[C]//Proceedings of 2015 IEEE

International Conference on Computer Vision.Santiago:IEEE,2015:1440-1448.

[4] REN S,HE K,GIRSHICKR.et a1.Faster R-CNN:towards

real time object detection with region proposal networks[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2017,39(6):1137-1149.

[5] REDMIN J, DIVVALAS, GIRSHICK R, et al. You only look

once: unified,realtime object detection[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition,2016:779-788.

[6] Glenn Jocher.YOLOv5:The Leader in Realime Object

Detection[EB/OL].[2023-03].https://github.com/uhralytics/yolov5.

[7] 刘羽璇,赵玉良.基于YOLOv5-Lite的小型无人机识别方法[J].

自动化应用,2022(7):71-74.

[8] ZHENG Zhaohui,WANG Ping,LIU Wei,et al.Distance-IoU

loss:faster and better learning for bounding box regressionI[EB/OL].[2020-06-10].https://arxiv.org/pdf/1911.08287.pdf.

[9] Ppogg.YOLOv5-Lite:Lighter,faster and easier to deploy

[EB/OL].[2023-03].https://github.com/ppogg/YOLOv5-Lite.

[10] Everingham M,Van Gool L,Williams CK I,et al.Intro-

duction to PASCAL VOC 2007 //Proceedings of the Workshopon PASCAL Visual Object Classes Challenge. Rio de Janeiro,Brazil,2007.

猜你喜欢
树莓派目标检测
基于微信端的智能家居监控系统的设计与实现
视频中目标检测算法研究
行为识别中的人体运动目标检测方法
智能安全防盗探测小车
移动机器人图像目标识别
基于背景建模法的运动目标检测
基于P3电位的目标检测研究
基于树莓派的高清视频播放器的设计与实现
基于嵌入式技术的农村医疗系统设计
一种改进的峰均功率比判源方法