Spaces:
Running
Running
File size: 4,866 Bytes
42955e2 d2ab6f5 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
---
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) |