重庆大学数字信号处理大作业报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字信号处理课外实验设计——音频采样和频谱混叠
课程名称:数字信号处理
院系:通信工程学院
专业:通信01班
年级: 2013级
*名:***
学号: ********
指导教师:**
实验时间: 2015.11.26
重庆大学
一、实验目的:
1、熟悉MATLAB语言的基本用法;
2、掌握MATLAB语言中音频数据与信息的读取与播放方法;
3、掌握在MATLAB中设计滤波器的方法;
4、掌握MATLAB语言中信号频谱的绘制方法。
5、对采样定理进行初步验证,体会频谱混叠现象,并大致确定音频信号的最低采样频率。
二、实验原理:
现实当中遇到的绝大多数信号都是连续的,即所谓的连续信号。如语音、图像、温度压力电流等都是模拟信号。要利用数字信号处理技术实现对这些信号的处理,需要借助对这些信号的处理,需要借助A/D转换,先将模拟信号转变为数字信号后才能利用数字技术对其进行加工处理。因此,采样是从连续到离散的桥梁。
如果选择的采样频率太低,及fs<2fm的采样频率太低,或者说是信号的最高频率fm 超过fs/2,则采样后的频谱按照采样率周期延拓时,各周期延拓分量产生频谱的交叠,这种现象叫频谱混叠。
三、实验内容:
本实验通过MATLAB软件,完成以下四项任务
1、用fs=44100HZ采集一段音乐。
2、改变采样频率,用fs=5512HZ采集一段音乐,体会混叠现象。
3、录制一段自己的声音,试验当fs=?时,发生混叠。
4、(选作)在噪声环境中录制一段自己的声音,试采用一种方法将噪声尽可能地消除。
四、实验步骤:
仿真程序DSP_homework1.m:
clc;
clear;
close all;
%% 44100Hz和5512Hz采集音频文件
[FileName,PathName] = uigetfile('*.wav','选择待处理音频文件');%获取处理音频文件位置
path1=fullfile(PathName,FileName);
[x,Fs1]=audioread(path1);%默认采样频率Fs为44100Hz
x1=x(:,1);%1声道数据
x2=x(:,2);%2声道数据
%y1=x1(1:800000);
%y1=x1(1:8:end);
Fs2=5512;
y1=resample(x1,5512,44100); %信号降采样处理,采样从44100Hz降到5512Hz
y2=resample(x2,5512,44100);
y=[y1 y2];
t1=0:1/Fs1:(length(x1)-1)/Fs1;%取时域横轴t
t2=0:1/Fs2:(length(y1)-1)/Fs2;
N =5096; %fft点数,以频谱分辨率为10Hz,信号最高频率40kHz求出记录最小点数
f=10^3;%取频率轴单位为KHz
X1=fft(x1,N);
X1=10*log(abs(fftshift(X1)));%用对数表示44100Hz音频信号的频谱
Y1=fft(y1,N);
Y1=10*log(abs(fftshift(Y1)));%用对数表示5512Hz音频信号的频谱
PathName1=uigetdir(strcat(matlabroot,'\work' ),'加噪后音频文件另存为');
FileName1='music_5512.wav'
path2=fullfile(PathName1,FileName1);
audiowrite(path2,y,Fs2);%生成5512Hz采样的wav格式音频文件,试听音乐效果
%% 绘图
figure(1);%44100Hz采集音频信号时域图、频谱图
subplot(2,1,1);
plot(t1,x1,'r');
axis([0 95 -1 1]);%设置坐标轴范围
set(gca,'XTick',0:5:95),grid on;%设置x坐标轴刻度,绘制方格线
set(gca,'YTick',-0.8:0.2:0.8),grid on;%设置y坐标轴刻度,绘制方格线title('44100Hz采样音乐信号波形');
xlabel('时间轴,单位s');
subplot(2,1,2);
plot((-N/2+1:N/2)*Fs1/N/f,X1,'b');
axis([-25 25 -70 50]);
set(gca,'XTick',-25:5:25),grid on;
set(gca,'YTick',-70:20:50),grid on;
title('44100Hz采样音乐信号频谱图');
xlabel('频率轴,单位kHz');
ylabel('单位:dB');
figure(2)%5512Hz采集音频信号时域图、频谱图
subplot(2,1,1);
plot(t2,y1,'r');
axis([0 95 -1 1]);%设置坐标轴范围
set(gca,'XTick',0:5:95),grid on;%设置x坐标轴刻度,绘制方格线
set(gca,'YTick',-0.8:0.2:0.8),grid on;%设置y坐标轴刻度,绘制方格线title('5512Hz采样音乐信号波形');
xlabel('时间轴,单位s');
subplot(2,1,2);
plot((-N/2+1:N/2)*Fs2/N/f,Y1,'b');
axis([-3 3 -70 50]);
set(gca,'XTick',-3:1:3),grid on;
set(gca,'YTick',-70:20:50),grid on;
title('5512Hz采样音乐信号频谱图');
xlabel('频率轴,单位kHz');
ylabel('单位:dB');
仿真程序DSP_homework2.m: