сопоставление шаблона с вращением - PullRequest
5 голосов
/ 27 января 2011

Мне нужно выполнить сопоставление с шаблоном на 360 градусов.

В основном это шаблон 80 * 120, а изображение - 640 * 480 оттенков серого (8 бит).

Для невращения я используюopencv cvmatchtemplate, который работает довольно хорошо.

Я попытался повернуть шаблон под разными углами и сделать cvmatchtemplate, он работает, но занимает слишком много времени.

Для обычного соответствия шаблону требуется 12 мс, идля 360 градусов требуется менее 50 мс.

Ответы [ 2 ]

4 голосов
/ 27 января 2011

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

Я думаю, что получить хороший результат на 360 градусов сложно. Шаблон должен быть изменен во время этого преобразования. Если оно было всего несколько градусов, вероятность его изменения меньше.

Взгляните на «Технику FFT для регистрации перевода, поворота и масштабирования с инвариантным изображением», Редди и Чаттерджи, IEEE.

0 голосов
/ 16 февраля 2011

Поиск в Google Scholar для «синтетических дискриминантных функций» или «составных корреляционных фильтров».Это хорошая отправная точка: http://www.opticsinfobase.org/abstract.cfm?URI=ao-31-23-4773. Если вы можете найти книгу " Распознавание корреляционных паттернов ", раздел 6.2 также объясняет составные фильтры.Вы берете шаблоны, созданные вращением ваших изображений, и генерируете один синтетический шаблон.Вы делаете это, формулируя систему линейных уравнений вида

Ax = c

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

Проблема заключается в том, что при объединении слишком большого количества шаблонов вы начинаете терять производительность сопоставления.Конечно, есть способы решить эту проблему, в зависимости от того, какая дополнительная информация у вас есть об изображениях, в которых вы планируете использовать синтетические шаблоны.

...