2 hjzqc1 hjzqc1 于 2016.01.14 20:48 提问

快速傅里叶变换蝶形公式如何理解

// 采用蝶形算法进行快速傅里叶变换
for(k = 0; k < r; k++)
{
for(j = 0; j < 1 << k; j++)
{
bfsize = 1 << (r-k);
for(i = 0; i < bfsize / 2; i++)
{
p = j * bfsize;
X2[i + p] = X1[i + p] + X1[i + p + bfsize / 2];
X2[i + p + bfsize / 2] = (X1[i + p] - X1[i + p + bfsize / 2])
* W[i * (1<<k)];

}
}
X = X1;
X1 = X2;
X2 = X;
}
————————————
其中
X2[i + p] = X1[i + p] + X1[i + p + bfsize / 2];
X2[i + p + bfsize / 2] = (X1[i + p] - X1[i + p + bfsize / 2])
* W[i * (1<<k)];
这两句不太明白,看蝶形图,不是应该
X2[i+p] = X1[i+p] + x1[i+p+bfsize/2]*W;
X2[i + p + bfsize / 2] = X1[i + p] - X1[i + p + bfsize / 2]*W;
哪位大神能帮帮看下,初学,分少

2个回答

devmiao
devmiao   Ds   Rxr 2016.01.14 21:46
hjzqc1
hjzqc1 我问得是那两句话怎么来的
2 年多之前 回复
CSDNXIAOD
CSDNXIAOD   2016.01.14 20:51

快速傅里叶变换
快速傅里叶变换(蝶形算法)
快速傅里叶变换及其实现
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
关于傅里叶变换的理解、快速傅里叶算法的推导以及蝶形运算的c语言实现
为了使用C语言实现蝶形运算过程,重新学习了一下傅里叶变换蝶形运算的过程 1、傅里叶变换 傅里叶变换笼统的讲就是将一个信号序列分解为很多组频率不同的正弦和余弦信号的组合;对于理解傅里叶变换我是从线性变换这个角度来理解的,无非就是将一个时域序列映射到一组正交基上。 2、蝶形运算C程序
快速傅里叶变换(蝶形算法)
一、傅里叶变换         傅里叶变换能将满足一定条件的某个函数表示成三角函数或是它们的积分的线性组合。 二、进行傅里叶变换的意义         参见:http://blog.renren.com/share/200123075/6272950196 三、快速傅里叶变换        1、离散傅里叶变换         离散傅里叶变换时连续傅里叶变换的离散形式,实现了用计算机计算
快速傅里叶变换(蝶形算法c++源代码)
详细理论可以自行百度补充 图1 图2 为了方便处理数据,程序中会将图1中x[0],x[4],x[2]...x[7]进行倒序,也就是图2中的表。这里就直接上代码的。 for(j = 0; j< N; j++) { nInter = 0; for(i = 0; i<k;i++) { if(j&
傅里叶:有关FFT,DFT与蝴蝶操作(转 重要!!!!重要!!!!真的很重要!!!!)
转载自:http://blog.renren.com/share/408963653/15068964503 作者 :  徐可扬(感谢可杨学长) 侵删 有关FFT,DFT与蝴蝶操作 其实我感觉这个学期算法最难最搞不懂的绝对不是动态规划啊!绝对是快速傅里叶变换啊!最近才弄懂有木有。 有不少人问我,于是干脆就写成日志吧。 首先明确一下基本概念吧,就三点,DFT
FFT学习笔记 FFT详解 一小时学会FFT
大家都很强,可与之共勉。我的知乎专栏
H.264整数DCT公式推导及蝶形算法分析
这篇文章对DCT公式推导和蝶形算法的分析写的比较清晰,所有就转载过来,转载地址: http://www.cnblogs.com/xkfz007/archive/2012/07/31/2616791.html 1.为什么要进行变换     空间图像数据通常是很难压缩的:相邻的采样点具有很强的相关性(相互关联的),而且能量一般平均分布在一幅图像中,从而要想丢掉某些数据和降低数据精
快速傅里叶变换用于长整数相乘
作图代码:data = [] with open('fft-ifft.txt','r') as f: for line in f: splitlist = line.replace('\n','').split(' ') data.append([splitlist[2],splitlist[6],splitlist[10]]) data = np.arr
快速傅里叶(FFT)
快速傅里叶: 更加形象的理解傅里叶变换:http://zhuanlan.zhihu.com/wille/19763358 雷德算法: 输出序列是按自然顺序排列的,而输入序列的顺序则是“比特反转”方式排列的。也就是说,将序号用二进制表示,然后将二进制数以相反方向排列,再以这个数作为序号。如011变成110,那么第3个输入值和第六个输入值就要交换位置了。 http://blog
快速傅里叶变换c语言实现算法代码
fft 数字信号处理代码实现蝶形算法,实现快速傅里叶变换。
基2时选快速傅里叶变换算法(FFT)
此程序是大学以前做双色点阵音乐频谱时参考数字信号处理写的。相对于网上的一些代码,我这里对一些特殊的旋转因子做了特别处理程度稍微快了些,当然相对了基2,使用分裂基、基4肯定会更快。