halflength=floor(sigLength/2); %半宽度
f=Fs*(0:halflength)/sigLength; %采样频率的横坐标
figure;plot(f,Pyy(1:halflength+1));xlabel('Frequency(Hz)'); %在第一个窗口画率谱
t=(0:sigLength-1)/Fs; %计算时间轴
figure;plot(t,y);xlabel('Time(s)'); %在第二个窗口画波形
原始信号波形10.50-0.500.511.522.5x 105原始信号频谱500400300200100000.511.522.533.5x 1044
图4-1原始语音信号
由图可知这段语音信号频率主要集中在1000Hz左右。
4.3对语音信号进行调制
为了减少在传输时的耗损,人们一般是先对传输信号进行特殊处理,然后再传递。把原始的待传信号托附到高频振荡的过程称为调制。我们知道音频信号的频率在我们的听觉范围内,音频信号在无线传输的过程中会受到各种声音的干扰而产生能量消耗,因此限制了传输的距离,所以在现实的传送过程中要现对语音信号进行调制再发送出去。
若欲传送信号为xm(t)其振幅限制不可大于一 xm(t)?1 21
载波为
xc(t)?Acos(2?fct)
fc为载波中心频率,单位为赫兹。A是任意振幅。传送信号将会是
xc(t)?Acos2??f(?)d??Acos2???fc?f?xm(?)?d?
00?t??t?在此, f(t)?fc?f?xm(t)
公式中,f(t)是振荡器的瞬时频率,fΔ是频偏(频率偏移),代表在一个方向上相对fc的最大频率偏离,在此我们假定xm(t)是有限的幅值限于±1之间。
下面是对一段语音信号的调制仿真图,载波频率为fc=20000。
调制后信号波形10.50-0.5-100.511.522.5x 10调制后信号频谱4000300020001000000.511.522.533.5x 10445
图4-2调制后的语音信号
由图可知,经过调制后的语音信号频谱都搬移到fc=20000的频段。
4.4设计数字滤波器和画出频率响应
根据语音信号的特点给出有关滤波器的性能指标:
低通滤波器性能指标,fp=1000Hz,fc=1200Hz,As=100dB,Ap=1dB; 用双线性变换法设计的低通滤波器的程序如下: fp=1000;fc=1200;As=100;Ap=1;fs=22050;
22
wc=2*fc/fs;wp=2*fp/fs; [n,wn]=ellipord(wp,wc,Ap,As); [b,a]=ellip(n,Ap,As,wn); freqz(b,a,512,fs); 滤波器的频率响应
50Magnitude (dB)0-50-100-1500200040006000Frequency (Hz)8000100000Phase (degrees)-200-400-600-800-10000200040006000Frequency (Hz)800010000 图4-3滤波器的频率响应
4.5进行低通滤波
低通滤波可以简单的认为:设定一个频率点,当信号频率高于这个频率时不能通过,在数字信号中,这个频率点也就是截止频率,当频域高于这个截止频率时,则全部赋值为0。因为在这一处理过程中,让低频信号全部通过,所以称为低通滤波。比较滤波前后语音信号的波形及频谱。低通滤波器(low-passfilter)容许低频信号通过,但减弱(或减少)频率高于截止频率的信号的通过。对于不同滤波器而言,每个频率的信号的减弱程度不同。当使用在音频应用时,它有时被称为高
23
频剪切滤波器或高音消除滤波器。低通滤波器在信号处理中的作用等同于其它领域如金融领域中移动平均数(moving average)所起的作用。
程序如下:
[y,fs,bits]=wavread('e:\\hy.wav'); %函数wavread是对语音信号进行
采样,格式是[y,fs,nbit]=wavread,返回采样值放在向量y中,fs表示采样频率(Hz),nbit表示采样位数。
fp=1000;fs=2000;rp=0.5;rs=40;fc=40000;%设定通带截止频率(fp)、阻带
截止频率(fs)、通带波纹系数(rp)、阻带波纹系数(rs)、抽样频率(fc)。
wp=2*fp/fc;ws=2*fs/fc; %将模拟域转化成数字域。 if get(handles.radiobutton1,'value')%如果选择radiobutton1,则制做巴
特沃思滤波器。
[N,Wc]=buttord(wp,ws,rp,rs); %估算巴特沃思滤波器的阶数N和3dB
截止频率Wc。
[num,den]=butter(N,Wc); %求传输函数的分子和分母多项式的
系数。
else %选择radiobutton2,则制做切比雪
夫Ⅰ型滤波器。
[N,Wc]=cheb1ord(wp,ws,rp,rs); %估算切比雪夫Ⅰ型滤波器的阶数N
和截止频率Wc。
[num,den]=cheby1(N,rp,Wc); %求传输函数的分子和分母多项式
的系数。
end
x=filter(num,den,y); %根据传输函数的分子和分母多项
式的系数得到模拟滤波器,并将y通过该滤波器,得到x。
sound(x,fc,bits); %将滤波后的信号x进行回放。 X=fft(x); %将x信号进行快速傅里叶变换。 plot(x); %在axes3坐标轴上画出x信号的
波形图。
plot(abs(X)); %在axes4坐标轴上画出频谱图。
24
低通滤波后的信号波形0.50-0.500.511.522.5x 105低通滤波后信号频谱400300200100000.511.522.533.5x 1044
图4-4 低通滤波后的信号波形和频谱
由图4-4可知低通滤波后,高频分量被低通滤波器衰减。所以声音稍微有些发闷、低沉,但是很接近原来的声音。
25