哈工大威海数字信号处理实验报告.docx
- 文档编号:9172479
- 上传时间:2023-05-17
- 格式:DOCX
- 页数:44
- 大小:499.96KB
哈工大威海数字信号处理实验报告.docx
《哈工大威海数字信号处理实验报告.docx》由会员分享,可在线阅读,更多相关《哈工大威海数字信号处理实验报告.docx(44页珍藏版)》请在冰点文库上搜索。
哈工大威海数字信号处理实验报告
数字信号处理
实验报告
姓名:
学号:
哈尔滨工业大学(威海)
实验一
一、实验目的
验证离散傅里叶变换的性质,包括线性特性、时移特性、频移特性、对称性和循环卷积等性质。
二、实验原理
1、线性特性——齐次可加性
2、时移特性——附加相位
3、频移特性——频谱搬移
4、对称性
所以,共轭对称部分:
共轭反对称部分:
所以,
5、循环卷积
a序列循环卷积的DFT,序列乘积的DFT
b有限长序列线性卷积与循环卷积的关系:
x1(n)和x2(n)周期开拓后的周期卷积等于他们线性卷积的的周期开拓。
将X1(n)和x2(n)开拓成以N为周期的周期序列
它们的周期卷积为:
三、实验内容和步骤
任取长度为N=8的随机实序列x1[n],x2[n],例如x1[n]=[13536839],x2[n]=[24367902],和长度为N=8的随机复序列x3[n],x4[n],例如x3[n]=[1+2j3+4j5+3j3+4j6+j8+2j3+3j9+2j],x4[n]=[4+1j6+4j4+3j3+4j7+j8+3j3+4j1+2j],采用MATLAB编程验证傅里叶变换的如下性质
1、线性特性
a序列x1[n]的傅里叶变换X1[k],并画出其幅度谱和相位谱
b序列x2[n]的傅里叶变换X2[k] ,并画出其幅度谱和相位谱
c给出序列Z=2*X1[k]+6*x2[k],并与序列(2*x1[n]+6*x2[n])的傅里叶变换比较
结论:
两个离散时间序列之和的傅里叶变换等于两个序列分别傅里叶变换再求和。
2、时移特性
给出序列x1[n]右移1位,左移5位后的傅里叶变换的幅度谱和相位谱,并和原始序列的幅度谱和相位谱相比较
结论:
序列进行时间调制后,序列傅里叶变换的幅度谱不变,相位谱发生圆周移位。
3、频移特性
设DFT[x(n)]=X(k),比较
的DFT与X[K]的不同
1.l=+2
2.l=-3
结论:
L>0,序列的傅里叶变换幅度谱和相位谱同时向右移动L;
L<0,序列的傅里叶幅度谱和相位谱同时向左移动L。
4、对称性
1)实序列:
利用x1[n]构造奇对称序列和偶对称序列
a画出奇对称序列的傅里叶变换的实部和虚部
b画出偶对称序列的傅里叶变换的实部和虚部 。
如下图:
2)当x(n)为复序列时,推导傅里叶变换公式,利用x3[n]构造奇对称序列和偶对称序列
a画出共轭对称序列的傅里叶变换的实部和虚部
b画出共轭反对称序列的傅里叶变换的实部和虚部
如下图:
3)总结奇对称和偶对称的实数序列和复数序列的傅里叶变换性质
a实序列x(n)的共轭对称部分即为一个偶对称序列,其傅里叶变换只有实部,虚部为零;共轭反对称部分是一个奇对称序列,其傅里叶变换只有虚部,实部为零。
b复序列x(n)的共轭对称部分xe(n)的傅里叶变换对应X[K]的实部,故其傅里叶变换只有实部,虚部为零;共轭反对称部分xo(n)的傅里叶变换对应X[K]的虚部乘以j,故其傅里叶变换只有虚部,实部为零。
5、循环卷积
1)计算序列x1[n]和x2[n]的循环卷积y[n],计算x1[n]和x2[n]的傅里叶变换X1[k]和X2[k],Y[k]=X1[k]*X2[k],求Y[k]的反傅里叶变换y2[n],比较y[n]与y2[n].
Y=[170,175,178,143,161,115,154,158]
y2=[170,175,178,143,161,115,154,158]
即y[n]=y2[n]。
2)循环卷积和线性卷积的关系
x5=[13118552]x6=[2468]求x5,x6线性卷积y1(n);
a.N=10,令L=8,求x5,x6的L点循环卷积y2(n);比较y1(n),y2(n)的不同。
y1(n)=[2,10,40,86,132,166,118,78,52,16]
y2(n)=[54,26,40,86,132,166,118,78]
L bN=7+4-1=10,L=10 y1(n)=[2,10,40,86,132,166,118,78,52,16] y2(n)=[2,10,40,86,132,166,118,78,52,16] L=N,循环卷积和线性卷积相等。 c.N=10,取L=11 y1(n)=[2,10,40,86,132,166,118,78,52,16] y2(n)=[2,10,40,86,132,166,118,78,52,16,0] L>N,循环卷积等于线性卷积且在剩余点上补零。 6.补零对DFT结果的影响 用MATLAB计算如下N点序列的M点DFT: a.取N=8,M=8 b.取N=8,M=16 c.取N=8,M=32 根据实验结果,分析延长序列的离散傅里叶变换的特点。 序列补零后的傅里叶变换相当于在原序列的傅里叶变换插值,增加频域抽样点数,使频域抽样更密,但频谱的包络不发生改变。 7.采样时间对频率分辨的影响 构造两个正弦信号相加f1=100Hz,f2=105Hz,x(t)=3*cos(2*pi*f1*t)+1*cos(2*pi*f2*t) a.以采样频率fs=800Hz对x(t)采样得到x(n),采样的持续时间100ms,求x(n)的512点DFT b.以采样频率fs=1600Hz对x(t)采样得到x(n),采样的持续时间100ms,求x(n)的512点DFT c.延长采样时间为300ms,求x(n)的512点DFT x(n)及其DFT如下图: 采样有效时间越长,此长度上信号抽样点数增加,即频域中一个周期内频率的间隔fo减小,对两个频率相近序列的频谱峰值分辨能力增强。 8.设序列x[n]=[18736972],长度为N。 对其进行DTFT进行Na=6点的采样,即得到 如果对 进行Na=6的IDFT得到xa[n]。 1)x[n]与xa[n]的关系;2)用仿真程序验证这种关系。 当频域采样点Na少于原序列点数N时,得到的新频域序列的傅里叶反变换不能还原原序列,将在前(N-Na)点出现混叠现象。 四、实验结论 1、验证了序列的傅里叶变换具有线性特性、时移特性、频移特性、对称性和循环卷积等性质。 2、线性特性: 序列之和的傅里叶变换等于序列傅里叶变换的和。 3、时移特性: 时间移位后,序列的幅度谱不变,相位谱发生变化。 4、循环卷积: 当循环卷积的周期L不小于两个序列长度之和N时,循环卷积可以代表线性卷积。 5、时域补零可以减轻栅栏效应。 6、增加采样有效时间可提高频率分辨能力。 7、当频域采样点数小于原序列点数时,傅里叶反变换不能还原原序列。 五、参考程序清单 1画出序列的频谱 x1=[13536839]; x2=[24367902]; fft_x1=fft(x1,8); fft_x2=fft(x2,8); x_axis=[0: 1: 7]; figure (1); subplot(3,1,1); stem(x_axis,x1,'.'); xlabel('n');title('时间序列'); subplot(3,1,2); stem(x_axis,abs(fft_x1));gridon; xlabel('频率k');ylabel('幅度'); title('幅度谱'); subplot(3,1,3); stem(x_axis,angle(fft_x1));gridon; xlabel('频率k');ylabel('相位'); title('相位谱'); 2验证DFT的线性性质 J=sqrt(-1); x3=[1+2*J3+4*J5+3*J3+4*J6+1*J8+2*J3+3*J9+2*J]; x4=[4+1*J6+4*J4+3*J3+4*J7+1*J8+3*J3+4*J1+2*J]; x_sum=2*x3+6*x4; fft_x_sum=fft(x_sum,8);%序列之和的FFT fft_x3=fft(x3,8); fft_x4=fft(x4,8); figure (2); subplot(2,2,1); stem(x_axis,abs(fft_x_sum)); title('序列之和的幅度谱'); subplot(2,2,2); stem(x_axis,angle(fft_x_sum)); title('序列之和的相位谱'); fft_sum=2*fft_x3+6*fft_x4;%序列FFT的和 subplot(2,2,3); stem(x_axis,abs(fft_sum),'k*'); title('序列DFT之和的幅度谱'); subplot(2,2,4); stem(x_axis,angle(fft_sum),'k*'); title('序列DFT之和的相位谱'); figure(3); subplot(2,1,1); stem(x_axis,abs(fft_x_sum));holdon; stem(x_axis,abs(fft_sum),'k.'); xlabel('频率k');ylabel('幅度'); title('幅度谱'); subplot(2,1,2); stem(x_axis,angle(fft_x_sum));holdon; stem(x_axis,angle(fft_sum),'k.'); xlabel('频率k');ylabel('相位(弧度)'); title('相位谱'); 3循环移位 x_axis=[0: 1: 7]; x5=x_axis.^2; x5=x5';%必须是列向量,才进行移位 figure (1); subplot(3,1,1); stem(x_axis,x5,'*'); xlabel('n');title('原始序列'); x5_r=circshift(x5,2);%正数右移,负数左移 subplot(3,1,2); stem(x_axis,x5_r,'*'); xlabel('n');title('右移序列2个单元'); x5_l=circshift(x5,-1);%正数右移,负数左移 subplot(3,1,3); stem(x_axis,x5_l,'*'); xlabel('n');title('左移序列1个单元'); fft_x5=fft(x5); fft_x5_r=fft(x5_r); fft_x5_l=fft(x5_l); figure (2); subplot(3,1,1); stem(x_axis,abs(fft_x5),'*'); title('原序列幅度谱'); subplot(3,1,2); stem(x_axis,abs(fft_x5_r),'*'); title('右移后幅度谱'); subplot(3,1,3); stem(x_axis,abs(fft_x5_l),'*'); title('左移后幅度谱'); figure(3); subplot(3,1,1); stem(x_axis,angle(fft_x5),'*'); title('原序列相位谱'); subplot(3,1,2); stem(x_axis,angle(fft_x5_r),'*'); title('右移后相位谱'); subplot(3,1,3); stem(x_axis,angle(fft_x5_l),'*'); title('左移后相位谱'); %对移动的位移进行估计 R_Shift_Calc=(angle(fft_x5 (2))-angle(fft_x5_r (2)))*8/2/pi; 4循环移位后序列频谱的变化 F0=100;%Hz; T0=1/F0;%s Fs=800;%Hz; Ts=1/Fs;%s N_samples=(10*T0/Ts); temp=ceil(log2(N_samples)); N_samples=2^temp; n_axis=[0: Ts: N_samples*Ts-Ts]';%要转化成列向量 x=cos(2*pi*F0*n_axis); fft_x=fft(x);fft_x_bak=fft_x; fft_x=fftshift(fft_x); freq_axis=[0: 1: N_samples-1]*Fs/N_samples-Fs/2; figure (1); subplot(2,2,1); plot([1: N_samples],x); xlabel('n'); title('原始离散时间序列'); subplot(2,2,2); plot(freq_axis,abs(fft_x)); xlabel('Hz');ylabel('幅度谱'); title('幅度谱'); N_shift=3; x_shift=circshift(x,1);%正数右移,负数左移 subplot(2,2,3); plot([1: N_samples],x_shift); xlabel('n');title(['移动序列'num2str(N_shift)'个单元的序列']); fft_x_shift=fft(x_shift);fft_x_shift_bak=fft_x_shift; fft_x_shift=fftshift(fft_x_shift); subplot(2,2,4); plot(freq_axis,abs(fft_x_shift)); xlabel('Hz');ylabel('幅度谱'); title('幅度谱'); figure (2); subplot(3,1,1); plot(freq_axis,angle(fft_x)); xlabel('Hz');ylabel('移位前相位谱'); subplot(3,1,2); plot(freq_axis,angle(fft_x_shift)); xlabel('Hz');ylabel('移位后相位谱'); subplot(3,1,3); plot([0: N_samples-1]-N_samples/2,angle(fft_x)-angle(fft_x_shift)); 5DFT频移特征 clc,clearall,closeall; J=sqrt(-1); N_samples=8; n_axis=[0: 1: N_samples-1]'; x5=n_axis.^2; %必须是列向量,才进行移位 figure (1); stem(n_axis,x5,'*'); xlabel('n');title('原始序列'); %移动正频率---------------------------------------------------------------- K_shift=2; freq_shift_coff=exp(J*2*pi/N_samples*K_shift*n_axis); x5_freqshift=x5.*freq_shift_coff; fft_x5=fft(x5); fft_x5_freqshift=fft(x5_freqshift); figure (2); subplot(2,2,1); stem(n_axis,abs(fft_x5),'*'); title(['频率移位前'num2str(K_shift)'幅度谱']); subplot(2,2,3); stem(n_axis,abs(fft_x5_freqshift),'*'); title(['频率移位后'num2str(K_shift)'幅度谱']); subplot(2,2,2); stem(n_axis,angle(fft_x5),'*'); title(['频率移位前'num2str(K_shift)'相位谱']); subplot(2,2,4); stem(n_axis,angle(fft_x5_freqshift),'*'); title(['频率移位后'num2str(K_shift)'相位谱']); %移动负频率---------------------------------------------------------------- K_shift=-3; freq_shift_coff=exp(J*2*pi/N_samples*K_shift*n_axis); x5_freqshift=x5.*freq_shift_coff; fft_x5=fft(x5); fft_x5_freqshift=fft(x5_freqshift); figure(3); subplot(2,2,1); stem(n_axis,abs(fft_x5),'*'); title(['频率移位前'num2str(K_shift)'幅度谱']); subplot(2,2,3); stem(n_axis,abs(fft_x5_freqshift),'*'); title(['频率移位后'num2str(K_shift)'幅度谱']); subplot(2,2,2); stem(n_axis,angle(fft_x5),'*'); title(['频率移位前'num2str(K_shift)'相位谱']); subplot(2,2,4); stem(n_axis,angle(fft_x5_freqshift),'*'); title(['频率移位后'num2str(K_shift)'相位谱']); 6对称性性质 x1=[13536839]; N=length(x1); n_axis=[0: N-1]; x1N=zeros(1,N); x1N(0+1)=x1(0+1); fornum=0: N-1 ifN-num==N index=1; else index=(N-num)+1; end x1N(num+1)=x1(index); end x1_e=1/2*(x1+x1N); x1_o=1/2*(x1-x1N); %------------------------------------------------------------------- %1画出原始序列,原始序列构造的共轭对称、共轭反对称序列 figure (1); subplot(3,1,1); stem(n_axis,x1); title(['原序列']); subplot(3,1,2); stem(n_axis,x1_e); title('共轭对称部分'); subplot(3,1,3); stem(n_axis,x1_o); title('共轭反对称部分'); %------------------------------------------------------------------- %2画出奇、偶对称序列的频谱的实部虚部验证奇对称序列频谱只有虚部,而偶对称 序列频谱只有实部 k_axis=n_axis; fft_x1_e=fft(x1_e); fft_x1_o=fft(x1_o); figure (2); subplot(2,2,1); stem(k_axis,real(fft_x1_e)); title('偶对称序列实部'); subplot(2,2,3); stem(k_axis,imag(fft_x1_e)); title('偶对称序列虚部'); subplot(2,2,2); stem(k_axis,real(fft_x1_o)); title('奇对称序列实部'); subplot(2,2,4); stem(k_axis,imag(fft_x1_o)); title('奇对称序列虚部'); %------------------------------------------------------------------- %3当序列为复数时,验证其共轭奇偶对称序列的频谱 J=sqrt(-1); x1=[1+2*J3+4*J5+3*J3+4*J6+1*J8+2*J3+3*J9+2*J]; N=length(x1); n_axis=[0: N-1]; x1N=zeros(1,N); x1N(0+1)=x1(0+1); fornum=0: N-1 ifN-num==N index=1; else index=(N-num)+1; end x1N(num+1)=x1(index); end x1_e=1/2*(x1+conj(x1N));%注意,这里加取共轭函数conj x
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 哈工大 威海 数字信号 处理 实验 报告