Этот проект представляет собой систему обработки изображений для фото ловушек с использованием Gradio и FastAPI. Он позволяет автоматически детектировать и классифицировать объекты на изображениях, а также визуализировать результаты.
- Запуск проекта в контейнере на любых машинах
- Выбор видов животных для учета
- Детекция и определение видов на фотографии
- Визуализация результатов в удобном интерфейсе
- Скачивание результатов в формате CSV
-
Установите виртуальное окружение:
conda create -n animal_tracking python=3.9 -y conda activate animal_tracking pip install --upgrade pip # поддержка PEP 660
-
Установите необходимые библиотеки:
pip install -r requirements.txt
-
Запустите веб-интерфейс на
localhost:8000
:python3 src/main.py
-
Закиньте zip архив
data/test.zip
в инпут блок веб интерфейса. Или любой зип арзив такого формата:
.zip
├── camera_1
│ ├── IMG_0001.JPG
│ ├── IMG_0002.JPG
│ ├── IMG_0003.PNG
│ └── ...
└── camera_2
├── IMG_0016.JPG
├── IMG_0017.JPG
└── ...
-
Выполните команду в терминале:
docker compose up --build
-
При необходимости измените порты и переменные окружения в файле
docker-compose.yaml
.
DATA_FOLDER = os.getenv("DATA_FOLDER", "data") # папка для временных файлов
SPICES_FILE = os.getenv("SPICES_FILE", "src/env/spices.json") # файл с видами
BATCH_SIZE = int(os.getenv("BATCH_SIZE", 32)) # кол-во файлов одновременной обработки
YOLO_PATH = os.getenv("YOLO_PATH", "weights/yolo.pt") # путь к весам
animal_tracking
├── assests # Папка с ассетами, такими как изображения и другие статические файлы
├── data # Папка для хранения данных
├── weights # Папка с весами моделей
├── src # Исходный код проекта
│ ├── app
│ │ ├── gradio_app.py # Основной файл приложения Gradio
│ │ └── utils.py # Утилиты для приложения Gradio
│ ├── detection
│ │ ├── predict.py # Файл для предсказаний детекции
│ │ └── utils.py # Утилиты для детекции
│ ├── registration
│ │ ├── predict.py # Файл для регистрации
│ │ └── utils.py # Утилиты для регистрации
│ ├── env
│ │ ├── env.py # Файл для управления окружением
│ │ └── spices.json # Файл с видами животных
│ └── main.py # Главный файл для запуска приложения
├── docker-compose.yaml # Конфигурация для Docker Compose
├── dockerfile # Dockerfile для сборки образа
├── LICENSE # Лицензионный файл
├── makefile # Makefile для автоматизации задач
├── README.md # Файл с описанием проекта
└── requirements.txt # Список зависимостей проекта
- Участники могут открывать Pull Requests (PRs).
- Любая помощь в управлении issues и PRs очень ценится!
- Просим использовать google docstring.
- Выделять новые функции в отдельные модули.
Этот проект лицензирован под лицензией Apache 2.0. Подробности смотрите в файле LICENSE.
Для получения дополнительной информации и инструкций, пожалуйста, обратитесь к документации или создайте issue в репозитории.