北京交通大学数字信号处理04DSP研究性学习报告多速率信号处理

合集下载

DSP研究性学习报告-频谱计算1-2题

DSP研究性学习报告-频谱计算1-2题

《数字信号处理》课程研究性学习报告姓名学号同组成员指导教师时间DFT近似计算信号频谱专题研讨【目的】(1) 掌握利用DFT近似计算不同类型信号频谱的原理和方法。

(2) 理解误差产生的原因及减小误差的方法。

(3) 培养学生自主学习能力,以及发现问题、分析问题和解决问题的能力。

【研讨题目】基本题1.利用DFT分析x(t)=A cos(2πf1t)+B cos(2πf2t)的频谱,其中f1=100Hz,f2=120Hz。

(1)A=B=1; (2)A=1,B=0.2。

要求选择不同的窗函数。

【题目分析】1.对于第一小问,A=B=1,抽样频率应大于最高频率的2倍,才能避免频率混叠,另外由于信号无限长,所以采用矩形窗进行截短,要想分辨f1,f2两个频率,应满足N≧f sam/△f2.第二问中f2频率信号比较弱,如果也采用矩形窗,会使得频率泄漏比较大,无法检测到f2频率分量,因此应选择旁瓣较小的Hamming窗【仿真结果】【结果分析】对实验结果进行比较,总结出选择合适DFT参数的原则。

【自主学习内容】【阅读文献】【发现问题】(专题研讨或相关知识点学习中发现的问题):【问题探究】【仿真程序】N=30;L=512;f1=100;f2=120;fs=500;T=1/fs;ws=2*pi*fs;t=(0:N-1)*T;x=cos(2*pi*f1*t)+cos(2*pi*f2*t);X=fftshift(fft(x,L));w=(-ws/2+(0:L-1)*ws/L)/(2*pi);plot(w,abs(X));ylabel('幅度谱')N=30;L=512;f1=100;f2=120;fs=500;T=1/fs;ws=2*pi*fs;t=(0:N-1)*T;x=cos(2*pi*f1*t)+0.15*cos(2*pi*f2*t);wh=(hamming(N))';x=x.*wh;X=fftshift(fft(x,L));w=(-ws/2+(0:L-1)*ws/L)/(2*pi);plot(w,abs(X));ylabel('幅度谱')【研讨题目】基本题2.已知一离散序列为==kkx[Λksin(,31],1,0),π2.0(1)用L=32点DFT计算该序列的频谱,求出频谱中谱峰的频率;(2)对序列进行补零,然后分别用L=64、128、256、512点DFT计算该序列的频谱,求出频谱中谱峰的频率;(3)讨论所获得的结果,给出你的结论。

北京交通大学数字信号处理第二次研讨

北京交通大学数字信号处理第二次研讨

《数字信号处理》课程研究性学习报告数字信号处理第二次研讨【研讨题目】基本题3.已知一离散序列为x[k]=cos(Ω0k)+0.75cos(Ω1k), 0≤k≤ 63 其中Ω0=0.4π, Ω1=Ω0+π/64(1) 对x[k]做64点FFT, 画出此时信号的频谱。

(2) 如果(1)中显示的谱不能分辨两个谱峰,是否可对(1)中的64点信号补零而分辨出两个谱峰。

通过编程进行证实,并解释其原因。

(3) 给出一种能分辨出信号中两个谱峰的计算方案,并进行仿真实验。

(M2-4)【题目分析】分析影响谱峰分辨率的主要因数,进一步认识补零在在频谱计算中的作用。

【仿真结果】图1 不同点数FFT仿真结果【结果分析】(1)对x[k]64点FFT频谱如上图所示;(2)从图中可以看出,显示的谱不能分辨两个频谱;可以通过对(1)中的64点信号补零而分辨出两个谱峰,增加序列长度N,能使得谱峰显现出来。

(3)通过对序列进行补零,能改善显示分辨率,但是不能改善频谱分辨率。

因此可以适度对序列进行补零,增加频谱显示分辨率。

【自主学习内容】数字信号处理相关内容MATLAB函数用法【阅读文献】《数字信号处理》陈后金主编《matlab使用教程》百度文库【发现问题】(专题研讨或相关知识点学习中发现的问题):熟练使用Matlab仿真程序很重要,不熟练会花费较多时间编程调试【问题探究】1.连续信号的频率是非周期的,离散信号的频谱是连续信号频谱的周期话,可能会出现频谱叠;2.窗函数的突然截断会导致频谱中出现多余的高频分量,增加信号的长度不能减少频谱泄露。

【仿真程序】图2 MA TLAB仿真程序实现MATLAB代码:function [ ] = H2 ( )w0=0.4*pi;dw=pi/64;w1=w0+dw;N_set=[64 128 256];L_set=[64 128 256 512];for N_index=1:length(N_set);N=N_set(N_index);k=0:N-1;x=cos(w0*k)+0.75*cos(w1*k);for L_index=1:length(L_set);L=L_set(L_index);if L<NcontinueendX=fft(x,L);m=(0:L-1)*2/L;subplot(length(L_set),length(N_set),(L_index-1)*length(N_set)+N_index );plot(m,abs(X));axis([0.38 0.44 0 100]);title(['N=' num2str(N) 'L=' num2str(L)]);hold on;fr1=[0.4 0.4];fr2=[0.4+1/64,0.4+1/64];y=[0 100];plot(fr1,y,'r',fr2,y,'g');endend。

北交大DSP研究性学习报告数字滤波器设计2014

北交大DSP研究性学习报告数字滤波器设计2014

【研讨题目】 基本题 分析矩形窗、汉纳窗、哈明窗、布莱克曼窗、凯泽窗的频域特性,并进行比较。 【题目分析】 本题分析不同的窗函数的频域特性,预计可以看出不同的窗有不同的过渡带大小和不同的旁瓣 宽度,可以满足对不同的设计设计要求。 【仿真结果】
矩形窗的幅度谱 10 9 8 7 6
汉纳窗的幅度谱 4.5 4 3.5 3 2.5
0.18
0.2
0
0.02Βιβλιοθήκη 0.040.060.08 0.1 0.12 Normalized frequency
0.14
0.16
0.18
0.2

Ap 0.5dB Ap 1dB
0 -10 -20 -30 -40
Gain,dB
-50 -60 -70 -80 -90 -100
0
0.02
0.04
0.06
������
plot(w,abs(WH1)); title('¾ØÐδ°µÄ·ù¶ÈÆ×'); %ººÄÉ´° figure(2) wh2=hann(N)'; WH2=fftshift(fft(wh2,L)); w=(0:L-1)-L/2; plot(w,abs(WH2)); title('ººÄÉ´°µÄ·ù¶ÈÆ×'); %¹þÃ÷´° figure(3) wh3=hamming(N)'; WH3=fftshift(fft(wh3,L)); w=(0:L-1)-L/2; plot(w,abs(WH3)); title('¹þÃ÷´°µÄ·ù¶ÈÆ×'); %²¼À³¿ËÂü´° figure(4) wh4=blackman(N)'; WH4=fftshift(fft(wh4,L)); w=(0:L-1)-L/2; plot(w,abs(WH4)); title('²¼À³¿ËÂü´°µÄ·ù¶ÈÆ×'); %¿-Ôó´° figure(5) beta=6; wh5=kaiser(N,beta)'; WH5=fftshift(fft(wh5,L)); w=(0:L-1)-L/2; plot(w,abs(WH5)); title('¿-Ô󴰵ķù¶ÈÆ×');

DSP研究性学习报告

DSP研究性学习报告

《数字信号处理》课程研究性学习报告组长姓名学号同组成员姓名姓名姓名姓名学号学号学号学号指导教师时间数字信号处理课程专题研讨【目的】(1) 掌握iir和fir数字滤波器的设计和应用; (2) 掌握多速率信号处理中的基本概念和方法; (3) 学会用matlab计算小波分解和重建。

(4)了解小波压缩和去噪的基本原理和方法。

【研讨题目】一、(1)播放音频信号 yourn.wav,确定信号的抽样频率,计算信号的频谱,确定噪声信号的频率范围; (2)设计iir数字滤波器,滤除音频信号中的噪声。

通过实验研究?p,?s,ap,as 的选择对滤波效果及滤波器阶数的影响,给出滤波器指标选择的基本原则,确定你认为最合适的滤波器指标。

(3)设计fir数字滤波器,滤除音频信号中的噪声。

与(2)中的iir数字滤波器,从滤波效果、幅度响应、相位响应、滤波器阶数等方面进行比较。

【温磬提示】在设计数字滤波器前,要由信号的抽样频率确定数字滤波器频率指标。

【设计步骤】1. 用matlab画出频域图形,确定噪声信号的频率范围。

由图可知我们要设计一个带阻滤波器,参数如下:?p1?1.5*105? rad , ?s1?1.7*105? rad , ?p2? rad , ?s2? rad ,ap?1 db , as?30 db 2. 设计iir数字滤波器: 1) 我们选择双线性法; 2) 我们t=2,由??2?tan()得模拟滤波器的频率指标为 t2?p?2.4142 rad/s , ?s?4.1652 rad/s3) 由[n,wc]=buttord(2.4142,41652,1,30,s); [num,den]=butter(2,1,s)可得模拟滤波器的分子多项式系数和分母多项式系数为num =0 0 1den =1.0000 1.4142 1.0000即 h(s)?再由1s2?1.4142s?1.0000[numd,dend]=bilinear(num,den,0.5)可得双线性变换后的数字滤波器的分子多项式系数和分母多项式系数为:即numd = 0.2929 0.5858 0.2929 dend = 1.0000 -0.0000 0.17160.2929(1?z?1)2h(z)? ?21?0.1716z3. 设计fir数字滤波器【仿真结果】(1)用matlab画出频域图形:时域图像频域图像x 105x 105(2)用iir滤波器滤波效果:【结果分析】【自主学习内容】【阅读文献】【发现问题】 (专题研讨或相关知识点学习中发现的问题):【问题探究】【仿真程序】 1.1 画出音频频谱[y,fs,nbits]=wavread (yourn.wav); sound(y,fs,nbits); n = length (y) ; y=fft(y,n); subplot(2,1,1); plot(y);title(时域图像); subplot(2,1,2); plot(abs(y));title(频域图像); 1.2二、(1)音频信号kdqg24k.wav抽样频率为24khz,用y = wavread(kdqg24k); sound(y,16000);播放该信号。

北京交通大学《信号与系统》专题研究性学习实验报告

北京交通大学《信号与系统》专题研究性学习实验报告

《信号与系统》课程研究性学习手册专题一信号时域分析1. 基本信号的产生,语音的读取与播放【研讨内容】1) 生成一个正弦信号,改变正弦信号的角频率和初始相位,观察波形变化;2) 生成一个幅度为1、基频为2Hz 、占空比为50%的周期方波,3) 观察一定时期内的股票上证指数变化,生成模拟其变化的指数信号,4) 录制一段音频信号,进行音频信号的读取与播放【题目分析】⑴正弦信号的形式为Acosg o t+书)或Asin (3 o t+,分别用MATLAB 的内部函数cos 和sin 表示,其调用形式为y A* cos(w0* t phi)、y A*sin(wo*t phi)。

生成正弦信号为y=5sin(t), 再依次改变其角频率和初相,用matlab 进行仿真。

⑵幅度为1 ,则方波振幅为0.5 ,基频wO=2Hz ,则周期T=pi ,占空比为50% , 因此正负脉冲宽度比为 1 。

(3) 将波形相似的某一段构造成一个指数函数, 在一连续时间内构造不同的2~3 个不同指数函数即可大致模拟出其变化。

(4) 录制后将文件格式转化为wav ,再用wavread 函数读取并播放,用plot 函数绘制其时域波形。

【仿真】( 1 ) 正弦信号正弦信号 1 :A=1;w0=1/4*pi;phi=pi/16;t=-8:0.001:8;xt 仁A*si n(w0*t+phi);plot(t,xt1)title('xt 仁si n( 0.25*pi*t+pi/16)')正弦信号2 (改变1中频率)A=1;w1=1/4*pi;w2=1*pi;phi=pi/16; t=-8:0.001:8; xt 1= A*si n(w1*t+phi);xt2=A*si n(w2*t+phi);plot(t,xt1,t,xt2)正弦信号3 (改变1中相位)A=1;w=1/4*pi;phi仁pi/16;phi2=pi/4; t=-8:0.001:8; xt 1=A*si n(w*t+phi1);xt3=A*si n(w*t+phi2) plot(t,xt1,t,xt3)0.4 -0.2 -0 --0.2 --0.4 --0.6 --0.8 〜(2) 方波信号t=-100:0.01:100;T=0.5;f=1/T;y=square(2*pi*f*t,50);Plot(t,y);axis([-2 2 -3 3]);-3 1—--------- [ ------------ ■ ----------- 1- ---------- 1 ----------- 1 ----------- 1 ----------- 1 -------------------------t-2 -1.5 -1 -0.5 0 0.5 1 1.520.80.6-1 ------------- [ ---------- L-8 -6 -4(3) 模拟股票上证指数变化的指数信号x1=0:0.001:5;y1=2500+1.8*exp(x1);x2=5:0.001:10;y2=2847-1.5*exp(0.8*x2);x3=10:0.001:15;y3=2734+150*exp(-0.08*x3);x4=15:0.001:20;y4=2560-156*exp(-0.08*x4);x=[x1,x2,x3,x4];y=[y1,y2,y3,y4];plot(x,y);30002500200015001000500-500-1000-1500(4) 音频信号的读取与播放 [x,Fs,Bits]=wavread( sou nd(x,Fs,Bits) plot(x)-2000 ---------- [-------- [---------- L0 2 4 6 8 10 1214 16 18 20 'C:\Users\Ghb\Desktop\na nsheng.wav'C\Users\Ghb\Desktop\nvshe ng.wav' [x,Fs,Bits]=wavread(sou nd(x,Fs,Bits)plot(x)2. 信号的基本运算(语音信号的翻转、展缩)【研讨内容】1)将原始音频信号在时域上进行延展、压缩,2)将原始音频信号在频域上进行幅度放大与缩小,3)将原始音频信号在时域上进行翻转,【题目分析】用matlab 的wavread 函数读取录制的音频,用length 函数计算出音频文件的长度,最后计算出时间t ,然后用plot 函数输出录制的音频信号(1)延展与压缩分析把时间t 变为原来的一半,信号就被延展为原来的 2 倍,把时间他变为原来的 2 倍,信号就被压缩为原来的一半。

01北交大数字信号处理研究性学习报告.

01北交大数字信号处理研究性学习报告.

《数字信号处理》课程研究性学习报告DSP基本概念和技能的训练姓名张然学号13211074同组成员蔡逸飞13211078朱斌指导教师陈后金时间2015/6DSP 基本概念和技能研究性学习报告【目的】(1) 掌握离散信号和系统时域、频域和z 域分析中的基本方法和概念; (2) 学会用计算机进行离散信号和系统时域、频域和z 域分析。

(3) 培养学生自主学习能力,以及发现问题、分析问题和解决问题的能力。

【研讨内容】问题一(1)阅读教材1.9节及MATLAB 中的Help ,学会MA TLAB 函数filter 的使用方法;(2)利用filter 函数,求出下列系统的单位脉冲响应,并判断系统是否稳定。

讨论实验所获得的结果。

211850586.0845.111)(--+-=z z z H21285.085.111)(--+-=z z z H 【题目目的】 1. 掌握LTI 系统单位脉冲响应的基本概念、系统稳定性与单位脉冲响应的关系; 2. 学会filter 函数的使用方法及用filter 函数计算系统单位脉冲响应; 3. 体验有限字长对系统特性的影响。

【仿真结果】 极点10.9430 0.9020 极点21.0000 0.8500051015202530354045502468y 1[k ]051015202530354045502468y 2[k ]【结果分析】我们所使用的计算机的是有限字长的,当我们用计算机对系统的各项参数进行量化,计算离散时,这些量化误差会使实际系统的极点值偏离理论值,导致系统的特性发生变化,甚至会使稳定系统变为非稳定系统。

【问题探究】已知LTI 系统的系统函数)(z H ,有哪些计算系统单位脉冲响应方法,比较这些方法的优缺点。

Filter 函数,可计算出差分方程的零状态响应,既可以用来求y[k],也可以求出h[k]; Impulse 函数,只是用来实现冲击响应的;Conv 函数,是用来计算卷积的,可以用来求y[k] 【仿真程序】 b1=[1 0 0]; b2=[1 0 0];a1=[1 -1.845 0.850586]; a2=[1 -1.85 0.85]; x=0:50;y1=filter(b1,a1,x); subplot(2,1,1); stem(y1);axis([0 50 0 8])[r1,p1,m1]=residuez(b1,a1); disp('极点1'); disp(p1');y2=filter(b2,a2,x); subplot(2,1,2); stem(y2);axis([0 50 0 8])[r2,p2,m2]=residuez(b2,a2); disp('极点2'); disp(p2');b1=[1 0 0]; b2=[1 0 0];a1=[1 -1.845 0.850586]; a2=[1 -1.85 0.85]; n=0:512;x=[1 zeros(1,512)] y1=filter(b1,a1,x); subplot(2,1,1); stem(n,y1); axis([0 50 0 8]) axis([0 50 0 8]) ylabel('y1[k]')[r1,p1,m1]=residuez(b1,a1); disp('极点1'); disp(p1');y2=filter(b2,a2,x); subplot(2,1,2); stem(n,y2); axis([0 50 0 8]) ylabel('y2[k]')[r2,p2,m2]=residuez(b2,a2); disp('极点2'); disp(p2');当取下列值时a1=[1 -1.8506 0.850586]; a2=[1 -1.85 0.906];极点11.0001 0.8505 极点20.9250 - 0.2244i 0.9250 + 0.2244i051015202530354045502468y 1[k ]5101520253035404550-505y 2[k ]问题二(1)阅读教材1.9节及MATLAB 中的Help ,学会MA TLAB 函数freqz 的使用方法; (2)利用MATLAB 语句x=firls(511,[0 0.4 0.404 1],[1 1 0 0]产生一个长度为512的序列x [k ],用plot 函数画出序列x [k ]的波形,用freqz 函数画出该序列的幅度频谱。

DSP研究性学习报告数字滤波器设计013北交大(精)

DSP研究性学习报告数字滤波器设计013北交大(精)

《数字信号处理》课程研究性学习报告姓名初步草稿学号同组成员指导教师时间数字滤波器设计专题研讨【目的】(1 掌握 IIR 和 FIR 数字滤波器的设计方法及各自的特点。

(2 掌握各种窗函数的时频特性及对滤波器设计的影响。

(3 培养学生自主学习能力,以及发现问题、分析问题和解决问题的能力。

【研讨题目】中等题Dhexian.wav 是对频率为 293.66, 369.99, 440Hz的 D 大调和弦以 8000Hz 抽样所得的数字音乐信号,试设计一数字滤波器从和弦中分离出 440Hz 的音符。

要求:(1设计 IIR 数字高通滤波器,通过实验研究不同s P , ΩΩ、过渡带、 s P , A A 对滤波器设计的影响, 确定本题最合适的滤波器指标。

(2能否用 IIR 数字带通滤波器从和弦中分离出 440Hz 的音符?试参照(1确定的最合适的高通滤波器指标,给出数字带通滤波器的指标。

设计 IIR 数字带通滤波器,并将结果与高通滤波器比较, 给出你的结论。

(3用窗函数法设计 FIR 数字高通滤波器,分别利用矩形窗、汉纳窗、哈明窗、布莱克曼窗、凯泽窗截断。

讨论用窗函数法设计 FIR 数字高通滤波器时如何确定滤波器的指标,比较相同过渡带时用矩形窗、汉纳窗、哈明窗、布莱克曼窗、凯泽窗设计滤波器的阶数。

(4采用 Parks-McClellan 算法,设计 FIR 数字高通滤波器。

试参照(1确定的最合适的高通滤波器指标,给出 FIR 数字高通滤波器的指标。

将设计结果与(1中的 IIR 数字滤波器,从幅度响应、相位响应、滤波器阶数等方面进行比较。

【温磬提示】在 IIR 数字滤波器的设计中,不管是用双线性变换法还是冲激响应不变法,其中的参数 T 的取值对设计结果没有影响。

但若所设计的数字滤波器要取代指定的模拟滤波器时,则抽样频率(或抽样间隔 T 将对设计结果有影响。

【设计步骤】 :首先以 8000Hz 抽样时 , 293.66, 369.99, 440Hz 对应的数字频率分别为 0.07341*pi,0.0924975*pi,0.11*pi。

北京交通大学《信号与系统》研究性学习实验报告

北京交通大学《信号与系统》研究性学习实验报告

《信号与系统》课程研究性学习手册姓名学号同组成员指导教师时间14******14* *****1•信号的时域分析专题研讨【目的】(1) 掌握基本信号及其特性,了解实际信号的建模。

(2) 掌握基本信号的运算,加深对信号时域分析基本原理和方法的理解,并建立时频之间的感性认识。

(3) 学会仿真软件MATLAB的初步使用方法,掌握利用MATLAB进行信号表示和信号运算。

【研讨内容】题目1:基本信号的产生,语音的读取与播放1) 生成一个正弦信号,改变正弦信号的角频率和初始相位,观察波形变化,并听其声音的变化。

2) 生成一个幅度为1、基频为2Hz、占空比为50%的周期方波。

3) 观察一定时期内的股票上证指数变化,生成模拟其变化的指数信号。

4) 分别录制一段男声、女声信号,进行音频信号的读取与播放,画出其时域波形。

【温馨提示】(1) 利用MATLAB 函数wavread(file)读取.wav格式文件。

(2) 利用MATLAB 函数sound(x, fs)播放正弦信号和声音信号。

【题目分析】【仿真程序】1) 生成一个正弦信号t=[0:0.001:8];y=si n(2*pi*t+pi/6);plot(t,y)改变其角频率和初始相位t=[0:0.001:8];y=si n(pi*t+pi/2);plot(t,y)2) 生成一个幅度为1、基频为2Hz、占空比为50%的周期方波t=[0:0.001:10];y=square(2*t,50);plot(t,y);axis([0,10,-1.2,1.2])3) 观察一定时期内的股票上证指数变化,生成模拟其变化的指数信号。

x仁[0:0.0015];y1=2630+1.75*exp(x1);x2=[5:0.001:10];y2=2895-1.54*exp(0.8*x2);x3=[10:0.001:15];y3=2811+152*exp(-0.08*x3);x4=[15:0.001:20];y4=2600-151*exp(-0.08*x4);x=[x1,x2,x3,x4];y=[y1,y2,y3,y4];plot(x,y);4) 分别录制一段男声、女声信号,进行音频信号的读取与播放,画出其时域波形。

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

《数字信号处理》课程研究性学习报告姓名学号同组成员指导教师时间多速率信号处理专题研讨【目的】(1) 掌握序列抽取运算与内插运算的频谱变化规律。

(2) 掌握确定抽取滤波器与内插滤波器的频率指标。

(3) 掌握有理数倍抽样率转换的原理及方法。

(4) 培养学生自主学习能力,以及发现问题、分析问题和解决问题的能力。

【研讨题目】 基本题1.抽取、内插信号特征的时域/频域分析对于给定的单频模拟信号y (t )=sin(1000πt ),确定一个合适的采样频率f sam ,获得离散信号y [k ],试进行以下问题的分析:(1) 对离散信号y [k ]进行M=2倍抽取,对比分析y [k ]和y [M k ]在时域/频域的关系; (2) 对离散信号y [k ]进行L=2倍内插,对比分析y [k ]和y [k /L]在时域/频域的关系。

【温磬提示】在多速率信号分析中,离散序列的抽取和内插是多速率系统的基本运算,抽取运算将降低信号的抽样频率,内插运算将提高信号的抽样频率。

两种运算的变换域描述中,抽取运算可能出现频谱线性混叠,而内插运算将出现镜像频谱。

【设计步骤】1、 已知y (t )=sin(1000πt )频率为500Hz ,周期为0.002s ,可取时间范围T 为0到0.004秒,两个周期,根据抽样定理取Hz f sam 8000=,每个周期抽取16个点。

2、 用函数xD=x(1:M:end)对离散信号进行M=2倍的抽取,用fft 计算频谱。

3、 用函数xL=zeros(1,L*length(x));xL(1:L:end)=x;对离散信号进行L=2的内插,用fft 计算频谱。

【仿真结果】对离散信号y [k ]抽取和内插的时域/频域对比分析结果。

抽取:内插:【结果分析】1、抽取运算在频域描述:对x[k]进行M 倍抽取后得到][k x D 的频谱为∑-=-ΩΩ=102)(1)(M l Ml jj D eX Me X π,即将x[k]的频谱)(Ωj eX 扩展M 倍,得到)(Mj e X Ω,再以π2为周期进行周期化并乘以因子M1。

2、内插运算在频域描述:对x[k]进行L 倍内插后得到][k x L 频谱为)()(ΩΩ=jL j L e X e X ,即将x[k]的频谱)(Ωj e X 压缩L 倍,除了与原序列频谱相差一个尺度因子外,两个序列频谱形状保持不变。

由于)(Ωj eX 的周期为π2,所以)(ΩjL e X 周期为Lπ2,内插序列在],[L L ππ-的频谱将在区间],[ππ-重复L 次。

【发现问题】 (专题研讨或相关知识点学习中发现的问题): 应选择合适抽样频率来抽取足够多的点。

【仿真程序】抽取: T=0.004; fs=8000; Ts=1/fs; N=T/Ts; k=0:N-1;x=sin(1000*pi*(k.*Ts)); subplot(2,2,1) stem(k.*Ts,x); xD=x(1:2:end); subplot(2,2,2); stem(xD); X=fft(x,32); X=fftshift(X); subplot(2,2,3); plot(abs(X)); Y=fft(xD,16); Y=fftshift(Y); subplot(2,2,4); plot(abs(Y)); 内插: T=0.004; fs=8000; Ts=1/fs; N=T/Ts; k=0:N-1;x=sin(1000*pi*(k.*Ts)); subplot(2,2,1) stem(k.*Ts,x);xL=zeros(1,2*length(x)); xL(1:2:end)=x; subplot(2,2,2); stem(xL); X=fft(x,32); X=fftshift(X); subplot(2,2,3); plot(abs(X)); Y=fft(xL,64); Y=fftshift(Y); subplot(2,2,4); plot(abs(Y));【研讨题目】 中等题2.音乐信号多速率处理(1)分别给出抽样率为32KHz 、16KHz 和8KHz 的三段音乐信号,利用Matlab 仿真分别将信号通过抽样率为16KHz 的D/A 进行播放,试听播放结果分析其中存在的现象和问题;32KHz 音乐信号文件:kdqg32k.wav 16KHz 音乐信号文件:kdqg16k.wav 8 KHz 音乐信号文件:kdqg8k.wav (2)设计多速率信号处理系统,使得抽样率为32KHz 和8KHz 的三段音乐信号通过抽样率为16KHz 的D/A 能够正常播放。

sam x (t )samsam x (t )sam【设计步骤】(1)用wavread 函数读取文件,再使用sound 函数对音乐信号以16Hz 抽样频率播放。

(2)用wavread 函数读取文件,对音乐信号进行内插或者抽取,再用sound 函数播放。

【仿真结果】(1)32kHz 以16kHz 播放声音低沉,16kHz 能够正常播放,8kHz 声音变得尖细。

(2)音乐信号均正常播放。

【结果分析】32kHz 音乐信号2倍抽取后,时域抽样间隔变为2倍,抽样频率变为原来二分之一,可以以16kHz正常播放;8kHz音乐信号2倍内插,时域抽样间隔变为二分之一,抽样频率变为原来2倍,可以以16kHz正常播放。

【自主学习内容】wavread函数与sound函数,内插函数及抽取函数。

【阅读文献】【发现问题】(专题研讨或相关知识点学习中发现的问题):【问题探究】【仿真程序】(1)x=wavread('C:\Users\Administrator\Desktop\数字信号研讨\kdqg32k.wav')sound(x,16000);x=wavread('C:\Users\Administrator\Desktop\数字信号研讨\kdqg16k.wav')sound(x,16000);x=wavread('C:\Users\Administrator\Desktop\数字信号研讨\kdqg8k.wav')sound(x,16000);(2)x=wavread('C:\Users\Administrator\Desktop\数字信号研讨\kdqg32k.wav');y=decimate(x,2);sound(x,16000);x=wavread('C:\Users\Administrator\Desktop\数字信号研讨\kdqg8k.wav');y=interp(x,2);sound(x,16000);【研讨题目】实践题3.对于人体脉搏信号可以综合地反映人体的心脏器官和心血管系统的生理变化。

对人体脉搏信号进行非线性分析的研究,为评估人体心脏器官与血液循环系统的生理状态以及研究人的情绪对生理变化的影响提供了依据,并且对进一步深入认识人体生命系统的复杂性现象及规律具有重要意义。

本题目将给出实际采集的人体脉搏信号,采样率为f sam=200Hz,疲劳状态下脉搏信号:疲劳.txt清晰状态下脉搏信号:清醒.txt(1) 利用Matlab读取脉搏信号,并进行脉搏信号的频谱分析,得出人体脉搏频谱特征。

(2) 已知人体脉搏信号通常分布在1-20Hz内,设计合适的滤波器得到纯净的脉搏信号。

(3) 由于脉搏信号通常分布在1-20Hz内,而人耳听觉范围在300-3400Hz范围,为使人耳能够听到清醒的脉搏信号,请设计合适的多速率信号处理系统实现。

【频谱特征分析】频谱主要部分是1-20Hz的低频分量。

【设计步骤】1、先画出脉搏信号的时域波形和频谱。

2、通过级联的巴特沃斯滤波器滤波3、通过多速率信号处理系统实现对脉搏信号的播放【仿真结果】(1)(2)(3)【结果分析】1、采用的脉搏信号中主要是低于20Hz的低频分量,在滤波是采用巴特沃斯高通滤波器和巴特沃斯低通滤波器的级联,比带通滤波器实现的代价要低。

2、通过内插滤波器可以实现对低频率信号的播放,内插产生镜像分量,取出可听的频率分量。

【仿真程序】(1)fs=200;T=1/fs;x1=load('C:\Users\Administrator\Desktop\数字信号研讨\清醒.txt');x2=load('C:\Users\Administrator\Desktop\数字信号研讨\疲劳.txt');M1=length(x1);M2=length(x2);t1=(0:M1-1)*T;t2=(0:M2-1)*T;N1=M1*2-1;N2=M2*2-1;X1=fftshift(fft(x1,N1));X2=fftshift(fft(x2,N2));W1=(-M1+1:M1-1)*fs/N1;W2=(-M2+1:M2-1)*fs/N2;subplot(2,2,1);plot(t1,x1);title('清醒状态脉搏信号时域波形');xlabel('t(s)');subplot(2,2,2);plot(t2,x2);title('疲劳状态脉搏信号时域波形');xlabel('t(s)');subplot(2,2,3);plot(W1,abs(X1));title('清醒状态脉搏信号频谱');xlabel('频率');ylabel('幅度');axis([0,100,0,3.5*10^5]);subplot(2,2,4);plot(W2,abs(X2));title('疲劳状态脉搏信号频谱');xlabel('频率');ylabel('幅度');axis([0,100,0,3.5*10^5]);(2)fs=200;T=1/fs;x=load('C:\Users\Administrator\Desktop\数字信号研讨\清醒.txt'); M=length(x);t=(0:M-1)*T;N=M*2-1;W=(-M+1:M-1)*fs/N;%Butterworth高通滤波器Wp1=0.9/(fs/2);Ws1=0.1/(fs/2);[n,Wn]=buttord(Wp1,Ws1,0.5,40);[b,a]=butter(n,Wn,'high');y=filtfilt(b,a,x);%Butterworth低通滤波器Wp=30/(fs/2);Ws=50/(fs/2);Rp=3;Rs=60;[n,Wc]=buttord(Wp,Ws,Rp,Rs);[b,a]=butter(n,Wc,'low');q=filter(b,a,y);Y=fftshift(fft(q,N));figure(1);plot(t,q);title('滤波后清醒状态脉搏信号时域波形');xlabel('t(s)');figure(2);plot(W,abs(Y));title('滤波后清醒状态脉搏信号频谱');xlabel('频率');ylabel('幅度'); axis([0,100,0,15000]);fs=200;T=1/fs;x=load('C:\Users\Administrator\Desktop\数字信号研讨\疲劳.txt'); M=length(x);t=(0:M-1)*T;N=M*2-1;W=(-M+1:M-1)*fs/N;%Butterworth高通滤波器Wp1=0.9/(fs/2);Ws1=0.1/(fs/2);[n,Wn]=buttord(Wp1,Ws1,0.5,40);[b,a]=butter(n,Wn,'high');y=filtfilt(b,a,x);%Butterworth低通滤波器Wp=30/(fs/2);Ws=50/(fs/2);Rp=3;Rs=60;[n,Wc]=buttord(Wp,Ws,Rp,Rs);[b,a]=butter(n,Wc,'low');q=filter(b,a,y);Y=fftshift(fft(q,N));figure(1);plot(t,q);title('滤波后清醒状态脉搏信号时域波形');xlabel('t(s)');figure(2);plot(W,abs(Y));title('滤波后清醒状态脉搏信号频谱');xlabel('频率');ylabel('幅度'); axis([0,100,0,15000]);(3)%以下通过内插实现对脉搏信号的播放%先对人清醒状态的脉搏信号进行带通滤波,滤掉噪声信号fs=200;T=1/fs;x=load('C:\Users\Administrator\Desktop\数字信号研讨\清醒.txt'); %Butterworth高通滤波器Wp1=0.9/(fs/2);Ws1=0.1/(fs/2);[n,Wn]=buttord(Wp1,Ws1,0.5,40);[b,a]=butter(n,Wn,'high');y=filtfilt(b,a,x);%Butterworth低通滤波器Wp=30/(fs/2);Ws=50/(fs/2);Rp=3;Rs=60;[n,Wc]=buttord(Wp,Ws,Rp,Rs);[b,a]=butter(n,Wc,'low');q=filter(b,a,y);W=linspace(0,pi,1024);Q=freqz(q,1,W);figure(1);plot(W/pi,abs(Q));title('原始脉搏信号去噪后的频谱');xlabel('归一化频率');ylabel('幅度');%对滤波后的噪音进行L倍内插L=25;y1=upsample(q,L);Y1=freqz(y1,1,W);figure(2);plot(W/pi,abs(Y1));title('25倍内插后脉搏信号的频谱');xlabel('归一化频率');ylabel('幅度');%构件带通滤波器Ws1=0.01;Wp1=0.03;Wp2=0.1;Ws2=0.12;ds=0.0017;dp=ds;W1=[Ws1 Wp1 Wp2 Ws2];a=[0 1 0];dev=[ds dp ds]; [M,f0,a0,W0]=remezord(W1,a,dev);h=remez(M,f0,a0,W0);%滤除镜像部分y0=conv(y1,h);Y0=freqz(y0,1,W);figure(3);plot(W/pi,abs(Y0));title('滤除其他镜像部分后脉搏信号的频谱');xlabel('归一化频率');ylabel('幅度');sound(y0);。

相关文档
最新文档