OneWind
驱动小牛
驱动小牛
  • 注册日期2002-05-15
  • 最后登录2009-04-10
  • 粉丝0
  • 关注0
  • 积分82分
  • 威望11点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
阅读:1073回复:8

20分决不斯言

楼主#
更多 发布于:2002-11-26 14:11
大虾谁能够讲讲FFT原理,应用领域?
嘿,大家好!
magicx
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2014-08-18
  • 粉丝1
  • 关注0
  • 积分-14分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-11-26 14:29
大虾谁能够讲讲FFT原理,应用领域?


就20分还 决不食言?有这么严重?
[color=red]大头鬼! :P[/color]
OneWind
驱动小牛
驱动小牛
  • 注册日期2002-05-15
  • 最后登录2009-04-10
  • 粉丝0
  • 关注0
  • 积分82分
  • 威望11点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-11-26 14:31
哈哈,大头鬼,嫌少啦?
嘿,大家好!
h13
h13
驱动老牛
驱动老牛
  • 注册日期2002-07-10
  • 最后登录2008-10-24
  • 粉丝1
  • 关注1
  • 积分0分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-11-26 15:05
给你个网址:http://www.intersrv.com/~dcross/fft.html


放分!
<table> [color=#8040FF]神,常虚以凝而灵明湛定 气,常静以养而充盈流通[/color] </table>
Gong_XG
驱动太牛
驱动太牛
  • 注册日期2002-10-01
  • 最后登录2010-11-25
  • 粉丝0
  • 关注0
  • 积分313分
  • 威望46点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-11-26 16:00
对,这信息了得。
OneWind
驱动小牛
驱动小牛
  • 注册日期2002-05-15
  • 最后登录2009-04-10
  • 粉丝0
  • 关注0
  • 积分82分
  • 威望11点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-11-26 17:13
谢谢,不过要再等等看还有那些高手,后定放.
嘿,大家好!
poplar
驱动牛犊
驱动牛犊
  • 注册日期2001-05-04
  • 最后登录2007-01-08
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-11-26 20:31
到www.ti.com上去找找。
大巧不工,重剑无锋.
bearbrother
驱动牛犊
驱动牛犊
  • 注册日期2002-08-23
  • 最后登录2002-12-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-11-27 10:13
其实挺简单的,主要是一个蝶形变换,你可以找本数字信号处理的书看一下,上面有图形介绍的,下面是我很早以前写过的一段源代码,虽然没有优化过,但适合于直接理解没有任何转弯的地方.
for( int m = 0; m < 5; m++) {
            // I表示在第m级中,每半组有几个点
            int I = (int)Math.pow(2, m);
            for( int i = 0; i < 32; i += 2 * I ) {
                // j用于遍历每组中的一半点,因为另一半点可以与这一半都是相差2的m次方
                for( int j = i; j < (i + I); j++) {
                    double[] w = new double[2];
                    wfunc(2 * I, j - i, w);
                    int q = j + I;
                    x[j][0] = x[j][0] + w[0] * x[q][0] - w[1] * x[q][1];
                    x[j][1] = x[j][1] + w[0] * x[q][1] + w[1] * x[q][0];
                    x[q][0] = x[j][0] - w[0] * x[q][0] + w[1] * x[q][1];
                    x[q][1] = x[j][1] - w[0] * x[q][1] - w[1] * x[q][0];
                }
            }
        }

// 计算W
    private void wfunc(int n, int k, double[] out) {
        switch (k % 4) {
            case 0:
                out[0] = Math.exp(2 * k * Math.PI / n);
                break;
            case 1:
                out[0] = Math.cos(2 * k * Math.PI / n);
                out[1] = Math.sin(-2 * k * Math.PI / n);
                break;
            case 2:
                out[0] = Math.exp(-2 * k * Math.PI /n);
                break;
            case 3:
                out[0] = Math.cos(2 * k * Math.PI / n);
                out[1] = Math.sin(-2 * k * Math.PI / n);
                break;
        }
    }
OneWind
驱动小牛
驱动小牛
  • 注册日期2002-05-15
  • 最后登录2009-04-10
  • 粉丝0
  • 关注0
  • 积分82分
  • 威望11点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-11-27 17:31
还有吗?大虾块块...药放分楼.
嘿,大家好!
游客

返回顶部