Преобразование Фурье и дескрипторы Фурье для извлечения функций фигур на Java

Я пытаюсь построить простую систему для распознавания простых форм, используя дескрипторы Фурье: Я использую эту реализацию быстрого преобразования Фурье в моей программе: (ссылка ниже)
http://www.wikijava.org/wiki/The_Fast_Fourier_Transform_in_Java_%28part_1%29

<code>fft(double[] inputReal, double[] inputImag, boolean direction)
</code>

входные данные: действительная и воображаемая части (которые по существу являются координатами x, y граничного параметра I) и выходы - преобразованные действительные и воображаемые числа.

Вопрос: Как я могу использовать выходные данные (преобразованные реальные, imag) в качестве инвариантных дескрипторов моих простых форм?

Это было то, что я думал:

calculate R = sqrt( real^2 + imag^2 ) for each N steps. divide each R by R[1] = the normalization factor to make it invariant.

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

In other words :
Мои дескрипторы не являются инвариантами ... Я думаю, что я делаю что-то не так с получением значения R.

Ответы на вопрос(2)

Ваш ответ на вопрос