Spaces:
Build error
Build error
| 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 выполните следующие шаги: | |
| 1. **Убедитесь, что у вас установлен Docker.** | |
| 2. **Скачайте Docker-образ:** | |
| ```bash | |
| docker pull danielnru/plan_points | |
| ``` | |
| 3. **Запустите контейнер:** | |
| Если у вас доступен GPU, используйте команду: | |
| ```bash | |
| docker run --gpus all -p 7860:7860 danielnru/plan_points | |
| ``` | |
| Если GPU не используется, запустите контейнер так: | |
| ```bash | |
| docker run -p 7860:7860 danielnru/plan_points | |
| ``` | |
| 4. **Откройте приложение в браузере:** | |
| После успешного запуска контейнера откройте браузер и перейдите по адресу: | |
| ``` | |
| http://localhost:7860 | |
| ``` | |
| Здесь вы сможете воспользоваться Gradio-интерфейсом для загрузки изображений и получения результатов детекции комнат. | |
| ### Развертывание на Hugging Face Spaces | |
| Проект уже настроен для работы на Hugging Face Spaces. Для развертывания: | |
| 1. Клонируйте репозиторий: | |
| ```bash | |
| git clone https://huggingface.co/spaces/DanielNRU/plan_points | |
| ``` | |
| 2. Добавьте или обновите файл `app.py` и `requirements.txt` (если необходимо). | |
| 3. Разместите файл `model.pt` в корневой директории. | |
| 4. Закоммитьте и запушьте изменения: | |
| ```bash | |
| 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](requirements.txt). | |
| ## Контакты | |
| **Разработчик:** | |
| Мельник Даниил Владимирович | |
| [GitHub: DanielNRU](https://github.com/DanielNRU) | |
| [Hugging Face: DanielNRU](https://huggingface.co/DanielNRU) |