离散傅里叶变换的主要性质
离散傅里叶变换是傅里叶变换在时域、频域均离散化的形式,因而它与其它傅里叶变换有
着相似的性质,譬如线性。同时离散傅里叶变换也具有一些与其它傅里叶变换不同的特性,其中
主要的圆周移位性质和圆周卷积性质。
1、离散傅里叶变换主要性质
① 圆周时移性质:若 G[k] 表示长度为 N 的序列 g[n] 的 N 点离散傅里叶变换,则圆周时移序列
的 N 点离散傅里叶变换为
,其中
。
② 圆周频移性质:若 G[k] 表示长度为 N 的序列 g[n] 的 N 点离散傅里叶变换,则序列
的 N 点离散傅里叶变换为
。
③ 圆周卷积性质:若 G[k] 和 H[k] 表示长度为 N 的序列 g[n] 和 h[n] 的 N 点离散傅里叶变换,则圆周卷积序列 g[n]⨂h[n] 的 N 点离散傅里叶变换为 G[k]*H[k]。
④ 帕萨瓦尔定理:即信号的能量在频域和时域中是相等的若 G[k] 表示长度长度为 N 的序列 g[n] 的 N 点离散傅里叶变换,。
2、MATLAB实验分析
① 圆周移位的概念:
% Illustration of Circular Shift of a Sequence
clear;clc;close all
M = 6;
a = [0 1 2 3 4 5 6 7 8 9];
b = cirshift(a,M); % 左移 M 位
L = length(a)-1;
n = 0:L;
subplot(2,1,1);
stem(n,a);axis([0,L,min(a),max(a)]);
title('Original Sequence');
xlabel('time index n');
ylabel('a[n]');
subplot(2,1,2);
stem(n,b);axis([0,L,min(a),max(a)]);
title(['Sequence Obtained by Circularly Shifting by ',num2str(M),' Samples']);
xlabel('time index n');
ylabel('b[n]');
② 圆周时移的性质
% 离散傅里叶变换的性质——圆周时移性质
% Circular Time-Shifting Property of DFT
clear;clc;close all
x = [0 2 4 6 8 10 12 14 16];
N = length(x)-1;
n = 0:N;
y = cirshift(x,5);
XF = fft(x);
YF = fft(y);
subplot(2,2,1);
stem(n,abs(XF));grid;
title('Magnitude of DFT of Original Sequence');
xlabel('Frequency index k');
ylabel('|X[k]|');
subplot(2,2,2);
stem(n,abs(YF));grid;
title('Magnitude of DFT of Circularly Shifted Sequence');
xlabel('Frequency index k');
ylabel('|Y[k]|');
subplot(2,2,3);
stem(n,angle(XF));grid;
% theta = angle(z) 为复数数组 z 的每个元素返回区间 [-π,π] 中的相位角。
% theta 中的角度表示为 z = abs(z).*exp(i*theta)
title('Phase of DFT of Original Sequence');
xlabel('Frequency index k');
ylabel('arg(X[k])');
subplot(2,2,4);
stem(n,angle(YF));grid;
title('Phase of DFT of Circularly Shifted Sequence');
xlabel('Frequency index k');
ylabel('arg(Y[k])');
③ 圆周卷积的性质
% 离散傅里叶变换的性质——圆周卷积性质
% Circular Convolution Property of DFT
clear;clc;close all
g1 = [1 2 3 4 5 6];
g2 = [1 -2 3 3 -2 1];
ycir = circonv(g1,g2);
disp('Result of circular convolution = ');
disp(ycir)
G1 = fft(g1);
G2 = fft(g2);
yc = ifft(G1.*G2);
disp('Result of IDFT of the DFT products = ');
disp(yc)
运行结果:
Result of circular convolution = 12 28 14 0 16 14
Result of IDFT of the DFT products = 12 28 14 0 16 14
④ 帕萨瓦尔定理
% 离散傅里叶变换的性质——帕塞瓦尔定理
% 信号的能量在时域和频域相等
% 离散形式 ∑u(k)² = 1/N( ∑U(k)U*(k) )
% Parseval's Relation
clear;clc;close all
x = [(1:128) (128:-1:1)];
XF = fft(x);
a = sum(x.*x)
b = round(sum(abs(XF).^2)/256) % 用于舍入到最接近的整数
% a代表着时域能量;b代表着频域能量
⑤ 利用圆周卷积计算线性卷积——时域的方法
将两个序列的长度分别加0补充到两个序列长度之和时,线性卷积等于圆周卷积的结果。补零的个数=另一个序列的长度。
% 利用圆周卷积计算线性卷积——时域的方法
% Linear Convolution via Circular Convolution
clear;clc;close all
g1 = [1 2 3 4 5];
g2 = [2 2 0 1 1];
% 使序列长度为 g1 + g2
g1e = [g1 zeros(1,length(g2)-1)];
g2e = [g2 zeros(1,length(g1)-1)];
ylin = circonv(g1e,g2e);
disp('Linear convolution via circular convolution = ');
disp(ylin);
y = conv(g1, g2);
disp('Direct linear convolution = ');
disp(y)
运行结果:
ylin = [2 6 10 15 21 15 7 9 5]
y = [2 6 10 15 21 15 7 9 5]
⑥ 利用圆周卷积计算线性卷积——基于DFT的方法
% 用DFT计算两个序列的线性卷积
% Linear Convolution via Circular Convolution
clear;clc;close all
g1 = [1 2 3 4 5];
g2 = [2 2 0 1 1];
g1e = [g1 zeros(1,length(g2)-1)];
g2e = [g2 zeros(1,length(g1)-1)];G1 = dft(g1e,length(g1e));
G2 = dft(g2e,length(g2e));
G = G1.*G2;
ylin = idft(G,length(g1e));disp('Linear convolution via circular convolution based on DFT= ');
disp(ylin);
y = conv(g1, g2);
disp('Direct linear convolution = ');
disp(y)
代码中 dft 可用fft代替,也可以在上一篇 离散傅里叶变换与应用 中复制 dft 函数的.m文件
离散傅里叶变换的主要性质相关推荐
- [EE261学习笔记] 13.离散傅里叶逆变换及离散傅里叶变换的一些性质
我们先回忆一下DFT F‾[m]=Ff‾[m]=∑k=0N−1f‾[k]e−2πimkN(1)\underline{F}[m] = \underline{\mathscr{F}f}[m] = \sum ...
- 离散傅里叶变换的基本性质
以下是作为通信工程一名学渣的理解 圈出重点"学渣的理解" 一.线性性质 两个信号各自与常数的乘机在相加的DFT变换等于各自的与常数乘机后DFT变换之和 二.序列循环移位性质 序列循 ...
- dft对称性 matlab实验,数字信号处理实验 matlab版 离散傅里叶变换的性质
数字处理实验 matlab版 山大学生最适用 本人自己写的 因为时间比较久了 不能完全保证出现代码都能运行 但95%还是能保证的 谢谢 实验13 离散傅里叶变换的性质 (完美格式版,本人自己完成,所有 ...
- matlab在DSP中的应用(六)---离散傅里叶变换的性质
一.实验目的 (1)加深对离散傅里叶变换(DFT)基本性质的理解. (2)了解有限长序列傅里叶变换(DFT)性质的研究方法. (3)掌握用MATLAB语言进行离散傅里叶变换性质分析时程序编写的方法. ...
- 傅里叶级数与傅里叶变换_Part7_离散傅里叶变换的性质
傅里叶级数与傅里叶变换_Part7_离散傅里叶变换的性质 0.Part6 内容复习 离散傅里叶变换/逆变换的公式如下: X ( n ) = ∑ k = 0 N − 1 x ( k ) e − i n ...
- 【笔记】4. 离散傅里叶变换及其性质
Discrete Fourier Transform 1. 离散傅里叶变换的表示 离散傅里叶变换就是有限长序列的离散频域表示,即有限长序列的离散傅里叶级数. x(n)x(n)x(n) 看作是周期为 N ...
- 离散时间傅里叶变换,Z变换,离散傅里叶变换性质对比
本篇讲述数字信号处理中离散时间傅里叶变换,z变换,离散傅里叶变换性质的比较.公式是在word中使用mathtype一个一个公式打的,表格无法直接复制到web编辑器中,因此只能上传截图.整理不易,尊重版 ...
- 【数字信号处理】傅里叶变换性质 ( 序列傅里叶变换共轭对称性质 | 实序列的幅频特性偶对称 | 实序列相频特性奇对称 | 示例说明 )
文章目录 一.实序列的 幅频特性 和 相频特性 对称性质 二.性质由来 三.示例说明 一.实序列的 幅频特性 和 相频特性 对称性质 如果 x(n)x(n)x(n) 序列是 " 实序列 &q ...
- 数字信号处理学习笔记(一)|离散傅里叶变换
离散傅里叶变换(DFT) 离散傅里叶变换(Discrete Fourier Transform)的实质是有限长序列傅里叶变换的有限点离散采样,实现了频域离散化,使数字信号处理可以在频域采用数值运算的方 ...
最新文章
- Json文件解析(上)
- java校验ip格式_JAVA IP地址格式验证,使用正则表达式
- python中几种交换2个变量的值的方法
- 小米+尚美的下沉CP,为酒店业释放了什么信号?
- 【帖子收藏】ansible 中的循环:with_file 和 with_fileglob
- python 从excel中抓取数据_使用Python抓取美团数据存于Excel中
- XmlHttpRequest 对象详解
- 【maven】javaee项目添加servlet、jsp依赖
- 八年溯源,如何巧搭区块链
- c++基于asio的组播:windows linux通信
- 恢复html的初始选定状态,jQuery实现点击旋转,再点击恢复初始状态动画效果示例...
- jquery.cookie 插件使用方法
- DSOframer 的简单介绍和资源整理(2015-09-02重新整理)
- 【IoT】产品设计之思维模型:四种知识结构
- docker redis
- 宏观低速物理 '牛顿篇'
- B. Frog Traveler(cf)bfs
- 如何理解接口隔离原则?
- ARM裸机开发篇3:ARM汇编语言程序设计
- 猫眼电影票房爬取到MySQL中_爬虫之爬取猫眼电影专业版实时数据排行榜
热门文章
- Java SE是什么?Java各个版本区别
- JavaScript简明教程三
- 批改网不能复制粘贴??!用python玩玩?
- Axure RP 7.0 - 动态面板的展开和折叠
- [C++]-JSON库nlohmann简介
- repo sync同步代码出现contains uncommitted changes
- end php 函数,PHP end() 函数 - PHP 参考手册 - 自强学堂
- 西南大学19春计算机在线作业,西南大学19春计算机应用基础在线作业.docx
- 习题4.7 从键盘输入一个整数,判断该数是否是完全数。
- 登陆账号时提示“账号登陆中!”该怎么处理呢?