FFT 实现

问题描述 投票:0回答:0

我正在开发使用

FFT
增强图像的应用程序。

我已经实现了

FFT
的代码:

enter image description here

对于上图中的第一个公式,我已经实现了如下代码:

  void fft(int x , int y , int size) {
    
    for(int i=x; i<x+32 ; i++){
        for(int j=y ; j<y+32 ; j++){
            double kth = -2 * Math.PI * (((i*x)/size)+((j*y)/size));
            ComplexNumber expo = new ComplexNumber(Math.cos(kth),Math.sin(kth));
            output.values[i][j] = ComplexNumber.cMult(input.values[x][y],expo) ;
            intermediate.values[i][j] = output.values[i][j];
            input.values[i][j] = output.values[i][j];
        }
        
    }
    
}

我还实现了第二个和第三个公式的代码,但我得到的结果不正确。 我该怎么办?

为第一个方程式实现的代码是否正确?

已编辑

基本上我想用 FFT 做图像增强。我找到了我已经在上面发布的公式。我还实现了这些公式的代码。但我还不清楚该公式中使用的所有变量。任何人都可以请详细解释该公式中使用的所有变量,如 M 和 N,因为它们已经给出了 u 和 v.

java fft
© www.soinside.com 2019 - 2024. All rights reserved.