Skip to content

DimYun/car-plate_service

Repository files navigation

Домашняя работа №2. Сервис

Сервис реализован на FastAPI и предназначен для выдачи результатов последовательной работы модели выделения автомобильного номера и модель распознования текста номера

Адрес для тестов

Документация и тестирование GET и POST запросов

В src/container_task.py лежит код двух классов:

  • Storage - умеет сохранять рассчитанные значения в *.json (позволяет "кешировать" результаты работы модели).
  • ProcessPlates - умеет загружать ONNX модели и определять текст автомобильного номера, после чего зовет Storage, чтобы тот сохранил контент.

В app.py лежит приложение FastAPI, у которого две ручки:

  1. get_content - возвращает контент по content_id.
  2. process_content - генерирует контент с помощью нейронной сети для переданного изображения.

Пример работы можно посмотреть в src/container_task.py

Настройка окружения

Сначала создать и активировать venv:

python3 -m venv venv
. venv/bin/activate

Дальше поставить зависимости:

make install

Команды

Подготовка

  • make install - установка библиотек

Запуск сервиса

  • make run_app - запустить сервис. Можно с аргументом APP_PORT

Сборка образа

  • make build - собрать образ. Можно с аргументами DOCKER_TAG, DOCKER_IMAGE

Статический анализ

  • make lint - запуск линтеров

Тестирование

  • make run_unit_tests - запуск юнит-тестов
  • make run_integration_tests - запуск интеграционных тестов
  • make run_all_tests - запуск всех тестов

About

FastAPI service for car plate segmentation and OCR

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published