采样对象

40个离散点,在实空间的40个点内,有2个周期:

采样周期:1/2

每两个点抽样一个,所以抽样结果如下:

对抽样结果分别进行模拟DFT和FFT运算,得到抽样信号的频谱图:

对比两图发现:
1.DFT得到的频谱是40个频率刻度,而FFT得到的只有20个频率刻度。
2.DFT得到的频谱有4个频率分量,而FFT只有两个频率分量。
所以哪个方法得到的结果是对的呢?再回答这个问题前,先看看下面这个离散点只有20个的2(周期)信号图以及他的频谱图(注:此信号不是原信号):


是的,这两个频域图一模一样,连频域的刻度都一样。实空间的曲线也是一样的(因为都是两个周期,且离散点都是20个),只有横轴的范围不一样:一个是1—40,另一个是1—20。是的,FFT把抽样函数当做相同周期的另一个函数了。
造成这一结果的原因在于:抽样函数的离散点减少了,少于原来40个点了。之前说过,频谱会按照离散点的取值,划分频谱图里的频率刻度。40个点划40个频率,20个点划20个基频。
所以只需要把没有采样的点置0,保持40个采样点,就可以得到采样信号的频谱了:


可以看到,这样抽样后的频谱图和之间的DFT是一样的,所以我们以后抽样的时候,没有抽到的部分也要保留下来并置0。
代码:

close all;%% 原信号
n = 0:1:39;                 %40个离散点
A = cos(2*pi*n*2/40);       %频率:2个周期
figure; stem(n,A); hold on; plot(n,A); title('原信号');%% 抽样信号
n = 0:2:39;                 %20个离散点
A = cos(2*pi*2*n/40);
figure; stem(n,A); hold on; plot(n,A); title('抽样信号');%% 抽样信号作FFT和DFT
A = cos(2*pi*2*n/40);B = fft2(A);
figure; stem(B); title('抽样信号FFT');  sum = zeros(1,20);
for freq = 0:2:39B = cos(2*pi*freq*n/40);C = A.*B;for num = 0:19sum(freq/2+1) = sum(freq/2+1) + C(num+1);end
end
figure; stem(n,sum); title('抽样信号DFT');%% 原信号20个离散点
n = 0:1:19;                 %20个离散点
A = cos(2*pi*n*2/20);       %频率:2个周期
figure; stem(n,A); hold on; plot(n,A); title('20离散点信号');B = fft2(A);
figure; stem(B); title('20离散点信号FFT');  sum = zeros(1,20);
for freq = 0:1:19B = cos(2*pi*freq*n/20);C = A.*B;for num = 0:19sum(freq+1) = sum(freq+1) + C(num+1);end
end
figure; stem(n,sum); title('20离散点信号DFT');%% 修改后的采样信号频谱
A = zeros(1,40);            %40个离散点
for num = 0:2:39            %抽样1/2A(num+1) = cos(2*pi*2*num/40);
endn = 0:1:39;
figure; stem(n,A); title('40离散点抽样信号');
B = fft2(A);
figure; stem(B); title('40离散点抽样信号FFT');  

matlab信号采样相关推荐

  1. 连续函数matlab采样,基于 MATLAB 的时域信号采样及频谱分析(转)

    一.课程设计题目: 基于 MATLAB 的时域信号采样及频谱分析 二.基本要求: ① 掌握数字信号处理的基本概念.基本理论和基本方法: ② 学会 MATLAB 的使用,掌握 MATLAB 的程序设计方 ...

  2. matlab对正弦采样信号采样重建,信号与系统实验报告4

    实验报告 课程名称:信号与系统 实验项目名称:实验4 信号抽样及抽样定理 实 验 目 的: 学会运用MATLAB完成信号抽样及对抽样信号的频谱进行分析:学会运用 MATLAB改变抽样间隔,观察抽样后信 ...

  3. Matlab重建信号实验总结,实验三信号采样与重建(实验报告).doc

    实验三信号采样与重建(实验报告) <信号与系统>实验报告 学院 专业 班级 姓名 学号 时间 实验三 信号采样与重建 一.实验目的 1.进一步学习MATLAB的函数及其表示. 2.掌握及验 ...

  4. 信号采样与sinc插值恢复MATLAB

    信号采样与sinc插值恢复[MATLAB] 根据采样定理,若想无失真地从采样信号重建信号,需要满足: 信号为频带有限信号. fs≥2fmf_s \ge 2f_mfs​≥2fm​. 令插值因子为sinc ...

  5. matlab信号内插,【 MATLAB 】MATLAB 实现模拟信号采样后的重建(三)应用三次样条函数spline实现内插...

    前三篇博文讲了三种方法进行内插重建信号: 这篇文章使用三次样条函数spline来实现内插重建,并分析重建误差. 采用的案例依然是上篇博文中的案例: 模拟信号: 对该信号使用两种不同的采样频率采样. a ...

  6. matlab怎么对语音信号取样,语音信号采样和频谱分析

    <语音信号采样和频谱分析>由会员分享,可在线阅读,更多相关<语音信号采样和频谱分析(3页珍藏版)>请在人人文库网上搜索. 1.语音信号采样和频谱分析 一实验目的 1)掌握傅里叶 ...

  7. matlab 信号插零,【 MATLAB 】MATLAB 实现模拟信号采样后的重建(二)零阶保持(ZOH)...

    这篇博文我们使用零阶保持器(ZOH)来重建信号,采用的案例依然是上篇博文中的案例: 模拟信号: 对该信号使用两种不同的采样频率采样. a. 在 fs = 5000 对信号进行采样 b. 在 fs = ...

  8. matlab怎么语音时域采样频谱,基于MATLAB的时域信号采样及频谱分析

    基于 M ATL AB的时域信号采样及频谱分析 刘 艳 (长江师范学院物理学与电子工程学院 重庆 408000) 信 息 技 术 摘 要:在MATLAB仿真环境下,通过观察所生成的采样信号的时域图和频 ...

  9. matlab结课论文_科研小班 | 加州大学伯克利分校 | 物理、电子工程:MATLAB信号和数据处理课题...

    科研小班 | 加州大学伯克利分校 | 物理.电子工程:MATLAB信号和数据处理课题(2021.1月开课)​mp.weixin.qq.com 工程研究领域中,实验.模拟往往都会产生海量的数据.对这些数 ...

最新文章

  1. iMeta | 浙大倪艳组MetOrigin实现代谢物溯源和肠道微生物组与代谢组整合分析
  2. 如何成为一名入门级 iOS 开发者
  3. Docker最全教程——从理论到实战(四)
  4. linux清理备份日志,服务器日志清理备份
  5. 数据结构实验之栈五:下一较大值(一)
  6. Mac计算器的计算过程怎么看?教你一键查看运算记录!
  7. 记录——《C Primer Plus (第五版)》第九章编程练习第十题
  8. tp3.2 实现增删改查
  9. IBM System 服务器做RAID步骤
  10. 黄聪:让WordPress主题支持语言本地化(使用poedit软件实现中文翻译功能)
  11. 图片验证码识别教程技术原理分析
  12. dreamweavercc 数据库_dreamweaver两种方法连接数据库(测试成功,超详细步骤)
  13. 在div中加本地html,div加载另一个HTML页面
  14. 全球及中国面膜行业消费格局与十四五趋势分析报告2022年
  15. 仿照Flexstroe3写的一个员工管理应用 (三)
  16. 如何利用华硕Mesh系统路由器在780平方公尺大的场域架设可靠的WiFi系统?
  17. vue-time-slot 一款基于vue3的会议预约时间组件,时间轴为早7-晚11,可自由选择,并且非常方便。
  18. c++ 求int数组的长度
  19. Jasper Report 6.8 根据后台数据生成动态报表(JRXML文件实现)(二)生成XML文件(支持json,bean,map list数据源)
  20. 有创意的LED电子骰子

热门文章

  1. halcon获取图像中心点_halcon学习网
  2. 微信小程序 - 折叠展开效果
  3. CMOS基本知识整理
  4. 中国护照含金量再上升,Qbao Network 教你玩转全球54个国家!(一)
  5. c++实现简单通讯录系统
  6. 在jetson tx2上配置jetson-inference的流程以及报错解决
  7. CE教程 第七章 《多级指针》
  8. 人工智能 遗传算法(GA) 求解三元函数z的最大值 Java
  9. Python的准备工作——安装、配置、第一个项目、汉化(可不做)
  10. 参加训练营的心得体会