Неточность в вычислении fftw

#visual-studio #visual-studio-2008 #vtk #fftw #itk

#visual-studio #visual-studio-2008 #vtk #fftw #itk

Вопрос:

Я вычисляю fft изображения, пиксели которого удваиваются с помощью библиотеки FFTW, для этой цели я использую библиотеку fftw (http://www.fftw.org /) библиотека в Visual Studio 2008 и использование ITK (http://www.itk.org /).

Когда я вычисляю fft из двойного указателя с помощью метода ‘fftw_plan_dft_c2r_2d’, он выполняет вычисление, но вносит неточность, она составляет около — 0,5…

Я действительно не знаю, что не так, может быть, расстояние между пикселями? Тип используемых данных? У кого-нибудь была эта проблема или что-то подобное раньше?

Большое спасибо в advanced.

Антонио

код:

Код здесь:

 // FFT CALCULATION
    // Inizialization of the neccesary elemnets for calculating the FFT. 
    fftw_plan p1;  //variable for storing the FFT 
    int N_fft= ancho*alto;  //number of points of the image
    fftw_complex *F1 =(fftw_complex*) fftw_malloc(sizeof(fftw_complex)*alto*((ancho/2) 1));  // result pointer
    p1 = fftw_plan_dft_r2c_2d(alto,ancho, f1, F1, FFTW_ESTIMATE);  // FFT planning
    fftw_execute(p1);  // FFT calculation
    fftw_destroy_plan(p1); // plan is destroyed 
  

Я хочу выполнить БПФ для двойного указателя с именем f1.

Комментарии:

1. Как вы определяете, что есть неточность?

2. Я сравниваю результат с вычислением Matlab 🙂

3. ХОРОШО — можете ли вы отредактировать свой вопрос, включив в него ту часть вашего кода, где вы создаете план FFTW и выполняете сам FFT ?

4. ХОРОШО — я не вижу ничего явно неправильного — насколько велика относительная ошибка, т. Е. Для ошибки / — 0,5, каковы абсолютные значения в каждом случае. Также каковы значения ваших размеров изображения (alto и ancho)?

5. Абсолютные значения находятся в диапазоне от 0 до 200 примерно. И размеры изображения составляют 640×480