当前位置: 首页 > news >正文

Yolov5-交通标志检测与识别

项目介绍

上一篇文章介绍了基于卷积神经网络的交通标志分类识别Python交通标志识别基于卷积神经网络的保姆级教程(Tensorflow),并且最后实现了一个pyqt5的GUI界面,并且还制作了一个简单的Falsk前端网页实现了前后端的一个简单交互,只能实现单张交通标志图像的分类,没有位置检测功能,并且不支持视频的实时检测识别,总体上来讲较为简单。本文介绍一个交通标志识别的进阶项目–基于Yolov5的交通标志检测识别,它不仅能实现图片的多目标检测识别还可以实现视频的实时检测识别。大家可以看一下视频展示效果如下链接

视频演示:交通标志检测视频演示
在这里插入图片描述

获取代码

在这里插入图片描述

创建虚拟环境

在这里插入图片描述

conda create -n yolov5 python=3.8.5

在这里插入图片描述

安装pytorch(如果不会弄GPU的直接安装CPU版本)

安装CPU版本torch

conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cpuonly

安装GPU版本torch(以我个人为例:我的显卡是3060Ti,CUDA版本是11.7)

pip install torch==1.11.0+cu113 torchvision==0.12.0+cu113 torchaudio==0.11.0 --extra-index-url https://download.pytorch.org/whl/cu113

安装其他依赖库

pip install -r requirements.txt
pip install pyqt5==5.15.6
pip install pycocotools-windows==2.0.0.2

测试代码是否能跑

 python detect.py --source data/images/traffic_sign.jpg --weights runs/train/exp7/weights/best.pt

项目文件夹data/images/bus.jpg图片在识别前的样子
在这里插入图片描述

在这里插入图片描述

成功运行命令如上图显示信息所示:识别结果存在项目文件夹runs\detect\exp7文件中:
在这里插入图片描述

训练(可忽略)

接下来用pycharm打开项目,然后在Terminal中操作,输入以下命令

python train.py --data traffic_sign_data.yaml --cfg mask_yolov5s.yaml --weights pretrained/yolov5s.pt --epoch 100 --batch-size 4 

训练比较耗时,我给的项目压缩包中是已经训练好的了。所以训练的步骤可以跳过。

在这里插入图片描述
训练完成后模型评估结果:在模型训练完成后会在runs/train目录下生成一个exp文件里面包含了训练结果,以及一些评估指标。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

根据输出的识别结果可以知道,模型的准确率是非常的高!!!

运行GUI界面

在经过训练之后,打开"windows.py"这个代码,直接点击运行,结果如下所示:

在这里插入图片描述

在这里插入图片描述

http://www.lryc.cn/news/38044.html

相关文章:

  • Linux内核Thermal框架详解五、Thermal Core(4)
  • gcc 编译的过程
  • Hadoop入个门
  • python 从0到批量下载某站视频
  • 【深度学习】神经网络和深度学习--卷积和池化的作用
  • 锦正茂风冷系列电源JCP-10-80的技术参数
  • Idea+maven+spring-cloud项目搭建系列--11-1 dubbo(zookeeper,nacos)注册中心
  • Python3入门教程||Python3 迭代器与生成器||Python3 函数
  • 快速幂算法
  • Hudi:问题总结(2)Flink-1.13.1消费kafka并插入hudi
  • Application工具方法
  • 电脑游戏怎么录屏?其实很简单,只需要简单3步
  • 【设计模式】go语言中的 [函数选项,单例,工厂,责任链] 常用的设计模式
  • 2017系统分析师案例分析真题背记内容
  • C++和C的区别
  • 【React教程】一、React简介
  • 运动蓝牙耳机什么牌子好,比较好的运动蓝牙耳机推荐
  • [深入理解SSD系列 闪存实战2.1] NAND FLASH特性串烧 | 不了解闪存特性,你能用好闪存产品吗?
  • DJI ROS dji_sdk 源码分析|整体框架
  • HT32合泰单片机开发环境搭建和配置教程
  • 动态内存分配之伙伴算法
  • CGAL 根据扫描线方向和角度对法向量进行重定向
  • 一个C#开发的开源的快速启动工具
  • Paddle项目调试记录
  • 3月11日,30秒知全网,精选7个热点
  • C win32基础学习(四)
  • Java 日期时间API(Java 8及以上)
  • DHCP的配置
  • JavaWeb14-线程池
  • [qiankun+nuxt]子应用请求本地文件报错404