Можно ли написать такой скрипт который анализируя растр может выявлять линии/границы полигонов которые неправильно нарисованы или отходят от допустимых значений?
Например на растре есть дом а скрипт мог бы анализировать и распознавать его тем самым определять полигоны которые не соответствуют растру? Интересует в принципе возможность таких манипуляций.
На рисунке полигон который в левом верхнем углу имеет несоответствие растру. Возможно ли автоматизировать выявление таких ошибок?
Скрипт для анализа растра
-
old_wolf_09
- Активный участник
- Сообщения: 105
- Зарегистрирован: 18 мар 2013, 22:59
- Репутация: 1
- Откуда: Казахстан
Скрипт для анализа растра
- Вложения
-
- 111.png (414.69 КБ) 4437 просмотров
-
Александр Мурый
- Гуру
- Сообщения: 5173
- Зарегистрирован: 26 сен 2009, 16:26
- Репутация: 792
- Ваше звание: званий не имею
- Откуда: Москва
Re: Скрипт для анализа растра
Здесь обычным скриптом не отделаешься. Понадобятся всякие хитрые операции с растрами (как, например, в этой статье описаны). Или вообще нужны библиотеки типа OpenCV.
Редактор материалов, модератор форума
-
old_wolf_09
- Активный участник
- Сообщения: 105
- Зарегистрирован: 18 мар 2013, 22:59
- Репутация: 1
- Откуда: Казахстан
Re: Скрипт для анализа растра
Прекрасный материал. Спасибо. Но как я понял точность не удовлетворяет требованиям. К сожалению это скорее всего применимо только к сельхоз землям и в городе эта методика просто запутается (хотя бы в тенях зданий). Надеюсь смогу найти выход. Если найду обязательно поделюсь тут. Спасибо еще раз за наводку.
-
gamm
- Гуру
- Сообщения: 4177
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1107
- Ваше звание: программист
- Откуда: Казань
Re: Скрипт для анализа растра
это точно не скрипт в QGIS, это нужно программировать. И лучше в ITK тыц, там есть все части - и нормальное выделение границ (а не только простейшие фильтры типа Собеля), и "натягивание" модели на снимок (по результатам смещения модели можно судить о качестве привязки). Примеры можно посмотреть в разделах Registration, а выделение границ и пр. - в разделах Segmentation тыц
один из простых вариантов - построить границы, нормализовать их сигмоидом, сделать дистанционное преобразование от модели здания, и посмотреть, чтобы в заданном коридоре были границы (например, проводя сечения, перпендикулярные границе - на них должен быть "валик"). По вершинам валика можно построить линию (робастным алгоритмом типа RANSAC), она даст новое положение границы.
один из простых вариантов - построить границы, нормализовать их сигмоидом, сделать дистанционное преобразование от модели здания, и посмотреть, чтобы в заданном коридоре были границы (например, проводя сечения, перпендикулярные границе - на них должен быть "валик"). По вершинам валика можно построить линию (робастным алгоритмом типа RANSAC), она даст новое положение границы.
-
old_wolf_09
- Активный участник
- Сообщения: 105
- Зарегистрирован: 18 мар 2013, 22:59
- Репутация: 1
- Откуда: Казахстан
Re: Скрипт для анализа растра
Огромное спасибо за совет. Прекрасные варианты решения но я не так силен в тематике. Не ругайте сильно но есть вопросы.gamm писал(а): один из простых вариантов - построить границы, нормализовать их сигмоидом, сделать дистанционное преобразование от модели здания, и посмотреть, чтобы в заданном коридоре были границы (например, проводя сечения, перпендикулярные границе - на них должен быть "валик"). По вершинам валика можно построить линию (робастным алгоритмом типа RANSAC), она даст новое положение границы.
Что значит "нормализовать их сигмоидом"? Где про это можно прочитать?
Как сделать "сделать дистанционное преобразование"?
Спасибо за помощь
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 25 гостей