已阅读5页,还剩1页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
源程序:#include #include #include #define pi 3.14159265#define N1 8#define N2 8typedef std:complex complex;/*-二维基2 FFT算法-*/void fft2(complex fN1N2)int i,j,k,m,n,l,r,M;int la,lb,lc;complex t;/*-逐行进行一维FFT变换-*/for(i=0;iN1;i+)/*-时域抽取的FFT算法,对原始图像矩阵第i行数据进行FFT变换-*/*-计算分解的级数M=log2(N2)-*/for(m=N2,M=1;(m=m/2)!=1;M+); /*-按照倒位序重新排列原信号-*/for(j=1,k=N2/2;j=N2-2;j+)if(jk)t=fik;fik=fij;fij=t;l=N2/2;while(l=k)k=k-l;l=l/2;k=k+l;/*-FFT算法-*/for(m=1;m=M;m+)la=pow(2,m); /la=2m代表第m级每个分组所含节点数lb=la/2; /lb代表第m级每个分组所含蝶形单元数 /同时它也表示每个蝶形单元上下节点之间的距离/*-蝶形运算-*/for(l=1;l=lb;l+)r=(l-1)*pow(2,M-m);for(n=l-1;nN2-1;n=n+la) /遍历每个分组,分组总数为N2/lalc=n+lb; /n,lc分别代表一个蝶形单元的上、下节点编号 t=filc*complex(cos(2*pi*r/N2),-sin(2*pi*r/N2);filc=fin-t;fin=fin+t;/*-逐列进行一维FFT变换-*/for(j=0;jN2;j+)/*-时域抽取的FFT算法,对原始图像矩阵第j列数据进行FFT变换-*/*-计算分解的级数M=log2(N1)-*/for(m=N1,M=1;(m=m/2)!=1;M+); /*-按照倒位序重新排列原信号-*/for(i=1,k=N1/2;i=N1-2;i+)if(ik)t=fkj;fkj=fij;fij=t;l=N1/2;while(l=k)k=k-l;l=l/2;k=k+l;/*-FFT算法-*/for(m=1;m=M;m+)la=pow(2,m); /la=2m代表第m级每个分组所含节点数lb=la/2; /lb代表第m级每个分组所含蝶形单元数 /同时它也表示每个蝶形单元上下节点之间的距离/*-蝶形运算-*/for(l=1;l=lb;l+)r=(l-1)*pow(2,M-m);for(n=l-1;nN1-1;n=n+la) /遍历每个分组,分组总数为N1/lalc=n+lb; /n,lc分别代表一个蝶形单元的上、下节点编号 t=flcj*complex(cos(2*pi*r/N1),-sin(2*pi*r/N1);flcj=fnj-t;fnj=fnj+t;/*-显示信号数据-*/void display(complex fN1N2)int i,j;for(i=0;iN1;i+)for(j=0;jN2;j+)if(j)%3=0) coutendl;cout.width(9);cout.setf(ios:fixed);cout.precision(4);coutfij.real();cout.flags(ios:showpos);cout.width(9);cout.setf(ios:fixed);cout.precision(4);coutfij.imag()it;cout.unsetf(ios:showpos);/*-主函数-*/void main()int i,j;/*-原始图像矩阵数据xN1N2-*/double xN1N2=0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,2,4,4,2,0,0,0,1,4,8,8,4,1,0,0,1,4,8,8,4,1,0,0,0,2,4,4,2,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0;complex fN1N2;/*-将实原始图像矩阵数据以复数形式存储在复矩阵fN1N2中-*/for(i=0;iN1;i+)for(j=0;jN2;j+)fij=complex(xij,0.0);coutendl原信号:;display(f);fft2(f);coutendlendl二维FFT变换后的信号:;display(f);ifft2(f);coutendlendl二维IFFT变换后的信号:;display(f);运行结果:原信号: 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 1.0000 +0.0000i 1.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 2.0000 +0.0000i 4.0000 +0.0000i 4.0000 +0.0000i 2.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 1.0000 +0.0000i 4.0000 +0.0000i 8.0000 +0.0000i 8.0000 +0.0000i 4.0000 +0.0000i 1.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 1.0000 +0.0000i 4.0000 +0.0000i 8.0000 +0.0000i 8.0000 +0.0000i 4.0000 +0.0000i 1.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 2.0000 +0.0000i 4.0000 +0.0000i 4.0000 +0.0000i 2.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 1.0000 +0.0000i 1.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i二维FFT变换后的信号: 80.0000 +0.0000i -51.4558 -21.3137i 12.0000 +12.0000i -0.5442 -1.3137i 0.0000 +0.0000i -0.5442 +1.3137i 12.0000 -12.0000i -51.4558 +21.3137i -51.4558 -21.3137i 26.1421 +26.1421i -3.4142 -8.2426i 0.0000 -0.0000i 0.0000 +0.0000i 0.0000 -0.0000i -8.2426 +3.4142i 36.9706 +0.0000i 12.0000 +12.0000i -3.4142 -8.2426i 0.0000 +0.0000i 0.2426 -0.5858i 0.0000 +0.0000i -0.5858 +0.2426i 0.0000 +0.0000i -8.2426 -3.4142i -0.5442 -1.3137i 0.0000 -0.0000i 0.2426 -0.5858i -2.1421 +2.1421i 0.0000 +0.0000i 3.0294 +0.0000i -0.5858 -0.2426i -0.0000 -0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i -0.5442 +1.3137i 0.0000 -0.0000i -0.5858 +0.2426i 3.0294 +0.0000i 0.0000 +0.0000i -2.1421 -2.1421i 0.2426 +0.5858i 0.0000 -0.0000i 12.0000 -12.0000i -8.2426 +3.4142i 0.0000 +0.0000i -0.5858 -0.2426i 0.0000 +0.0000i 0.2426 +0.5858i 0.0000 -0.0000i -3.4142 +8.2426i -51.4558 +21.3137i 36.9706 +0.0000i -8.2426 -3.4142i -0.0000 -0.0000i 0.0000 +0.0000i 0.0000 -0.0000i -3.4142 +8.2426i 26.1421 -26.1421i二维IFFT变换后的信号: 0.0000 +0.0000i 0.0000 -0.0000i 0.0000 -0.0000i 0.0000 -0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i -0.0000 +0.0000i -0.0000 +0.0000i -0.0000 -0.0000i 1.0000 -0.0000i 1.0000 -0.0000i 0.0000 -0.0000i 0.0000 +0.0000i -0.0000 +0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 2.0000 +0.0000i 4.0000 -0.0000i 4.0000 -0.0000i 2.0000 +0.0000i 0.0000 -0.0000i 0.0000 +0.0000i 0.0000 +0.0000i 1.0000 +0.0000i 4.0000 -0.0000i 8.0000 +0.0000i 8.0000 -0.0000i 4.0000 +0.0000i 1.0000 +0.0000i 0.0000 -0.0000i 0.0000 +0.0000i 1.0000 -0.0000i 4.0000 -0.0000i 8.0000 +0.0000i 8.0000 +0.0000i 4.0000 -0.0000i 1.0000 +0.0000i 0.0000 -0.0000i 0.0000 -0.0000i 0.0000 -0.0000i 2.0000 +0.0000i 4.0000 -0.0000i 4.0000 +0.0000i 2.0000 +0.0000i 0.0000 -0.0000i 0.0000 +0.0000i -0.0000 -0.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 殡葬陵园环境美化与绿化养护工作计划中级
- 船员职业发展规划书模板
- 低保招聘面试高分策略
- 户外探险俱乐部年度活动策划及安全保障措施
- 人力资源规划人才梯队建设与组织架构优化
- 外贸业务员英语年度出口目标达成与客户维护计划
- 跨境电商工作部署与长远规划
- 特殊天气条件下电力市场交易应对措施总结
- 水泥中控面试经验
- 民航安全员应急响应演练手册
- 中石化招标管理办法
- 2025年湖南单招政治题(附答案)
- 酒泉市肃州区社区工作者招聘笔试真题2024
- 基层行-各科室查对制度评分标准
- 2025年石家庄市市属国有企业招聘笔试考试试题(含答案)
- 边疆安全的环境与生态安全研究-洞察阐释
- 光伏电站施工环境保护措施
- 退婚调解协议书范本
- 文具店合作合同协议书模板
- 河南省青桐鸣2025届高三11月大联考-物理试题(含答案)
- 华为竞业协议合同
评论
0/150
提交评论