2015-08-17 2 views
0

Итак, каждый мой первый вопрос о stackoverflow. Я работаю с андроидом и openCV в течение месяца, и мне удалось успешно реализовать шаблон Matching. Теперь следующая задача - обнаружить все прямоугольники в изображении и получить координаты (я действительно хочу цвет каждого прямоугольника) для исследовательских целей. Незлая помощь. Я попытался использовать преобразование Hough с обнаружением canny edge, но, к сожалению, он не обнаруживает маленькие прямоугольники, которые сейчас являются главной проблемой.OpenCV android: распознавание прямоугольника преобразования Hough с изображением с несколькими прямоугольниками разного размера

Спасибо !! [! [Have обнаружить все прямоугольники, маленьких и больших

+0

http://i59.tinypic.com/2e4j1c6.jpg Ссылка для оригинального изображения – Maverick

+0

http://i62.tinypic.com/10fb9ub.png Ссылка на изображение после преобразования Hough. – Maverick

+1

2-е изображение - хитрый результат (вместо hough), правильно? посмотрите, что в вашем исходном изображении разница между маленькими прямоугольниками и фоном не так велика ... вам нужно выбрать меньшие пороги или попробовать canny на канале hsv h или sth. – Micka

ответ

0

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

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

Прокомментируйте код. В исследовательских целях я не могу отправлять анонимные сообщения.

+0

Пожалуйста, поделитесь своим кодом для обучения. – Zara

Смежные вопросы