1. Descripción técnica
Lenguaje Python, TensorFlow, algoritmo CNN de red neuronal convolucional, interfaz PyQt5, marco Django, aprendizaje profundo
Contiene: código de predicción de entrenamiento, conjunto de datos, interfaz PyQt5 + interfaz web del marco Django
2. Hay códigos de entrenamiento y conjuntos de datos en la carpeta de predicción de entrenamiento.
3. carnum_check es la versión web de Django qt_check es la versión QT
4. Descripción de la versión:
TensorFlow usa la última versión 2.11.0, django usa la última versión 4.1.7, pyqt5 usa la última versión
5. Modelo: más de 10 000 imágenes en 25 iteraciones
El sistema de reconocimiento de matrículas utiliza la biblioteca de aprendizaje automático tensorflow como marco de construcción del modelo, utiliza la red neuronal convolucional CNN para construir el modelo y divide el conjunto de prueba y el conjunto de entrenamiento a través del procesamiento del conjunto de datos y obtiene el modelo entrenado a través de múltiples rondas de iteraciones, y luego el modelo Lleva a cabo el empaquetado y desarrolla un sistema de interfaz WEB para las operaciones del usuario, y finalmente se da cuenta de que el usuario ingresa una imagen de matrícula en la página WEB, y el sistema muestra la información de la matrícula (región Caracteres chinos, letras, números) en forma de ventana emergente. Al mismo tiempo, las imágenes ingresadas por el usuario, los resultados previstos y el tiempo de operación se almacenarán en la base de datos, y el administrador puede ver esta información dinámicamente en el sistema de gestión de fondo.
A continuación se explicará principalmente la realización de cada módulo de función de diseño de este sistema. Incluye la configuración del entorno del sistema, la interfaz de operación del sistema, la relación del módulo de función y el diagrama de flujo de operación del sistema, etc., y presenta el proceso de implementación de este sistema en detalle.
2. Configuración del entorno
En el diseño funcional y la implementación del sistema de reconocimiento de matrículas, para facilitar la visualización y proporcionar a los usuarios una buena plataforma de operación visual, el sistema utiliza la interfaz de la página web WEB como plataforma de operación y utiliza el cuaderno jupyter como la investigación del algoritmo plataforma. La configuración del entorno de desarrollo se muestra en la Tabla 1.1.
Tabla 1.1 Información de configuración del entorno de desarrollo
Configuración Nombre Parámetro Comentarios
CPUIntel(R) Core(TM) i5-8300H CPU8 core
Memoria 16GB Ninguna
Memoria 2GB Ninguna
Sistema operativoWindowsWindows10 versión
Este sistema utiliza Pycharm como software de desarrollo, utiliza Python como lenguaje de programación y crea un entorno de desarrollo en el sistema Windows. La información del paquete de terceros de Python se usa principalmente en este sistema: tensorflow es la versión 2.8.0 y Django es la versión 4.0.
3. La interfaz principal del sistema
La interfaz principal del sistema de reconocimiento de matrículas se divide en tres, la página de inicio de descripción del sistema, la página de detección de imágenes de entrada del usuario y la página de gestión de información de fondo de gestión
Al iniciar la aplicación Django, abra la página web e ingrese 127.0.0.1:8000 para ingresar a la página de inicio de la descripción del sistema. La página de inicio de descripción del sistema se muestra en la Figura 2.1.
Figura 2.1 Página de inicio del sistema
En la página de inicio del sistema, se usa el lenguaje HTML para construir el esqueleto de la página, el lenguaje CSS se usa para ajustar el estilo de la página y se muestran las principales funciones de introducción del sistema. Proporcionar a los usuarios una visión general del sistema, etc. El archivo index.html de la página de inicio del sistema se encuentra en la carpeta front-end de la plantilla.
Para permitir que los usuarios ingresen y carguen una imagen para predecir la información de la imagen, se diseña una página de detección en este sistema, y la imagen de la página se muestra en la Figura 2.2.
Figura 3.2 Diagrama de flujo del procesamiento de eventos de backend
Se definen cuatro clases de métodos en la vista de procesamiento de back-end, a saber, método de índice, método de verificación, método upload_img y método check_img. El método de índice es responsable de representar el evento de la página de inicio cuando el usuario hace clic en la página de inicio, el método de verificación es responsable de representar el evento de la página de detección cuando el usuario hace clic en la página de detección y el método upload_img es responsable de cargar la imagen de la matrícula. ingresado por el usuario en la ubicación de la carpeta especificada. Los principales pasos de implementación de este método son los siguientes: 1. El usuario hace clic en el botón cargar imagen, selecciona una imagen y hace clic en cargar. 2. Active el evento de carga en JavaScript Al obtener el ID del botón cargado por el usuario, extraiga la imagen cargada por el usuario para formar un objeto y guárdela en una variable. 3. Inicie una solicitud POST al backend y transmita información variable de la imagen. 4. El backend llama a métodos como with para guardar la información de la imagen en la carpeta de medios y devuelve la información de la URL de la imagen. 5. Después de que el front-end recibe la información de URL de la imagen, cambia el atributo de etiqueta IMG de imagen predeterminado y lo muestra. El diagrama de flujo de carga de imágenes se muestra en la Figura 3.3 a continuación.
5. Realización del módulo de algoritmo
Este módulo implementa principalmente la parte de formación del modelo del sistema de reconocimiento de matrículas. Mediante el procesamiento del conjunto de datos, la construcción de un modelo de red, el entrenamiento iterativo y otras etapas, finalmente se obtiene un modelo de predicción preciso. Su diagrama de flujo general se muestra en la Figura 4.1.
Figura 4.1 Diagrama de flujo general del módulo del algoritmo
Un buen modelo primero debe proporcionar un buen conjunto de datos.Este sistema utiliza un conjunto de datos de matrículas de código abierto, que contiene 13675 imágenes. La figura 4.2 es parte de la información de la imagen que se muestra en jupyter notebook. Como se muestra en la Figura 4.3, es una imagen parcial del conjunto de datos descargado en esta máquina.
En la última figura 4.10, se puede ver que después de 25 rondas de entrenamiento, la precisión de la predicción aumentó de 0,06 en la primera ronda a 0,57, y la precisión aumentó 100 veces. Los modelos tienen cierta viabilidad. Luego, dibuje la curva ACC y la curva de Pérdida durante el entrenamiento del modelo como se muestra en la Figura 4.11.
Figura 4.11 Curvas ACC y LOSS durante el entrenamiento
Finalmente, guarde el modelo de entrenamiento como el modelo H5 y personalice una imagen para la predicción, como se muestra en la Figura 4.12.
Otros elementos de estudio:
Sistema de gestión de control de acceso de reconocimiento facial OpenCV+dlib Lenguaje Python, dlib, OpenCV, Pyqt5, base de datos sqlite3
Sistema de gestión de asistencia de reconocimiento facial OpenCV+dlib Lenguaje Python, dlib, OpenCV, Pyqt5, base de datos sqlite3
Sistema de reconocimiento facial OpenCV+dlib Lenguaje Python, dlib, OpenCV, Pyqt5, base de datos sqlite3
Frasco+algoritmo de recomendación doble de música LSTM + rastreador + sistema de visualización (aprendizaje profundo)
Frasco+algoritmo de doble recomendación de películas LSTM + rastreador + sistema de visualización (aprendizaje profundo)
Flask+LSTM algoritmo de doble recomendación de reclutamiento + rastreador + sistema de visualización (aprendizaje profundo)
Seguimiento de vehículos de carretera deepsort + sistema de análisis de velocidad en tiempo real
Reconocimiento de matrículas + gestión de vehículos + sistema de facturación
Sistema de reconocimiento de matrículas 2023 (marco Django + red neuronal convolucional CNN + interfaz PyQt5)
Sistema de reconocimiento de matrículas basado en red neuronal convolucional
Sistema de reconocimiento de matrículas 1
Sistema de reconocimiento de matrículas 2
Reconocimiento de matrículas OCR YOLOv5
Sistema de asistencia presencial para empleados
Sistema de reconocimiento de animales basado en Django
Reconocimiento de objetivos UAV + seguimiento de objetivos (OpenCV+YOLO)
Reconocimiento facial OpenCV marco de detección de rostros pyqt5, gestión de rostros
Algoritmo de detección de objetivos YOLO Pytorch de detección de objetivos en tiempo real
plataforma de detección de objetivos pyqt5+yoloV5
ratón con control de gestos
volumen de control de gestos
Gestos para arrastrar y soltar objetos
Sistema de gestión de asistencia inteligente de reconocimiento facial basado en opencv
Sistema de asistencia e inicio de sesión de reconocimiento facial de Python (opencv+pyqt5)
Sistema de restauración de fotos antiguas basado en aprendizaje profundo
Visualización de relación de caracteres y sistema de preguntas y respuestas Gráfico de conocimiento Relación de caracteres
Python+Django realiza el sistema de gestión de control de acceso basado en el reconocimiento facial
Inicio de sesión de reconocimiento facial de Python
Aprendizaje profundo de Python: reconocimiento del clima
aprendizaje profundo de python - reconocimiento facial
Aprendizaje profundo de Python: detección de atención
Aprendizaje profundo de Python: reconocimiento de código de verificación
Aprendizaje profundo de Python: clasificación y reconocimiento de basura
Aprendizaje profundo de Python: reconocimiento de escritura a mano
Aprendizaje profundo de Python: reconocimiento de señales de tráfico
Aprendizaje profundo de Python: reconocimiento de mascotas
Aprendizaje profundo de Python: clasificación de vehículos
Aprendizaje profundo de Python: reconocimiento de productos básicos
Aprendizaje profundo de Python: sistema de reconocimiento
Aprendizaje profundo de Python: reconocimiento de aves
aprendizaje profundo de python - reconocimiento facial
Aprendizaje profundo de Python: detección de atención
Aprendizaje profundo de Python: reconocimiento de frutas
Aprendizaje profundo de Python: clasificación de basura
Aprendizaje profundo de Python: reconocimiento de dígitos escritos a mano
Aprendizaje profundo de Python: reconocimiento de gestos
Aprendizaje profundo de Python - reconocimiento de máscara
Aprendizaje profundo de Python: clasificación de noticias
Aprendizaje profundo de Python: reconocimiento de matrículas
Proyecto Django, proyecto Flask, aprendizaje automático, análisis de datos, big data, proyecto Java (casi mil conjuntos de código fuente del proyecto, todos los cuales se pueden compartir y aprender)