分数阶傅立叶变换(分数阶傅立叶变换优缺点)
本篇文章给大家谈谈分数阶傅立叶变换,以及分数阶傅立叶变换优缺点对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
[转载]关于分数阶傅里叶变换的几种错误看法
首先,是关于分数阶傅里叶变换阶次的表示问题。现在很多研究者都习惯用分数阶傅里叶域相对时域的旋转角度来表示相对分数阶傅里叶域的阶次,这没有对“分数阶”三字的进行充分认识。所谓分数阶傅里叶域是指该变换域相对时域的旋转角度是90度的分数倍,不同于以往的FFT、IFFT分别为90度的+1、-1倍,因此称该种变换为分数阶傅里叶变换,因此,使用旋转角度来表示分数阶的阶次极为不妥。 其次,是现在很多研究者总喜欢拿分数阶傅里叶变换与短时傅里叶变换、小波变换以及威格纳变换这些时频分析做比较,从此怀疑分数阶傅里叶变换的实用价值。我认为,这是对分数阶傅里叶变化的广义时频分析特点认识不足所致。首先,必须声明的一点是分数阶傅里叶变换并不是传统意义上的时频分析,它只是一种广义的时频分析,它并没有完全解决传统傅里叶变换在时频定位以及分辨率上的局限性。所以,我们要做的工作是在分数阶傅里叶变换的基础上构建新的时频分析体系,例如短时分数阶傅里叶变换、分数阶小波包变换等。 最后,就是现在部分研究者总是用D-CHIRP变换替代分数阶傅里叶变换,也就是说忽略最后一个chirp乘积。我认为这并没有将信号变换到分数阶傅里叶域,也就是说只是变换到传统的傅里叶域,并没有真正意义上用chirp信号做载波。在分数阶傅里叶变换可分为三步进行,第一步,乘以时间chirp基;第二步,做FFT运算;第三步,乘以频率chirp基。
对LFM信号分数阶傅里叶变换后为什么会有两个峰值
非平稳信号广泛存在于自然界与现实生活中,作为非平稳信号的线性调频信号(Liner Frequency
Modulation,LFM)和正弦调频信号(Sinusoidal Frequency
Modulation,SFM)广泛应用于通信、雷达、声纳、地震勘测和生物医学等众多领域。由于经典的傅里叶变换不反映非平稳信号的时变本质,时频联合
分析技术成为处理此类信号的有效方法,由于能够描述信号频率与时间的关系,目前被广泛应用于非平稳信号分析与处理中。
首先,本文对各种LFM信号参数估计方法进行了研究,诸如,分数阶傅里叶变换(Fractional Fourier
Transform,FRFT)、离散Chirp-Fourier变换(Discrete Chirp
FourierTransform,DCFT)、匹配傅里叶变换(Matched Fourier
Transform,MFT)和三次相位变换(Cubic Phase Transform,CPT),并通过仿真比较各种算法的性能。
然后,基于一阶局部多项式傅里叶变换(Local Polynomial Fourier
Transform,LPFT)对LFM信号具有良好的时频聚集和抑制较叉干扰的性能,提出基于两级搜索LPFT1与FFT结合(Two Step
LPFT1-Fast Fourier
Transform,TSLPFT1-FFT)的LFM信号参数估计方法。仿真结果表明,与现有方法相比,提出的方法在相同的信噪比条件下改善了参数估计
精度,并且适用于多分量LFM信号的处理。
最后,由于SFM信号时频特性函数呈余弦曲线变化,现有的LFM信号分析处理方法不适用于分析此类信号,根据信号特征提出正弦调频变换(Sinusoid
FrequencyModulation
Transform,SFMT),理论分析说明SFM信号在离散正弦调频变换(DiscreteSFMT,DSFMT)域具有明显的聚敛特征,经仿真验
证,基于DSFMT的SFM信号参数估计方法性能接近于参数估计的Cramer-Rao下限。
谁有分数阶傅立叶变换的matlab程序
用MATLAB 实现傅里叶变换: 用户任意输入一个函数,然后,输出函数的傅里叶变换函数,然后输出振幅频率 。 x=sin(2*pi*t); %任意输入一个函数。 y=fft(x); %傅里叶变换函数。 plot(abs(y)); %振幅频率。
求:分数阶傅里叶变换的matlab程序,请各位帮帮忙
function Faf = frft(f, a)
% The fast Fractional Fourier Transform
% input: f = samples of the signal
% a = fractional power
% output: Faf = fast Fractional Fourier transform
error(nargchk(2, 2, nargin));
f = f(:);
N = length(f);
shft = rem((0:N-1)+fix(N/2),N)+1;
sN = sqrt(N);
a = mod(a,4);
% do special cases
if (a==0), Faf = f; return; end;
if (a==2), Faf = flipud(f); return; end;
if (a==1), Faf(shft,1) = fft(f(shft))/sN; return; end
if (a==3), Faf(shft,1) = ifft(f(shft))*sN; return; end
% reduce to interval 0.5 a 1.5
if (a2.0), a = a-2; f = flipud(f); end
if (a1.5), a = a-1; f(shft,1) = fft(f(shft))/sN; end
if (a0.5), a = a+1; f(shft,1) = ifft(f(shft))*sN; end
% the general case for 0.5 a 1.5
alpha = a*pi/2;
tana2 = tan(alpha/2);
sina = sin(alpha);
f = [zeros(N-1,1) ; interp(f) ; zeros(N-1,1)];
% chirp premultiplication
chrp = exp(-i*pi/N*tana2/4*(-2*N+2:2*N-2)'.^2);
f = chrp.*f;
% chirp convolution
c = pi/N/sina/4;
Faf = fconv(exp(i*c*(-(4*N-4):4*N-4)'.^2),f);
Faf = Faf(4*N-3:8*N-7)*sqrt(c/pi);
% chirp post multiplication
Faf = chrp.*Faf;
% normalizing constant
Faf = exp(-i*(1-a)*pi/4)*Faf(N:2:end-N+1);
function xint=interp(x)
% sinc interpolation
N = length(x);
y = zeros(2*N-1,1);
y(1:2:2*N-1) = x;
xint = fconv(y(1:2*N-1), sinc([-(2*N-3):(2*N-3)]'/2));
xint = xint(2*N-2:end-2*N+3);
function z = fconv(x,y)
% convolution by fft
N = length([x(:);y(:)])-1;
P = 2^nextpow2(N);
z = ifft( fft(x,P) .* fft(y,P));
z = z(1:N);
分数阶傅里叶变换frft数值计算,求助
function Faf = frft(f, a) % The fast Fractional Fourier Transform % input: f = samples of the signal % a = fractional power % output: Faf = fast Fractional Fourier transform error(nargchk(2, 2, nargin)); f = f(:); N = length(f)
分数阶傅立叶变换的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于分数阶傅立叶变换优缺点、分数阶傅立叶变换的信息别忘了在本站进行查找喔。