基于matlab的数字音效处理器数字信号处理课设报告.docx

上传人:b****5 文档编号:3374809 上传时间:2022-11-22 格式:DOCX 页数:13 大小:165.05KB
下载 相关 举报
基于matlab的数字音效处理器数字信号处理课设报告.docx_第1页
第1页 / 共13页
基于matlab的数字音效处理器数字信号处理课设报告.docx_第2页
第2页 / 共13页
基于matlab的数字音效处理器数字信号处理课设报告.docx_第3页
第3页 / 共13页
基于matlab的数字音效处理器数字信号处理课设报告.docx_第4页
第4页 / 共13页
基于matlab的数字音效处理器数字信号处理课设报告.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

基于matlab的数字音效处理器数字信号处理课设报告.docx

《基于matlab的数字音效处理器数字信号处理课设报告.docx》由会员分享,可在线阅读,更多相关《基于matlab的数字音效处理器数字信号处理课设报告.docx(13页珍藏版)》请在冰豆网上搜索。

基于matlab的数字音效处理器数字信号处理课设报告.docx

基于matlab的数字音效处理器数字信号处理课设报告

一:

应用背景

利用所学习的数字信号处理知识,自己动手制作一个有趣的音效处理系统,看看能不能完成声音的逐渐放大和逐渐衰减、看看能不能让自己的声音发生一些改变(变得尖声尖气或粗声粗气)、看看改变声音播放速度有什么方法等等,你还可以自己想想还有什么有趣的变化,可以通过我们已有的知识让它实现。

作为课程设计,以下要求分为基本必做部分和提高必做部分,在提高部分你可以选择全部内容和部分内容,当然分数值是不一样。

二、基于MATLAB数字音效处理器

2.1:

实现步骤

基本要求描述(40分)

1)语音信号的采集(2分)

  要求利用Windows下的录音机,录制一段自己的话音,时间在5s内,存为*.WAV的文件。

然后在Matlab软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数。

2)语音信号的频谱分析(10分)

  要求首先画出语音信号的时域波形;然后对语音号进行快速傅里叶变换,得到信号的频谱特性,分析基频。

3)设计数字滤波器和画出其频率响应(10分)

  给出各滤波器的性能指标:

  

(1)低通滤波器性能指标 fb=1000Hz,fc=1200Hz,As=100dB,Ap=1dB。

  

(2)高通滤波器性能指标 fc=4800Hz,fb=5000HzAs=100dB,Ap=1dB。

  (3)带通滤波器性能指标 fb1=1200Hz,fb2=3000Hz,fc1=1000Hz,fc2=3200Hz,As=100dB,Ap=1dB。

 4) 用滤波器对信号进行滤波(5分)

  要求学生用自己设计的各滤波器分别对采集的信号进行滤波,在Matlab中,FIR滤波器利用函数fftfilt对信号进行滤波,IIR滤波器利用函数filter对信号进行滤波。

 5)比较滤波前后语音信号的波形及频谱(10分)

要求在一个窗口同时画出滤波前后的波形及频谱,做出分析。

6)回放语音信号(1分)

  在Matlab中,函数sound可以对声音进行回放。

其调用格式:

sound(x,fs,bits);可以感觉滤波前后的声音有变化。

7)实现慢录快放和快录慢放功能(2分)

3提高部分要求(选择60分内容)

8)实现对声音信号放大和衰减功能(10分)

9)实现对录音内容倒播放(30分)

10)实现混音音效效果(10分)

11)实现回音音效效果(10分)

12)实现男女变声音效效果(30分)

13)设计系统界面(10分)

为了使编制的程序操作方便,要求有能力的学生,设计处理系统的用户界面。

2.2试验程序

基础部分:

clear;clc;closeall;

%读取声音信号%

[x,fs,nbits]=wavread('bb',16384);%读声音文件

N=length(x);

n=[0:

N-1];

X=fft(x);%傅里叶变换

Fs=2*fs;%2倍频

T=1/Fs;

f=n/N*Fs;%把点数转换成频率

subplot(2,1,1);

plot(n,x);%画出原声音信号

ylabel('原声音信号');

xlabel('时间/s');

subplot(2,1,2);

plot(f,abs(X));%画出原声音信号的幅度谱

ylabel('语音的幅度谱');

xlabel('频率/Hz');

%%滤波器设计%

%%低通滤波器%

fp1=1000;fs1=1200;%设定低通滤波器通带截止频率和阻带截止频率

wp1=2*fp1/Fs;ws1=2*fs1/Fs;rp=1;as=100;

[N1,wp1]=ellipord(wp1,ws1,rp,as);%计算椭圆低通模拟滤波器的阶数和通带边界频率

[B,A]=ellip(N1,rp,as,wp1);%计算低通滤波器模拟滤波器系统函数系数

y1=filter(B,A,x);%滤波器软件实现

Y1=abs(fft(y1));

%低通滤波器设计与实现绘图部%

figure;

freqz(B,A);

y1t='y_1(t)';

figure;

subplot(2,1,1);

t=n*T;

plot(t,y1);

xlabel('t/s');ylabel(y1t);

axis([0,t(end),min(y1),1.2*max(y1)])%坐标范围

subplot(2,1,2);

plot(f,abs(fft(y1)));

%高通滤波器%

fp2=4800;fs2=5000;%设定高通滤波器通带截止频率和阻带截止频率

wp2=2*fp2/Fs;ws2=2*fs2/Fs;rp=1;as=100;

[N2,wp2]=ellipord(wp2,ws2,rp,as);%计算椭圆高通模拟滤波器的阶数和通带边界频率

[B2,A2]=ellip(N2,rp,as,wp2,'high');%计算高通滤波器模拟滤波器系统函数系数

y2=filter(B2,A2,x);%滤波器软件实现

%高通滤波器设计与实现绘图部分

figure;

freqz(B2,A2);

figure;

y2t='y_2(t)';

subplot(2,1,1);

t=n*T;

plot(t,y2);

xlabel('t/s');ylabel(y2t);

axis([0,t(end),min(y2),1.2*max(y2)])

subplot(2,1,2);

plot(f,abs(fft(y2)));

%带通滤波器%

fpl=1200;fpu=3000;fsl=1000;fsu=3200;

wp3=[2*fpl/Fs,2*fpu/Fs];ws3=[2*fsl/Fs,2*fsu/Fs];rp=1;as=100;

[N3,wp3]=ellipord(wp3,ws3,rp,as);%计算椭圆带通模拟滤波器的阶数和通带边界频率

[B3,A3]=ellip(N3,rp,as,wp3);%计算带通滤波器模拟滤波器系统函数系数

y3=filter(B3,A3,x);%滤波器软件实现

%带通滤波器设计与实现绘图部分

figure;

freqz(B3,A3);

y3t='y_3(t)';

figure;

subplot(2,1,1);

t=n*T;

plot(t,y3);

xlabel('t/s');ylabel(y3t);

axis([0,t(end),min(y3),1.2*max(y3)])

subplot(2,1,2);

plot(f,abs(fft(y3)));

%播放声音%

sound(x,fs);

sound(y1,fs);%低通

sound(y2,fs);%高通

sound(y3,fs);%带通

%变速%

w=0.8

M=w*fs;%相乘的数为大于一的数为快放,小于一的为慢放

sound(x,M);

提高部分:

%对声音信号放大和衰减%

%放大%

figure

o=10

forxa=1:

16384;

p(xa,1)=x(xa,1)*xa*o;

end

subplot(2,1,1);

plot(x);

xlabel('原始波形')

subplot(2,1,2);

plot(n/Fs,p);

xlabel('变换波形')

sound(20*p,fs);

%衰减%

figure

o1=0.9

forxa=1:

16384;

p(xa,1)=x(xa,1)/xa*o1;

end

subplot(2,1,1);

plot(x);

xlabel('原始波形')

subplot(2,1,2);

plot(n/Fs,p);

xlabel('变换波形')

sound(20*p,fs)

%%%倒放

figure

w1=x(1:

2350);

w2=x(2351:

3850);

w3=x(3851:

4850);

w4=x(4851:

5550);

w5=x(5551:

8550);

w6=x(10000:

10150);

w7=x(10151:

12500);

w8=x(12501:

16384);

y=[w8;w7;w6;w5;w4;w3;w2;w1];

sound(30*y,fs);

%%混频

[x5,fs5,nbits]=wavread('man',16384);%读声音文件

c=10*x+0.5*x5;

plot(c);

sound(c);

%%%%%%%回声

figure

z=[zeros(1000,1);x];%声音延时

x1=[x;zeros(1000,1)];%使原声音长度与延时后相等

y1=x1+z;

plot(y1);

sound(10*y1,fs);

%%%%%%%%%%男女声变换%%%%%%%%%%%%%%%%%%%%%%

%%%%%%男声变女声

[y,fs]=wavread('man');%saveY1%luyin

p=fft(y);

xaa=p';

N=1000;

pa=[zeros(1,N),xaa(1:

22001),zeros(1,N)];

pu=pa';

Y1=3*real(ifft(pu));

plot(Y1)

sound(20*Y1,fs);

%%%%%%%%女声变男声

[y,fs]=wavread('bb');%saveY1%luyin

p=fft(y);

xaa=p';

xab(1:

17797)=xaa(1:

17797);%取一半

N=3500;

pa=[xab(N:

17797),zeros(1,17797)];

pu=pa';

Y2=3*real(ifft(pu));

plot(Y2)

sound(1000*Y1,fs);

2.3绘图部分:

语音信号的采集

低通滤波器:

高通滤波器:

带通滤波器:

放大:

衰减:

倒放:

混频:

回声:

男声变女声:

女声变男声:

三课设总结:

参考文献

[美]数字信号处理——使用MATLAB[M].西安:

西安交通大学出版社,2002.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 学科竞赛

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1