文章标题
来源:互联网 发布:中公教育网络课程 编辑:程序博客网 时间:2024/06/05 20:54
傅里叶变换与快速傅里叶变换
作为电子信息专业的学生老说,这个不知道,或者理解不清楚,是十分不应该的,作为一个学渣,有时候确实是理解不清楚的
1、首先离散傅里叶变换目的: 简单点说: 就是将一个信号从时域变换到频域
标准点说: 将以时间为自变量的信号 与 频率为自变量的频谱函数之间的某种关系变换
数学描述:
- 其次快速傅里叶变换
- 下面给出一个fft的栗子: 有一个信号,表达式如下所示:
现在对该信号做N = 512 点快速傅里叶变换:观察其幅度频率特性 和相位频率特性;
说明:
要说明的是采样点数会影响频率分辨率的 例如 抽样频率为Fs = 1024 Hz 采样点数N = 1024 那么频率分辨率为 1Hz 如果N = 512 那么采样频率为 2Hz,假设原信号的幅值为 Ac 并且经过FFT 变换后的结果每个点的幅值 是Ac*(N/2) (除了直流分量) 模值是直流分量的 N 倍
代码:
- close all;
- Adc = 2; %直流分量为2
- A1 = 3; %频率 F1信号的幅度
- A2 = 1.5; %频率为F2信号的频率
- F1 = 50;
- F2 = 75;
- Fs = 256; %抽样频率为1024Hz
- P1 = -30; %相位为 -30度
- P2 = 90 ;%相位为90度
- N= 256; %采样点数为1024
- t = [0:1/Fs:N/Fs];
- %信号
- S = Adc + A1*cos(2*pi*F1*t + pi*P1/180) + A2*cos(2*pi*F2*t +pi*P2/180);
- plot(S); %显示原始信号
- title(‘原始信号’);
- %对其做fft变换
- figure;
- Y = fft(S,N);
- Ayy = abs(Y);
- plot(Ayy(1:N)); %原始信号fft模值
- %下面对其才进行幅频分析
- figure;
- Ayy = Ayy/(N/2); % 还原真实幅度值
- Ayy(1) = Ayy(1)/2;
- F =([1:N])*Fs/N;
- plot(F,Ayy);
- title(‘幅频特性’);
- %下面是相频特性
- figure;
- Pyy = [1:N/2] ; %为什么这里是1:N/2 因为每次采样就是有一半是没有用的
- for i= 1:N/2
- Pyy(i) = phase(Y(i));
- Pyy(i) = Pyy(i)*180/pi; %并将器转换为角度
- end
- plot(F(1:N/2),Pyy);
- title(‘相位频率特性曲线’);
close all;Adc = 2; %直流分量为2A1 = 3; %频率 F1信号的幅度A2 = 1.5; %频率为F2信号的频率F1 = 50;F2 = 75;Fs = 256; %抽样频率为1024HzP1 = -30; %相位为 -30度P2 = 90 ;%相位为90度N= 256; %采样点数为1024 t = [0:1/Fs:N/Fs];%信号S = Adc + A1*cos(2*pi*F1*t + pi*P1/180) + A2*cos(2*pi*F2*t +pi*P2/180);plot(S); %显示原始信号title('原始信号');%对其做fft变换figure;Y = fft(S,N);Ayy = abs(Y);plot(Ayy(1:N)); %原始信号fft模值%下面对其才进行幅频分析figure;Ayy = Ayy/(N/2); % 还原真实幅度值Ayy(1) = Ayy(1)/2;F =([1:N])*Fs/N;plot(F,Ayy);title('幅频特性');%下面是相频特性figure;Pyy = [1:N/2] ; %为什么这里是1:N/2 因为每次采样就是有一半是没有用的for i= 1:N/2 Pyy(i) = phase(Y(i)); Pyy(i) = Pyy(i)*180/pi; %并将器转换为角度endplot(F(1:N/2),Pyy);title('相位频率特性曲线');
然后运行结果:
2.fft变换后的赋值
3、信号的幅频特性:
4、相频特性
0 0
- 文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题 文章标题 文章标题 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- ObjectQuery查询及方法
- 界面侧滑
- Python做图像识别和应用
- 实现performSelector 传递多个参数
- 5.1. ApplicationContext的事件机制
- 文章标题
- Linux下内存使用分析思路
- 我为什么鼓励工程师写blog
- python实现下载韩寒博客中的所有文章,在本地存储
- JavaScript基础(数据类型)
- Dll导出函数的两种方式
- 聚类算法——python实现k-means算法
- 多线程笔记(一)
- JS获取URL参数值的四种方法(转)