Поиск подизображений в изображении - PullRequest
5 голосов
/ 27 февраля 2010

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

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

Поскольку я также разрабатываю карты для сканирования, я могу поставитьв любом символе или в чем-то, что облегчит обнаружение (как я уже говорил, ориентир)

Ответы [ 3 ]

2 голосов
/ 28 февраля 2010

Если ваш пример является репрезентативным (в чем я сомневаюсь по какой-то причине), то Hough transform - ваш друг (Google, у него много объяснений и кода). С его помощью вы сможете обнаружить прямоугольники.

Некоторые примеры преобразования Хафа в C #: http://www.koders.com/csharp/fid3A88BC1FF95FCA9D6A182698263A40EE7883CF26.aspx и http://www.shedletsky.com/hough/index.html

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

В качестве альтернативы вы можете реализовать бумагу http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.59.4239, в которой используется преобразование Хафа для непосредственного обнаружения прямоугольников без определения кромок.

Если я не понял вашу проблему или вам нужны пояснения, пожалуйста, отредактируйте ваш вопрос дальше и оставьте комментарий к этому ответу.

1 голос
/ 05 января 2011

Попробуйте AForge.NET (если вы используете C #). Он имеет DocumentSkewChecker, который будет рассчитывать угол поворота изображения.

0 голосов
/ 15 мая 2018

Вы можете попробовать ExhaustiveTemplateMatching класса AForge.Net

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...