我是靠谱客的博主 忧虑云朵,最近开发中收集的这篇文章主要介绍数字信号频域分析:DFT与FFT,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、前言

        连续信号的频域分析:将信号分为周期与非周期利用FS和FT分析,连续信号的频谱是关于纵轴对称的,且是非周期的。

        但是计算机不能处理连续信号,只可处理数字信号。

        所以数字信号频谱特性更重要:

二、DFT(离散傅里叶变换)

        数字信号的频谱是周期信号,周期是 2π rad/s(数字角频率),N点DFT是对数字信号的DTFT(傅里叶变换)在[0,2π]上的N点等间隔采样。FFT是在DFT的基础上简化了计算,提高了速度。

        数字角频率=模拟角频率*采样周期,当数字角频率W=2π时,对应的模拟角频率是fs(采样频率)。

        所以当以模拟角频率/模拟频率(f)为自变量时的频谱实际上是以fs为最高频率的N个采样点。

        当以数字角频率W为自变量时的频谱实际上是以2π为最高频率的N个采样点。

        matlab ffft

        Y = fft(X) %length(X)点DFT

        Y = fft(X,n)%n点DFT

        数字信号频谱分析自变量:数字角频率;W=(0:N-1)*2*pi/N     (对2π N等分)

        因变量:20*log( abs ( fft ( x ) ) )/log(2)(dB)

        与连续信号频谱一样,数字信号的DFT也对称,关于N/2对称,即关于W=π,f=fs/2对称。W:数字角频率,f:模拟频率。

三.连续/数字信号频域分析

        3.1.连续信号:

        3.1.1周期信号:单/双边谱,对称 and功率谱密度

        单边谱:

        双边谱:

       3.1. 2.非周期信号:频谱密度 连续 对称and 能量谱密度

 

         3.2数字信号:频谱DTFT周期

        DFT(FFT):对DTFT在数字角频率[0,2π]N点等间隔采样 / 模拟频率[0,fs]N点等间隔采样,关于N/2,π(数字角频率),fs/2(模拟频率)对称。

 

 四.数字信号频谱分析:

        y = fft(x);length(x)点FFT

        频率:取模拟频率f = (0:N-1)*fs/N

        幅频:20*log(abs(fft(x)*2/N))/log(10),单位dB;或者abs(fft(x))*N/2也可以

        plot(w(1:N/2),y(1:N/2)),由于对称性,取一半点画图。

function plot_fft(x,fs)
%x:待处理信号
%fs:采样率
%N:N点FFT
N = length(x);
y = fft(x);
y = abs(y);
f = (0:N-1)*fs/N;
figure,plot(f(1:N/2),y(1:N/2)*2/N),grid on,xlabel('f/Hz'),ylabel('|fft(x)|'),title('信号幅频特性'),grid on;
end

function plot_fft_angle(y,fs,N)
%y = fft(x);
%N:采样点数
%fs:采样率
f = (0:N-1)*fs/N;
ph = 2*angle(y(1:N/2));
plot(f(1:N/2),ph(1:N/2));
end

最后

以上就是忧虑云朵为你收集整理的数字信号频域分析:DFT与FFT的全部内容,希望文章能够帮你解决数字信号频域分析:DFT与FFT所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部