数字信号处理MATLAB实验报告 2
数字信号处理实验报告-FFT算法的MATLAB实现
![数字信号处理实验报告-FFT算法的MATLAB实现](https://img.taocdn.com/s3/m/5461d97326fff705cc170ae0.png)
数字信号处理 实验报告实验二:FFT 算法的MATLAB 实现一、实验目的通过本实验的学习,掌握离散傅立叶变换的理论,特别是FFT 的基本算法以及其在在数字信号处理中的应用。
二、实验内容题一:若x(n)=cos(n*pi/6)是一个N =12的有限序列,利用MATLAB 计算它的DFT 并画出图形。
题二:一被噪声污染的信号,很难看出它所包含的频率分量,如一个由50Hz 和120Hz 正弦信号构成的信号,受均值随机噪声的干扰,数据采样率为1000Hz ,对这污染信号进行傅立叶变换,以检查所包含的频率分量题三:调用原始语音信号mtlb ,对其进行FFT 变换后去掉幅值小于1的FFT 变换值,最后重构语音信号。
(要求有四幅语音信号的频谱图在同一图形窗口以便比较:分别是1、原始语音信号;2、FFT 变换;3去掉幅值小于1的FFT 变换值;4、重构语音信号)三、实验原理1、有限长序列x(n)的DFT 的概念和公式:⎪⎪⎩⎪⎪⎨⎧-≤≤=-≤≤=∑∑-=--=101010)(1)(10)()(N k kn N N n kn N N n W k x N n x N k W n x k x2、基2的FFT 算法四、实验条件(1)微机(2)MATLAB 编程工具五、用matlab 程序实现:实验一:clc;N=12;n=0:N-1;k=0:N-1;xn=cos(n*pi/6);W=exp(-j*2*pi/N);kn=n'*kXk=xn*(W.^kn)stem(n,Xk);xlabel('k');ylabel('Xk');实验二clc;fs=1000;N=1024;n=0:N-1;t=n/fs;x=sin(2*pi*50*t)+sin(2*pi*120*t)+rand(1,N);y=fft(x,N);mag=abs(y);f=n*fs/N;subplot(1,2,1),plot(f,mag);xlabel('频率/Hz');ylabel('振幅');title('N=1024');subplot(1,2,2),plot(f(1:N/2),mag(1:N/2)); xlabel('频率/Hz');ylabel('振幅');title('N=1024');实验三:clc;load mtlbN=1500;subplot(2,2,1)plot([1:N],mtlb(1:N));title('原始语音信号');y=fft(mtlb(1:N));subplot(2,2,2)plot([1:N],y);title('原始语音信号FFT变换');y(y<1)=0;subplot(2,2,3)plot([1:N],y);title('去掉幅值小于1的FFT变换值');subplot(2,2,4)plot([1:N],ifft(y));title('重构语音信号');六、实验心得:(1)通过这次实验,掌握离散傅立叶变换的理论,特别是FFT的基本算法以及其在在数字信号处理中的应用。
数字信号处理实验报告(二)
![数字信号处理实验报告(二)](https://img.taocdn.com/s3/m/9c73991ea45177232f60a2d5.png)
数字信号处理第二次实验报告学院:信息工程学院班级:2012级电子信息工程*班姓名:学号:20125507**指导老师:实验四:IIR数字滤波器设计及软件实现一、实验目的1、熟悉双线性变换设计IIR滤波器的原理与方法2、掌握IIR滤波器的MATLAB实现方法二、实验原理简述IIR数字滤波器间接法基本设计过程:1、将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;2、设计过渡模拟滤波器;3、将过渡模拟滤波器系统函数转换成数字滤波器的系统函数三、程序与图形1、%-----------------信号产生函数mstg---------------function st=mstg %功能函数的写法%产生信号序列向量st,并显示st的时域波形和频谱%st=mstg 返回三路调幅信号相加形成的混合信号,长度N=1600N=1600 %N为信号st的长度。
Fs=10000;T=1/Fs;Tp=N*T; %采样频率Fs=10kHz,Tp为采样时间t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;fc1=Fs/10; %第1路调幅信号的载波频率fc1=1000Hz,fm1=fc1/10; %第1路调幅信号的调制信号频率fm1=100Hzfc2=Fs/20; %第2路调幅信号的载波频率fc2=500Hzfm2=fc2/10; %第2路调幅信号的调制信号频率fm2=50Hzfc3=Fs/40; %第3路调幅信号的载波频率fc3=250Hz,fm3=fc3/10; %第3路调幅信号的调制信号频率fm3=25Hzxt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t); %产生第1路调幅信号xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); %产生第2路调幅信号xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); %产生第3路调幅信号st=xt1+xt2+xt3; %三路调幅信号相加fxt=fft(st,N); %计算信号st的频谱%-------绘制st的时域波形和幅频特性曲线-----subplot(2,1,1)plot(t,st);grid;xlabel('t/s');ylabel('s(t)');axis([0,Tp/8,min(st),max(st)]);title('(a) s(t)的波形')subplot(2,1,2)stem(f,abs(fxt)/max(abs(fxt)),'.');grid;title('(b) s(t)的频谱') axis([0,Fs/5,0,1.2]);xlabel('f/Hz');ylabel('幅度')-10123t/ss (t )(b) s(t)的频谱f/Hz幅度2、%-------实验4-2--------- clear all;close allFs=10000;T=1/Fs; %采样频率%调用信号产生函数mstg 产生由三路抑制载波调幅信号相加构成的复合信号st st=mstg;fp=280;fs=450; %下面wp,ws,为fp,fs 的归一化值范围为0-1wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; %DF 指标(低通滤波器的通、阻带边界频)[N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord 计算椭圆DF 阶数N 和通带截止频率wp[B,A]=ellip(N,rp,rs,wp); %调用ellip 计算椭圆带通DF 系统函数系数向量B 和A[h,w]= freqz(B,A);y1t=filter(B,A,st); %滤波器软件实现 figure(2);subplot(2,1,1); plot(w,20*log10(abs(h))); axis([0,1,-80,0]) subplot(2,1,2);t=0:T:(length(y1t)-1)*T; plot(t,y1t);%axis([0,1,-80,0])-10123t/ss (t )(b) s(t)的频谱f/Hz幅度-80-60-40-20000.020.040.060.080.10.120.140.16-1-0.500.511.53、%-------实验4-3---------fpl=440;fpu=560;fsl=275;fsu=900;wp=[2*fpl/Fs,2*fpu/Fs];ws=[2*fsl/Fs,2*fsu/Fs];rp=0.1;rs=60;[N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord 计算椭圆DF 阶数N 和通带截止频率wp[B,A]=ellip(N,rp,rs,wp); %调用ellip 计算椭圆带通DF 系统函数系数向量B 和A[h,w]= freqz(B,A); y2t=filter(B,A,st);figure(3);subplot(2,1,1);plot(w,20*log10(abs(h))); axis([0,1,-80,0]) subplot(2,1,2);t=0:T:(length(y2t)-1)*T; plot(t,y2t);00.20.40.60.81-80-60-40-20000.020.040.060.080.10.120.140.16-2-10124、%-------实验4-4--------- fp=900;fs=550;wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; %DF 指标(低通滤波器的通、阻带边界频)[N,wp]=ellipord(wp,ws,rp,rs);%调用ellipord 算椭圆DF 阶数N 通带截止频率 [B,A]=ellip(N,rp,rs,wp,'high'); %调用ellip 计算椭圆带通DF 系统函数系数向量B 和A[h,w]= freqz(B,A); y3t=filter(B,A,st);figure(4);subplot(2,1,1); plot(w,20*log10(abs(h))); axis([0,1,-80,0]) subplot(2,1,2);t=0:T:(length(y3t)-1)*T; plot(t,y3t);-80-60-40-20000.020.040.060.080.10.120.140.16-2-1012四、实验结果分析由图可见,三个分离滤波器指标参数选取正确,损耗函数曲线达到所给指标。
Matlab数字信号处理实验报告
![Matlab数字信号处理实验报告](https://img.taocdn.com/s3/m/300ac010580102020740be1e650e52ea5518cead.png)
Matlab数字信号处理实验报告本次实验使用MATLAB进行数字信号处理操作,目的是熟悉MATLAB中数字信号处理的相关工具箱,并进一步理解数字信号处理的基本概念和算法。
一、实验内容1.信号的生成与显示2.时域分析和频域分析3.滤波器设计4.数字滤波器性能分析二、实验步骤在MATLAB中,使用sawtooth函数生成一个锯齿波信号,并使用plot函数进行时域波形的显示。
代码如下:f = 1000;fs = 40000;t = 0:1/fs:0.01;y = sawtooth(2*pi*f*t);plot(t,y);xlabel('Time (s)');ylabel('Amplitude');title('Sawtooth Wave');时域分析包括波形的观察和参数分析,如幅值、均值、方差等。
频域分析则是对信号进行傅里叶变换,得到其频谱图,包括频率分布和强度分布。
%时域分析amp = max(y)-min(y);mean_y = mean(y);var_y = var(y);设计一个低通滤波器,将高于1kHz的频率成分滤掉。
对滤波后的信号进行时域分析和频域分析,比较滤波前后信号的特征参数和频谱特征,并绘制原始信号、滤波后信号及其频谱图。
subplot(2,2,1);plot(t,y);xlabel('Time (s)');ylabel('Amplitude');title('Sawtooth Wave');subplot(2,2,2);plot(t,y_filt);xlabel('Time (s)');ylabel('Amplitude');title('Sawtooth Wave After Filter');subplot(2,2,3:4);plot(f2,fft_y_filt,'r',f,fft_y,'g');xlabel('Frequency (Hz)');ylabel('Amplitude');title('Sawtooth Wave Spectrum Comparison');legend('After Filter','Before Filter');三、实验结果与分析通过生成并显示一段锯齿波信号,并对其进行时域和频域分析,可以得到该信号的关键信息,如幅值、均值、方差和频率分布特性。
数字信号处理实验报告 (基于MATLAB)
![数字信号处理实验报告 (基于MATLAB)](https://img.taocdn.com/s3/m/f0f2dd502cc58bd63086bd34.png)
课程名称:数字信号处理实验实验地点:综合楼C407专业班级:2014级生物医学工程姓名:leifeng学号:指导老师:第一次实验第一章 离散时间信号的时域分析Q1.1运行程序P1.1,以产生单位样本序列u[n]并显示它clf; n=-10:20;u=[zeros(1,10) 1 zeros(1,20)]; stem(n,u);xlabel('时间序号');ylabel('振幅'); title('单位样本序列'); axis([-10 20 0 1.2]);时间序号振幅单位样本序列Q1.2 命令clf ,axis ,title ,xlabel 和ylabel 的作用是什么clf :清除图形窗口内容; axis:规定横纵坐标的范围;title :使图像面板上方显示相应的题目名称; xlable :定义横坐标的名字; ylable :定义纵坐标的名字。
Q1.3修改程序P1.1以产生带有延时11个样本的延迟单位样本序列ud[n],运行修改的程序并且显示产生的序列。
clf; n=0:30;u=[zeros(1,11) 1 zeros(1,19)]; stem(n,u);xlabel('时间序号');ylabel('振幅'); title('单位样本序列'); axis([0 30 0 1.2]);时间序号振幅单位样本序列Q1.5 修改程序P1.1,以产生带有超前7个样本的延时单位阶跃序列sd[n]。
运行修改后的程序并显示产生的序列。
clf; n=-10:20;sd=[zeros(1,3) 1 ones(1,27) ]; stem(n,sd);xlabel('时间序号');ylabel('振幅'); title('单位样本序列'); axis([-10 20 0 1.2]);时间序号振幅单位样本序列Q1.6运行程序P1.2,以产生复数值的指数序列。
数字信号处理MATLAB实验报告-2
![数字信号处理MATLAB实验报告-2](https://img.taocdn.com/s3/m/ad0140683186bceb18e8bb86.png)
实验报告课程名称:数字信号处理实验专业班级:姓名:学号:一、实验目的及任务 学会运用MATLAB 求解离散时间系统的零状态响应;学会运用MATLAB 求解离散时间系统的单位取样响应;学会运用MATLAB 求解离散时间系统的卷积和。
二、实验内容与步骤离散时间系统的响应离散时间LTI 系统可用线性常系数差分方程来描述,即∑∑==-=-Mj jN i i j n x b i n y a 00)()( (3-1) 其中,i a (0=i ,1,…,N )和j b (0=j ,1,…,M )为实常数。
MATLAB 中函数filter 可对式(13-1)的差分方程在指定时间范围内的输入序列所产生的响应进行求解。
函数filter 的语句格式为y=filter(b,a,x)其中,x 为输入的离散序列;y 为输出的离散序列;y 的长度与x 的长度一样;b 与a 分别为差分方程右端与左端的系数向量。
离散时间系统的单位取样响应系统的单位取样响应定义为系统在)(n δ激励下系统的零状态响应,用)(n h 表示。
MATLAB 求解单位取样响应可利用函数filter ,并将激励设为前面所定义的impDT 函数。
MATLAB 另一种求单位取样响应的方法是利用控制系统工具箱提供的函数impz 来实现。
impz 函数的常用语句格式为impz(b,a,N)其中,参数N 通常为正整数,代表计算单位取样响应的样值个数。
离散时间信号的卷积和运算由于系统的零状态响应是激励与系统的单位取样响应的卷积,因此卷积运算在离散时间信号处理领域被广泛应用。
离散时间信号的卷积定义为∑∞-∞=-==m m n h m x n h n x n y )()()(*)()( (3-2)可见,离散时间信号的卷积运算是求和运算,因而常称为“卷积和”。
MATLAB 求离散时间信号卷积和的命令为conv ,其语句格式为y=conv(x,h)其中,x 与h 表示离散时间信号值的向量;y 为卷积结果。
第2章 基于MATLAB实现的数字信号处理实验
![第2章 基于MATLAB实现的数字信号处理实验](https://img.taocdn.com/s3/m/6bb7eec80508763231121203.png)
x 2(n)
5
0 -5
0
5
10 n
15
20
25
30
1 0.5
h(n)
0 -0.5 -1 -5
0
5
10 n
15
20
25
30
第2章 基于MATLAB实现的数字信号处理实验
2.2 离散信号的分析
四、实验思考题
1. 思考序列相关性的应用?
五、实验报告要求
1. 2. 简述实验目的及实验原理。 按实验步骤附上实验过程中的信号序列、系统单位脉冲响应及 系统响应序列的时域和幅频特性曲线,并对所得结果进行分析 和解释。 总结实验中的主要结论。 简要回答实验思考题。
第2章 基于MATLAB实现的数字信号处理实验
2.3 验证采样定理
三、实验步骤
2. 实验内容2(3)的程序运行结果如下图所示:
Reconstruction of x a(t) when Ts=0.01 1
x a(t)
0 -1 0 1 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Reco
2.4 应用FFT实现信号频谱分析
三、实验步骤
3. 实验内容1的程序运行结果如下图所示:
15 10
5
0 -6
-4
-2
0
2
4
6
4 2 0 -2 -4 -6
-4
-2
0
2
4
6
第2章 基于MATLAB实现的数字信号处理实验
2.4 应用FFT实现信号频谱分析
三、实验步骤
4. 实验内容2的程序运行结果如下图所示:
n
第2章 基于MATLAB实现的数字信号处理实验
【精品】数字信号处理实验报告
![【精品】数字信号处理实验报告](https://img.taocdn.com/s3/m/1ebae22da7c30c22590102020740be1e650ecc82.png)
【精品】数字信号处理实验报告
1 实验目的
本次实验的目的是在MATLAB软件环境中运用数字信号处理理论,通过实验操作来检验用于数字信号处理的算法的正确性,以便明确数字信号处理理论在实际应用中的重要作用。
2 实验原理
数字信号处理实验的原理是使用MATLAB进行数字信号处理算法实验,首先,设置一些用于数字信号处理的参数,如传输函数、离散时间区间、采样频率、滤波器类型等;其次,按照信号处理的算法进行编程实现,搭建一个数字信号处理系统,在MATLAB下对信号进行处理,包括采样、滤波和量化等;最后,对处理后的信号进行数字分析,监测数字信号处理后的变化趋势,验证数字信号处理算法的正确性。
3 实验步骤
(1) 建立信号处理实验系统:选择一个常见的信号处理算法,运用MATLAB软件分别编写信号发生程序、信号采样程序、滤波程序和信号量化程序;
(2) 运行实验程序:实验同学可以自行设置参数,如传输函数、离散时间区间、采样频率、滤波器类型等,调整完毕后,点击“run”,运行实验程序;
(3) 观察实验结果:运行完毕后,可以观察MATLAB的图形结果,以此来分析信号处理算法的性能;
(4) 对结果进行分析:经过上述实验操作后,可以根据所得到的实验结果来判断信号处理算法的性能,如输出信号的噪声抑制能力、良好的时域和频域性能等,从而验证信号处理理论在实际应用中的价值。
4 总结。
(完整版)数字信号处理实验二
![(完整版)数字信号处理实验二](https://img.taocdn.com/s3/m/9a7665a7ee06eff9aff80745.png)
y = filter(num,den,x,ic);
yt = a*y1 + b*y2;
d = y - yt;
subplot(3,1,1)
stem(n,y);
ylabel('振幅');
title('加权输入: a \cdot x_{1}[n] + b \cdot x_{2}[n]的输出');
subplot(3,1,2)
%扫频信号通过2.1系统:
clf;
n = 0:100;
s1 = cos(2*pi*0.05*n);
s2 = cos(2*pi*0.47*n);
a = pi/2/100;
b = 0;
arg = a*n.*n + b*n;
x = cos(arg);
M = input('滤波器所需的长度=');
num = ones(1,M);
三、实验器材及软件
1.微型计算机1台
2. MATLAB 7.0软件
四、实验原理
1.三点平滑滤波器是一个线性时不变的有限冲激响应系统,将输出延时一个抽样周期,可得到三点平滑滤波器的因果表达式,生成的滤波器表示为
归纳上式可得
此式表示了一个因果M点平滑FIR滤波器。
2.对线性离散时间系统,若y1[n]和y2[n]分别是输入序列x1[n]和x2[n]的响应,则输入
plot(n, y);
axis([0, 100, -2, 2]);
xlabel('时间序号 n'); ylabel('振幅');
数字信号处理实验报告实验二
![数字信号处理实验报告实验二](https://img.taocdn.com/s3/m/d74e703a67ec102de2bd8924.png)
物理与电子信息工程学院实验报告实验课程名称:数字信号处理实验名称:时域采样与频域采样班级:1012341姓名:严娅学号:101234153成绩:_______实验时间:2012年11月29日一、 实验目的时域采样理论与频域采样理论是数字信号处理中的重要理论。
要求掌握模拟信号采样前后频谱的变化,以及如何选择采样频率才能使采样后的信号不丢失信息;要求掌握频率域采样会引起时域周期化的概念,以及频率域采样定理及其对频域采样点数选择的指导作用。
二、 实验原理1. 时域采样定理的要点是:a) 对模拟信号)(t x a 以间隔T 进行时域等间隔理想采样,形成的采样信号的频谱)(ˆΩj X 是原模拟信号频谱()aX j Ω以采样角频率s Ω(T s /2π=Ω)为周期进行周期延拓。
公式为:)](ˆ[)(ˆt x FT j X a a =Ω )(1∑∞-∞=Ω-Ω=n s a jn j X T b) 采样频率s Ω必须大于等于模拟信号最高频率的两倍以上,才能使采样信号的频谱不产生频谱混叠。
利用计算机计算上式并不方便。
理想采样信号)(ˆt xa 和模拟信号)(t x a 之间的关系为: ∑∞-∞=-=n a a nT t t x t x)()()(ˆδ 对上式进行傅立叶变换,得到:dt e nT t t x j X t j n a a Ω-∞∞-∞-∞=⎰∑-=Ω])()([)(ˆδ dt e nT t t x t j n a Ω-∞-∞=∞∞-∑⎰-)()( δ=在上式的积分号内只有当nT t =时,才有非零值,因此:∑∞-∞=Ω-=Ωn nT j a ae nT x j X )()(ˆ上式中,在数值上)(nT x a =)(n x ,再将T Ω=ω代入,得到:∑∞-∞=-=Ωn n j ae n x j X ω)()(ˆ上式的右边就是序列的傅立叶变换)(ωj e X ,即 T j a e X j X Ω==Ωωω)()(ˆ上式说明理想采样信号的傅立叶变换可用相应的采样序列的傅立叶变换得到,只要将自变量ω用T Ω代替即可。
基于matlab的数字信号精品实验报告
![基于matlab的数字信号精品实验报告](https://img.taocdn.com/s3/m/365d988ca0116c175f0e488d.png)
语音信号处理与分析专业:通信工程班级: 081班姓名:祝健博学号: 2008026130 指导教师:许爽一、实验类型综合研究性实验二、实验目的1.掌握采样定理及FFT谱分析的基本原理及其利用Matlab的实现方法;2. 掌握数字滤波器的设计原理和方法;3. 学习用MATLAB编程实现语音数字滤波系统。
三、实验要求1. 利用Windows下的录音机设备采集语音信号;2. 对语音信号进行采样并混进加性噪声,作频谱分析;3. 通过频谱分析选择合适的滤波器性能指标,设计合适的数字滤波器,并对含噪音的语音信号进行数字滤波;4. 设计处理系统的用户界面(GUI),在所设计的系统界面上可以选择滤波器的参数,显示滤波器的频率响应,选择信号等。
四、数字滤波器的设计原理数字滤波器可以理解为是一个计算程序或算法,将代表输入信号的数字时间序列转化为代表输出信号的数字时间序列,并在转化过程中,使信号按预定的形式变化。
数字滤波器有多种分类,根据数字滤波器冲激响应的时域特征,可将数字滤波器分为两种,即无限长冲激响应(IIR)滤波器和有限长冲激响应(FIR)滤波器。
IIR数字滤波器具有无限宽的冲激响应,与模拟滤波器相匹配,所以IIR 滤波器的设计可以采取在模拟滤波器设计的基础上进一步变换的方法。
其设计方法主要有经典设计法、直接设计法和最大平滑滤波器设计法。
FIR数字滤波器的单位脉冲响应是有限长序列。
它的设计问题实质上是确定能满足所要求的转移序列或脉冲响应的常数问题,设计方法主要有窗函数法、频率采样法和等波纹最佳逼近法等。
在对滤波器实际设计时,整个过程的运算量是很大的。
设计阶数较高的IIR滤波器时,计算量更大,设计过程中改变参数或滤波器类型时都要重新计算。
设计完成后对已设计的滤波器的频率响应要进行校核。
要得到幅频、相频响应特性,运算量也是很大的。
平时所要设计的数字滤波器,阶数和类型并不一定是完全给定的,很多时候要根据设计要求和滤波效果不断地调整,以达到设计的最优化。
《数字信号处理》MATLAB编程实验报告
![《数字信号处理》MATLAB编程实验报告](https://img.taocdn.com/s3/m/fd05481b866fb84ae45c8d78.png)
《计算机程序设计基础》实验报告
6
《数字信号处理》实验报告
实验项目 实验类别 基础性 MATLAB 编程语言环境使用 实验学时 4
实 验 目 的 及 要 求
(1) 正确进入 MATLAB 工作环境并熟悉其基本结构 (2) 熟悉其基本操作命令,包括变量的设置、help 命令的使用、结果的 保存与调用等 (3) 编写 M 文件并在环境中运行 (4) 信号与系统工具包使用
正弦信号程序代码
n=0:0.001:100; y=2*sin(0.1*n+pi/8); plot(n,y), grid on
《计算机程序设计基础》实验报告 3
计算机科学与工程学院 axis([0,100,-3,3])
正弦信号 x1(n)=2 sin(0.1n+pi/8)的图像为
复指数信号程序源代码 clear,t0=0;tf=5;dt=0.05;t1=1; t=t0:dt:tf; st=length(t); alpha=-0.5; w=10; x=exp((alpha+j*w)*t); subplot(1,2,1),plot(t,real(x)),grid on; subplot(1,2,2),plot(t,imag(x)),grid on;
复指数信号
x2 (n) Ae(机程序设计基础》实验报告
4
计算机科学与工程学院
思考题
1.说明点乘(.*)运算和乘法运算(*) 有何不同 答:每一个符号变量都被认为是一个元素,不论它的表达式多么复杂。因此如果你仅从符号
的视角出发,那所有的乘法都是点乘!就相当于两个数相乘一样,没有点乘还是差乘的分别。 但是如果一个矩阵是由符号变量组成的。 那么点乘和差乘就有分别了。 数值运算和符号运算都 是一样的,都要考虑点乘还是差乘
matlab 数字信号实验报告
![matlab 数字信号实验报告](https://img.taocdn.com/s3/m/14f2a8b5bb0d4a7302768e9951e79b8968026831.png)
matlab 数字信号实验报告MATLAB数字信号实验报告摘要:本实验使用MATLAB软件对数字信号进行处理和分析。
首先,我们使用MATLAB生成不同类型的数字信号,并对其进行采样和量化。
然后,我们利用MATLAB对这些数字信号进行滤波、傅里叶变换和频谱分析。
通过本实验,我们可以深入了解数字信号处理的基本原理和方法,并掌握MATLAB在数字信号处理中的应用。
1. 实验目的本实验旨在通过MATLAB软件对数字信号进行处理和分析,加深对数字信号处理原理的理解,掌握MATLAB在数字信号处理中的应用技巧。
2. 实验原理数字信号处理是对数字信号进行处理和分析的技术。
数字信号处理的基本原理包括采样、量化、滤波、傅里叶变换和频谱分析等。
MATLAB是一种强大的工具,可以方便地对数字信号进行处理和分析。
3. 实验内容(1)生成不同类型的数字信号在MATLAB中,我们可以生成不同类型的数字信号,如正弦信号、方波信号和三角波信号等。
通过改变信号的频率、幅度和相位等参数,可以得到不同的数字信号。
(2)采样和量化对生成的数字信号进行采样和量化,得到离散时间信号和离散幅度信号。
(3)滤波利用MATLAB对采样和量化后的数字信号进行滤波处理,去除噪声和干扰,得到清晰的信号。
(4)傅里叶变换和频谱分析对滤波后的数字信号进行傅里叶变换,得到信号的频谱图,分析信号的频率成分和能量分布。
4. 实验结果通过MATLAB对不同类型的数字信号进行处理和分析,得到了清晰的信号波形图和频谱图。
通过对比不同类型的数字信号,我们可以发现它们在频率、幅度和相位等方面的差异。
5. 结论本实验通过MATLAB软件对数字信号进行处理和分析,加深了对数字信号处理原理的理解,掌握了MATLAB在数字信号处理中的应用技巧。
数字信号处理在通信、音频、图像等领域有着广泛的应用,掌握数字信号处理技术对于工程技术人员具有重要的意义。
MATLAB作为一种强大的工具,为数字信号处理提供了便利和高效的解决方案。
matlab 及数字信号实验报告
![matlab 及数字信号实验报告](https://img.taocdn.com/s3/m/921e14ff970590c69ec3d5bbfd0a79563c1ed427.png)
matlab 及数字信号实验报告
《利用Matlab进行数字信号实验报告》
数字信号处理是一门重要的工程学科,它涉及到数字信号的获取、处理和分析。
Matlab作为一种强大的工程计算软件,被广泛应用于数字信号处理领域。
本实
验报告将利用Matlab进行数字信号处理实验,以展示其在数字信号处理中的应用。
实验一:数字信号的获取与显示
首先,我们将使用Matlab编写程序,通过声卡获取外部声音信号,并将其显示在Matlab的图形界面上。
这个实验可以帮助我们了解如何使用Matlab进行信
号的采集和显示,为后续实验做好准备。
实验二:数字信号的滤波处理
接下来,我们将利用Matlab对获取的声音信号进行滤波处理。
我们将设计一个数字滤波器,对声音信号进行去噪处理,以提高信号的质量和清晰度。
通过这
个实验,我们可以学习到如何在Matlab中设计和应用数字滤波器,以及滤波处理对信号质量的影响。
实验三:数字信号的频谱分析
最后,我们将对处理后的声音信号进行频谱分析。
通过Matlab的频谱分析工具,我们可以了解信号的频率成分和能量分布情况,从而更好地理解信号的特性和
结构。
这个实验将帮助我们掌握如何使用Matlab进行数字信号的频谱分析,为进一步的信号处理和分析奠定基础。
通过以上实验,我们可以深入了解Matlab在数字信号处理中的应用,掌握信号采集、滤波处理和频谱分析等基本技能。
同时,我们也可以通过实验结果对数
字信号处理的理论知识进行验证和实践,加深对数字信号处理原理的理解。
希望本实验报告能够对数字信号处理领域的学习和研究有所帮助。
基于 Matlab 的数字信号处理实验报告
![基于 Matlab 的数字信号处理实验报告](https://img.taocdn.com/s3/m/715b790690c69ec3d5bb75ef.png)
第一章MATLAB基本知识MATLAB是一种面向科学和工程计算的高级语言,包含的几十个工具箱,覆盖了通信、自动控制、信号处理、图像处理、生命科学等科技领域,现已成为国际公认的最优秀的科技界应用软件。
该软件的特点是:强大的计算功能、计算结果和编程可视化及极高的转换效率。
本章目的是帮助新用户在领略MATLAB非凡能力的同时能轻松跨越MA TLAB的门槛。
§1.1 MATLAB 语言的基本使用环境一.MATLAB的安装MATLAB5.3 版本仅有一张光盘,运行其上的安装文件setup.exe,则可以按提示安装整个MA TLAB 系统。
MATLAB6.1 版本有两张光盘,将其中的程序盘插入驱动器,运行其上的安装文件setup.exe,则可以按提示安装整个MA TLAB 系统。
MATLAB6.x与以前的版本相比,在界面上的变化是很大的,以前的版本只给出一个又一个命令窗口,MA TLAB6.1的程序界面,除了其右侧的Command Window (命令窗口)之外,还有Launch Pad (程序调用板) 和Command History (命令的历史记录)两个子窗口,以及Workspace (工作空间管理程序) 和Current Directory (当前目录管理程序)等,使MA TLAB 的操作更容易、方便了。
二.MATLAB5.3的操作步骤由于实验室安装的是MA TLAB5.3,下面我们介绍MATLAB5.3 的操作步骤。
双击桌面的MA TLAB5.3 的图标,如图1-1,将进入MA TLAB5.3的Command Window (命令窗口),如图1-2。
1.帮助[Help]选项Help Windows 打开分类帮助窗Help Tips 打开函数文件命令帮助窗Help Desk 打开以超文本形式存储的帮助文件主页Examples and Demos 打开演示窗主页About MA TLAB 注册图标、版本、制造商和用户信息选择[Help]中不同的类别,用户可以从相关的帮助信息得到帮助。
数字信号处理实验报告MATLAB
![数字信号处理实验报告MATLAB](https://img.taocdn.com/s3/m/15928f120b4e767f5acfcee1.png)
实验2 离散时间信号的频谱分析1、实验内容一、编写子函数计算长度为N 的序列x(n) ( 0≤n ≤ N-1)的离散时间傅里叶变换,将频率均匀离散化, 一个周期内有M 个点。
要求画出虚部、实部、幅度、相位,并标注坐标轴。
二、对矩形序列x(n)=RN(n)1. 用公式表示x(n)的频谱,求出其幅度谱和相位谱;2. 利用编写的子函数,计算并画出x(n)的频谱1)固定M ,改变N ,观察N 的取值对频谱的最大值、过零点、第一旁瓣幅度与最大值的比值以及相位谱的影响;2)固定N ,改变M ,观察M 的取值对幅度谱和相位谱的影响。
如: M=4,26,100N=4,26,100三、利用子函数,画出信号x(n)=sin(pi*n/5)和 x(n)=cos(pi*n/4)+cos(pi*n/8) ( 0≤n ≤ N -1)的幅度谱和相位谱。
N 分别取为8,16,20,64,75,128,M=256。
观察N 取不同值时信号频谱的相同和不同之处,为什么会有这样的结果。
2、编程原理、思路和公式(1)、给定长度为N 的序列x(n)的离散时间傅里叶变换(DTFT )的公式为 10()()N jwjwn n X e x n e --==∙∑ 1()()2j w j w n x n X e e d w πππ-=⎰。
可以看出x(n)的DTFT 仍然是一个连续函数,所以需要将数字角频域w 离散化,设一个频率周期内离散点有M 个,则第k 个点所代表的数字角频率2w k M π=。
这样x(n)的DTFT 变成:2210()()()N j k j nk jw M M n X e X e x n eππ--===∙∑ 01k M ≤≤-,(2)、因为0≤.n ≤.N-1, 01k M ≤≤- 设置两层for 循环,用sum 表示累加求和的值,即可实现2210()()()N j k j nk jw MM n X e X e x n eππ--===∙∑(3)对矩形序列x(n)=R4(n),首先固定M 不变,改变N 的取值。
东南大学数字信号处理第二次MATLAB实验报告
![东南大学数字信号处理第二次MATLAB实验报告](https://img.taocdn.com/s3/m/0a960cc2360cba1aa811dafa.png)
原代码:
Fft函数:
在命令窗口输入:(手绘fft)
运行结果为:
在命令窗口输入:(原装fft)
运行后的结果为:
在命令窗口输入:(手绘dft)
运行结果为:
结果分析:
(1)由自己编写的my_fft函数与MATLAB自带的fft函数在cosk(k=0:511)的频谱图中结果相同,与之间的dft函数在运行结果上也表现出了一致性。
(2)运行时间的比较上从快到慢的顺序依次为fft(0.1152s)>my_fft (0.3157s)>my_dft(0.4038s), 结果符合预期,这说明my_fft函数在一定程度上能够简化计算,但是不及MATLAB底部的fft优秀,存在很大的改进空间(由于使用的是初等函数进行的循环迭代计算,运算速度较矩阵运算有一定的差距);(3)由于采用了蝶形算法使得计算的次数缩减,时间复杂度由N^2降为N*log2N,在理论上提高了效率。
当N=512时,DFT的复杂度为512^2=262144,FFT的复杂度为512*9=4608次,但由于空间的开销使得运行速度有一定的延缓。
Matlab数字信号处理实验报告
![Matlab数字信号处理实验报告](https://img.taocdn.com/s3/m/0088af3bbcd126fff7050b25.png)
实验 2-3
n=0:30;%输入x(n)和冲激响应 h(n) x=zeros(1,length(n)); h=zeros(1,length(n)); x([find((n>=0)&(n<=4))] ) =1; h([find((n>=0)&(n<=8))] ) =0.5; subplot(3,1,1); stem(x); title('x(n)'); axis([0,30,0,2]); subplot(3,1,2); stem(h); title('h(n)'); axis([0,30,0,2]); X=fft(x); H=fft(h); Y=X.*H; y=ifft(Y); subplot(3,1,3);
变换及 h(n) 的 Z 变换,则
H (z) zesT
1 T
Ha (s
m
j
2 T
m)
(2) 双线性变换法
s
平面与
z
平面之间满足以下映射关系:
s
2 T
1 1
z 1 z 1
s 平面的虚轴单值地映射于 z 平面的单位圆上,s 平面的左半平面完全映射 到 z 平面的单位圆内。双线性变换不存在混叠问题。双线性变换时一种非线性变
subplot(3,1,2); stem(n,h); axis([0,30,0,2]); title('冲激响应序列'); xlabel('n'); ylabel('h(n)');
数字信号处理Matlab课后实验(吴镇扬)
![数字信号处理Matlab课后实验(吴镇扬)](https://img.taocdn.com/s3/m/d6b64fd15fbfc77da269b16a.png)
数字信号处理实验报告实验一熟悉MATLAB环境实验二信号的采样与重建实验三快速变换及其应用实验四 IIR数字滤波器的设计实验五 FIR数字滤波器的设计实验一熟悉MATLAB环境一、实验目的(1)熟悉MATLAB的主要操作命令。
(2)学会简单的矩阵输入和数据读写。
(3)掌握简单的绘图命令。
(4)用MATLAB编程并学会创建函数。
(5)观察离散系统的频率响应。
二、实验内容认真阅读本章附录,在MATLAB环境下重新做一遍附录中的例子,体会各条命令的含义。
在熟悉了MATLAB基本命令的基础上,完成以下实验。
上机实验内容:(1)数组的加、减、乘、除和乘方运算。
输入A=[1 2 3 4],B=[3 4 5 6],求C=A+B,D=A-B,E=A.*B,F=A./B,G=A.^B并用stem语句画出A、B、C、D、E、F、G。
实验程序:A=[1 2 3 4];B=[3 4 5 6];n=1:4;C=A+B;D=A-B;E=A.*B;F=A./B;G=A.^B;subplot(4,2,1);stem(n,A,'fill');xlabel ('时间序列n');ylabel('A');subplot(4,2,2);stem(n,B,'fill');xlabel ('时间序列n ');ylabel('B');subplot(4,2,3);stem(n,C,'fill');xlabel ('时间序列n ');ylabel('A+B');subplot(4,2,4);stem(n,D,'fill');xlabel ('时间序列n ');ylabel('A-B');subplot(4,2,5);stem(n,E,'fill');xlabel ('时间序列n ');ylabel('A.*B');subplot(4,2,6);stem(n,F,'fill');xlabel ('时间序列n ');ylabel('A./B');subplot(4,2,7);stem(n,G,'fill');xlabel ('时间序列n ');ylabel('A.^B');运行结果:(2)用MATLAB实现以下序列。
matlab 数字信号实验报告
![matlab 数字信号实验报告](https://img.taocdn.com/s3/m/eb802b75ef06eff9aef8941ea76e58fafab045d9.png)
matlab 数字信号实验报告数字信号处理是现代通信和信息处理领域的重要技术之一。
在数字信号处理中,Matlab是一种常用的工具,它提供了丰富的函数和工具箱,可以方便地进行信号分析和处理。
本文将介绍我在数字信号实验中使用Matlab的经验和成果。
1. 实验背景和目的数字信号处理实验是我们学习数字信号处理课程的重要环节。
通过实验,我们可以巩固理论知识,掌握实际应用技巧,并深入了解数字信号处理的原理和方法。
本次实验的目的是通过Matlab编程实现一些数字信号处理的基本操作,如信号的采样、量化、傅里叶变换等,并对实验结果进行分析和展示。
2. 实验过程和方法2.1 信号的生成与显示首先,我们需要生成一个信号并在Matlab中进行显示。
可以使用Matlab提供的函数生成各种类型的信号,如正弦信号、方波信号等。
生成信号后,我们可以使用plot函数将信号绘制出来,以便观察和分析。
2.2 信号的采样与重构在数字信号处理中,采样是将连续时间信号转换为离散时间信号的过程。
我们可以使用Matlab的采样函数对信号进行采样,并通过plot函数将采样后的信号绘制出来。
此外,我们还可以使用重构函数对采样信号进行重构,以还原原始信号。
2.3 信号的量化与编码量化是将连续信号的幅度转换为离散值的过程。
在Matlab中,我们可以使用quantize函数对信号进行量化,并使用code函数对量化后的信号进行编码。
通过观察和分析编码后的信号,我们可以了解信号的失真情况以及编码效率。
2.4 信号的滤波与频谱分析滤波是数字信号处理中常用的操作之一。
在Matlab中,我们可以使用fir1函数设计滤波器,并使用filter函数对信号进行滤波。
此外,我们还可以使用fft函数对信号进行频谱分析,以观察信号的频谱特性。
3. 实验结果和分析通过实验,我们可以得到一系列实验结果,并对其进行分析和展示。
例如,我们可以绘制原始信号和采样信号的波形图,并对其进行比较和分析。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
课程名称:数字信号处理实验专业班级:
姓名:
学号:
信号处理领域被广泛应用。
离散时间信号的卷积定义为
∑∞
-∞=-=
=m m n h m x n h n x n y )()()(*)()( (3-2) 可见,离散时间信号的卷积运算是求和运算,因而常称为“卷积和”。
MATLAB 求离散时间信号卷积和的命令为conv ,其语句格式为
y=conv(x,h)
其中,x 与h 表示离散时间信号值的向量;y 为卷积结果。
用MA TLAB 进行卷积和运算时,无法实现无限的累加,只能计算时限信号的卷积。
对于给定函数的卷积和,我们应计算卷积结果的起始点及其长度。
两个时限序列的卷积和长度一般等于两个序列长度的和减1。
上机练习:
1. 试用MATLAB 命令求解以下离散时间系统的单位取样响应。
(1))1()()2()1(4)(3-+=-+-+n x n x n y n y n y
程序代码:
a=[3 4 1];
b=[1 1];
n=0:35;
x=impDT(n);
h=filter(b,a,x);
stem(n,h,'fill'),grid on
xlabel('n'),title('单位取样响应h(n)MATLAB 仿真')
(2))()2(10)1(6)(2
5n x n y n y n y =-+-+ 程序代码:
a=[5/2 6 10];
b=[1];
n=0:30;
x=impDT(n);
h=filter(b,a,x);
stem(n,h,'fill'),grid on
xlabel('n'),title('单位取样响应h(n)MATLAB 仿真')
2. 已知某系统的单位取样响应为()()()[]10)8
7
(--=n u n u n h n ,试用MATLAB 求当激励信号为)5()()(--=n u n u n x 时,系统的零状态响应。
程序代码:
nx=-1:8;
nh=-2:15;
x=uDT(nx)-uDT(nx-5);
h=0.8.^nh.*(uDT(nh)-uDT(nh-10));
y=conv(x,h);
ny1=nx(1)+nh(1);
ny=ny1+(0:(length(nx)+length(nh)-2));
subplot(311)
stem(nx,x,'fill'),grid on
xlabel('n'),title('x(n)')
axis([-4 16 0 3])
subplot(312)
stem(nh,h','fill'),grid on
xlabel('n'),title('h(n)')
axis([-4 16 0 3])
subplot(313)
stem(ny,y,'fill'),grid on
xlabel('n'),title('y(n)=x(n)*h(n)') axis([-4 16 0 5])
实验心得:。