第十章 实际应用
MATLAB/Simulink的推出得到了各个领域专家学者的关注,为各个层次的研究人员提供了有力的工具。本章将介绍MATLAB在信号处理、图像处理和自动控制领域的应用。
目录 10.1 信息处理领域 10.2 图像处理领域 10.3 自动控制领域 习 题
10.1 信息处理领域 10.1.1 工具箱介绍 10.1.2 模型集介绍 10.1.3 实例
在计算机中,所有的信号都是离散信号,因此在使用MATLAB/Simulink进行信号处理之前,先要将时间信号进行离散化处理。
10.1.1 工具箱介绍 信号处理工具箱将大量函数分成若干类,以方便按功能查找,以下列出主要的类。 10.1.1 工具箱介绍 信号处理工具箱将大量函数分成若干类,以方便按功能查找,以下列出主要的类。 波形产生(Waveform Generation) 滤波器分析(Filter Analysis) 滤波器实现(Filter Implementation)
4.线性系统变换(Linear System Transformations) 5.FIR滤波器设计(FIR Digital Filter Design) 6.IIR滤波器设计(IIR Digital Filter Design) 7.IIR滤波器的阶评估(IIR Filter Order Estimation)
8.变换(Transforms) 9.统计信号处理和谱分析(Statistical Signal Processing and Spectral Analysis) 10.窗函数(Windows) 11.参数化建模(Parametric Modeling) 12.特殊操作(Specialized Operations)
13.模拟低通滤波器原型(Analog Lowpass Filter Prototypes) 14.模拟滤波器设计(Analog Filter Design) 15.模拟滤波器转换(Analog Filter Transformation) 16.滤波器离散化(Filter Discretization)
17.模对数倒谱分析(Cepstral Analysis) 18.线性预测(Linear Prediction) 19.多速信号处理(Multirate Signal Processing) 20.图形用户界面(Graphical User Interfaces)
10.1.2 模型集介绍 信号处理模型集将大量模块分成若干类,以方便按功能查找,以下列出主要的类。 评估工具(Estimation) 10.1.2 模型集介绍 信号处理模型集将大量模块分成若干类,以方便按功能查找,以下列出主要的类。 评估工具(Estimation) 滤波工具(Filtering) 数学函数(Math Functions)
输入输出接口(Platform-Specific I/O) 调制解调器(Quantizers) 信号管理(Signal Management) 信号操作(Signal Operations)
信号处理信宿(Signal Processing Sinks) 信号处理信源(Signal Processing Sources) 统计工具(Statistics) 信号转换工具(Transform)
10.1.3 实例
运行该模型,并在命令窗口输入如下代码: figure stem(yout) 运行结果如下图所示。
M文件的具体代码序列如下: b=[0.2 0.1 0]; a=[1 -0.4 -0.5]; h=impz(b,a,64); %计算脉冲响应 figure stem(h) title('IMPZ function') 运行结果也如下图所示。
10.2 图像处理领域 1.二进制图像 2.索引图像 3.灰度图像 4.多帧图像 5.RGB图像
MATLAB提供了图像处理工具箱,并且Simulink提供了视频和图像处理模型集。
1.二进制图像 在一幅二进制图像中,每一个像素将取两个离散数值中的一个。二进制图像使用unit8或双精度类型的数组类存储,下图是一幅典型的二进制图像实例。
2.索引图像 索引图像是一种把像素值直接作为RGB调色板下标的图像。在MATLAB中,索引图像包含一个数据矩阵X和一个颜色映射矩阵map。下图显示了索引图像的结构。
3.灰度图像 灰度图像通常由一个unit8、unit16或双精度类型的数组来描述。下图为一个典型的双精度灰度图像。
4.多帧图像 多帧图像是一种包含多幅图像或帧的图像文件,它主要用于需要对时间或场景集合进行操作的场合,在MATLAB中它是一个4维数组,其中第4维用来指定帧的序号。
5.RGB图像 RGB图像又称为真彩图像,它是利用R、G、B三个分量标识一个像素的颜色,R、G、B分别代表红、绿、蓝3种不同的颜色,通过三基色可以合成出任意颜色。 下图为一幅典型的双精度RGB图像,在此图中为了确定像素(2,3)的颜色,需要查看一组数据RGB(2,3,1:3)。
10.2.1 工具箱介绍 图像处理工具箱将大量函数分成若干类,以方便按功能查找,以下列出主要的类。 10.2.1 工具箱介绍 图像处理工具箱将大量函数分成若干类,以方便按功能查找,以下列出主要的类。 图像输入、输出和显示(Image Input, Output, and Display) 交互式组件工具(Modular Interactive Tools)
空间变换和注册(Spatial Transformation and Registration) 图像分析和统计(Image Analysis and Statistics) 图像数学算法(Image Arithmetic) 图像扩展和修补(Image Enhancement and Restoration)
线性滤波和变换(Linear Filtering and Transforms) 形态操作(Morphological Operations) 图像指定区域工具(Region-Based, Neighborhood, and Block Processing)
图像颜色工具(Colormap and Color Space Functions) 其他函数(Miscellaneous Functions)
10.2.2 模型集介绍 视频和图像处理模型集将大量模块分成若干类,以方便按功能查找,以下列出主要的类。 10.2.2 模型集介绍 视频和图像处理模型集将大量模块分成若干类,以方便按功能查找,以下列出主要的类。 分析和扩展(Analysis & Enhancement) 变换工具(Conversions) 滤波工具(Filtering)
几何变换(Geometric Transformations) 形态操作(Morphological Operations) 信宿工具(Sinks) 信源工具(Sources)
统计工具(Statistics) 文本和图片工具(Text & Graphics) 转换工具(Transforms) 应用工具(Utilities)
10.2.3 实例
运行结果如下图所示。
M文件的具体代码序列如下: RGB = imread(‘mcr_splash.bmp’); I = rgb2gray(RGB); imshow(I,[]) 运行结果如下图所示。
10.3 自动控制领域 10.3.1 工具箱介绍 10.3.2 实例
MATLAB提供了控制系统工具箱(Control System Toolbox),但在Simulink没有提供专门的模型集,而Simulink的现有模型集足以完成控制系统的计算和仿真。
10.3.1 工具箱介绍 控制系统工具箱将大量函数分成若干类,以方便按功能查找,以下列出主要的类。 一般工具(General) 10.3.1 工具箱介绍 控制系统工具箱将大量函数分成若干类,以方便按功能查找,以下列出主要的类。 一般工具(General) 线性模型创建(Creating Linear Models)
数据提取(Data Extraction) 变换工具(Conversions) 系统互连(System Interconnections) 系统增益和特性(System Gain and Dynamics) 时域分析(Time Domain Analysis)
频域分析(Frequency Domain Analysis) 经典设计(Classical Design) 极点配置(Pole Placement) 最优设计(LQR/LQG Design) 状态模型(State-Space Model) 时延(Time Delays)
模型维数和特性(Model Dimensions and Characteristics) 重载的数学运算(Overloaded and Arithmetic Operators) 矩阵方程求解器(Matrix Equation Solvers) 命令行绘图工具(Command-Line Plot Customization)
10.3.2 实例
运行该模型,并在命令窗口输入如下代码: plot(T,Y) 运行结果如下图所示。
M文件的具体代码序列如下: num=[1 0]; den=[1 0 2] ; step(num,den, 10) 运行结果如下图所示。
习 题