如何在MATLAB中进行音频的频谱分析?

一直很疑惑,首先我截了一段WAV格式的音频,该如何导入到MATLAB软件里?假如我用这行代码做分析:t=0:1/256:1;%采样步长y=2+3*cos(2*pi*50*... 一直很疑惑,首先我截了一段WAV格式的音频,该如何导入到MATLAB软件里?
假如我用这行代码做分析:

t=0:1/256:1;%采样步长
y= 2+3*cos(2*pi*50*t-pi*30/180)+1.5*cos(2*pi*75*t+pi*90/180);
N=length(t); %样点个数
plot(t,y);
fs=256;%采样频率
df=fs/(N-1) ;%分辨率
f=(0:N-1)*df;%其中每点的频率
Y=fft(y)/N*2;%真实的幅值
%Y=fftshift(Y);
figure(2)
plot(f,abs(Y));

那其中第二排的函数表达式是如何得到(分析而来)的?

又比如我查询到的MATLAB对音频的处理:

例1:现以微软自带的“Windows XP 关机.wav”音频信号为例,先将其复制另存到文件名为XPexit.wav的MATLAB当前目录中,再通过音量标准化处理后保存为XPquit.wav文件。实现程序如下:
  clear; close all; clc;  [Y,FS,NBITS]=wavread('XPexit.WAV');% 将WAV文件转换成变量
FS,NBITS,% 显示采样频率和量化比特  Ym=max(max(max(Y)),max(abs(min(Y)))),% 找出双声道极值  X=Y/Ym;% 归一化处理  wavwrite(X,FS,NBITS,'XPquit.wav')% 将变量转换成WAV文件
  试听可知标准化处理后音量稍大。

但是我试过以后发现MATLAB提示:

Error: File: Untitled.m Line: 2 Column: 1
The input character is not valid in MATLAB statements or expressions.

该如何操作呢?

我是新手学习MATLAB,有很多地方不懂,比如不懂上图程序框和下图的区别在哪里

希望有大神能解答我的疑问!
展开
 我来答
b40614104
2015-07-11 · TA获得超过575个赞
知道小有建树答主
回答量:139
采纳率:100%
帮助的人:77.6万
展开全部
y= 2+3*cos(2*pi*50*t-pi*30/180)+1.5*cos(2*pi*75*t+pi*90/180);
这行就是表达式,Y=2+3cos(100πt-。。。。),
那个错误提示就是你用的表达式不合法,需要重新换掉。系统已有这样一个表达。具体的去网站去搜搜,学会找到这个正确答案的方法
追问
如果我想对录音的信号进行频谱分析,是不是要得到音频波形的表达式?
追答
波形的表达式,你应该得不到,就像振动一样,非线性的振动很难用表达式来表达的。但是我们音频的时域振动图(横轴时间,Y轴是幅值),就像振动一样。然后通过FFT变换,得到频谱图。然后你也可以得到各种图,比如自相关谱,互相关谱,功率谱(能量随功率的分布情况)。

如果你想提取特征值,可以用小波分析,包络解析(希尔伯特变换)等。这些都可以在Matlab中找到工具包,找不到去网上搜,肯定会有。
北京康思
2018-09-20 广告
电压的测量利用示波器所做的任何测量,都是归结为对电压的测量。示波器可以测量各种波形的电压幅度,既可以测量直流电压和正弦电压,又可以测量脉冲或非正弦电压的幅度。更有用的是它可以测量一个脉冲电压波形各部分的电压幅值,如上冲量或顶部下降量等。这是... 点击进入详情页
本回答由北京康思提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式