Spaces:
Running
A newer version of the Gradio SDK is available:
5.21.0
title: Plan Points
emoji: 🏃
colorFrom: gray
colorTo: pink
sdk: gradio
sdk_version: 5.18.0
app_file: app.py
pinned: false
license: apache-2.0
short_description: Получение координат углов на изображениях планов помещений
Plan Points - Детекция комнат по плану помещения
Описание проекта
Plan Points — это проект, который преобразует планы помещений в координаты опорных точек (углов). С использованием предобученной модели YOLO и Gradio, приложение позволяет:
- Загружать изображение плана помещения
- Выполнять детекцию объектов класса "room"
- Выводить аннотированное изображение с наложенными полигонами
- Отображать список координат углов для каждой обнаруженной комнаты
Особенности
- Детекция комнат: Использование модели YOLO для выявления помещений на плане.
- Упрощение полигона: Оптимизация набора точек для выделения действительных углов комнат.
- Gradio-интерфейс: Удобное веб-приложение для демонстрации работы модели.
- Интеграция с Hugging Face Spaces: Легкое развертывание проекта в облаке.
Быстрый старт
Локальный запуск с использованием Docker
Для запуска приложения локально через Docker выполните следующие шаги:
Убедитесь, что у вас установлен Docker.
Скачайте Docker-образ:
docker pull danielnru/plan_points
Запустите контейнер:
Если у вас доступен GPU, используйте команду:
docker run --gpus all -p 7860:7860 danielnru/plan_points
Если GPU не используется, запустите контейнер так:
docker run -p 7860:7860 danielnru/plan_points
Откройте приложение в браузере:
После успешного запуска контейнера откройте браузер и перейдите по адресу:
http://localhost:7860
Здесь вы сможете воспользоваться Gradio-интерфейсом для загрузки изображений и получения результатов детекции комнат.
Развертывание на Hugging Face Spaces
Проект уже настроен для работы на Hugging Face Spaces. Для развертывания:
- Клонируйте репозиторий:
git clone https://huggingface.co/spaces/DanielNRU/plan_points
- Добавьте или обновите файл
app.py
иrequirements.txt
(если необходимо). - Разместите файл
model.pt
в корневой директории. - Закоммитьте и запушьте изменения:
git add . git commit -m "Обновление приложения" git push
После сборки ваш Space будет доступен по соответствующему URL.
Структура проекта
.
├── app.py # Основное приложение Gradio
├── model.pt # Файл весов модели YOLO
├── requirements.txt # Зависимости Python
└── README.md # Описание проекта
Зависимости
Проект использует следующие Python-библиотеки:
- gradio – для создания веб-интерфейса
- opencv-python-headless – для работы с изображениями
- numpy – для математических операций
- ultralytics – для работы с моделью YOLO
- torch и torchvision – для работы с deep learning моделями
Все зависимости перечислены в файле requirements.txt.
Контакты
Разработчик:
Мельник Даниил Владимирович
GitHub: DanielNRU
Hugging Face: DanielNRU