Jump to content
Compvision.ru
KAIIUK

Нахождение контуров зданий на снимке с космоса

Recommended Posts

Доброго дня форумчане. Поздравляю с обновлением сайта). Помогите советом, как получить контура с фото, приложенных. То что получается у меня тоже прилагаю, но результат крайне неудовлетворителен.Так же необходимо убрать лишний шум(остатки дорог и прочее). Заранее благодарен.

cnt.png

masked_imaeg.png

spi.jpg

Share this post


Link to post
Share on other sites

А как насчет чисто программерского решения: взять туже область карты в векторном представлении, дернуть из неё маску для нужных объектов, а потом эту маску уточнить уже по фотографии?

Share this post


Link to post
Share on other sites

Самый простой вариант это отфильтровать контуры по моментам и по площади.

Почитаю, попробую что то сделать. Спсибо.

А как насчет чисто программерского решения: взять туже область карты в векторном представлении, дернуть из неё маску для нужных объектов, а потом эту маску уточнить уже по фотографии?

Немного не понял. Если бы были примеры в виде кода, ссылки или фото, был бы признателен.

Тут к зданиям зацепляются куски асфальта и прочего, поэтому не получается выделить четкий контур, а выделение четкого контура очень важно.

Share this post


Link to post
Share on other sites

Bes видимо имел ввиду: если эта фотография взята с карт гугла или яндекса, то взять туже область в векторном виде (у гугла это "карта") и там уже все размечено. 

Ну, а вот так взять и автоматически разметить здания по фотографии с применимой ошибкой, мне кажется это не решаем задача. 

Share this post


Link to post
Share on other sites

Задача решаемая, Вы ведь можете найти здания :), значит информации достаточно. Другое дело вычислительные затраты на это.

Вот посмотрите такую штуку:

http://cs.stanford.edu/people/karpathy/rcnn/

Ее ведь можно и на здания натаскать.

 

Можно также сначала применить любой другой детектор, Виолы-Джонса, SVM+HOG, ... получите набор областей для дальнейшей обработки.

Затем применить уже контурную сегментацию, сегментацию по цвету, ну и т.д.

Дороги и многие другие лишние объекты должны отсеяться.

Edited by Smorodov

Share this post


Link to post
Share on other sites

Bes видимо имел ввиду: если эта фотография взята с карт гугла или яндекса, то взять туже область в векторном виде (у гугла это "карта") и там уже все размечено. 

Ну, а вот так взять и автоматически разметить здания по фотографии с применимой ошибкой, мне кажется это не решаем задача. 

Да, это я и имел в виду. взять разметку с веторной карты, а потом прогнать по необходимым регионам еще какой-нибудь алгоритм типа водораздела, чтобы границы на фотоснимке уточнить.

Share this post


Link to post
Share on other sites

Задача решаемая, Вы ведь можете найти здания :), значит информации достаточно. Другое дело вычислительные затраты на это.

Вот посмотрите такую штуку:

http://cs.stanford.edu/people/karpathy/rcnn/

Ее ведь можно и на здания натаскать.

 

Можно также сначала применить любой другой детектор, Виолы-Джонса, SVM+HOG, ... получите набор областей для дальнейшей обработки.

Затем применить уже контурную сегментацию, сегментацию по цвету, ну и т.д.

Дороги и многие другие лишние объекты должны отсеяться.

RCNN это вещь, но пока что поджимают сроки и она позволит определить лишь область, а нужно выделить именно контур здания) Области со зданиями выделяются же.

Share this post


Link to post
Share on other sites

Ну я несколько иное выделение имел здесь ввиду.

Выделение прямоугольником, как результат работы детектора.

Если прямоугольные области совместить с полученной Вами маской, то дороги, лес и т.д. автоматически будут исключены.

Share this post


Link to post
Share on other sites

можно задачу сегментации решать как задачу классификации каждого скользящего окна.

 

хотя вот в оригинальном пейпере по R-CNN пишут про semantic segmentation.

Но сдается мне это больше для чего то типа Pascal VOC, а тут это оверкил. 

 

Предлагаю изначально попробовать простой подход с готовой тулзой:

http://fiji.sc/Trainable_Weka_Segmentation

 

 

Share this post


Link to post
Share on other sites

Я думаю HOG+SVM или Haar+AdaBoost здесь могут быть довольно эффективны.

Особенность изображений зданий на виде сверху, это наличие большого количества ортогональных друг другу граней.

Это будет давать на гистограмме градиентов характерную картинку (шаг 90 градусов между пиками).

Edited by Smorodov

Share this post


Link to post
Share on other sites

Ну я несколько иное выделение имел здесь ввиду.

Выделение прямоугольником, как результат работы детектора.

Если прямоугольные области совместить с полученной Вами маской, то дороги, лес и т.д. автоматически будут исключены.

Дороги сейчас меньшая из проблем, а вот куски оставшиеся рядом со зданиями портят все контура. Возможно ли что то сделать с промежуточным результатом, который имеем?(отделить дома от лишних кусов рядом с ними)

Я думаю HOG+SVM или Haar+AdaBoost здесь могут быть довольно эффективны.

Особенность изображений зданий на виде сверху, это наличие большого количества ортогональных друг другу граней.

Это будет давать на гистограмме градиентов характерную картинку (шаг 90 градусов между пиками).

т.е HOG обучить на здания?

Share this post


Link to post
Share on other sites

Сложно сказать, можно попробовать GrabCut или LevelSet сегментацию, с начальным приближение по найденной Вами маске, но это не быстрые методы.

ЗЫ: Да, я думаю HOG (обученный на здания) должен неплохо справляться.

Edited by Smorodov

Share this post


Link to post
Share on other sites

Сложно сказать, можно попробовать GrabCut или LevelSet сегментацию, с начальным приближение по найденной Вами маске, но это не быстрые методы.

ЗЫ: Да, я думаю HOG (обученный на здания) должен неплохо справляться.

Скорость методов на данный момент не имеет значения, сейчас поищу инфу про методы сегментации, мб подойдут.

Share this post


Link to post
Share on other sites

Одна из реализаций LevelSet есть на форуме.

GrabCut стандартный метод, встроенный в opencv.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Recently Browsing   0 members

    No registered users viewing this page.

×