Прототип системы для извлечения геометрии стен из растровых изображений планов этажей.
Решение использует гибридный подход, сочетающий DL для семантического анализа и CV для точного извлечения геометрии.
1. Предварительная обработка и шумоподавление:
2. Сегментация (обнаружение стен):
3. Векторизация:
4. Экспорт: Форматирование данных в требуемую структуру.
Инструменты
OpenCV: Выбран для геометрических операций.
В задачах чертежей классические алгоритмы дают более прямые линии, чем "грязные" маски сегментационных нейросетей, без дообучения.
EasyOCR : DL модель использована для фильтрации неграфических данных. Позволяет соблюсти требование гибридного подхода без необходимости обучения/дообучения моделей.
Слабые места текущей реализации
Изогнутые стены: Алгоритм ищет прямые линии. Изогнутые стены будут реализованы, как набор коротких отрезков.
При наличии времени можно заменить CV на UNet-подобную модель и обучить ее
Можно реализовать сохранение изображения, где поверх оригинала отрисовываются найденные линии
Как запускать:
Устанавливаем библиотеки и паеты. Я работаю на Linux. Команда "pip install -r requirements.txt"
Создаем директорию "images/" и в нее сохраняем изображения