Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
查看投票结果: RLFT变换处理2D,还能用在何处领域?
矩阵还原 0 0%
像点恢复 0 0%
像点去噪 0 0%
图像变换 0 0%
投票者: 0. 您不可以参加此投票

回复
 
主题工具 显示模式
旧 2009-02-25, 22:47   #1
149700017
初级会员
 
注册日期: 2009-02-12
年龄: 37
帖子: 5
声望力: 0
149700017 正向着好的方向发展
帖子 [分享][讨论]C++ 快速FFT(rlft3)用于2D处理

#include <cmath>
#include "nr.h"
using namesspace std;


void NR::rlft3(Mat3D_IO_DP &date, Mat_IO_DP &speq,const int isign)
"注释:已知三维实型数组 ..."
{
int i1,i2,i3,j1,j2,j3,ii3,k1,k2,k3,k4;
DP theta,wi,wpi,wpr,wr,wtemp;
DP c1,c2,h1r,h1i,h2r,h2i;
Vec_INT nnn(3);

int nn1=data.dim1();
int nn2=data.dim2();
int nn3=data.dim3();
c1=0.5;
c2=-0.5isign;
theta=isign*(2*3.1415926535897932384626/nn3)
wtemp=sin(0.5*theta);
wpr=-2.0*wtemp*wtemp;
wpi=sin(theta);
nn[0]=nn1;
nn[1]=nn2;
nn[2]=nn3>>1;
Vec_DP data_v(&data[0][0][0],nn1*nn2*nn3);
if(isign==1)
{ fourn(data_v,nn,isign);
k1=0;
for(i1=0;i1<nn1;i1++)
for(i2=0,j2=0;i2<nn2;i2++,k1+=nn3){
speq[i1][j2++]=data_v[k1];
speq[i1][j2++]=data_v[k1+1];

}
}
for (i1=0;i1<nnn1;i1++){
j1=(i1!=0? nn1-i1:0);
wr=1.0;
wi=0.0;
for(ii3=0;ii3<=(nn3>>1);ii3+=2){
k1=i1*nn2*nn3;
k3=j1*nn2*nn3;
for(i2=0;i2<nn2;i2++,k1+=nn3){
if (ii3==0){
j2=

}



}


}


}






}
部分代码,时间仓促希望朋友给补充~谢谢~多多讨论,(*^__^*) 嘻嘻……
149700017 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
[MATLAB基础] 不用矩陣畫圖 cody_snake MATLAB论坛 1 2009-04-19 17:37
[求助]MATLAB中的.p文件有什么用啊,怎么编译? TT MATLAB论坛 2 2009-04-14 16:58
随机矩阵变量的输入 fig MATLAB论坛 2 2009-04-01 17:07
solve错在哪里?? 求助!!! ldd00 MATLAB论坛 4 2008-12-01 11:22
??? Undefined function or variable 'imhistc'.是怎么回事啊。 hfutqianwei MATLAB论坛 2 2008-09-26 09:19


所有时间均为北京时间。现在的时间是 02:23


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.