工程信号与系统大作业文字

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

工程信号与系统

大作业

——音频信号频谱

分析比较

学院:电子工程学院

班级:1402018

姓名:***

学号:***********

一、大作业要求:

以下的内容,给出过程描述,原理分析,数据图表及分析。

1录制自己一段语音,分析其频谱特点。

2录制一段自己唱的歌曲,并与歌星唱的相同歌曲作频谱分析的比较(背景唱的去除)。

二、Matlab处理音频信号及歌曲背景音乐的去除

1.设计方案:

语音波形图是语音信号的时域分析,将语音信号记录成时域波形。语音信号首先是一个时间序列,进行语音分析时,最直观的就是它的时域波形。通过计算机的采样的量化,直接将语音波形显示出来。

利用MATLAB中的wavread命令来读入(采集)语音信号,将它赋值给某一向量。再将该向量看作一个普通的信号,对其进行FFT变换实现频谱分析。

利用matlab简单的函数可以完成对自己声音的录制,保存,利用第二个任务用到的程序可以完成对其频谱图的绘制。

对于歌手所唱歌曲背景音乐的去除,用Adobe Audition 软件来实现。具体步骤如下:

【第一步】打开AA,切换到多轨模式,选择“插入”栏下的“提取视频中的音频”,或者直接右键单击轨道,选择“插入”→“提取音频”,选择你要消声的音频片段。

【第二步】切换到单轨模式。

【第三步】选中一段没有人声的纯背景音乐部分,然后点击工具栏中的“效果”→“修复”→“降噪器(进程)。

【第四步】选择降噪器界面内的“获取特性”,就会自动获取噪音特性,然后就会出现这个界面

【第五步】取消选定特定区域,或者全部选中你要消除背景音乐的区域,再通过点击“效果”→“修复”→“降噪器(进程)”,此时又会出现降噪器界面了,这时候要注意界面内的“降噪级别”这一栏。

【第六步】全部调整好了之后,你就可以把它另存为了。

2.自己声音信号的获取:

利用录音机录下自己一段话音,并用格式工厂转化成wav格式音频,放入目标文件夹方便调用。

3.音频信号读入和播放

可支持两种格式的输入输出:NeST/SUN(后缀为“.au”)和Microsoft WAV文件(后缀为“.wav”)。本文采用的是WAV声音文件]。

wavread用于读取Microsoft的扩展名为“.wav”的声音文件,其调用格式如下:

y=wavread(file)

其作用是从字符串file所指定的文件路径读取wave文件,将读取的采样数据送到y中。若file中无“.wav”扩展名,则该命令自动将指定文件名后加上“.wav”扩展名。

[y,fs,nbits]=wavread(file);

其作用是返回采样率和每个采样的比特数。

4.MATLAB实现音频信号的频谱分析及可视化

a.对音频信号进行频谱分析要调用fft(快速傅立叶变换),调用格式:

y=fft(x);

y=fft(x)利用FFT算法计算矢量x的离散傅立叶变换,当x为矩阵时,y为矩阵x的每一列的FFT。当x的长度为2的冥次方时,则fft采用基-2FFT算法,否则采用稍慢的混合基算法。

实现幅度响应要调用求绝对值或幅值函数,调用格式:m=abs(h);

b.频谱可视化要调用plot函数,调用格式:

plot(x)

用mean和var函数可求得信号均值和方差。

三、程序设计:

1.用matlab录取自己的声音并绘制数据波形及频谱图[x1,Fs,bits]=wavread('H:\信号音频\huayin.wav'); subplot(211);

plot(x1);

title('我的话音信号');

xlabel('时间n');

ylabel('音量n');

y1=fft(x1);

y1=fftshift(y1);

c1 = Fs/length(x1);

subplot(212);

plot([-Fs/2:c1: Fs/2-c1],abs(y1));

title('我的话音信号频谱');

结果如图一所示:

图一

2.我的语音信号及频谱分析程序

[x1,Fs,bits]=wavread('H:信号音频\杨宁.wav'); subplot(211);

plot(x1);

title('杨宁的歌曲信号');

xlabel('时间n');

ylabel('音量n');

y1=fft(x1);

y1=fftshift(y1);

c1 = Fs/length(x1);

subplot(212);

plot([-Fs/2:c1: Fs/2-c1],abs(y1));

title('杨宁的歌曲信号的频谱');

结果如图二:

图二

3.歌手的语音信号及频谱分析程序

[x1,Fs,bits]=wavread('H:信号音频\chenyixun.wav'); subplot(211);

plot(x1);

title('歌手的歌曲信号');

xlabel('时间n');

ylabel('音量n');

y1=fft(x1);

y1=fftshift(y1);

c1 = Fs/length(x1);

subplot(212);

plot([-Fs/2:c1: Fs/2-c1],abs(y1));

title('陈奕迅的歌曲信号的频谱');

结果如图三:

图三

4.三个音频的均值及方差:

[x,fs,bits]=wavread('H:\信号音频\huayin.wav'); [x,fs,bits]=wavread('H:信号音频\杨宁.wav');%将杨宁.wav打开

[y,fs,bits]=wavread('H:信号音频\chenyixun.wav');%将chenyixun.wav打开

M=mean(x)

相关文档
最新文档