当前位置:   article > 正文

基于python车牌识别系统 Django框架 深度学习 CNN算法 MySQL数据库(源码+文档) ✅_车牌识别数据库

车牌识别数据库

博主介绍:✌全网粉丝10W+,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久,选择我们就是选择放心、选择安心毕业✌感兴趣的可以先收藏起来,点赞、关注不迷路✌

毕业设计:2023-2024年计算机毕业设计1000套(建议收藏)

毕业设计:2023-2024年最新最全计算机专业毕业设计选题汇总

1、项目介绍

1、关键词:
Python语言、TensorFlow、卷积神经网络CNN算法、PyQt5界面、Django框架、深度学习
包含:训练预测代码、数据集、PyQt5界面+Django框架网页界面
2、训练预测文件夹中有训练代码以及数据集
3、carnum_check是Django网页版 qt_check是QT版
4、版本说明:
TensorFlow用最新版2.11.0 、 django使用最新版4.1.7、pyqt5使用最新版
5、模型: 25轮迭代1万多张图片

2、项目界面

(1)系统首页
在这里插入图片描述

(2)上传图片进行识别检测
在这里插入图片描述
(3)检测识别结果

在这里插入图片描述
(4)识别记录 后台管理
在这里插入图片描述

(5)设计文档
在这里插入图片描述

3、项目说明

1、关键词:
Python语言、TensorFlow、卷积神经网络CNN算法、PyQt5界面、Django框架、深度学习
包含:训练预测代码、数据集、PyQt5界面+Django框架网页界面
2、训练预测文件夹中有训练代码以及数据集
3、carnum_check是Django网页版 qt_check是QT版
4、版本说明:
TensorFlow用最新版2.11.0 、 django使用最新版4.1.7、pyqt5使用最新版
5、模型: 25轮迭代1万多张图片

车牌识别系统,通过机器学习库tensorflow作为模型构建框架,使用CNN卷积神经网络构建模型,并通过对数据集的处理划分测试集和训练集,通过多轮迭代得到训练好的模型,再将模型进行封装,并开发一个WEB界面系统用于用户的操作,最后实现用户在WEB页面中输入一张车牌图片,系统以弹窗的形式显示该车牌的信息(地区汉字、字母、数字)。同时用户输入的图片、预测的结果、操作的时间都会保存在数据库中,并实现管理员在后台管理系统中可以动态查看这些信息。
下面将主要说明本系统各设计功能模块的实现。其中包括系统环境配置,系统运行界面、功能模块关系以及系统运行流程图等,详细介绍本系统实现过程。

本模块主要实现对车牌识别系统中模型训练部分。通过对数据集的处理,搭建网络模型,迭代训练等阶段最后得到一个精准的预测模型。其总体流程图如图所示。

在这里插入图片描述

4、核心代码


# -*- coding: utf-8 -*-
# FileName  : image_check.py
import tensorflow as tf
from .conf import model_path
import numpy as np

char_enum = ["京", "沪", "津", "渝", "冀", "晋", "蒙", "辽", "吉", "黑", "苏", "浙", "皖", "闽", "赣", "鲁", "豫", "鄂", "湘", "粤", "桂",
             "琼", "川", "贵", "云", "藏", "陕", "甘", "青", "宁", "新", "军", "使"]
model = tf.keras.models.load_model(model_path)

number = [str(i) for i in range(0, 10)]  # 0 到 9 的数字
alphabet = [chr(i) for i in range(65, 91)]  # A 到 Z 的字母

char_set = char_enum + number + alphabet


def vec2text(vec):
    """
    还原标签(向量->字符串)
    """
    text = []
    for i, c in enumerate(vec):
        text.append(char_set[c])
    return "".join(text)


def load_and_preprocess_image(path):
    image = tf.io.read_file(path)
    image = tf.image.decode_jpeg(image, channels=1)
    image = tf.image.resize(image, [50, 200])
    image = tf.cast(image, tf.float32)
    return image


def check_handle(img_path):
    test_img = img_path
    test_tensor = load_and_preprocess_image(test_img)
    test_tensor = tf.expand_dims(test_tensor, axis=0)
    pred = model.predict(test_tensor)
    pred_num = np.argmax(pred, axis=2)[0]
    result = vec2text(pred_num)
    return result



  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/732152
推荐阅读
相关标签