Skip to content

这是一个基于YOLOv5🚀的道路标志识别系统😊,使用了MySQL数据库💽,PyQt5进行界面设计🎨,PyTorch深度学习框架和TensorRT进行加速⚡,同时包含了CSS样式🌈。系统由五个主要模块组成:系统登录模块🔑负责用户登陆;初始化参数模块📋提供YOLOv5模型的初始化参数设置;标志识别模块🔍是系统的核心,负责对道路标志进行识别并将结果导入数据库;数据库模块💾包含基本数据库操作和数据分析两个子模块;图像处理模块🖼️负责单个图像的处理和数据增强。整个系统支持多种数据输入和模型切换,提供了包括mossic和mixup在内的图像增强方法📈。

Notifications You must be signed in to change notification settings

wuhongyyyy/Traffic-Sign-Recognition-PyQt5-YOLOv5-GUI

 
 

Repository files navigation

Road Sign Recognition Project Based on YOLOv5 (YOLOv5 GUI)

English | 简体中文

训练策略

This is a road sign recognition project based on YOLOv5, developed with a PyQt5 interface, YOLOv5 trained model, and MySQL database. The project consists of five modules: parameter initialization, sign recognition, database, data analysis, and image processing(Please refer to the Chinese document for details). 00013.jpg

Screenshots

  • Sign Recognition Module

    img.png
  • Image Processing and Data Augmentation Module

    img_1.png
  • Parameter Initialization Module

    img_2.png
  • Database Module

    img_3.png
  • Data Analysis Module

    img_4.png
  • Login Interface

    img_5.png

Video Demo

Road Sign Recognition System Based on YOLOV5

Getting Started

Run main.py.

Account and Password

Here are the default login credentials:

Username Password
admin 123456
1 2

Modify the main function in main.py to enter the system directly without authentication.

Project Structure

  • pt folder: Contains the YOLOv5 model file best.pt for road sign recognition.
  • main_with folder: Contains login.py for the login UI and win.py for the main UI.
  • dialog folder: Contains the RTSP pop-up interface.
  • apprcc_rc.py: The resource file for the project.
  • login_ji.py: Implements the login logic for the UI.
  • run/run-exp52: The YOLOv5 road sign recognition model trained for 300 epochs.
  • utils/tt100k_to_voc-main folder: Tool for converting JSON annotations to YOLO format.
  • result: Folder to save inference results.
  • run: Folder to save training logs and outputs.
  • Dataset: Download from TT100k : Traffic-Sign Detection and Classification in the Wild.
  • Database files: Located in the data folder, see -regn_mysql.sql for setup.

Install Dependencies

To install the required dependencies, run:

pip install -r requirements.txt

Attention

This project uses YOLOv5 v6.1.

For database connections, you need to set up your MySQL database as per the configurations below:

def get_db_connection():
    return pymysql.connect(
        host='localhost',
        user='root',
        password='123456',
        database='traffic_sign_recognition'
    )

There are two identical database links in the code that need to be modified, please check the database sql file under the data folder to establish the test database

Acknowledgements

  • For converting the TT100K dataset to VOC format and selecting more than 100 images and XMLs for each category, see this CSDN blog post.
  • The PyQt5-YOLOv5 integration was inspired by this GitHub repository.

Star History

Track the GitHub star history of this project:

Star History Chart

About

这是一个基于YOLOv5🚀的道路标志识别系统😊,使用了MySQL数据库💽,PyQt5进行界面设计🎨,PyTorch深度学习框架和TensorRT进行加速⚡,同时包含了CSS样式🌈。系统由五个主要模块组成:系统登录模块🔑负责用户登陆;初始化参数模块📋提供YOLOv5模型的初始化参数设置;标志识别模块🔍是系统的核心,负责对道路标志进行识别并将结果导入数据库;数据库模块💾包含基本数据库操作和数据分析两个子模块;图像处理模块🖼️负责单个图像的处理和数据增强。整个系统支持多种数据输入和模型切换,提供了包括mossic和mixup在内的图像增强方法📈。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%