基于matlab的信号处理实例
基于MATLAB的“数字信号处理”实验平台的制作毕业设计
![基于MATLAB的“数字信号处理”实验平台的制作毕业设计](https://img.taocdn.com/s3/m/d234f450c850ad02de8041b5.png)
目录中文摘要 (i)英文摘要 ................................................................................................................................ I V 1 绪论 . (1)1.1 问题提出及研究意义 (1)1.2 设计的基本内容 (1)2 系统设计工具简介 (2)2.1 MATLAB概述 (2)2.2 图形用户界面(GUI)设计 (3)2.2.1 创建GUI的步骤 (3)2.2.2 GUI编程 (7)2.2.3 GUI的设计流程和设计原则 (8)2.2.4 控件的使用 (9)3 系统总体设计思路 (10)3.1 系统总体设计的步骤 (10)3.2 系统总体设计的结构 (10)4 系统图形用户界面设计 (13)4.1 图形用户界面外观设计 (13)4.1.1 控件对象 (13)4.1.2 控件属性的设置 (14)4.1.3 窗口属性的设置 (15)4.1.4 菜单的设计 (16)4.2 图形用户界面控件编程 (16)4.2.1 输入函数 (17)4.2.2 输出函数 (18)4.2.3 回调函数 (18)5 系统用户界面的实现 (18)5.1 引导模块 (19)5.1.1 回调函数的编写 (19)5.1.2 界面功能 (20)5.2系统说明模块 (20)5.3 主界面模块 (21)5.3.1 回调函数的编写 (21)5.3.2 界面功能 (21)5.4 基本信号的产生模块 (22)5.4.1 回调函数编写的基本原理 (22)5.4.2 界面功能 (24)5.4.3 界面使用演示 (25)5.5 序列基本计算模块 (25)5.5.1 回调函数编写的基本原理 (25)5.5.2 界面功能 (26)5.5.3 界面使用演示 (27)5.6 数据采集模块 (27)5.6.1 回调函数编写的基本原理 (27)5.6.2 界面功能 (28)5.6.3 界面使用演示 (29)5.7 卷积模块 (30)5.7.1 回调函数编写的基本原理 (30)5.7.2 界面功能 (30)5.7.3 界面使用演示 (30)5.8 傅里叶变换模块 (32)5.8.1 回调函数编写的基本原理 (32)5.8.2 界面功能 (32)5.8.3 界面使用演示 (33)5.9 Z变换模块 (35)5.9.1 回调函数编写的基本原理 (35)5.9.2 界面功能 (36)5.9.3 界面使用演示 (37)5.10 滤波器设计模块 (40)5.10.1 回调函数编写的基本原理 (41)5.10.2 界面功能 (43)5.10.3 界面使用演示 (43)致谢 (49)参考文献 (50)附录 (51)毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
基于Matlab的DFT及FFT频谱分析
![基于Matlab的DFT及FFT频谱分析](https://img.taocdn.com/s3/m/bf28255a9a6648d7c1c708a1284ac850ac020467.png)
基于Matlab的DFT及FFT频谱分析基于Matlab的DFT及FFT频谱分析一、引言频谱分析是信号处理中的重要任务之一,它可以揭示信号的频率特性和能量分布。
离散傅里叶变换(DFT)及快速傅里叶变换(FFT)是常用的频谱分析工具,广泛应用于许多领域。
本文将介绍通过Matlab进行DFT及FFT频谱分析的方法和步骤,并以实例详细说明。
二、DFT及FFT原理DFT是一种将时域信号转换为频域信号的离散变换方法。
它将信号分解成若干个正弦和余弦函数的叠加,得到频率和幅度信息。
FFT是一种高效的计算DFT的算法,它利用信号的对称性和周期性,将计算复杂度从O(N^2)降低到O(NlogN)。
FFT通过将信号分解成不同长度的子序列,递归地进行计算,最终得到频谱信息。
三、Matlab中的DFT及FFT函数在Matlab中,DFT及FFT可以通过内置函数进行计算。
其中,DFT使用函数fft,FFT使用函数fftshift。
fft函数可直接计算信号的频谱,fftshift函数对频谱进行频移操作,将低频移到频谱中心。
四、Matlab中DFT及FFT频谱分析步骤1. 读取信号数据首先,将待分析的信号数据读入到Matlab中。
可以使用内置函数load读取文本文件中的数据,或通过自定义函数生成模拟信号数据。
2. 时域分析通过plot函数将信号数据在时域进行绘制,以观察信号的波形。
可以设置合适的坐标轴范围和标签,使图像更加清晰。
3. 信号预处理针对不同的信号特点,可以进行预处理操作,例如去除直流分量、滤波等。
这些操作可提高信号的频谱分析效果。
4. 计算DFT/FFT使用fft函数计算信号数据的DFT/FFT,并得到频谱。
将信号数据作为输入参数,设置采样频率和点数,计算得到频谱数据。
5. 频域分析通过plot函数将频谱数据在频域进行绘制,观察信号的频率特性。
可以设置合适的坐标轴范围和标签,使图像更加清晰。
6. 结果解读根据频谱图像,分析信号的频率成分、幅度分布和峰值位置。
基于MATLAB的语音信号处理与识别系统设计与实现
![基于MATLAB的语音信号处理与识别系统设计与实现](https://img.taocdn.com/s3/m/b93e10662bf90242a8956bec0975f46527d3a72d.png)
基于MATLAB的语音信号处理与识别系统设计与实现一、引言语音信号处理与识别是人工智能领域中的重要研究方向之一,随着深度学习和人工智能技术的不断发展,基于MATLAB的语音信号处理与识别系统设计与实现变得越来越受到关注。
本文将介绍如何利用MATLAB进行语音信号处理与识别系统的设计与实现。
二、MATLAB在语音信号处理中的应用MATLAB作为一种强大的科学计算软件,提供了丰富的工具箱和函数库,可以方便地进行语音信号处理。
在语音信号处理中,MATLAB可以用于语音信号的采集、预处理、特征提取、模型训练等各个环节。
通过MATLAB提供的工具,可以高效地对语音信号进行分析和处理。
三、语音信号处理流程1. 语音信号采集在语音信号处理系统中,首先需要对语音信号进行采集。
通过MATLAB可以实现对声音的录制和采集,获取原始的语音信号数据。
2. 语音信号预处理采集到的语音信号数据通常包含噪声和杂音,需要进行预处理以提高后续处理的准确性。
预处理包括去噪、降噪、滤波等操作,可以有效地净化语音信号数据。
3. 特征提取在语音信号处理中,特征提取是一个关键步骤。
通过MATLAB可以提取出语音信号的频谱特征、时域特征等信息,为后续的模式识别和分类打下基础。
4. 模型训练与识别利用MATLAB可以构建各种机器学习模型和深度学习模型,对提取出的特征进行训练和识别。
通过模型训练,可以实现对不同语音信号的自动识别和分类。
四、基于MATLAB的语音信号处理与识别系统设计1. 系统架构设计基于MATLAB的语音信号处理与识别系统通常包括数据采集模块、预处理模块、特征提取模块、模型训练模块和识别模块。
这些模块相互配合,构成一个完整的系统架构。
2. 界面设计为了方便用户使用,可以在MATLAB中设计用户友好的界面,包括数据输入界面、参数设置界面、结果展示界面等。
良好的界面设计可以提升系统的易用性和用户体验。
五、基于MATLAB的语音信号处理与识别系统实现1. 数据准备首先需要准备好用于训练和测试的语音数据集,包括正样本和负样本。
基于Matlab的IQ信号处理
![基于Matlab的IQ信号处理](https://img.taocdn.com/s3/m/448f0dcabb4cf7ec4afed0ce.png)
二、实习课题完成的技术路线或实施方法
2.1、ASK、FSK 解调部分
基于 Matlab 的 I/Q 解调分析有两种方法,可以在计算机与监测设备联机的 情况下进行实时采集与分析, 也可以利用设备提供的 I/Q 解调功能采集数据,保 存在后缀名为“.mat”的文件中进行脱机分析处理。我采用的分析方法是后者, 利用 Tektronix 公司的 RSA 系列频谱分析仪采集数据,然后保存到后缀名为 “.mat”的文件中,再通过 U 盘拷贝的方式导入 PC 端,然后在 Matlab 上分析处 理。 2.1.1、IQ 数据简介 极坐标参量与直角坐标参量间的转换示意如下图, 极坐标图表示的矢量的参 数是幅值和瞬时相位,一般表示为 A ,因为所有调制形式针对载波的改变都 是幅值、 相位以及可以由相位推导的频率,极坐标图是分析调制技术矢量参数的 主要描述方式。I/Q 直角坐标图表示矢量的参数不是直接的幅值和瞬时相位,而 是把它们投影在 I/Q 直角坐标轴上,采用 I 轴和 Q 轴的投影分量来确定矢量。
2
频率,Matlab 代码为:diff(unwrap(angle(Y))),unwrap()是解卷绕,经观察解 调效果良好。 (2)ASK解调功能的实现 ASK是振幅键控方式, 这种调制方式是根据信号的不同,调节正弦波的幅度。 这里参考计算4.1.3计算幅值 Am 的公式,将频谱仪导入的I/Q数据计算瞬时幅 值,Matlab代码为:magY=10*log10(real(Y).^2+imag(Y).^2)+GainOffset, GainOffset与仪器硬件相关,经观察解调效果良好。
5
y(i)=cutoff; else y(i)=magY(i); end end n=0:1:datalength-1;%初值:增量:终值 xspan=n;%生成 x 轴坐标值 plot(xspan,y);%做出以数据(xspan(i),y(i))为结点的折线图 title('ASK 显示');%图形标题说明 ylabel('10dBm');%坐标轴 y 轴说明 axis([0,datalength-1,cutoff-0.1,-1]);%定制 2 维坐标轴范围 grid on;%显示格栅
基于MATLAB的信号与系统实验教程
![基于MATLAB的信号与系统实验教程](https://img.taocdn.com/s3/m/4f073bc1d5bbfd0a795673c1.png)
基于MATLAB的信号与系统实验教程第一部分 MATLAB基础第1章 MATLAB环境1.1 MATLAB界面图1.1 MATLAB主界面图1.2 Workspace图1.3 MATLAB.m文件编辑窗口界面1.2 文件类型图1.4 设置路径图1.5 例1-1运行结果1.3 系统和程序控制指令1.4 练习第2章 数据类型与数学运算2.1 数值、变量和表达式2.1.1 数值的记述2.1.2 变量命名规则2.1.3 运算符和表达式2.2 数组、矩阵及其运算2.2.1 复数和复数矩阵2.2.2 数组和矩阵的运算2.2.3 特殊矩阵(Specialized matrices)2.3 关系和逻辑运算2.4 练习第3章 数值计算与符号计算3.1 线性代数与矩阵分析3.1.1 线性代数3.1.2 特征值分解3.1.3 奇异值分解3.1.4 矩阵函数3.2 线性方程组求解3.2.1 确定性线性方程组求解3.2.2 线性最小二乘问题的方程求解3.3 数据分析函数图3.1 例3-4运行结果3.4 符号计算图3.2 数值型与符号型数据转换关系3.5 练习第4章 绘图4.1 基本绘图指令4.1.1 plot的基本调用格式图4.1 例4-1运行结果4.1.2 stem: 离散数据绘制(火柴杆图)图4.2 例4-2运行结果4.1.3 polar: 极坐标图图4.3 例4-3运行结果4.2 各种图形标记、控制指令图4.4 例4-4运行结果4.2.1 图的创建与控制4.2.2 轴的产生与控制4.2.3 分格线(grid)、坐标框(box)、图保持(hold)4.2.4 图形标志4.3 其他常用绘图指令4.3.1 其他类型图的绘制图4.5 例4-5运行结果图4.6 例4-6运行结果简易绘图指令图4.7 例4-7运行结果4.4 练习第5章 SIMULINK5.1 SIMULINK的基本使用方法图5.1 Simulink Library Browser窗口图5.2 Pulse Generator模块的参数设置5.2 SIMULINK模型概念及基本模块介绍图5.4 SIMULINK模型的一般结构5.2.1 常用的sources——信号源模块5.2.2 常用的sinks——信号显示与输出模块图5.5 示波器纵坐标设置对话框图5.6 示波器属性对话框5.2.3 math operations——数学运算单元模块5.2.4 continuous——连续系统模块5.2.5 discrete——离散系统模块5.3 SIMULINK模型的仿真5.3.1 仿真参数设置图5.7 仿真设置对话框5.3.2 建立子系统图5.8 例5-2的SIMULINK模型图5.9 例5-2的子系统模型图5.10 例5-2仿真输出波形5.4 练习第6章 M函数和工具箱6.1 M函数6.2 工具箱图6.1 演示程序中的工具箱(Toolbox)使用帮助6.3 练习第7章 MATLAB实用技术遴选7.1 图形用户界面设计7.1.1 设计原则与设计步骤7.1.2 界面与控件介绍图7.1 标准菜单样式7.1.3 GUI实例分析。
《基于MATLAB的数字信号处理》实验报告
![《基于MATLAB的数字信号处理》实验报告](https://img.taocdn.com/s3/m/dc611645227916888586d710.png)
0.60007.0000-5.4000所以,X=[错误!未找到引用源。
]=[ 0.6000, 7.0000, -5.4000]’实验结果2:K=1.732051实验结果3:三曲线的对比图如下所示:图1.1 三曲线的对比实验二基于MATLAB信号处理实验xlabel('频率/Hz');ylabel('振幅/dB');title('布莱克窗的幅频特性');grid on;subplot(2,1,2);plot(f4,180/pi*unwrap(angle(H4)));xlabel('频率/Hz');ylabel('相位');title('布莱克窗的相频特性');grid on;六、实验结果实验结果2.1:图2-1 x(n)与y(n)的互相关序列图由实验结果可知,x(n)与y(n)的互相关只在区间[-4,8]上有能力,刚好是区间[-3,3]与右移后的区间[-1,5]两端点之和,与结论一致。
且互相关在2处达到最大。
实验结果2.2.1:其表示的差分方程为:y(n)-0.8145y(n-4)=x(n)+x(n-4)实验结果2.2.2:滤波器的幅频和相频图如下所示:图2-2 滤波器的幅频与相频图实验结果2.2.3:由下图实验结果可知,输出信号相对于输入信号有一小小的延迟,基本上x(n)的频点都通过了,滤波器是个梳状filter,正好在想通过的点附近相位为0,也就是附加延迟为0图2-3 滤波器的幅度和相位变化图2-4 两信号波形实验结果2.3:四种带通滤波器的窗函数的频率响应如下所示:图2-5 矩形窗的频率特性图2-6 汉宁窗的频率特性图2-7 海明窗的频率特性图2-8 布莱克曼窗的频率特性图3-1 加噪前、后图像对比图3-2 加椒盐噪声的图像均值滤波前、后的图像对比图3-3 加椒盐噪声的图像中值滤波前、后的图像对比图3-4加高斯噪声的图像均值滤波前、后的图像对比图3-5 加高斯噪声的图像中值滤波前、后的图像对比实验结果3.2:图3-6 原图及重构图像图3-7 程序运行结果由实验结果可知,当DCT变换的系数置0个数小于5时,重构图像与原图像的峰值信噪比为2.768259,重构图像置为0的变换系数的个数个数为:43.708737;当DCT变换的系数置0个数小于10时,重构图像与原图像的峰值信噪比15.922448,重构图像置为0的变换系数的个数个数为:36.110705;当DCT变换的系数置0个数小于5时,重构图像与原图像的峰值信噪比为2.768259,重构图像置为0的变换系数的个数个数为:30.366348;可以发现,在抛弃部分DCT系数后,重构图像时不会带来其画面质量的显著下降,采用这种方法来实现压缩算法时,可以通过修改mask变量中的DCT系数来更好地比较仿真结果。
基于matlab的数字信号调制与解调
![基于matlab的数字信号调制与解调](https://img.taocdn.com/s3/m/4ea367f1ba0d4a7302763a57.png)
一matlab常用函数1、特殊变量与常数ans 计算结果的变量名computer 确定运行的计算机eps 浮点相对精度Inf 无穷大I 虚数单位inputname 输入参数名NaN 非数nargin 输入参数个数nargout 输出参数的数目pi 圆周率nargoutchk 有效的输出参数数目realmax 最大正浮点数realmin 最小正浮点数varargin 实际输入的参量varargout 实际返回的参量操作符与特殊字符+ 加- 减* 矩阵乘法 .* 数组乘(对应元素相乘)^ 矩阵幂 .^ 数组幂(各个元素求幂)\ 左除或反斜杠/ 右除或斜面杠 ./ 数组除(对应元素除)kron Kronecker张量积: 冒号() 圆括[] 方括 . 小数点 .. 父目录 ... 继续, 逗号(分割多条命令); 分号(禁止结果显示)% 注释! 感叹号' 转置或引用= 赋值== 相等<> 不等于& 逻辑与| 逻辑或~ 逻辑非xor 逻辑异或2、基本数学函数abs 绝对值和复数模长acos,acodh 反余弦,反双曲余弦acot,acoth 反余切,反双曲余切acsc,acsch 反余割,反双曲余割angle 相角asec,asech 反正割,反双曲正割secant 正切asin,asinh 反正弦,反双曲正弦atan,atanh 反正切,双曲正切tangent 正切atan2 四象限反正切ceil 向着无穷大舍入complex 建立一个复数conj 复数配对cos,cosh 余弦,双曲余弦csc,csch 余切,双曲余切cot,coth 余切,双曲余切exp 指数fix 朝0方向取整floor 朝负无穷取整*** 最大公因数imag 复数值的虚部lcm 最小公倍数log 自然对数log2 以2为底的对数log10 常用对数mod 有符号的求余nchoosek 二项式系数和全部组合数real 复数的实部rem 相除后求余round 取整为最近的整数sec,sech 正割,双曲正割sign 符号数sin,sinh 正弦,双曲正弦sqrt 平方根tan,tanh 正切,双曲正切3、基本矩阵和矩阵操作blkding 从输入参量建立块对角矩阵eye 单位矩阵linespace 产生线性间隔的向量logspace 产生对数间隔的向量numel 元素个数ones 产生全为1的数组rand 均匀颁随机数和数组randn 正态分布随机数和数组zeros 建立一个全0矩阵colon) 等间隔向量cat 连接数组diag 对角矩阵和矩阵对角线fliplr 从左自右翻转矩阵flipud 从上到下翻转矩阵repmat 复制一个数组reshape 改造矩阵roy90 矩阵翻转90度tril 矩阵的下三角triu 矩阵的上三角dot 向量点集cross 向量叉集ismember 检测一个集合的元素intersect 向量的交集setxor 向量异或集setdiff 向是的差集union 向量的并集数值分析和傅立叶变换cumprod 累积cumsum 累加cumtrapz 累计梯形法计算数值微分factor 质因子inpolygon 删除多边形区域内的点max 最大值mean 数组的均值mediam 中值min 最小值perms 所有可能的转换polyarea 多边形区域primes 生成质数列表prod 数组元素的乘积rectint 矩形交集区域sort 按升序排列矩阵元素sortrows 按升序排列行std 标准偏差sum 求和trapz 梯形数值积分var 方差del2 离散拉普拉斯diff 差值和微分估计gradient 数值梯度cov 协方差矩阵corrcoef 相关系数conv2 二维卷积conv 卷积和多项式乘法filter IIR或FIR滤波器deconv 反卷积和多项式除法filter2 二维数字滤波器cplxpair 将复数值分类为共轭对fft 一维的快速傅立叶变换fft2 二维快速傅立叶变换fftshift 将FFT的DC分量移到频谱中心ifft 一维快速反傅立叶变换ifft2 二维傅立叶反变换ifftn 多维快速傅立叶变换ifftshift 反FFT偏移nextpow2 最靠近的2的幂次unwrap 校正相位角多项式与插值conv 卷积和多项式乘法roots 多项式的根poly 具有设定根的多项式polyder 多项式微分polyeig 多项式的特征根polyfit 多项式拟合polyint 解析多项式积分polyval 多项式求值polyvalm 矩阵变量多项式求值residue 部分分式展开interp1 一维插值interp2 二维插值interp3 三维插值interpft 使用FFT的一维插值interpn 多维插值meshgrid 为3维点生成x和y的网格ndgrid 生成多维函数和插值的数组pchip 分段3次Hermite插值多项式ppval 分段多项式的值spline 3次样条数据插值绘图函数bar 竖直条图barh 水平条图hist 直方图histc 直方图计数hold 保持当前图形loglog x,y对数坐标图pie 饼状图plot 绘二维图polar 极坐标图semilogy y轴对数坐标图semilogx x轴对数坐标subplot 绘制子图bar3 数值3D竖条图bar3h 水平3D条形图comet3 3D 慧星图cylinder 圆柱体fill3 填充的3D多边形plot3 3维空间绘图quiver3 3D震动(速度)图slice 体积薄片图sphere球stem3 绘制离散表面数据wate***ll 绘制瀑布trisurf三角表面clabel 增加轮廓标签到等高线图中datetick 数据格式标记grid 加网格线gtext 用鼠标将文本放在2D图中legend 图注plotyy 左右边都绘Y轴title 标题xlabel X轴标签ylabel Y轴标签zlabel Z轴标签contour 等高线图contourc 等高线计算contourf 填充的等高线图hidden 网格线消影meshc 连接网格/等高线mesh 具有参考轴的3D网格peaks 具有两个变量的采样函数surf 3D阴影表面图su***ce 建立表面低层对象surfc 海浪和等高线的结合surfl 具有光照的3D阴影表面trimesh 三角网格图二Matlab常用指令1、通用信息查询(General information)demo 演示程序help 在线帮助指令helpbrowser 超文本文档帮助信息helpdesk 超文本文档帮助信息helpwin 打开在线帮助窗info MATLAB 和MathWorks 公司的信息subscribe MATLAB 用户注册ver MATLAB 和TOOLBOX 的版本信息version MATLAB 版本whatsnew 显示版本新特征2、工作空间管理(Managing the workspace)clear 从内存中清除变量和函数exit 关闭MATLAB load 从磁盘中调入数据变量pack 合并工作内存中的碎块quit 退出MATLAB save 把内存变量存入磁盘who 列出工作内存中的变量名whos 列出工作内存中的变量细节workspace 工作内存浏览器3 、管理指令和函数(Managing commands and functions)edit 矩阵编辑器edit 打开M 文件inmem 查看内存中的P 码文件mex 创建MEX 文件open 打开文件pcode 生成P 码文件type 显示文件内容what 列出当前目录上的M、MAT、MEX 文件which 确定指定函数和文件的位置4 、搜索路径的管理(Managing the seach patli)addpath 添加搜索路径rmpath 从搜索路径中删除目录path 控制MATLAB 的搜索路径pathtool 修改搜索路径5、指令窗控制(Controlling the command window)beep 产生beep 声echo 显示命令文件指令的切换开关diary 储存MATLAB 指令窗操作内容format 设置数据输出格式more 命令窗口分页输出的控制开关6、操作系统指令(Operating system commands)cd 改变当前工作目录computer 计算机类型copyfile 文件拷贝delete 删除文件dir 列出的文件dos 执行dos 指令并返还结果getenv 给出环境值ispc MATLAB 为PC(Windows)版本则为真isunix MATLAB 为Unix 版本则为真mkdir 创建目录pwd 改变当前工作目录unix 执行unix 指令并返还结果vms 执行vms dcl 指令并返还结果web 打开web 浏览器! 执行外部应用程序三Matlab运算符和特殊算符1、算术运算符(Arithmetic operators)+ 加- 减* 矩阵乘 .* 数组乘^ 矩阵乘方 .^ 数组乘方\ 反斜杠或左除/ 斜杠或右除 ./或.\ 数组除张量积[注]本表第三栏括号中的字符供在线救助时help 指令引述用2、关系运算符(Relational operators)= = 等号~= 不等号< 小于> 大于<= 小于或等于>= 大于或等于3、逻辑操作(Logical operators)& 逻辑与| 逻辑或~ 逻辑非xor 异或any 有非零元则为真all 所有元素均非零则为真4、特殊算符(Special characters):冒号( ) 圆括号[ ] 方括号{ } 花括号@ 创建函数句柄 . 小数点 . 构架域的关节点 .. 父目录? 续行号, 逗号; 分号% 注释号! 调用操作系统命令= 赋值符号ˊ引号ˊ复数转置号 .ˊ转置号[,] 水平串接[;] 垂直串接( ),{ },. 下标赋值( ),{ },. 下标标识subsindex 下标标识四Matlab编程语言结构控制语句(Control flow)break 终止最内循环case 同switch 一起使用catch 同try 一起使用continue 将控制转交给外层的for 或while 循环else 同if 一起使用elseif 同if 一起使用end 结束for,while,if 语句for 按规定次数重复执行语句if 条件执行语句otherwise 可同switch 一起使用return 返回switch 多个条件分支try try-cathch 结构while 不确定次数重复执行语句2、计算运行(Evaluation and execution)assignin 跨空间赋值builtin 执行内建的函数eval 字符串宏指令evalc 执行MATLAB 字符串evalin 跨空间计算串表达式的值feval 函数宏指令run 执行脚本文件3、脚本文件、函数及变量(Scripts,function,and variables)exist 检查变量或函数是否被定义function 函数文件头global 定义全局变量isglobal 若是全局变量则为真iskeyword 若是关键字则为真mfilename 正在执行的M 文件的名字persistent 定义永久变量script MATLAB 命令文件4、宗量处理(Augument handling)inputname 实际调用变量名nargchk 输入变量个数检查nargin 函数输入宗量的个数nargout 函数输出宗量的个数nargoutchk 输出变量个数检查varagin 输入宗量varagout 输出宗量5、信息显示(Message display)disp 显示矩阵和文字内容display 显示矩阵和文字内容的重载函数error 显示错误信息fprintf 把格式化数据写到文件或屏幕lasterr 最后一个错误信息lastwarn 最后一个警告信息sprintf 按格式把数字转换为串warning 显示警告信息6 、交互式输入(Interactive input) input 提示键盘输入keyboard 激活键盘做为命令文件pause 暂停uicontrol 创建用户界面控制uimenu 创建用户界面菜单五Matlab基本矩阵函数和操作1、基本矩阵(Elementary matrices)eye 单位阵linspace 线性等分向量logspace 对数等分向量meshgrid用于三维曲面的分格线坐标ones 全1 矩阵rand 均匀分布随机阵randn 正态分布随机阵repmat 铺放模块数组zeros 全零矩阵: 矩阵的援引和重排2、矩阵基本信息(Basic array information)disp 显示矩阵和文字内容isempty 若是空矩阵则为真isequal 若对应元素相等则为1 islogical 尤其是逻辑数则为真isnumeric 若是数值则为真length 确定向量的长度logical 将数值转化为逻辑值ndims 数组A的维数size 确定矩阵的维数3、矩阵操作(Matrix manipulateion)blkdiag 块对角阵串接diag 创建对角阵,抽取对角向量end 数组的长度,即最大下标find 找出非零元素1 的下标fliplr 矩阵的左右翻转flipud 矩阵的上下翻转flipdim 交换对称位置上的元素ind2sub 据单下标换算出全下标reshape 矩阵变维rot90 矩阵逆时针90°旋转sub2idn 据全下标换算出单下标tril 抽取下三角阵triu 抽取上三角阵4、特殊变量和常数(Special variables and constants)ans 最新表达式的运算结果eps 浮点相对误差i,j 虚数单位inf 或Inf 无穷大isfinite 若是有限数则为真isinf 若是无穷大则为真isnan 若为非数则为真NaN 或nan 非数pi 3.1415926535897?. realmax 最大浮点数realmin 最小正浮点数why 一般问题的简明答案5、特殊矩阵(Specialized matrices)compan 伴随矩阵gallery 一些小测试矩阵hadamard Hadamard 矩阵hankel Hankel 矩阵hilb Hilbert 矩阵invhilb 逆Hilbert 矩阵magic 魔方阵pascal Pascal 矩阵rosser 典型对称特征值实验问题toeplitz Toeplitz 矩阵vander Vandermonde 矩阵wilkinson Wilkinson's 对称特征值实验矩阵六Matlab基本数学函数1、三角函数(Trigonometric)acos 反余弦acosh 反双曲余弦acot 反余切acoth 反双曲余切acsc 反余割acsch 反双曲余割asec 反正割asech 反双曲正割asin 反正弦asinh 反双曲正弦atan 反正切atanh 反双曲正切atan2 四象限反正切cos 余弦cosh 双曲余弦cot 余切coth 双曲余切csc 余割csch 双曲余割sec 正割sech 双曲正割sin 正弦sinh 双曲正弦tan 正切tanh 双曲正切2、指数函数(Exponential)exp 指数log 自然对数log10 常用对数log2 以2 为底的对数nestpow2 最近邻的2 的幂pow2 2 的幂sqrt 平方根3、复数函数(Complex)abs 绝对值angle 相角complex 将实部和虚部构成复数conj 复数共轭cplxpair 复数阵成共轭对形式排列imag 复数虚部isreal 若是实数矩阵则为真real 复数实部unwrap 相位角360°线调整4、圆整和求余函数(Rounding and remainder)ceil 朝正无穷大方向取整fix 朝零方向取整floor 朝负无穷大方向取整mod 模数求余rem 求余数round 四舍五入取整sign 符号函数 6 特殊函数(Specialized math functions) cart2pol 直角坐标变为柱(或极)坐标cart2sph 直角坐标变为球坐标cross 向量叉积dot 向量内积isprime 若是质数则为真pol2cart 柱(或极)坐标变为直角坐标sph2cart 球坐标变为直角坐标七Matlab矩阵函数和数值线性代数1、矩阵分析(Matrix analysis)det 行列式的值norm 矩阵或向量范数normest 估计2 范数null 零空间orth 值空间rank 秩rref 转换为行阶梯形trace迹subspace 子空间的角度2、线性方程(Linear equations)chol Cholesky 分解cholinc 不完全Cholesky 分解cond 矩阵条件数condest 估计1-范数条件数inv 矩阵的逆lu LU 分解luinc 不完全LU 分解lscov 已知协方差的最小二乘积nnls 非负二乘解pinv 伪逆qr QR 分解rcond LINPACK 逆条件数\、/ 解线性方程3、特性值与奇异值(Eigenvalues and singular values)condeig 矩阵各特征值的条件数eig 矩阵特征值和特征向量eigs 多个特征值gsvd 归一化奇异值分解hess Hessenberg 矩阵poly 特征多项式polyeig 多项式特征值问题qz 广义特征值schur Schur 分解svd 奇异值分解svds 多个奇异值4、矩阵函数(Matrix functions)expm 矩阵指数expm1 矩阵指数的Pade 逼近expm2 用泰勒级数求矩阵指数expm3 通过特征值和特征向量求矩阵指数funm 计算一般矩阵函数logm 矩阵对数sqrtm 矩阵平方根5、因式分解(Factorization utility)cdf2rdf 复数对角型转换到实块对角型balance 改善特征值精度的平衡刻度rsf2csf 实块对角型转换到复数对角型八数据分析和傅里叶变换1、基本运算(Basic operations)cumprod 元素累计积cumsum 元素累计和cumtrapz 累计积分hist 统计频数直方图histc 直方图统计max 最大值mean 平均值median 中值min 最小值prod 元素积sort 由小到大排序sortrows 由小到大按行排序std 标准差sum 元素和trapz 梯形数值积分var 求方差2、有限差分(Finite differentces)del2 五点离散Laplacian diff 差分和近似微分gradient 梯度3、相关(Correlation)corrcoef 相关系数cov 协方差矩阵subspace 子空间之间的角度4、滤波和卷积(Filtering and convoluteion)conv 卷积和多项式相乘conv2 二维卷积convn N 维卷积detrend 去除线性分量deconv 解卷和多项式相除filter 一维数字滤波器fliter2 二维数字滤波器5、傅里叶变换(Fourier transforms)fft 快速离散傅里叶变换fft2 二维离散傅里叶变换fftn N 维离散傅里叶变换fftshift 重排fft 和fft2 的输出ifft 离散傅里叶反变换ifft2 二维离散傅城叶反变换ifftn N 维离散傅里叶反变换ifftshift 反fftshift九音频支持1、音频硬件驱动(Audio hardware drivers)sound 播放向量soundsc 自动标刻并播放waveplay 利用系统音频输出设配播放waverecor 利用系统音频输入设配录音2、音频文件输入输出(Audio file import and export)auread 读取音频文件(.au) auwrite 创建音频文件(.au) wavread 读取音频文件(.wav) wavwrite 创建音频文件(.wav)3、工具(Utilities)lin2mu 将线性信号转换为μ 一律编码的信号mu2lin 将μ 一律编码信号转换为线性信号十插补多项式函数1、数据插补(Data Interpolation)griddata 分格点数据griddata3 三维分格点数据griddatan 多维分格点数据interpft 利用FFT 方法一维插补interp1 一维插补interp1q 快速一维插补interp2 二维插补interp3 三维插补intern N 维插补pchip hermite 插补2 、样条插补(Spline Interpolation)ppval 计算分段多项式spline 三次样条插补3 、多项式(Polynomials)conv 多项式相乘deconv 多项式相除poly 由根创建多项式polyder多项式微分polyfit 多项式拟合polyint 积分多项式分析polyval 求多项式的值polyvalm 求矩阵多项式的值residue 求部分分式表达roots 求多项式的根十一数值泛函函数和ODE 解算器1、优化和寻根(Optimization and root finding)fminbnd 非线性函数在某区间中极小值fminsearch 单纯形法求多元函数极值点指令fzero 单变量函数的零点2、优化选项处理(Optimization Option handling)optimget 从OPTIONS 构架中取得优化参数optimset 创建或修改OPTIONS 构架3、数值积分(Numerical intergration)dblquad 二重(闭型)数值积分指令quad 低阶法数值积分quadl 高阶法数值积分4、绘图(Plotting)ezcontour 画等位线ezcontourf 画填色等位线ezmesh 绘制网格图ezmeshc 绘制含等高线的网格图ezplot 绘制曲线ezplot3 绘制3 维曲线ezpolar 采用极坐标绘图ezsurf 画曲面图ezsurfc 画带等位线的曲面图fplot 画函数曲线图5、内联函数对象(Inline function object)argnames 给出函数的输入宗量char 创建字符传输组或者将其他类型变量转化为字符串数组formula 函数公式inline 创建内联函数6、差微分函数解算器(Differential equation solvers)ode113 变阶法解方程ode15s 变阶法解刚性方程ode23 低阶法解微分方程ode23s 低阶法解刚性微分方程ode23t 解适度刚性微分方程odet23tb 低阶法解刚性微分方程ode45 高阶法解微分方程十二二维图形函数1、基本平面图形(Elementary X-Y graphs)loglog 双对数刻度曲线plot 直角坐标下线性刻度曲线plotyy 双纵坐标图polar 极坐标曲线图semilogx X 轴半对数刻度曲线semilogy Y 轴半对数刻度曲线2 、轴控制(Axis control)axes 创建轴axis 轴的刻度和表现box 坐标形式在封闭式和开启词式之间切换grid 画坐标网格线hold 图形的保持subplot 创建子图zoom 二维图形的变焦放大3、图形注释(Graph annotation)gtext 用鼠标在图上标注文字legend 图例说明plotedit 图形编辑工具text 在图上标注文字texlabel 将字符串转换为Tex 格式title 图形标题xlabel X 轴名标注ylabel Y 轴名标注4、硬拷贝(Hardcopy and printing)orient 设置走纸方向print 打印图形或把图存入文件printopt 打印机设置十三三维图形函数1、基本三维图形(Elementary 3-D plots) fill3 三维曲面多边形填色mesh 三维网线图plot3 三维直角坐标曲线图surf 三维表面图2 、色彩控制(Color control)alpha 透明色控制brighten 控制色彩的明暗caxis (伪)颜色轴刻度colordef 用色风格colormap 设置色图graymon 设置缺省图形窗口为单色显示屏hidden 消隐shading 图形渲染模式whitebg 设置图形窗口为白底3、光照模式(Lighting)diffuse 漫反射表面系数light 灯光控制lighting 设置照明模式material 使用预定义反射模式specular 漫反射surfnorm 表面图的法线surfl 带光照的三维表面图4 、色图(Color maps)autumn 红、黄浓淡色bone 蓝色调灰度图colorcube 三浓淡多彩交错色cool 青和品红浓淡色图copper 线性变化纯铜色调图flag 红-白-蓝黑交错色图gray 线性灰度hot 黑-红-黄-白交错色图hsv 饱和色彩图jet 变异HSV 色图lines 采用plot 绘线色pink 淡粉红色图prism 光谱色图spring 青、黄浓淡色summer 绿、黄浓淡色vga 16 色white 全白色winter 蓝、绿浓淡色5、轴的控制(Axis control)axes 创建轴axis 轴的刻度和表现box 坐标形式在封闭式和开启式之间切换daspect 轴的DataAspectRatio 属性grid 画坐标网格线hold 图形的保持pbaspect 画坐标框的PlotBoxAspectRatio 属性subplot 创建子图xlim X 轴范围ylim Y 轴范围zlim Z 轴范围zoom 二维图形的变焦放大6、视角控制(Viewpoint control)rotate3d 旋动三维图形view 设定3-D 图形观测点viewmtx 观测点转换矩阵7、图形注释(Graph annotation)colorbar 显示色条gtext 用鼠标在图上标注文字plotedit 图形编辑工具text 在图上标注文字title 图形标题xlabel X 轴名标注ylabel Y 轴名标注zlabel Z 轴名标注8 、硬拷贝(Hardcopy and printing)orient 设置走纸方向print 打印图形或把图存入文件printopt 打印机设置verml 将图形保存为VRML2.0 文件十四特殊图形1、特殊平面图形(Specialized 2-D graphs)area 面域图bar 直方图barh 水平直方图comet 彗星状轨迹图compass 从原点出发的复数向量图errorbar 误差棒棒图ezplot 画二维曲线ezpolar 画极坐标曲线feather 从X 轴出发的复数向量图fill 多边填色图fplot 函数曲线图hist 统计频数直方图pareto Pareto图pie 饼形统计图plotmatrix 散点图阵列scatter 散点图stairs 阶梯形曲线图stem 火柴杆图2 、等高线及二维半图形(Contour and 2-1/2D graphs)clabel 给等高线加标注contour 等高线图contourf 等高线图contour3 三维等高线ezcontour 画等位线ezcontourf 画填色等位线pcolor 用颜色反映数据的伪色图voronoi Voronoi 图3、特殊三维图形(Specialized 3-D graphs)bar3 三维直方图bar3h 三维水平直方图comet3 三维彗星动态轨迹线图ezgraph3 通用指令ezmesh 画网线图ezmeshc 画等位线的网线图ezplot3 画三维曲线ezsurf 画曲面图ezsurfc 画带等位线的曲面图meshc 带等高线的三维网线图meshz 带零基准面的三维网线图pie3 三维饼图ribbon 以三维形式绘制二维曲线scatter3 三维散点图stem3 三维离散杆图surfc 带等高线的三维表面图trimesh 三角剖分网线图trisurf 三角剖分曲面图waterfall 瀑布水线图4、内剖及向量视图(Volume and vector visualization)coneplot 锥体图contourslice 切片等位线图quiver 矢量场图quiver3 三维方向箭头图slice 切片图5、图像显示及文件处理(Image display and file I/O)brighten 控制色彩的明暗colorbar 色彩条状图colormap 设置色图contrast 提高图像对比度的灰色图gray 线性灰度image 显示图像imagesc 显示亮度图像imfinfo 获取图像文件的特征数据imread 从文件读取图像的数据阵(和伴随色图))imwrite 把强度图像或真彩图像写入文件6、影片和动画(Movies and animation)capture 当前图的屏捕捉frame2im 将影片动画转换为编址图像getframe 获得影片动画图像的帧im2frame 将编址图像转换为影片动画movie 播放影片动画moviein 影片动画内存初始化rotate 旋转指令7、颜色相关函数(Color related function)spinmap 颜色周期性变化操纵8、三维模型函数(Solid modeling)cylinder 圆柱面patch 创建块sphere 球面Surf2patch 将曲面数据转换为块数据十五句柄图形1、图形窗的产生和控制(Figure window creation and control)clf 清除当前图close 关闭图形figure 打开或创建图形窗口gcf 获得当前图的柄openfig 打开图形refresh 刷新图形shg 显示图形窗2、轴的产生和控制(Axis creation and control)axes 在任意位置创建轴axis 轴的控制box 坐标形式在封闭式和开启式之间切换caxis 控制色轴的刻度cla 清除当前轴gca 获得当前轴的柄hold 图形的保持ishold 若图形处保持状态则为真subplot 创建子图3、句柄图形对象(Handle Graphics objects)axex 在任意位置创建轴figure 创建图形窗口image 创建图像light 创建光line 创建线patch 创建块rectangle 创建方surface 创建面text 创建图形中文本uicontextmenu 创建现场菜单对象uicontrol 用户使用界面控制uimenu 用户使用菜单控制4、句柄图形处理(Handle Graphics operations)copyobj 拷贝图形对象及其子对象delete 删除对象及文件drawnow 屏幕刷新findobj 用规定的特性找寻对象gcbf "正执行回调操作"的图形的柄gcbo "正执行回调操作"的控件图柄指令gco 获得当前对象的柄get 获得对象特性getappdat 获得应用程序定义数据isappdata 检验是否应用程序定义数据reset 重设对象特性rmappdata 删除应用程序定义数据set 建立对象特性setappdata 建立应用程序定义数据5 、工具函数(Utilities)closereq 关闭图形窗请求函数ishandle 若是图柄代号侧为真newplot 下一个新图十六图形用户界面工具align 对齐用户控件和轴cbedit 编辑回调函数ginput 从鼠标得到图形点坐标guide 设计GUI menu 创建菜单menuedit 菜单编辑propedit 属性编辑uicontrol 创建用户界面控制uimenu 创建用户界面菜单十七字符串1 、通用字符串函数(General)blanks 空格符号cellstr 通过字符串数组构建字符串的元胞数组char 创建字符传输组或者将其他类型变量转化为字符串数组deblank 删除最后的空格double 把字符串变成ASCII 码值eval 执行串形式的MATLAB 表达式2、字符串查询(String tests)iscellstr 若是字符串组成的元胞数组则为真ischar 若是字符串则为真isletter 串中是字母则为真isspace 串中是空格则为真isstr 若是字符串则为真3、字符串操作(String operations)base2dec X-进制串转换为十进制整数bin2dec 二进制串转换为十进制整数dec2base 十进制整数转换为X 进制串dec2bin 十进制整数转换为二进制串dec2hex 十进制整数转换为16 进制串findstr 在一个串中寻找一个子串hex2dec 16-进制串转换为十进制整数hex2num 16-进制串转换为浮点数int2str 将整数转换为字符串lower 把字符串变成小写mat2str 将数组转换为字符串num2str 把数值转换为字符串strcat 把多个串连接成长串strcmp 比较字符串strcmpi 比较字符串(忽略大小写)stringsMATLAB 中的字符串strjust 字符串的对齐方式strmatch 逐行搜索串strnomp 比较字符串的前N 个字符strncmpi 比较字符串的前N 个字符(忽略大小写)strrep 用另一个串代替一个串中的子串strtok 删除串中的指定子串strvcat 创建字符串数组str2mat 将字符串转换为含有空格的数组str2num 将字符串转换为数值upper 把字符串变成大写十八文件输入/输出clc 清除指令窗口disp 显示矩阵和文字内容fprintf 把格式化数据写到文件或屏幕home 光标返回行首input 提示键盘输入load 从磁盘中调入数据变量pause 暂停sprintf 写格式数据到串sscanf 在格式控制下读串十九时间和日期clock 时钟cputme MATLAB 战用CPU 时间date 日期etime 用CLOCK 计算的时间now 当前时钟和日期pause 暂停tic 秒表启动toc 秒表终止和显示二十数据类型1、数据类型(Data types)cell 创建元胞变量char 创建字符传输组或者将其他类型变量转化为字符串数组double 转化为16 位相对精度的浮点数值对象function handle 函数句柄inline 创建内联函数JavaArray 构建Java 数组JavaMethod 调用某个Java 方法JavaObject 调用Java 对象的构造函数single 转变为单精度数值sparse 创建稀疏矩阵struct 创建构架变量uint8(unit16、unit32) 转换为8(16、32)位无符号整型数int8(nit16、nit32) 转换为8(16、32)位符号整型数2、多维数组函数(Multi-dimensional array functions)cat 把若干数组串接成高维数组ndims 数组A 的维数ndgrid 为N-D 函数和插补创建数组ipermute 广义反转置permute 广义非共轭转置shiftdim 维数转换squeeze 使数组降维3、元胞数组函数(Cell array functions)cell 创建元胞变量celldisp 显示元胞数组内容cellfun 元胞数组函数cellplot 图示元胞数组的内容cell2struct 把元胞数组转换为构架数组deal 把输入分配给输出is cell 若是元胞则为真num2 cell 把数值数组转换为元胞数组struct2 cell 把构架数组转换为元胞数组4、构架函数(Structure functions)fieldnames 获取构架的域名getfield 获取域的内容isfield 若为给定构架的域名则为真isstruct 若是构架则为真rmfield 删除构架的域setfield 指定构架域的内容struct 创建构架变量5、函数句柄函数(Function handle functions)@ 创建函数句柄functions 列举函数句柄对应的函数func2str 将函数句柄数组转换为字符串str2func 将字符串转换为函数句柄6、面向对象编程(Object oriented programming functions)dlass 查明变量的类型isa 若是指定的数据类型则为真inferiorto 级别较低isjava 若是java 对象则为真isobject 若是对象则为真methods 显示类的方法名substruct 创建构架总量superiorto 级别较高二一示例demo 演示程序flow 无限大水体中水下射流速度数据intro 幻灯演示指令peaks 产生peaks 图形数据二二符号工具包1、微积分(Calculus)diff 求导数limit 求极限int 计算积分jacobian Jacobian 矩阵symsum 符号序列的求和trylor Trylor 级数2、线性代数(Linear Algebra)det 行列式的值diag 创建对角阵,抽取对角向量eig 矩阵特征值和特征向量expm 矩阵指数inv 矩阵的逆jordan Jordan 分解null 零空间poly 特征多项式rank 秩rref 转换为行阶梯形svd 奇异值分解tril 抽取下三角阵triu 抽取上三角阵3、化简(Simplification)collect 合并同类项expand 对指定项展开factor 进行因式或因子分解horner 转换成嵌套形式numden 提取公因式simple 运用各种指令化简符号表达式simplify 恒等式简化subexpr 运用符号变量置换子表达式subs 通用置换指令4、方程求解(Solution of Equation)compose 求复函数dsolve 求解符号常微分方程finverse 求反函数fminunc 拟牛顿法求多元函数极值点fsolve 解非线性方程组lsqnonlin 解非线性最小二乘问题solve 求解方程组5、变量精度(Variable Precision Arithmetic)digits 设置今后数值计算以n 位相对精度进行vpa 给出数值型符号结果6、积分变换(Integral Transforms)fourier Fourier 变换ifourier Fourier 反变换ilaplace Ilaplace 反变换iztrans Z 反变换laplace Ilaplace 变换ztrans Z 变换7、转换(Conversions)char 把符号对象转化为字符串数组double 把符号常数转化为16 位相对精度的浮点数值对象poly2sym 将多项式转换为符号多项式sym2poly 将符号多项式转换为系数向量8、基本操作(Basic Operation)ccode 符号表达式的C 码表达式findsym 确认表达式中符号"变量" fortran 符号表达式的fortran 表达式latex 符号表达式的LaTex 表示pretty 习惯方式显示sym 定义基本符号对象syms 定义基本符号对象9、串处理函数(String handling utilities)isvarname 检查是否为有效的变量名vectorize 将字符串表达式或内联函数对象向量化10 、图形应用(Pedagogical and Graphical Applications)ezcontour 画等位线ezcontourf 画填色等位线ezmesh 画网线图ezmeshc 带等位线的网线图ezplot 绘制符号表达式的图形ezplot2。
基于MATLAB的数字信号处理实验指导书(2008)
![基于MATLAB的数字信号处理实验指导书(2008)](https://img.taocdn.com/s3/m/d95c1d31647d27284b7351eb.png)
基于MATLAB的数字信号处理实验指导书梁华庆编机电工程学院电工与电子信息技术实验教学中心2006年10月目录第一部分MATLAB信号处理工具箱使用介绍 (1)第一章概述 (1)1.1MATLAB简介 (1)1.2MATLAB的基本操作 (1)第二章信号的生成和信号的变换 (4)2.1序列的表示及基本序列的生成 (4)2.2序列的DFT、FFT (7)2.3用FFT法求线性卷积 (8)第三章数字滤波器的结构 (10)3.1直接型——传递函数形式 (10)3.2零极点增益形式 (10)3.3级联型——二阶因子级联形式 (11)3.4并联型——部分分式展开式形式 (11)第四章IIR数字滤波器设计 (13)4.1MATLAB中模拟滤波器设计函数介绍 (13)4.2MATLAB中IIR数字滤波器设计函数 (18)第五章FIR数字滤波器设计 (22)5.1MATLAB中有关FIR DF设计的函数 (22)5.2参考程序 (23)第二部分数字信号处理上机实验 (31)实验一、用DFT进行信号的谱分析 (31)实验二、DFT和DCT的应用 (32)实验三、IIR数字滤波器的设计 (34)实验四、FIR数字滤波器的设计 (35)第一部分MATLAB信号处理工具箱使用介绍第一章概述1.1MATLAB简介在科学研究与工程应用中,往往要进行大量的数学计算,其中包括矩阵运算。
这些运算一般来说难以用手工精确和快速地进行,而要借助计算机编制相应的程序做近似计算。
目前流行用C、FORTRAN等语言编制计算程序,既需要对相关算法有深刻的了解,还需要熟练地掌握所用语言的编程技巧。
对大多数人而言,同时具备这两方面的才能有一定的困难。
即使有,编程也费时费力,影响工作效率。
为克服上述困难,美国Math work公司于1967年推出“Matrix Laboratory”(缩写为MATLAB)软件包,并不断更新和扩充。
MATLAB软件包现已成为国际公认的最优秀的科技界应用软件,是一种面向科学和工程计算的高级语言,它强大的计算功能、计算结果的可视化以及极高的编程效率,是其它语言无与伦比的。
基于MATLAB的心电信号的分析与处理设计
![基于MATLAB的心电信号的分析与处理设计](https://img.taocdn.com/s3/m/6d53d0206ad97f192279168884868762caaebbc7.png)
基于MATLAB的心电信号的分析与处理设计心电信号是一种记录心脏活动的生理信号,它对于诊断心脏疾病和监测心脏健康非常重要。
基于MATLAB的心电信号分析与处理设计可以帮助医生和研究人员更好地理解心电信号,并从中提取有用的信息。
本文将详细介绍基于MATLAB的心电信号的分析与处理设计的步骤和方法。
首先,我们需要准备心电信号的数据。
可以从心电图仪器或数据库中获取心电信号数据。
在MATLAB中,可以使用`load`函数加载数据文件,并将其存储为一个向量或矩阵。
接下来,我们需要对心电信号进行预处理。
预处理的目的是去除噪声、滤波和去除基线漂移等。
常用的预处理方法包括滤波器设计、噪声去除和基线漂移校正。
在MATLAB中,可以使用`filtfilt`函数进行滤波,使用`detrend`函数进行基线漂移校正。
然后,我们可以对预处理后的心电信号进行特征提取。
特征提取是从信号中提取有用的信息,用于心脏疾病的诊断和监测。
常用的特征包括心率、QRS波形、ST段和T波形。
在MATLAB中,可以使用`findpeaks`函数找到QRS波形的峰值,并计算心率。
可以使用`findpeaks`函数找到ST段和T波形的峰值,并计算ST段和T波形的振幅。
接着,我们可以进行心电信号的分类和识别。
心电信号的分类和识别是根据特征提取的结果,将心电信号分为不同的类别,并进行心脏疾病的诊断和监测。
常用的分类和识别方法包括支持向量机、神经网络和决策树等。
在MATLAB中,可以使用`fitcsvm`函数进行支持向量机分类,使用`patternnet`函数进行神经网络分类,使用`fitctree`函数进行决策树分类。
最后,我们可以对心电信号进行可视化和报告生成。
可视化和报告生成可以将分析和处理结果以图形和文字的形式展示出来,便于医生和研究人员进行查看和分析。
在MATLAB中,可以使用`plot`函数进行信号的绘制,使用`title`函数和`xlabel`函数添加标题和坐标轴标签,使用`saveas`函数保存图形为图片文件,使用`fprintf`函数将分析结果输出到文本文件。
基于MATLAB的音频信号处理与语音识别系统设计
![基于MATLAB的音频信号处理与语音识别系统设计](https://img.taocdn.com/s3/m/7e9ea25c54270722192e453610661ed9ad5155b7.png)
基于MATLAB的音频信号处理与语音识别系统设计一、引言音频信号处理与语音识别是数字信号处理领域的重要研究方向,随着人工智能技术的不断发展,语音识别系统在日常生活中得到了广泛应用。
本文将介绍如何利用MATLAB软件进行音频信号处理与语音识别系统的设计,包括信号预处理、特征提取、模式识别等关键步骤。
二、音频信号处理在进行语音识别之前,首先需要对音频信号进行处理。
MATLAB提供了丰富的信号处理工具,可以对音频信号进行滤波、降噪、增益等操作,以提高后续语音识别的准确性和稳定性。
三、特征提取特征提取是语音识别中至关重要的一步,它能够从复杂的音频信号中提取出最具代表性的信息。
常用的特征包括梅尔频率倒谱系数(MFCC)、线性预测编码(LPC)等。
MATLAB提供了丰富的工具箱,可以方便地实现这些特征提取算法。
四、模式识别模式识别是语音识别系统的核心部分,它通过对提取出的特征进行分类和识别,从而实现对不同语音信号的区分。
在MATLAB中,可以利用支持向量机(SVM)、人工神经网络(ANN)等算法来构建模式识别模型,并对语音信号进行分类。
五、系统集成将音频信号处理、特征提取和模式识别整合到一个系统中是设计语音识别系统的关键。
MATLAB提供了强大的工具和函数,可以帮助我们将各个部分有机地结合起来,构建一个完整的语音识别系统。
六、实验与结果分析通过实际案例和数据集,我们可以验证所设计的基于MATLAB的音频信号处理与语音识别系统的性能和准确性。
通过对实验结果的分析,可以进一步优化系统设计,并提高语音识别系统的性能。
七、结论基于MATLAB的音频信号处理与语音识别系统设计是一个复杂而又具有挑战性的任务,但是借助MATLAB强大的功能和工具,我们可以更加高效地完成这一任务。
未来随着人工智能技术的不断发展,基于MATLAB的语音识别系统将会得到更广泛的应用和进一步的优化。
通过本文对基于MATLAB的音频信号处理与语音识别系统设计进行介绍和讨论,相信读者对该领域会有更深入的了解,并能够在实际应用中灵活运用所学知识。
基于matlab信号处理方面的简单毕业设计
![基于matlab信号处理方面的简单毕业设计](https://img.taocdn.com/s3/m/62d315ad988fcc22bcd126fff705cc1754275f69.png)
一、介绍二、问题需求及解决方案1. 需求分析2. 解决方案三、研究方法1. 数据采集2. 信号预处理3. 特征提取4. 模型构建四、实验与结果分析1. 实验设计2. 数据处理3. 结果分析五、总结与展望一、介绍随着数字信号处理技术的发展,信号处理已成为电子信息工程领域中备受关注的研究方向之一。
在毕业设计中,本文将基于Matlab评台,结合信号处理相关理论和方法,设计并实现一个简单的毕业设计项目,以解决特定问题或需求。
二、问题需求及解决方案1. 需求分析在实际工程应用中,往往会遇到信号采集、处理和分析的问题。
针对特定应用场景中的信号特征提取、异常检测等需求,需要设计一个信号处理系统来实现相关功能。
需要针对特定问题进行需求分析,明确设计的目标和功能。
2. 解决方案针对以上需求,本文将利用Matlab评台,结合信号处理相关的工具箱和算法,设计一个简单的信号处理系统。
通过数据采集、信号预处理、特征提取以及模型构建等步骤,实现对特定信号的处理和分析。
三、研究方法1. 数据采集在设计的毕业设计项目中,首先需要进行信号的数据采集工作。
可以利用实际的传感器或者模拟信号源进行数据采集,获取需要处理的原始信号数据。
2. 信号预处理对于获取的原始信号数据,往往存在噪声、干扰等问题,需要进行信号预处理工作。
预处理包括滤波、降噪、去噪等步骤,以提高信号的质量和准确性。
3. 特征提取针对预处理后的信号数据,需要进行特征提取工作,提取信号的相关特征信息。
可以采用时域分析、频域分析、小波分析等方法,提取信号的频谱、时频域特征等。
4. 模型构建根据信号特征提取的结果,可以选择合适的模型进行构建,如分类模型、回归模型等,以实现对信号的分析和处理。
四、实验与结果分析1. 实验设计在毕业设计的实验部分,可以设计基于特定信号处理需求的实验方案。
包括数据采集实验、信号预处理实验、特征提取实验以及模型构建实验等。
2. 数据处理根据实验设计,进行具体的数据处理和算法实现工作。
基于MATLAB语音信号处理(语音信号处理的综合仿真)
![基于MATLAB语音信号处理(语音信号处理的综合仿真)](https://img.taocdn.com/s3/m/b9f709edf71fb7360b4c2e3f5727a5e9856a2719.png)
---------------------------------------------------------------范文最新推荐------------------------------------------------------ 基于MATLAB语音信号处理(语音信号处理的综合仿真)摘要:针对目前在嘈杂的环境中手机接听电话时人声不清楚的缺点,本文介绍了一个基于MATLAB的算法来对语音信号进行处理。
该算法通过计算机录音系统来实现对语音信号的采集,并且利用MATLAB的计算和信号处理能力进行频谱分析和设计滤波器,最终通过仿真得到滤波前后的波形,从而达到保留语音信号中的大部分人声并且滤除掉嘈杂噪声的目的。
仿真实验表明,采用低通滤波器保留人声的效果显著,失真较少。
本算法具有操作简单,运行速度快等优点。
关键词:语音信号;MATLAB;滤波;低通;噪声Speech Signal Processing Based on MATLAB1 / 17Abstract: At present, in view of the shortcomings of that the voice is not clear when people answering the phone in a noisy environment, this paper introduces a algorithm for speech signal processing based on MATLAB. The algorithm realizes the acquisition of the speech signal through a computer recording system. And the software can realize the capabilities of frequency spectrum analysis and filter design by the use of calculation and signal processing capabilities of MATLAB. Finally it can get the waveform before and after filtering through the simulation. So that we can retain most of the voices in the speech signal and at the same time remove noisy noise through filter. Simulation results show that the low pass filter has a remarkable effect of keeping voices and the distortion is little. This algorithm has the advantages of simple to operate and fast.Key Words: Speech signal; MATLAB; Filtering; Low pass; Noise目录---------------------------------------------------------------范文最新推荐------------------------------------------------------ 摘要1引言11.研究意义及研究现状21.1研究意义21.2研究现状22. 语音信号处理的总体方案2.1 研究的主要内容本课题主要介绍的是的语音信号的简单处理,目的就是为以后在手机上的移植打下理论基础。
基于Matlab的信号与系统实验指导
![基于Matlab的信号与系统实验指导](https://img.taocdn.com/s3/m/6980ffe96f1aff00bed51ec1.png)
基于Matlab 的信号与系统实验指导实验一 连续时间信号在Matlab 中的表示一、实验目的1、学会运用Matlab 表示常用连续时间信号的方法2、观察并熟悉这些信号的波形和特性二、实验原理及实例分析1、信号的定义与分类2、如何表示连续信号?连续信号的表示方法有两种;符号推理法和数值法。
从严格意义上讲,Matlab 数值计算的方法不能处理连续时间信号。
然而,可利用连续信号在等时间间隔点的取样值来近似表示连续信号,即当取样时间间隔足够小时,这些离散样值能被Matlab 处理,并且能较好地近似表示连续信号。
3、Matlab 提供了大量生成基本信号的函数。
如:(1)指数信号:K*exp(a*t)(2)正弦信号:K*sin(w*t+phi)和K*cos(w*t+phi)(3)复指数信号:K*exp((a+i*b)*t)(4)抽样信号:sin(t*pi)注意:在Matlab 中用与Sa(t)类似的sinc(t)函数表示,定义为:)t /()t (sin )t (sinc ππ=(5)矩形脉冲信号:rectpuls(t,width)(6)周期矩形脉冲信号:square(t,DUTY),其中DUTY 参数表示信号的占空比DUTY%,即在一个周期脉冲宽度(正值部分)与脉冲周期的比值。
占空比默认为0.5。
(7)三角波脉冲信号:tripuls(t, width, skew),其中skew 取值范围在-1~+1之间。
(8)周期三角波信号:sawtooth(t, width)(9)单位阶跃信号:y=(t>=0)三、实验内容1、验证实验内容直流及上述9个信号2、程序设计实验内容(1)利用Matlab 命令画出下列连续信号的波形图。
(a ))4/3t (2cos π+(b ))t (u )e 2(t -- (c ))]2()(u )][t (cos 1[--+t u t π(2)利用Matlab 命令画出复信号)4/t (j 2e)t (f π+=的实部、虚部、模和辐角。
基于Matlab的数字信号处理在智能交通系统中的应用研究
![基于Matlab的数字信号处理在智能交通系统中的应用研究](https://img.taocdn.com/s3/m/084a7542773231126edb6f1aff00bed5b9f3739f.png)
基于Matlab的数字信号处理在智能交通系统中的应用研究智能交通系统是利用现代信息技术、通信技术和控制技术,对城市道路交通进行综合监测、管理和调度的系统。
数字信号处理作为智能交通系统中的重要组成部分,发挥着至关重要的作用。
Matlab作为一种功能强大的工具,被广泛应用于数字信号处理领域。
本文将探讨基于Matlab的数字信号处理在智能交通系统中的应用研究。
1. 智能交通系统概述智能交通系统是利用先进的信息技术、通信技术和控制技术,对城市道路交通进行实时监测、分析和调度,以提高交通运行效率、减少交通拥堵、改善交通安全等目的。
智能交通系统包括车辆检测、车牌识别、交通流量监测、信号控制优化等多个方面。
2. 数字信号处理在智能交通系统中的作用数字信号处理在智能交通系统中扮演着重要的角色。
通过对传感器采集到的数据进行数字信号处理,可以实现车辆检测、车牌识别、交通流量监测等功能。
数字信号处理技术可以提取出有用的信息,帮助智能交通系统做出更准确、更快速的决策。
3. Matlab在数字信号处理中的优势Matlab是一种功能强大的科学计算软件,广泛应用于数字信号处理领域。
Matlab提供了丰富的工具箱,包括信号处理工具箱、图像处理工具箱等,可以帮助工程师和研究人员快速实现复杂的数字信号处理算法。
Matlab还具有直观的编程界面,便于用户进行算法设计和调试。
4. 基于Matlab的数字信号处理在智能交通系统中的具体应用4.1 车辆检测利用视频传感器采集到的图像数据,可以通过Matlab进行车辆检测。
首先对图像进行预处理,包括灰度化、边缘检测等操作,然后利用目标检测算法识别出图像中的车辆位置和数量。
最后通过跟踪算法可以实现对车辆运动轨迹的监测。
4.2 车牌识别车牌识别是智能交通系统中常见的任务之一。
利用Matlab中图像处理工具箱提供的函数,可以对车辆图像进行分割、字符识别等操作,最终实现对车牌信息的提取和识别。
4.3 交通流量监测通过在道路上设置传感器,可以采集到车辆经过某一点的时间戳数据。
基于MATLAB的信号分析与处理
![基于MATLAB的信号分析与处理](https://img.taocdn.com/s3/m/0ba456ceaf45b307e97197be.png)
基于MATLAB的信号分析与处理————————————————————————————————作者:————————————————————————————————日期:山东建筑大学课程设计说明书题目: 基于MATLAB的信号分析与处理课程:数字信号处理课程设计院 (部): 信息与电气工程学院专业:通信工程班级: 通信学生姓名:学号:指导教师:完成日期:目录目录 (1)摘要 (2)正文 (3)1设计目的和要求 (3)2设计原理 (3)3设计内容 (4)3.1源程序代码 (4)3.2程序执行的结果........................................。
..。
7 ...........................................................................................................................3。
3调试分析过程描述 (12)3。
4结果分析................................. 错误!未定义书签。
总结与致谢 (14)参考文献 (15)摘要随着科学技术的飞速发展,人们对信号的要求越来越高.然而,学好《数字信号处理》这门课程是我们处理信号的基础。
MATLAB是一个处理信号的软件,我们必须熟悉它的使用.本次课程设计利用MATLAB软件首先产生成低频、中频、高频三种频率信号,然后将三种信号合成为连续信号,对连续周期信号抽样、频谱分析,并设计低通、带通、高通三种滤波器对信号滤波,观察滤出的信号与原信号的关系,并分析了误差的产生,通对数字信号处理课程的理论知识的综合运用。
从实践上初步实现对数字信号的处理.关键词:MATLAB;连续信号;采样定理;滤波器;频谱分析;正文1设计目的和要求(1)、产生一个连续信号,该信号中包含有低频、中频、高频分量,对其进行采样,用MATLAB绘制它们的时域波形和频域波形,对其进行频谱分析;(2)、根据信号频谱分析的结果,分别设计合适的低通、带通、高通滤波器,用MATLAB绘制其幅频及相频特性图;(3)、用所设计的滤波器对信号进行滤波处理,对滤波后的信号进行FFT 频谱分析,用MATLAB绘制处理过程中的各种波形及频谱图,比较滤波前后的时域波形及频谱,对所得结果和滤波器性能进行分析,阐明原因,得出结论;(4)学会使用MATLAB对信号进行分析和处理;2设计原理理论上信号的采样要符合奈奎斯特采样定律,就是采样频率要高一点,一般为被采信号最高频率的2倍,只有这样,才能保证频域不混叠,也就是采样出来数字信号中包含了被采信号的所有信息,而且没有引入干扰。
基于MATLAB的地震记录基本数值信号处理
![基于MATLAB的地震记录基本数值信号处理](https://img.taocdn.com/s3/m/e6a098c1a5e9856a57126083.png)
问题:文件表下为某一地震记录的一道时间数据,从中抽取500个点,对数据进行如下处理:(1)绘制时间域和进行傅里叶变换后的频率域图件,从频率图中可以看出,记录的主要频带为5-25HZ。
(2)接着以5-30HZ为窗口与原数据进行了褶积运算,对数据进行了线性滤波,圆滑了源数据,效果如图。
(3)对原数据进行Z变换,主要表示不同时延的相同的波形图和不同时延“爆炸”和“爆聚”组合的复杂波形图,进一步编程可用于模拟地震波。
解:clct=A; %输入时间矩阵t,从A 矩阵中抽取t1=1:500; %设置时间域点数矩阵t2=1:50; %设置频率域点数矩阵y=fft(t);yi=ifft(y); %应用函数fft,ifft进行快速傅里叶变换, 反傅里叶变换for i=1:500 %以下为计算误差估计if (yi(i)-t(i))/t(i)>1.0e-4err=1;elseerr=0;endendif err==1disp('计算有误差!')elseif err==0disp('合格!')endy1=y(1:50); %以下为示图过程subplot(4,1,1),plot(t1,t)title('时间域波形图')ylabel('时间'),xlabel('点数')subplot(4,1,2),plot(t2,y1)title('频率域波形图')ylabel('振幅'),xlabel('频率')y3(1:30)=1;y3(31:500)=0; %设置褶积滤波窗口zj=conv(y3,t); %褶积运算[fzj,r]=deconv(zj,t1); %反褶积运算zj=zj(1:500);fzj=fzj(1:500);subplot(4,1,3),plot(t1,zj) %以下为绘图过程title('5-30HZ窗口褶积滤波图')ylabel('时间'),xlabel('点数')subplot(4,1,4),plot(t1,fzj)title('反褶积波形图')ylabel('时间'),xlabel('点数')t3(1:100)=0; %设置时延窗口t3(101:500)=t(1:400); %进行Z变换subplot(6,1,5),plot(t1,t3) %以下为绘图过程title('延迟100个时间单位Z变换波形图')ylabel('时间'),xlabel('点数')t4(1:300)=t(1:300);t4(301:500)=-1/2*t(101:300); %设置时延爆聚窗口subplot(6,1,6),plot(t1,t4) %绘图过程title('Z变换延迟后的“爆炸”和“爆聚”组合复杂波形图')ylabel('时间'),xlabel('点数')附录:矩阵A0 4336 8321 -116646 310365259 4269 8003 -190254 4377531160 5175 7995 -287994 5328351092 6570 8008 -408310 595175318 6527 7857 -546287 6245831079 6345 7853 -693053 6218821576 7635 7654 -837612 5893921668 7695 7626 -968812 5307211873 8001 7365 -1074629 4512391696 7743 6943 -1145540 3585961810 7787 6541 -1174301 2605541992 8000 6558 -1156138 1649522817 7797 6192 -1089687 801183001 8065 5437 -976984 119234079 8293 4890 -823972 -354033840 8475 2671 -639663 -583793455 8328 -2262 -436810 -546063888 8593 -12734 -229186 -229313932 8136 -32234 -29208 369103705 8249 -65218 153138 123830。
基于MATLAB的数字信号处理
![基于MATLAB的数字信号处理](https://img.taocdn.com/s3/m/80061ce45122aaea998fcc22bcd126fff7055dbf.png)
基于MATLAB的数字信号处理数字信号处理是现代通信领域的一个重要分支,在通信、音频处理、图像处理、生物医学工程等领域都有广泛的应用。
MATLAB作为一种基于数值计算的环境,因其高效的矩阵计算、易于编程的特点,成为各种数字信号处理问题求解的利器,尤其在算法开发和仿真方面具有独特的优势。
一、数字信号及其特征数字信号是数字化处理后的信号,是一种以离散时间为自变量,离散取值(数码)为因变量的信号。
数字信号有以下特征:1.离散性:数字信号是由时间轴和离散数值组成的。
2.连续性:虽然数字信号由一系列离散数值组成,但在每个数值之间还是连续的。
3.有限性:数字信号在某个时间段内有限。
4.可变性:数字信号可以通过数字信号处理的算法变换为另一个数字信号,也可以经过数字信号处理后转化为模拟信号。
二、数字信号处理的基本过程数字信号处理的基本过程包括信号获取、采样、量化、编码、传输、解码、重构。
其中,采样、量化、编码是数字信号处理的三个关键步骤。
1.采样:指将连续时间信号转化为离散时间信号的过程,通常采用周期采样或非周期采样。
2.量化:指将采样后的模拟信号转化为离散值,可以通过比较式、舍入法、三角形逼近法等方法实现。
3.编码:指将量化后的数据转化为数字信号的过程,可以采用无符号编码、补码编码、反码编码等方式实现。
数字信号的传输、解码和重构分别是为了将数字信号传输到接收端,并将其重构为原始模拟信号的过程。
三、MATLAB基础及其在数字信号处理中的应用MATLAB是一种面向科学计算、数据可视化和算法开发的高性能软件平台,以其易学易用、高度灵活的语言、丰富的函数库、优秀的图形界面和内存管理的便利性而被广泛应用。
在数字信号处理中,MATLAB处理数字信号时,使用的是离散数据集合和矩阵运算。
1.数字信号处理工具箱:MATLAB基于数字信号处理技术提供了许多函数和工具箱,例如信号滤波、频域分析、时域分析等。
具体有信号处理工具箱、信号处理工具箱中的Wavelet函数、控制系统工具箱、神经网络工具箱,等数十个工具箱。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
X1=1/2.*[x1,x];%求 x 的偶部 Y1=1/2.*[y1,y];%求 y 的偶部 Z1=1/2.*[z1,z];%求 z 的偶部 figure(2) subplot(3,1,1); plot(t,X1,'r');xlabel('t'),ylabel('Evex[n]'); title('3D 信号的偶信号'); subplot(3,1,2); plot(t,Y1,'g');xlabel('t'),ylabel('Evey[n]'); subplot(3,1,3); plot(t,Z1,'b');xlabel('t'),ylabel('Evez[n]'); X2=1/2.*[-x1,x];%求 x 的奇部 Y2=1/2.*[-y1,y];%求 y 的奇部 Z2=1/2.*[-z1,z];%求 z 的奇部 figure(3) subplot(3,1,1); plot(t,X2,'r');xlabel('t'),ylabel('Oddx[n]'); title('3D 信号的奇信号'); subplot(3,1,2) plot(t,Y2,'g');xlabel('t'),ylabel('Oddy[n]'); subplot(3,1,3); plot(t,Z2,'b');xlabel('t'),ylabel('Oddz[n]'); a1=X1+X2;%x 的奇部与偶部之和 a2=Y1+Y2;%y 的奇部与偶部之和 a3=Z1+Z2;%z 的奇部与偶部之和 figure(4) subplot(3,1,1); plot(t,a1,'r');xlabel('t'),ylabel('sumx[n]'); title('奇信号与偶信号的和信号'); subplot(3,1,2) plot(t,a2,'g');xlabel('t'),ylabel('sumy[n]'); subplot(3,1,3); plot(t,a3,'b');xlabel('t'),ylabel('sumz[n]'); s1=X1-X2;%x 的奇部与偶部之差 s2=Y1-Y2;%y 的奇部与偶部之差 s3=Z1-Z2;%z 的奇部与偶部之差 figure(5) subplot(3,1,1); plot(t,s1,'r');xlabel('t'),ylabel('decx[n]'); title('奇信号与偶信号的差信号'); subplot(3,1,2) plot(t,s2,'g');xlabel('t'),ylabel('decy[n]'); subplot(3,1,3); plot(t,s3,'b');xlabel('t'),ylabel('decz[n]');
y[n]
1
M 1
x[n k ]
M k 0
6
实验代码 3:the_filter.m
function [h]=the_filter(m)%画出 M 点滑动平均滤波器的波形
a=(1/m).*ones(1,m);%x 的系数
b=[1,0,0];
%y 的系数
h=impz(a,b,20); %求系统的单位冲激响应
函数调用 2:oddandeven('C:\Users\admin\Desktop\基于 matlab 的信号处理实例
\run 100m_TROUSERS POCKET_1_陈佳_1.txt')
实验结果 2:
3D信 号 的 偶 信 号 100
Evex[n]
50
0
-4000 -3000 -2000 -1000
500
1000
1500
2000
2500
3000
3500
n
500
1000
1500
2000
2500
3000
3500
n
500
1000
1500
2000
2500
3000
3500
n
z
2. 将读出的 3D 加速度信号分解为偶序列及奇序列,分别绘出波形;
绘出偶序列及奇序列的和信号、差信号及积信号的波形。
实验代码 2:oddandeven.m
x(i)=a(k); %将 a 中的第一列数据赋给 x y(i)=a(k+1); %将 a 中的第二列数据赋给 y z(i)=a(k+2); %将 a 中的第三列数据赋给 z k=k+3; end figure(1) subplot(3,1,1); plot(x,'r'),xlabel('n'),ylabel('x'); title('读取给定的 3D 加速度信号文件并绘出信号波形'); subplot(3,1,2); plot(y,'g'),xlabel('n'),ylabel('y'); subplot(3,1,3); plot(z,'b'),xlabel('n'),ylabel('z');
Oddz[n]
3D信 号 的 奇 信 号 100
0
-100
-4000 -3000 -2000 -1000
0
1000 2000 3000 4000
t
200
0
-200
-4000 -3000 -2000 -1000
0
1000 2000 3000
-4000 -3000 -2000 -1000
0
1000 2000 3000 4000
t
200
Evey[n]
100
0
-4000 -3000 -2000 -1000
0
1000 2000 3000 4000
t
200
Evez[n]
100
0
-4000 -3000 -2000 -1000
0
1000 2000 3000 4000
t
4
Oddx[n]
Oddy[n]
x(i)=a(k); %将 a 中的第一列数据赋给 x y(i)=a(k+1); %将 a 中的第二列数据赋给 y z(i)=a(k+2); %将 a 中的第三列数据赋给 z k=k+3; end x1=fliplr(x);%将 x 进行反转 y1=fliplr(y);%将 y 进行反转 z1=fliplr(z);%将 z 进行反转 t=[-len:-1 1:len];%给出横坐标的范围,使之匹配
figure(7)
stem(h,'y','filled');
%将单位冲激响应画出
xlabel('n'),ylabel('h[n]');
title('M 点的滑动平均滤波器的单位冲激响应图');
函数调用 3.1:the_filter(4)
实验结果 3.1:
M点 的 滑 动 平 均 滤 波 器 的 单 位 冲 激 响 应 图 0.25
3
m1=X1.*X2;%x 的奇部与偶部之积 m2=Y1.*Y2;%y 的奇部与偶部之积 m3=Z1.*Z2;%z 的奇部与偶部之积 figure(5) subplot(3,1,1); plot(t,m1,'r');xlabel('t'),ylabel('mulx[n]'); title('奇信号与偶信号的积信号'); subplot(3,1,2) plot(t,m2,'g');xlabel('t'),ylabel('muly[n]'); subplot(3,1,3); plot(t,m3,'b');xlabel('t'),ylabel('mulz[n]');
0
-2
-4000 -3000 -2000 -1000
0
1000 2000
t
x 104 2
0
-2
-4000 -3000 -2000 -1000
0
1000 2000
t
3000 3000 3000
4000 4000 4000
mulz[n]
3.画出 M 点滑动平均滤波器的波形(M 分别取 4 和 10)。
注:M 点滑动平均滤波器:
0
1000 2000 3000 4000
t
400
200
0
-4000 -3000 -2000 -1000
0
1000 2000 3000 4000
t
decz[n]
mulx[n]
muly[n]
x 104 1
奇信号与偶信号的积信号
0
-1
-4000 -3000 -2000 -1000
0
1000 2000
t
x 104 2
0.2
0.15
h[n]
0.1
0.05
0
0
2
4
6
8 10 12 14 16 18 20