Files
coursework-image-recognitio…/README.md

68 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Распознавание образов на Python с использованием CNN
Курсовая работа по дисциплине
**«[указать название дисциплины]»**
---
## 📌 Описание проекта
Данный проект представляет собой программную реализацию системы **распознавания образов**
(рукописных цифр) с использованием **сверточной нейронной сети (CNN)** на языке программирования **Python**.
В рамках работы реализовано:
- обучение нейронной сети на датасете **MNIST**,
- сохранение и повторное использование обученной модели,
- графический пользовательский интерфейс (GUI) на базе **Tkinter**,
- визуализация результатов обучения (графики, метрики),
- демонстрация процесса распознавания пользовательского ввода.
Проект разработан в рамках выполнения курсовой работы и предназначен для учебных и демонстрационных целей.
---
## 🎯 Цель и задачи работы
### Цель работы
Разработка программного приложения для распознавания образов с применением методов машинного обучения и нейронных сетей на языке Python.
### Задачи работы
- изучить теоретические основы распознавания образов;
- рассмотреть архитектуру сверточных нейронных сетей;
- реализовать CNN-модель для распознавания рукописных цифр;
- обучить модель на наборе данных MNIST;
- разработать графический интерфейс пользователя;
- провести тестирование и анализ результатов распознавания.
---
## 🧠 Используемые технологии
- **Язык программирования:** Python 3
- **Машинное обучение:** PyTorch
- **Нейронные сети:** сверточная нейронная сеть (CNN)
- **Графический интерфейс:** Tkinter
- **Обработка изображений:** Pillow
- **Визуализация:** Matplotlib
---
## 🗂 Структура проекта
```text
raspoznavanie-obrazov-python-cnn/
├── app.py # Графический интерфейс (Tkinter)
├── model.py # Архитектура CNN
├── train.py # Обучение модели и сохранение артефактов
├── preprocess.py # Предобработка изображений
├── utils.py # Вспомогательные функции (логирование, графики)
├── requirements.txt # Зависимости проекта
├── artifacts/ # Результаты обучения
│ ├── mnist_cnn.pt # Обученная модель
│ ├── metrics.json # Метрики обучения
│ ├── training_plot.png # График loss и accuracy
│ └── train.log # Лог обучения
└── data/ # Данные MNIST (загружаются автоматически)