Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Алгоритмы > Найти рамку на изображении


Автор: MoebiusCat 12.7.2012, 11:28
Есть цветное изображение, на котором присутствует жирная чёрная рамка, а в ней какой-то текст (например, как некрологи в газетах, или ещё предостережения о вреде курения на сигаретных пачках) . Нужно найти эту самую рамку и что-то сделать с текстом. С текстом у меня проблем не возникает, а как решить такую, вроде бы, элементарную проблему, как поиск рамки, до меня не доходит  smile 
Заранее благодарна

Автор: _Y_ 12.7.2012, 11:36
Ну если рамка черная, а изображение полутоновое или цветное, то посто проводите бинаризацию изображения с границей где-то совсем рядом с черным. Остается рамка и пара-тройка точек-пятнышек в поле остального изображения. Выбираете самое большое черное пятно - это и будет рамка.

Если изображение цветное - сначала конвертируете в полутоновое.

Еще можно искать формы - рамка-то прямоугольная наверное.

Автор: MoebiusCat 12.7.2012, 11:48
Цитата

Выбираете самое большое черное пятно - это и будет рамка.

Не, это не тот случай. Там хватает чёрных\тёмных фрагментов.

Цитата

Еще можно искать формы - рамка-то прямоугольная наверное.

А как ищут формы?

Автор: Pavia 12.7.2012, 16:11
MoebiusCat, 
Много как:
1)Преобразования Хафа.
2)Моменты.
3)Анализ контуров.
4)Нейронные сети.
5)Корреляция (лучше фазовая). Сюда же поиск по шаблону, метод лучшего наложения.

Общая теория распознавания.  Выделить признаки потом классифицировать эти признаки. 

Автор: _Y_ 13.7.2012, 17:25
Цитата(MoebiusCat @  12.7.2012,  11:48 Найти цитируемый пост)
А как ищут формы?

http://forum.vingrad.ru/index.php?showtopic=314777&view=findpost&p=2246148.
Я сейчас в отпуске, а книжка валяется на работе, кажется. Но там это точно есть и очень хорошо расписано (просто, кратко, по делу). Проверял сам - работает прекрасно даже на движущихся объектах обозреваемых вебкамерой.

Кстати, если рамка прямоугольная и горизонтально-вертикальная, можно наверное и тупо как-нибудь ее найти.

Автор: Pavia 14.7.2012, 00:55
_Y_, 
А подробнее можно? 
Книгу пролистал там обычные рецепты как и везде. При этом довольно поверхностно описаны. 

Автор: _Y_ 16.7.2012, 09:38
Pavia, там глава 4.3. 

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

Добавлено через 3 минуты и 37 секунд
Если рамка горизонтально- вертикальная, то можно, наверное, выделять черные прямоугольники и из них строить рамку.

Или еще вариант - находить грубенько внутреннюю и внешнюю границы рамки и аппроксимировать их прямоугольниками.

Автор: radistor 16.7.2012, 19:45
Если рамка с текстом распологается на каком то светлом фоне, то можно найти внешние углы рамки. И по углам построить прямые. Будем считать, что толщина рамки известна. При этом рамка может располагаться, практически, произвольным образом и не быть прямоугольной.

Автор: mrgloom 17.7.2012, 12:13
преобразование хафа-> пересечение 4-х линий.
или
бинаризовать->найти контуры->отфильтровать контуры по ограничениям на 4 прямых угла и по размерам например.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)