UI界面版-基于深度学习的车辆行人检测系统(YOLOv8/YOLOv7/YOLOv6/YOLOv5+实现代码+训练数据集+免费远程安装环境)
私信留下联系方式获取源码
介绍
随着深度学习技术的不断发展,车辆及行人识别应用越来越广泛,已成为计算机视觉领域的重要分支。传统的车辆识别方法速度慢且准确率低,基于YOLO的系列算法准确率有所提高,但也存在参数量大的弊端,识别速度较低。从R-CNN系列算法到SSD算法再到YOLO算法,它们各自有其优缺点,YOLOv4算法是在识别准确度和速度上都较突出的算法。考虑到不同场景对算法的识别准确度和识别速度要求不同,本文基于YOLOv4算法,改进出三种适用于不同工作场景的车辆及行人识别算法。首先,YOLOv4算法在PASCAL VOC2007数据集上取得的m AP值仍有可提升空间,不能满足自动驾驶等场景的准确度要求。为了提高YOLOv4算法的识别准确度,对算法的损失函数和特征融合网络进行改进。通过替换YOLOv4算法的CIo U损失函数为SIo U,模型的边界框回归更准确。通过强化模型对浅层特征的融合,提高了模型对小目标的识别能力。实验结果表明,改进算法在VOC2007数据集上的m AP值提升了2.2%。其次,基于YOLOv4的车辆识别算法较传统方法准确度有很大提高,但由于其计算参数量大和网络层数深,存在识别速度慢、对硬件要求高的问题。鉴于此,提出了一种改进的YOLOv4识别算法。通过在网络中引入深度可分离卷积替换传统卷积,减少了YOLOv4冗余的参数量和网络层数,并将其结合到resblock残差结构中,保持梯度信息的传递。实验结果表明,改进算法在保证高准确率的前提下,识别速度提升约70%。测试平台下,VOC数据集上的m AP减少了3.2%,FPS提升了30.9帧/s,对小目标的检测效果良好。最后,考虑到某些特殊场景对识别准确度要求较低且场景中目标识别难度小,改进出一种更加轻量化的算法。在应用深度可分离卷积的基础上,引入通道数因子使卷积网络变得稀薄。同时对YOLO Head进行改进,只使用两种维度的检测层并简化特征融合网络。用实际场景的视频对模型进行验证,改进算法有良好的识别准确度,可以识别到大部分车辆及行人目标。此算法最大的优势在于依赖的硬件资源少,可以达到实时检测的速度,能够满足部分准确度要求低和低算力的场景。
安装环境
runs文件夹中,存放训练和评估的结果图
环境安装:
请按照给定的python版本配置环境,否则可能会因依赖不兼容而出错,
在文件目录下cmd进入终端
(1)使用anaconda新建python3.10环境:
conda create -n env_rec python=3.10
(2)激活创建的环境:
conda activate env_rec
(3)使用pip安装所需的依赖,可通过requirements.txt:
pip install -r requirements.txt
在settings中找到project python interpreter 点击Add Interpreter
点击conda,在Use existing environment中选择刚才创建的虚拟环境 ,最后点击确定。如果conda Executable中路径没有,那就把anaconda3的路径添加上