MATLAB基础及其应用教程(第2版)/尚涛 本书特色
本书从MATLAB入门的角度出发,系统介绍了MATLAB的基础知识及其应用。全书共分两篇15章,第1~10章为基础篇,介绍入门基础、基本计算、数组和矩阵、数值计算、符号计算、图形绘制、图像处理、M程序设计、GUI图形用户界面、MATLAB工具箱等基础知识;第11~15章为应用篇,介绍MATLAB在图像处理、GUI设计、神经网络、信号处理、大数据处理等方面的应用。
MATLAB基础及其应用教程(第2版)/尚涛 内容简介
本书从MATLAB入门的角度出发,系统介绍了MATLAB的基础知识及其应用。全书共分两篇15章,~10章为基础篇,介绍入门基础、基本计算、数组和矩阵、数值计算、符号计算、图形绘制、图像处理、M程序设计、GUI图形用户界面、MATLAB工具箱等基础知识;1~15章为应用篇,介绍MATLAB在图像处理、GUI设计、神经网络、信号处理、大数据处理等方面的应用。
MATLAB基础及其应用教程(第2版)/尚涛 目录
基 础 篇
第1章 入门基础 3
1.1 MATLAB概述 3
1.1.1 MATLAB的优势特点 4
1.1.2 MATLAB的计算实例 5
1.2 MATLAB安装方法 8
1.3 MATLAB环境介绍 10
1.4 预备知识 11
1.4.1 仿真的分类 12
1.4.2 仿真的发展 13
1.4.3 常见的仿真软件 13
1.5 拓展知识 15
1.6 思考问题 16
1.7 常见问题 16
第2章 基本计算 17
2.1 入门实例 17
2.2 变量 18
2.2.1 预定义变量 18
2.2.2 用户自定义变量 18
2.2.3 表达式 19
2.2.4 逗号与分号的区别 19
2.3 基本数据类型 20
2.3.1 数值类型 20
2.3.2 逻辑类型 20
2.3.3 字符串类型 20
2.3.4 单元类型 21
2.3.5 结构类型 22
2.4 基本运算 23
2.4.1 算术运算 23
2.4.2 关系运算 24
2.4.3 逻辑运算 25
2.4.4 数学函数 25
2.5 拓展知识 27
2.6 思考问题 29
2.7 常见问题 29
附录A C语言中结构变量的定义及使用 30
A.1 C语言中结构变量的定义 30
A.2 C语言中结构变量的使用 31
第3章 数组和矩阵 32
3.1 入门实例 32
3.2 数组计算 34
3.2.1 数组的创建 34
3.2.2 数组的访问 36
3.2.3 数组的运算 37
3.3 矩阵计算 39
3.3.1 矩阵的创建 39
3.3.2 矩阵的访问 40
3.3.3 矩阵的运算 40
3.4 符号的作用 45
3.5 拓展知识 45
3.6 思考问题 46
3.7 常见问题 46
附录B 矩阵的对角化 48
B.1 对角化 48
B.2 实对称矩阵的对角化 49
第4章 数值计算 50
4.1 入门实例 50
4.2 数据分析 52
4.3 数据插值 53
4.4 数据拟合 54
4.5 多项式运算 55
4.5.1 多项式的创建 55
4.5.2 多项式的求根 56
4.5.3 多项式的乘运算 56
4.5.4 多项式的除运算 57
4.5.5 多项式的微积分 57
4.6 代数方程求解 58
4.7 微分方程求解 60
4.8 拓展知识 61
4.8.1 Lyapunov方程的计算求解 62
4.8.2 Sylvester方程的计算求解 64
4.8.3 Riccati方程的计算求解 67
4.9 思考问题 68
4.10 常见问题 68
附录C *小二乘法和微积分基本概念 68
C.1 *小二乘法 69
C.2 微积分的基本概念 69
第5章 符号计算 72
5.1 入门实例 72
5.2 符号变量的创建 73
5.3 符号表达式运算 74
5.3.1 算术运算 74
5.3.2 函数运算 75
5.4 符号微积分 77
5.5 符号方程求解 81
5.6 拓展知识 84
5.6.1 基本指令 84
5.6.2 调用MAPLE函数 85
5.6.3 运行MAPLE程序 87
5.7 思考问题 88
5.8 常见问题 88
附录D 微分方程基础 89
D.1 微分方程的概念 89
D.2 初等积分法 89
D.3 一阶线性微分方程 89
D.4 常系数线性微分方程 90
D.5 初值问题数值解 90
第6章 图形绘制 92
6.1 入门实例 92
6.2 可视化数据的分类 93
6.3 二维绘图 94
6.3.1 基本绘图函数 94
6.3.2 绘图控制符 95
6.3.3 其他绘图函数 96
6.4 三维绘图 97
6.4.1 三维曲线图 98
6.4.2 三维网格图 98
6.4.3 三维曲面图 100
6.5 图形窗口的控制与操作 100
6.5.1 子窗口绘制 101
6.5.2 窗口的刷新 103
6.5.3 窗口的视点 104
6.6 图形绘制的辅助操作 105
6.7 拓展知识 107
6.8 思考问题 108
6.9 常见问题 108
附录E 计算机图形学基础 108
第7章 图像处理 110
7.1 入门实例 110
7.2 MATLAB数字图像处理 112
7.2.1 图像文件输入/输出 112
7.2.2 图像显示 113
7.2.3 图像几何运算 120
7.2.4 图像亮度调整 123
7.2.5 图像斑点去除 125
7.2.6 图像轮廓提取 127
7.2.7 图像边界提取 127
7.2.8 图像间的运算 128
7.2.9 特定区域处理 129
7.3 拓展知识 130
7.3.1 傅里叶变换 131
7.3.2 离散余弦变换 132
7.3.3 Radon变换 134
7.4 思考问题 136
7.5 常见问题 137
附录F 图像处理基础 137
F.1 图像数字化 138
F.2 图像的类型 139
F.3 数字图像的存储 139
第8章 M程序设计 143
8.1 入门实例 143
8.2 MATLAB编程特点 144
8.3 M文件形式 146
8.3.1 基本组成结构 146
8.3.2 脚本文件 147
8.3.3 函数文件 147
8.3.4 局部变量和全局变量 149
8.4 控制结构 150
8.4.1 顺序结构 150
8.4.2 分支结构 151
8.4.3 循环结构 153
8.4.4 其他流程控制语句 154
8.5 M文件调试 155
8.6 M文件的编程规范 158
8.7 拓展知识 159
8.7.1 MATLAB调用其他程序的方法 160
8.7.2 其他程序调用MATLAB内置函数
的方法 168
8.8 思考问题 172
8.9 常见问题 173
附录G 即时编译技术 173
第9章 GUI图形用户界面设计 174
9.1 入门实例 174
9.2 GUI设计工具介绍 175
9.2.1 GUIDE的启动方法 176
9.2.2 GUI文件的构成 177
9.2.3 GUIDE的构成 180
9.3 GUI设计方法 184
9.4 用户控件的制作 184
9.4.1 控件对象的描述 185
9.4.2 控件对象的属性 185
9.4.3 对话框设计 187
9.4.4 用户控件的设计实例 191
9.5 用户菜单的制作 193
9.5.1 用户菜单的制作方法 194
9.5.2 用户菜单的设计实例 194
9.6 M文件的函数构成 196
9.6.1 函数说明 196
9.6.2 参数说明 196
9.6.3 GUIDE数据传递机制 197
9.6.4 函数使用实例 197
9.7 拓展知识 199
9.8 思考问题 200
9.9 常见问题 200
附录H 可视化开发 201
第10章 MATLAB工具箱 203
10.1 入门实例 203
10.2 工具箱分类 205
10.3 Simulink工具箱 207
10.3.1 Simulink的启用方法 208
10.3.2 Simulink模块库简介 209
10.3.3 Simulink建模与仿真 213
10.3.4 Simulink建模实例 215
10.3.5 Simulink建模仿真命令 217
10.4 信号处理工具箱 218
10.4.1 工具箱简介 218
10.4.2 SPTool工具 219
10.4.3 信号处理实例 220
10.4.4 信号处理命令函数 225
10.5 通信工具箱 232
10.5.1 工具箱简介 232
10.5.2 通信命令函数 236
10.5.3 通信系统模块集 237
10.5.4 通信系统性能仿真 242
10.6 神经网络工具箱 245
10.6.1 工具箱简介 245
10.6.2 神经网络工具 250
10.6.3 神经网络应用实例 251
10.6.4 神经网络命令函数 258
10.7 大数据处理工具箱 262
10.7.1 工具箱简介 262
10.7.2 大数据存储 263
10.7.3 Tall数组 266
10.7.4 MapReduce 269
10.8 拓展知识 271
10.9 思考问题 273
10.10 常见问题 274
应 用 篇
第11章 图像处理方面的应用 277
11.1 典型问题 277
11.2 主要思路 277
11.3 图像处理预备知识 277
11.4 MATLAB函数 278
11.5 MATLAB的实现方式 278
11.6 思考 287
第12章 GUI设计方面的应用 288
12.1 典型问题 288
12.2 主要思路 288
12.3 游戏设计预备知识 289
12.4 MATLAB函数 289
12.5 MATLAB的实现方式 290
12.6 思考 298
第13章 神经网络方面的应用 299
13.1 典型问题 299
13.2 主要思路 299
13.3 神经网络预备知识 300
13.4 MATLAB函数 301
13.5 MATLAB的实现方式 301
13.6 思考 305
第14章 信号处理方面的应用 306
14.1 典型问题 306
14.2 主要思路 306
14.3 信号处理预备知识 307
14.4 MATLAB函数 307
14.5 MATLAB的实现方式 308
14.5.1 设计过程 308
14.5.2 调试分析 311
14.6 思考 317
第15章 大数据处理方面的应用 318
15.1 典型问题 318
15.2 主要思路 318
15.3 MapReduce预备知识 319
15.4 MATLAB函数 320
15.5 MATLAB的实现方式 320
15.6 思考 328
参考文献 329
MATLAB基础及其应用教程(第2版)/尚涛 作者简介
尚涛,2006年博士毕业于日本高知工科大学系统工程专业,现为北京航空航天大学网络空间安全副教授,中国电子学会信息论分会 委员,中国人工智能学会 智能机器人专业委员会 委员;主持国家重点研发计划项目子课题、国家自然科学基金面上项目、国际合作、教育部留学回国人员科研启动基金项目、中国博士后科学基金项目、国防863计划项目、中央高校基本科研业务费专项资金项目等多项。