Найти степень вращения объекта с помощью двумерной перекрестной корреляции - PullRequest
0 голосов
/ 06 июля 2018

[фон]

Я изучаю двумерные взаимные корреляции (2DCC), чтобы найти, как их можно применить к моему текущему проекту. Мой текущий проект заключается в создании эффективного метода для определения смещения и поворота объекта на 2D-поверхности.

Для этого я выполнил следующий эксперимент в своей программной среде.

[Эксперимент]

  1. У меня есть одно изображение размером 1024x1024 с уткой, расположенной в центре.
    1024x1024 изображение с уткой в ​​центре

  2. У меня есть еще одно изображение размером 1024x1024 с уткой, расположенной не в центре и повернутой 1024x1024 изображение с уткой в ​​752, повернуто 336, 123

  3. Затем примените два изображения к двумерной взаимной корреляции.
    Я получил следующую амплитуду, и ее пиковый индекс взаимной корреляции почти совпадает со смещением утки моего второго изображения.
    результат амплитуды 2D кросс-корреляции

  4. С другой стороны, значение фазы в индексе соответствующего пика амплитуды не соответствует повороту утки моего 2-го изображения. Ожидаемое значение фазы составляет 123 [градуса], как видно на 2-м изображении, но фактическое значение очень мало.
    фазовый результат 2D кросс-корреляции

[Вопрос]

Является ли двумерная взаимная корреляция правильным подходом для восстановления степени утки при вращении в этой ситуации?

1 Ответ

0 голосов
/ 06 июля 2018

Кросс-корреляция только дает сдвиг. Что он делает, так это сравнивает два изображения во всех возможных переводах.

Вы вычислили взаимную корреляцию через область Фурье и получили результат, который имеет очень маленькие мнимые значения. Это результат численных неточностей, и их следует игнорировать. Взаимная корреляция двух вещественных сигналов (или изображений) является действительным сигналом (или изображением).

Чтобы найти вращение, вам, вероятно, стоит заглянуть в преобразование Фурье-Меллина .

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