文章标题

来源:互联网 发布:网络推广方式 编辑:程序博客网 时间:2024/06/04 19:23

一、一维离散傅里叶变换的MATLAB实现:
fft、fft2 和 fftn 分别可以实现一维、二维和 N 维 DFT 算法,调用格式如下:
A=fft(X,N,DIM)
其中,X 表示输入图像;N 表示采样间隔点,如果 X 小于该数值,那么 Matlab 将会对 X 进行零填充,否则将进行截取,使之长度为 N ;DIM 表示要进行离散傅立叶变换。
A=fft2(X,MROWS,NCOLS)
其中,MROWS 和 NCOLS 指定对 X 进行零填充后的 X 大小。
A=fftn(X,SIZE)
其中,SIZE 是一个向量,它们每一个元素都将指定 X 相应维进行零填充后的长度。
函数 ifft、ifft2 和 ifftn用来计算反 DFT ,调用格式与对应的离散傅立叶变换函数一致。

二、一维小波变换的 MATLAB 实现
(1) dwt 函数 Matlab
功能:一维离散小波变换
格式:
[cA,cD]=dwt(X,’wname’);
说明:[cA,cD]=dwt(X,’wname’) 使用指定的小波基函数 ‘wname’ 对信号X 进行分解,cA、cD 分别为近似分量和细节分量;
[cA,cD]=dwt(X,Lo_D,Hi_D);
说明:使用指定的滤波器组 Lo_D、Hi_D 对信号进行分解。
(2) idwt 函数
功能:一维离散小波反变换
格式:
X=idwt(cA,cD,’wname’);
说明:由近似分量 cA 和细节分量 cD 经小波反变换重构原始信号 X ,’wname’ 为所选的小波函数。
X=idwt(cA,cD,Lo_R,Hi_R);
说明:用指定的重构滤波器 Lo_R 和 Hi_R 经小波反变换重构原始信号 X 。
X=idwt(cA,cD,’wname’,L);
X=idwt(cA,cD,Lo_R,Hi_R,L);
说明:X=idwt(cA,cD,’wname’,L) 和 X=idwt(cA,cD,Lo_R,Hi_R,L) 指定返回信号 X 中心附近的 L 个点。

0 0