Skip to content

Sjitar/SKUD_Avto

 
 

Repository files navigation

SKUD Avto

Image alt

Система контроля и управления доступом для автомобилей, с определением номеров и классификацией машин.

Описание проекта

Система предназначена для детекции и распознавания номеров обычных автомобилей, а также детекции автомобилей специального назначения (скорая, пожарная, полиция). Если к шлагбауму подъезжает обычный автомобиль, то система сверяет номер машины с его наличием в базе данных и предоставляет доступ при нахождении номера. При детекции спецавтотранспорта доступ предоставляется минуя базу данных с номерами.

Видеопрезентация работы системы

Image alt

https://youtu.be/_NTpVR3EmIg

Стек

  • Разпознавание автомобилей и номеров - нейросети YOLO (детекция и классификация) и ResNet18 (распознавание номера). Работает достаточно точно и быстро.
  • База данных - SQLite, SQLAlchemy.
  • Управление системы - сервер на Flask:
    • Вход по логину и паролю.
    • Просмотр видеопотока с камеры в режиме real-time.
    • Просмотр текущих номеров в базе данных, а также редактирование и удаление.
    • Просмотр логов со всеми вьездами.
    • Активные заявки на добавление новых номеров, получаемые из телеграм бота.
  • В качестве источника сигнала можно использовать любое устройство видеозахвата (ip-камера, веб-камера, видеозапись)
  • Telegram Bot для приема заявок

Слайды с работой проекта

Иллюстрация к проекту

Архитектура

Image alt

Нейросети

Image alt

Интерфейс

Image alt

Telegram Bot

Image alt

Installation

  1. Clone Project
git clone git@github.com:pavelorlovyeah/SKUD_Avto.git
cd SKUD_Avto
  1. Create env via conda with Python 3.7
conda create -n SKUD_Avto_Env python=3.7
  1. Install requirements_pavel.txt
pip install -r requirements_pavel.txt
  1. Models checkpoints model.zip must be downloaded and unzipped in data folder on local machine Image alt

  2. Start project with run.py

python3 run.py

Optionally

  1. If you want to change user login, password or telegram bot token, edit config.py

  2. If you want to run telegram bot you need in another terminal window run bot.py (don't forget insert bot token from BotFather in config.py)

python3 bot.py

Dataset

dataset.zip

About

Our team's graduation project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 89.5%
  • Jupyter Notebook 6.2%
  • C++ 2.4%
  • HTML 1.1%
  • Shell 0.5%
  • Dockerfile 0.3%