咋么做进网站跳转加群,运维工程师主要做什么,类似非小号的网站怎么做,云服务平台登录入口文章目录 前言一、实验目的二、实验设备三、实验内容四、实验原理五、实验步骤1.序列的离散傅里叶变换及分析2.利用共轭对称性#xff0c;设计高效算法计算2个N点实序列的DFT。3.线性卷积及循环卷积的实现及二者关系分析4.比较DFT和FFT的运算时间5.利用FFT求信号频谱及分析采样… 文章目录 前言一、实验目的二、实验设备三、实验内容四、实验原理五、实验步骤1.序列的离散傅里叶变换及分析2.利用共轭对称性设计高效算法计算2个N点实序列的DFT。3.线性卷积及循环卷积的实现及二者关系分析4.比较DFT和FFT的运算时间5.利用FFT求信号频谱及分析采样频率、噪声对频谱的影响6.创新训练拓展内容6.1 信号持续时间、频谱分析范围、采样点数和谱分辨率的关系。6.2频谱的内插函数恢复频域采样恢复6.3对语音信号进行简单分析。 六、实验结论与心得体会手写七、实验参考资料 前言 本人初次学习离散信号与系统的频谱分析。
一、实验目的 1.掌握离散傅里叶变换DFT及快速傅里叶变换FFT的计算机实现方法。 2.检验序列DFT的性质。 3.掌握利用DFTFFT计算序列线性卷积的方法。 4.学习用DFT对连续信号和时域离散信号进行谱分析的方法了解可能出现的分析误差以便在实际中正确应用DFT。 5.了解采样频率对谱分析的影响。 6.了解利用FFT进行语音信号分析的方法。
二、实验设备 1.计算机 2.Matlab软件2014a以上版本。
三、实验内容 1.对不同序列进行离散傅里叶变换并进行分析DFT共轭对称性质的应用通过1次N点FFT计算2个N点实序列的DFT。 2.线性卷积及循环卷积的关系以及利用DFTFFT进行线性卷积的方法。 3.比较计算序列的DFT和FFT的运算时间。 4.利用FFT实现带噪信号检测。 5.利用FFT计算信号频谱。 6.扩展部分主要是关于离散系统采样频率、时域持续时间、谱分辨率等参数之间的关系频谱的内插恢复对语音信号进行简单分析。
四、实验原理 1.序列的离散傅里叶变换及性质 2.利用DFT计算线性卷积 3.利用DFT对信号进行谱分析 4.DFT和FFT的运算量 5.信噪比
五、实验步骤
1.序列的离散傅里叶变换及分析 分别对复序列实序列实偶序列实奇序列虚奇序列进行离散傅里叶变换得到实验结果并对其特点进行分析。实验所需序列自选。 解A、设定复序列x(n) {1,1,1,1,1}j*{1,2,3,4,5} 实序列x1(n) {1,1,1,1,1} 程序
x1ones(1,5);
x21:5;
xx1j*x2;
y1fft(x,10);
y2fft(x1,10);
subplot(1,2,1)
stem(0:9,abs(y1),filled);
title(复序列DFT的幅度谱);
subplot(1,2,2)
stem(0:9,abs(y2),filled);
title(实序列DFT的幅度谱);结果
B、设定实偶序列x(n) {5,4,3,2,1,0,1,2,3,4}实奇序列x(n) {0,4,3,2,1,0,-1,-2,-3,-4}虚奇序列x(n) j*{0,4,3,2,1,0,-1,-2,-3,-4}; 程序
x[5,4,3,2,1,0,1,2,3,4];
yfft(x,10);
subplot(3,3,1)
stem(0:9,abs(y),filled);
title(实偶序列DFT的幅度谱);
subplot(3,3,2)
stem(0:9,real(y),filled);
title(实偶序列DFT的实部);
subplot(3,3,3)
stem(0:9,imag(y),filled);
title(实偶序列DFT的虚部);
x[0,4,3,2,1,0,-1,-2,-3,-4];
yfft(x,10);
subplot(3,3,4)
stem(0:9,abs(y),filled);
title(实奇序列DFT的幅度谱);
subplot(3,3,5)
stem(0:9,real(y),filled);
title(实奇序列DFT的实部);
subplot(3,3,6)
stem(0:9,abs(imag(y)),filled);
title(实奇序列DFT的虚部);
xj*[0,4,3,2,1,0,-1,-2,-3,-4];
yfft(x,10);
subplot(3,3,7)
stem(0:9,y,filled);
title(虚奇序列DFT的幅度谱);
subplot(3,3,8)
stem(0:9,real(y),filled);
title(虚奇序列DFT的实部);
subplot(3,3,9)
stem(0:9,imag(y),filled);0
title(虚奇序列DFT的虚部);结果
分析
2.利用共轭对称性设计高效算法计算2个N点实序列的DFT。 用一个N点FFT计算两个长度为N的实序列N点离散傅里叶变换并将结果和直接使用两个N点DFT得到的结果进行比较。 解设定 x 1 ( n ) x_1 (n) x1(n){1,2,3,4,5,6}0≤n≤5; x 2 ( n ) x_2 (n) x2(n){1,2,1,3,1,4}0≤n≤5; 程序 x1[1,2,3,4,5,6];
x2[1,2,1,3,1,4];
y1fft(x1);
y2fft(x2);
xx1j*x2;
yfft(x,6);
[xec,xoc]circevod(y);
subplot(2,2,1)
stem(0:5,abs(y1),filled);
title(x_1(n)的直接六点DFT的幅度谱);
grid on;
subplot(2,2,2)
stem(0:5,abs(y2),filled);
title(x_2(n)的直接六点DFT的幅度谱);
grid on;
subplot(2,2,3)
stem(0:5,abs(xec),filled);
title(x_1(n)高效算法DFT的幅度谱);
grid on;
subplot(2,2,4)
stem(0:5,abs(xoc),filled);
title(x_2(n)高效算法DFT的幅度谱);
grid on;结果
分析
3.线性卷积及循环卷积的实现及二者关系分析 计算两序列的线性卷积及循环卷积循环卷积采用2种计算方法时域、频域方法。设序列x1长度为M序列x2长度为N循环卷积长度为L分别计算L大于、等于、小于MN-1时的循环卷积。序列x1、x2、L自选得到实验结果并对线性卷积及循环卷积的关系进行分析。 解设定 x 1 ( n ) x_1 (n) x1(n){1,2,3,4}0≤n≤5; x 2 ( n ) x_2 (n) x2(n){1,2,1,3}0≤n≤5;其中MN4分别采用2种方法时域、频域计算L4/7/12的循环卷积 程序
figure(1)
x1[1,2,3,4];
x2[1,2,1,3];
subplot(3,2,1)
y1circonv(x1,x2,4);
stem(0:3,abs(y1),filled);
title(从时域计算4点循环卷积);
grid on;
subplot(3,2,3)
y1circonv(x1,x2,7);
stem(0:6,abs(y1),filled);
title(从时域计算7点循环卷积);
grid on;
subplot(3,2,5)
y1circonv(x1,x2,12);
stem(0:11,abs(y1),filled);
title(从时域计算12点循环卷积);
grid on;
subplot(3,2,2)
y1fft(x1,4);
y2fft(x2,4);
xifft(y1.*y2)
stem(0:3,abs(x),filled);
title(从频域计算4点循环卷积);
grid on;
subplot(3,2,4)
y1fft(x1,7);
y2fft(x2,7);
xifft(y1.*y2)
stem(0:6,abs(x),filled);
title(从频域计算7点循环卷积);
grid on;
subplot(3,2,6)
y1fft(x1,12);
y2fft(x2,12);
xifft(y1.*y2)
stem(0:11,abs(x),filled);
title(从频域计算12点循环卷积);
grid on;figure(2)
x1[1,2,3,4];
x2[1,2,1,3];
yconv(x1,x2);
stem(0:6,y,filled)
grid on;
title(线性卷积的结果);结果
分析
4.比较DFT和FFT的运算时间 1自行选择进行计算的序列或产生随机序列。 2DFT点数N分别取64、256、1024、2048、…… 3分别采用直接计算按DFT定义计算和fft函数计算利用计时函数tic、toc分别统计直接计算和fft计算所用的时间并对结果进行比较含直接计算和fft计算的比较、不同点数N所需计算时间和节约时间的比较等。 解设定序列为x[1,2,3,4,ones(1,60)] 程序
x[1,2,3,4,ones(1,60)];
tic
X1dft(x,64);
toc
tic
X2fft(x,64);
toc
时间已过 0.003188 秒。
时间已过 0.001967 秒。
x[1,2,3,4,ones(1,252)];
tic
X1dft(x,256);
toc
tic
X2fft(x,256);
toc
时间已过 0.012424 秒。
时间已过 0.002118 秒。
x[1,2,3,4,ones(1,1020)];
tic
X1dft(x,1024);
toc
tic
X2fft(x,1024);
toc
时间已过 0.249468 秒。
时间已过 0.008443 秒。
x[1,2,3,4,ones(1,2044)];
tic
X1dft(x,2048);
toc
tic
X2fft(x,2048);
toc
时间已过 1.078018 秒。
时间已过 0.021545 秒
结果
点数 DFT FFT
64 0.003188 秒 0.001967 秒
256 0.012424 秒 0.002118 秒
1024 0.249468 秒 0.008443 秒
2048 1.078018 秒 0.021545 秒结果
点数DFTFFT640.003188 秒0.001967 秒2560.012424 秒0.002118 秒10240.249468 秒0.008443 秒20481.078018 秒0.021545 秒
分析
5.利用FFT求信号频谱及分析采样频率、噪声对频谱的影响 1设模拟信号 x ( t ) 3 c o s ( 8 π t ) 6 c o s ( 20 π t ) x(t)3 cos( 8πt)6 cos( 20πt) x(t)3cos(8πt)6cos(20πt)以 t 0.01 n , 0 ≤ n ≤ N − 1 t0.01n,0≤n≤N-1 t0.01n,0≤n≤N−1进行采样离散化画出所得序列 x N ( n ) x_N (n) xN(n)的N点DFT幅值谱N分别取50256利用FFT实现。分析信号频谱所对应频率轴的数字频率和频率之间的关系。在点数N不变的条件下降低采样频率需满足采样定理观察信号频谱的变化分析产生变化的原因。 解A、采样频率为100hz分别画出N50256点DFT幅度谱如下所示 程序
N50;
n0:N-1;
T0.01;
x3*cos(8*pi*n*T)6*cos(20*pi*n*T);
subplot(2,2,1);
stem(n,x,.);
title(f_s100hz,N50时的信号);
Yfft(x,N);
k10:N-1;w12*pi/N*k1;
subplot(2,2,2);
stem(n,abs(Y),.);
title(f_s100hz,N50时信号的频谱);
N256;
n0:N-1;
T0.01;
x3*cos(8*pi*n*T)6*cos(20*pi*n*T);
subplot(2,2,3);
stem(n,x,.);
title(f_s100hz,N256时的信号);
Yfft(x,N);
k10:N-1;w12*pi/N*k1;
subplot(2,2,4);
stem(n,abs(Y),.);
title(f_s100hz,N256时信号的频谱) 结果
B、采样频率为50hz分别画出N50256点DFT幅度谱如下所示 程序:
N50;
n0:N-1;
T0.02;
x3*cos(8*pi*n*T)6*cos(20*pi*n*T);
subplot(2,2,1);
stem(n,x,.);
title(f_s50hz,N50时的信号);
Yfft(x,N);
k10:N-1;w12*pi/N*k1;
subplot(2,2,2);
stem(n,abs(Y),.);
title(f_s50hz,N50时信号的频谱);
N256
n0:N-1;
T0.02;
x3*cos(8*pi*n*T)6*cos(20*pi*n*T);
subplot(2,2,3);
stem(n,x,.);
title(f_s50hz,N256时的信号);
Yfft(x,N);
k10:N-1;w12*pi/N*k1;
subplot(2,2,4);
stem(n,abs(Y),.);
title(f_s50hz,N256时信号的频谱);结果
分析 2对序列 x N ( n ) x_N (n) xN(n)N任取50或者256需表示为行向量加入噪声 0.2 ∗ r a n d n ( 1 , N ) 0.2*randn(1,N) 0.2∗randn(1,N)比较有无噪声时的信号谱加大噪声到 2 ∗ r a n d n ( 1 , N ) 2*randn(1,N) 2∗randn(1,N)和 10 ∗ r a n d n ( 1 , N ) 10*randn(1,N) 10∗randn(1,N)计算信噪比画出并比较不同噪声下时域波形和幅度频谱讨论噪声对信号分析的影响。 答程序
figure(1)
N50;
n0:N-1;
t0.01*n;
qn*2/N;
x13*cos(8*pi*t)6*cos(20*pi*t);
subplot(2,2,1)
plot(n,x1);title(Pure signal)
yfft(x1,N);
subplot(2,2,2)
plot(q,abs(y));title(FFT of pure signal(N50))
x2x10.2*randn(1,N);
SNR1snr(x1,x2)
subplot(2,2,3)
plot(n,x2);title(noisy signal)
yfft(x2,N);
subplot(2,2,4)
plot(q,abs(y));title(FFT of signal with noise (N50))figure(2)
N50;
n0:N-1;
t0.01*n;
qn*2/N;
x13*cos(8*pi*t)6*cos(20*pi*t);
x2x12*randn(1,N);
x3x110*randn(1,N);
SNR2snr(x1,x2)
SNR3snr(x1,x3)
subplot(2,2,1)
plot(n,x2);title(noisy signal2*randn(1,N))
y2fft(x2,N);
subplot(2,2,2)
plot(q,abs(y2));title(FFT of signal with more noise (N50))
subplot(2,2,3)
plot(n,x3);title(noisy signal10*randn(1,N))
y3fft(x3,N);
subplot(2,2,4)
plot(q,abs(y3));title(FFT of signal with more
noise(N50)) SNR1 0.0783
SNR2 -0.6612
SNR3 -6.4308图形结果
分析
6.创新训练拓展内容
6.1 信号持续时间、频谱分析范围、采样点数和谱分辨率的关系。 1已知模拟信号 x ( t ) c o s ( 200 π t ) c o s ( 800 π t ) c o s ( 816 π t ) c o s ( 1000 π t ) x(t)cos( 200πt)cos( 800πt)cos( 816πt)cos( 1000πt) x(t)cos(200πt)cos(800πt)cos(816πt)cos(1000πt)欲采用数字方法分析该信号的频谱要求能明确区分该信号的所有频率分量两个相邻频谱分量之间至少间隔一个离散频率点。为了便于采用基2-FFT来分析该信号的频谱并避免频谱失真希望截取该信号的整数个周期进行频谱分析并且采样点数为2MM为正整数请确定适当的采样频率不发生频谱混叠且满足前述要求的最低采样频率、采样点数时域最小记录时间并利用所确定的参数编写程序对该信号进行频谱分析画出模拟信号的幅度频谱分析其频谱分析范围和谱分辨率。 解 f s m i n 1024 h z N m i n 256 f_{smin}1024hzN_{min}256 fsmin1024hzNmin256具体过程在下面分析里 程序
T1/1024;
n0:255;
tn*T;
xcos(200*pi*t)cos(800*pi*t)cos(816*pi*t)cos(1000*pi*t);
subplot(2,1,1);
stem(n,x,.)
title(采样1024hz的信号);
axis([0,256,0,4])
subplot(2,1,2);
XK2fft(x);
w[0:5000]*pi/5000;
N256;kn;
X2XK2/N*(sin(w*N/2-pi*k)./sin(w/2-pi*k/N)).*exp(-j*w*(N-1)/2);
plot(w/pi*512,abs(X2))
xlabel(hz);
title(采样1024hz的幅度谱N256);
axis([0,512,0,150]) 结果
分析 2保持采样点数不变采样频率增大1倍重新分析信号的幅度频谱。比较信号幅度频谱、谱分辨率、频谱分析范围的变化并分析其原因。 解程序
T1/2048;
n0:255;
tn*T;
xcos(200*pi*t)cos(800*pi*t)cos(816*pi*t)cos(1000*pi*t);
subplot(2,1,1);
stem(n,x,.)
title(采样2048hz的信号);
axis([0,256,0,4])
subplot(2,1,2);
XK2fft(x);
w[0:5000]*pi/5000;
N256;kn;
X2XK2/N*(sin(w*N/2-pi*k)./sin(w/2-pi*k/N)).*exp(-j*w*(N-1)/2);
plot(w/pi*1024,abs(X2))
xlabel(hz);
title(采样2048hz的幅度谱N256);
axis([0,1024,0,180]) 结果
分析 3保持采样频率不变分别将采样点数增大和减少1倍重新分析信号的幅度频谱。比较信号幅度频谱、谱分辨率、频谱分析范围的变化并分析其原因。 解程序
T1/1024;
n0:127;
tn*T;
xcos(200*pi*t)cos(800*pi*t)cos(816*pi*t)cos(1000*pi*t);
subplot(2,2,1);
stem(n,x,.)
title(采样1024hz的信号);
axis([0,128,0,4])
subplot(2,2,2);
XK2fft(x);
w[0:5000]*pi/5000;
N128;kn;
X2XK2/N*(sin(w*N/2-pi*k)./sin(w/2-pi*k/N)).*exp(-j*w*(N-1)/2);
plot(w/pi*512,abs(X2))
xlabel(hz);
title(采样1024hz的幅度谱N128);
axis([0,512,0,85])
T1/1024;
n0:511;
tn*T;
xcos(200*pi*t)cos(800*pi*t)cos(816*pi*t)cos(1000*pi*t);
subplot(2,2,3);
stem(n,x,.)
title(采样1024hz的信号);
axis([0,512,0,4])
subplot(2,2,4);
XK2fft(x);
w[0:5000]*pi/5000;
N512;kn;
X2XK2/N*(sin(w*N/2-pi*k)./sin(w/2-pi*k/N)).*exp(-j*w*(N-1)/2);
plot(w/pi*512,abs(X2))
xlabel(hz);
title(采样1024hz的幅度谱N512);
axis([0,512,0,300]) 结果 分析
6.2频谱的内插函数恢复频域采样恢复 基于频域采样X(k)及内插公式教材式(3.3.7)和式(3.3.8)用Matlab编程实现离散谱DFT到连续谱的转换采用N4的矩形序列 x ( n ) R 4 ( n ) x(n)R_4 (n) x(n)R4(n)分别求出其4点和8点DFT然后利用内插公式为保证恢复得到的频谱曲线足够光滑在Matlab程序中对连续变量ω的离散化应取200个离散点以上分别由其4点和8点DFT恢复其连续频谱 X ( e j ω ) X(e^{jω}) X(ejω)画出 X ( e j ω ) X(e^{jω}) X(ejω)的幅度频谱图应为光滑连续曲线并比较不同DFT点数恢复的结果以及 R 4 ( n ) R_4 (n) R4(n)的理论频谱参见教材图2.2.1。
解程序
subplot(2,2,1)
x[1,1,1,1];
XK1fft(x,4);
k0:3;N4;
w[-2000:2000]*pi/1000;
X1XK1/N*(sin(w*N/2-pi*k)./sin(w/2-pi*k/N)).*exp(-j*w*(N-1)/2);
plot(w/pi,abs(X1))
title(N4的DFT内插公式恢复结果);
xlabel(w/π);
subplot(2,2,2)
n0:3;
x(1).^n;
w[-500:500]*pi/250;
Xx*exp(-j*n*w);
plot(w/pi,abs(X))
title(N4的DFT的理论频谱);
xlabel(w/π);
subplot(2,2,3)
x[1,1,1,1];
XK2fft(x,8);
k0:7;N8;
w[-2000:2000]*pi/1000;
X2XK2/N*(sin(w*N/2-pi*k)./sin(w/2-pi*k/N)).*exp(-j*w*(N-1)/2);
plot(w/pi,abs(X2))
title(N8的DFT内插公式恢复结果);
xlabel(w/π);
subplot(2,2,4)
n0:3;
x(1).^n
w[-500:500]*pi/250;
Xx*exp(-j*(0:7)*w);
plot(w/pi,abs(X))
title(N8的DFT的理论频谱);
xlabel(w/π);结果
分析
6.3对语音信号进行简单分析。 基于MATLAB平台利用DFT对以适当的采样频率进行采集的不同人的单音节语音信号进行频谱分析注意首先要对采集到的语音信号进行适当的截取画出语音信号的波形及频谱。说明该频谱所对应的模拟频率分析语音信号的频率分布特点对比不同人说同一个音节的频谱的差异最好分别用男声和女声进行分析。对语音信号波形、单音节语音信号的截取方式、DFT频谱、频谱分析结果等进行讨论。 解程序
figure(1)
recObj audiorecorder;
disp(Start speaking.)
recordblocking(recObj, 2);
disp(End of Recording.);
play(recObj);
y getaudiodata(recObj);
subplot(1,2,1);
stem(y,.);
xlabel(时间);
ylabel(幅度);
title(信号波形);
subplot(1,2,2);
stem(abs(fft(y)),.);
title(信号频谱);
xlabel(频率);
ylabel(幅度);figure(2)
sec15
sec2 12
y1y(((1000*sec11):1000*sec2),:);
subplot(1,2,1);
stem(y1,.);
xlabel(时间);
ylabel(幅度);
title(适当截取后信号的波形);
subplot(1,2,2);
stem(abs(fft(y1)),.);
title(适当截取后信号的频谱);
xlabel(频率);
ylabel(幅度); 结果
分析
六、实验结论与心得体会手写 七、实验参考资料 1.高西全,丁玉美.数字信号处理[M].西安西安电子科技大学出版社,2008 2.张德丰.详解MATLAB 数字信号处理[M].北京电子工业出版社,2010 3.王月明,张宝华.MATLAB基础与应用教程[M].北京:北京大学出版社,2012 4.陈怀琛.数字信号处理教程MATLAB释义与实现第3版[M].北京:电子工业出版社,2013 5.宋知用.MATLAB数字信号处理85个实用案例精讲入门到进阶[M].北京:北京航空航天大学出版社,2016