matlab 音频fftshift,matlab使用杂谈5-fftshift函数的使用
matlab使用杂谈5-fftshift函数的使用
fftshift基本使用
主要作用:将零频分量移到频谱中心
简单示例
一般使用场合
fftshift基本使用
主要作用:将零频分量移到频谱中心
基本语法:
Y = fftshift(X)
Y = fftshift(X,dim)
X-输入数组,可以是向量、矩阵或多维数组,支持复数
dim - 沿其计算的维度
说明:
如果X是向量,则fftshift会将X的左右两半部分进行交换
如果X是矩阵,则fftshift会将X的第一象限与第三象限交换,将第二象限与第四象限交换
如果X是多维数组,则fftshift会沿每个维度减缓X的半空间
简单示例
交换行向量的左右两半部分,如果一个向量的元素为奇数,则中间的元素会被视为属于向量的左半部分
Initial = [1 2 3 4 5 6 7]
fftshift(Initial)
% 结果
ans = 5 6 7 1 2 3 4
一般使用场合
fftshift从名字上就能看出,主要是配合傅里叶变换使用
所以fftshift在分析信号的频率分量时十分有用,可以将零频分量移动到中心
下面沿用官网的一个实例:
创建信号S、计算其傅里叶变换,然后绘制功率曲线
fs = 100; % 频率
t = 0:(1/fs):(10-1/fs); % 时间分量
S = cos(2*pi*15*t); % 信号
n = length(S);
X = fft(S); 对信号进行傅里叶变换
f = (0:n-1)*(fs/n) % 频率范围
power = abs(X).^2/n; % 信号的振幅
plot(f,power)
如图所示
此时信号分量是从0-100的,不符合信号分析时的分布规则,因此需要利用fftshift将零频分量移动到中心
Y = fftshift(X,2)
fshift = (-n/2:n/2-1)*(fs/n);
powershift = abs(Y).^2/n;
plot(fshift,powershift);
以上主要是fftshift函数的使用了,一般来说咱们在利用matlab分析信号或者图像信息时,大概率会需要用到这个功能
傅里叶变换的详细讲解可以参照另外两篇博客:
https://blog.csdn.net/haoaoweitt/article/details/83012477
https://blog.csdn.net/lihe4151021/article/details/89675567
matlab 音频fftshift,matlab使用杂谈5-fftshift函数的使用相关推荐
- 逐步攻略:使用Matlab音频系统工具箱创建自己的VST插件,让音乐编程在Nashville崭新绽放
第一部分:引言与Matlab音频系统工具箱概览 尊敬的读者,欢迎阅读这篇文章.我作为一个热爱音乐和编程的人,十分激动地在这里和大家分享我最近的一次学习经验.正如标题所述,我们将探索一种崭新的方式来创建 ...
- Phase Vocoder的补充完善,Matlab音频变速不变调、变调不变速
之前有站内朋友介绍了国外的Phase Vocoder,Matlab音频变速不变调.变调不变速(Phase Vocoder)_cyz0612的博客-CSDN博客_matlab变调不变速代码参考这篇文章, ...
- MATLAB课程设计音频信号处理,MATLAB音频信号处理实验
南昌航空大学信息工程学院 课程实验报告 实验名称: 实验时间: 2014年4月23日 指导教师: 班 级 : 学 号 : 姓 名 : 成 绩 : 南昌航空大学实验报告 2014 年 4 月 23 日 ...
- matlab音频信号处理实验报告,matlab音频信号处理实验报告.docx
matlab音频信号处理实验报告 MATLAB音频信号处理实验 南昌航空大学信息工程学院 课程实验报告 实验名称:实验时间:2014年4月23日 指导教师: 班级: 学号: 姓名: 成绩: 南昌航空大 ...
- 声音信号预处理matlab,实验一 MATLAB音频信号处理实验
实验一MATLAB音频信号处理实验 一.实验目的 1.进一步加深DFT算法原理和基本性质的理解: 2.熟悉FFT算法原理: 3.理解掌握音频信号各参数的意义: 二.实验内容 1.对一个音频信号用FFT ...
- matlab的fftn,matlab fftn
(X,m,n) fftn 进行 n 维快速傅立叶变换(反变换用 ifftn) 语法:Y=ffn(X) \\ Y=fftn(X,siz) fftshift 快速傅立叶变换的 DC 组件移到光谱中心 语法 ...
- matlab中imapprox,Matlab图像处理工具箱:Image Processing Toolbox
图像处理工具箱是一个函数的集合,它扩展了matlab数值计算环境的能力.这个工具箱支持了大量图像处理操作,包括: 空间图像变换 Spatial image transformations 形态操作 M ...
- 基于matlab毕业设计题目,matlab毕业设计题目.doc
matlab毕业设计题目 matlab毕业设计题目 篇一:matlab毕业设计 龙岩学院 毕业设计 题目:基于matlab的音频信号处理 专业: 电子信息工程 学号: 作者: 指导教师(职称): 二0 ...
- 杭电Matlab与仿真-MATLAB基本语法(二)-数据文件的读/写操作
数据文件的读/写操作 实验目的 实验内容与要求 实验程序与结果 实验目的 学会matlab数据输入与输出基本操作: 熟悉matlab各种文件的输入输出方法,了解常用的图片及音频文件的输入输出: 掌握用 ...
- matlab 浮点数有效位,matlab浮点数精度
Matlab对应命令:ode23,ode45 说明: t0:初始时刻;tN:终点时刻 y0:初值; tol:计算精度调用格式: [t, y]=ode23 ('函数文件名', t0, tN, y0, t ...
最新文章
- oracle11g导出表时会发现少表,空表导不出解决方案。
- php是什么症状脾虚什么症状怎么治,脾虚的5个症状是什么呢
- linux双机热备 oracle,oracle for linux双机热备实战
- qemu核心机制分析-协程coroutine
- ros_openvino_toolkit环境搭建纪实
- mysql 数据库dbhelp_C# VS连接数据库DBhelp
- Google 各语言网站合集
- java永生代和新生代_Java:永生的对象和对象的复活
- ant-design官网打不开 , 需要用镜像地址打开
- 怎么激活linux系统远程桌面休眠状态,如何从命令行挂起/休眠?
- RELL软件测试初学者化妆品,浅析软件测试流程在高校软件测试工作室中的应用...
- 基于JAVA+SpringMVC+Mybatis+MYSQL的村民信息管理系统
- iOS之 开发学习笔记-block
- Vue cli3使用vue-awesome-swiper
- java openfileoutput_java-openFileOutput在单例类中不能正常工作-想...
- jquery easyui后台模板
- 普元EOS的项目部署
- L1、L2 正则项详解 - 解空间、先验分布、最大似然估计 and 最大后验估计
- 用C#一步步写串口通信
- DLL文件是什么?有几种调用方式?
热门文章
- 银河奇异果/云视听企鹅/CIBN/芒果TV哪个好?四款电视视频软件对比评测
- 文件同步工具BT Sync介绍和使用说明
- 头条 上传图片大小_遇到不会注册今日头条号,这么办?
- js获取当前url的ip+端口
- TabHost详细解析
- knockoutjs与ajax,MVVM架构~knockoutjs系列之为Ajax传递Ko数组对象
- HCIE面试真题战报及点评系列12
- 从零开始的Win10系统设置
- MCSA / Windows Server 2016 安装Desktop Experience
- 分享一款漂亮的Bootstrap模板INSPINIA_adminV2.5