MATLAB从入门到精通 第2版
书籍作者:胡晓冬 |
ISBN:9787115493156 |
书籍语言:简体中文 |
连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 |
下载次数:9077 |
创建日期:2021-02-14 |
发布日期:2021-02-14 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
内容简介
本书系统讲解了MATLAB基本环境和操作方法,介绍了****的MATLAB功能,并分章阐述了数据类型、数值计算、符号计算、编程基础、可视化、Simulink、应用程序接口等内容,结合案例详细讲解了MATLAB语言的使用。本书还专门讲解了实用的MATLAB编程技巧与数学建模应用等。
本书内容丰富、贴近实战应用,可作为高校学生系统学习MATLAB的书籍,也可以作为广大科研和工程技术人员在工作中使用MATLAB的参考书。
作者简介
胡晓冬,有十年以上的MATLAB使用经验,在日常的工作中也是以MATLAB作为主要的编程工具进行算法方面的编程,并且在之前编写过多本MATLAB教程。在过去的多年里面一直在跟进MATLAB软件的更新,对于新的功能尤其是人性化方面的功能有着深入体会。
编辑推荐
1.经典图书升级版,融合了基础知识和大量示例,实用的Matlab入门、提高指南。
2.简单易学,步骤详尽,代码清晰。
3.版本经典,注重基础,在编写时兼顾了版本的更新和内容的稳定。
4.书中源代码和视频文件,可在异步社区下载。
目录
目 录
第 1章 MATLAB概述 1
1.1 MATLAB简介 1
1.2 MATLAB主要功能 2
1.2.1 开发算法和应用程序 2
1.2.2 分析和访问数据 3
1.2.3 数据可视化 3
1.2.4 数值计算 4
1.2.5 发布结果和部署应用程序 5
1.3 MATLAB的安装与启动 5
1.3.1 MATLAB的安装 5
1.3.2 MATLAB的启动 7
1.3.3 Desktop操作界面简介 8
1.4 Command Window运行入门 9
1.4.1 命令行的使用 9
1.4.2 数值、变量和表达式 10
1.4.3 命令行的特殊输入方法 12
1.4.4 Command Window的显示
格式 14
1.4.5 Command Window的常用
快捷键与命令 14
1.5 Command History窗口 15
1.6 Current Folder窗口 17
1.7 Workspace和Variable Editor窗口 18
1.7.1 Workspace窗口 18
1.7.2 Variable Editor窗口 19
1.8 命令行辅助功能与Function
Browser 19
1.9 帮助系统 21
1.9.1 帮助浏览器 21
1.9.2 在Command Window中
查询帮助 23
第 2章 矩阵和数组 25
2.1 矩阵的创建与合并 25
2.1.1 创建简单矩阵 25
2.1.2 创建特殊矩阵 27
2.1.3 矩阵的合并 27
2.2 矩阵的寻访与赋值 28
2.2.1 矩阵的标识 28
2.2.2 矩阵的寻访 29
2.2.3 矩阵的赋值 30
2.3 进行数组运算的常用函数 30
2.3.1 函数数组运算规则的定义 30
2.3.2 进行数组运算的常用函数 31
2.4 查询矩阵信息 32
2.4.1 矩阵的形状信息 32
2.4.2 矩阵的数据类型 32
2.4.3 矩阵的数据结构 33
2.5 数组运算与矩阵运算 33
2.6 矩阵的重构 34
2.6.1 矩阵元素的扩展与删除 34
2.6.2 矩阵的重构 35
2.7 稀疏矩阵 37
2.7.1 稀疏矩阵的存储方式 37
2.7.2 稀疏矩阵的创建 38
2.7.3 稀疏矩阵的运算 41
2.7.4 稀疏矩阵的交换与重新
排序 42
2.7.5 稀疏矩阵视图 44
2.8 多维数组 44
2.8.1 多维数组的创建 44
2.8.2 多维数组的寻访与重构 47
2.9 多项式的表达式及其操作 50
2.9.1 多项式的表达式和创建
方法 50
2.9.2 多项式运算函数 51
第3章 数据类型 53
3.1 数值型 53
3.2 逻辑型 53
3.2.1 逻辑型简介 53
3.2.2 返回逻辑结果的函数 54
3.2.3 运算符的优先级 56
3.3 字符和字符串 57
3.3.1 创建字符串 57
3.3.2 比较字符串 58
3.3.3 查找与替换字符串 59
3.3.4 类型转换 60
3.3.5 字符串应用函数小结 61
3.4 结构数组 62
3.4.1 结构数组的创建 63
3.4.2 结构数组的寻访 65
3.4.3 结构数组域的基本操作 66
3.4.4 结构数组的操作 67
3.5 元胞数组 69
3.5.1 元胞数组的创建 70
3.5.2 元胞数组的寻访 71
3.5.3 元胞数组的基本操作 72
3.5.4 元胞数组的操作函数 72
3.6 Map容器 74
3.6.1 Map容器数据类型介绍 74
3.6.2 Map对象的创建 75
3.6.3 Map对象内容的查看 76
3.6.4 Map对象的读写 77
3.6.5 Map对象中键和值的修改 79
3.6.6 映射其他数据类型 81
3.7 日期和时间 82
3.7.1 创建日期和时间数组 82
3.7.2 日期和时间元素 86
3.7.3 日期和时间的计算与绘图 88
3.7.4 以日期和时间作为数值和
字符 92
3.8 类别数组 93
3.9 表 97
第4章 数值计算 106
4.1 因式分解 106
4.1.1 行列式、逆和秩 106
4.1.2 Cholesky因式分解 108
4.1.3 LU因式分解 109
4.1.4 QR因式分解 110
4.1.5 范数 111
4.2 矩阵特征值和奇异值 112
4.2.1 特征值和特征向量的求取 112
4.2.2 奇异值分解 114
4.3 概率和统计 115
4.3.1 基本分析函数 115
4.3.2 概率函数、分布函数、
逆分布函数和随机数 125
4.4 数值求导与积分 126
4.4.1 导数与梯度 126
4.4.2 一元函数的数值积分 127
4.4.3 二重积分的数值计算 129
4.4.4 三重积分的数值计算 129
4.5 插值 130
4.5.1 一维数据插值 130
4.5.2 二维数据插值 131
4.5.3 多维插值 132
4.5.4 样条插值 133
4.6 曲线拟合 134
4.6.1 最小二乘原理及其曲线
拟合算法 134
4.6.2 曲线拟合的实现 134
4.7 傅里叶分析 135
4.8 微分方程 137
4.8.1 常微分方程 137
4.8.2 偏微分方程 140
第5章 符号计算 143
5.1 符号变量、表达式及符号方程 143
5.1.1 符号变量与表达式的创建 143
5.1.2 符号计算中的运算符和
基本函数 145
5.1.3 创建符号方程 146
5.2 符号微积分 146
5.2.1 符号求导与微分 146
5.2.2 符号求极限 148
5.2.3 符号积分 149
5.2.4 级数求和 149
5.2.5 泰勒级数 150
5.3 符号表达式的化简与替换 151
5.3.1 符号表达式的化简 151
5.3.2 符号表达式的替换 156
5.4 符号可变的精度计算 159
5.5 符号线性代数 161
5.5.1 基础代数运算 161
5.5.2 线性代数运算 162
5.6 符号方程求解 164
5.6.1 求代数方程的符号解 164
5.6.2 求代数方程组的符号解 164
5.6.3 求微分方程的符号解 166
5.6.4 求微分方程组的符号解 168
5.7 符号积分变换 168
5.7.1 傅里叶变换及其反变换 168
5.7.2 拉普拉斯变换及其反变换 170
5.7.3 z变换及其反变换 171
第6章 MATLAB编程基础 173
6.1 M文件 173
6.1.1 M文件编辑器 174
6.1.2 M文件的基本内容 175
6.1.3 脚本式M文件 178
6.1.4 函数式M文件 178
6.2 流程控制 179
6.2.1 顺序结构 179
6.2.2 if语句 180
6.2.3 switch语句 181
6.2.4 for循环 182
6.2.5 while循环 183
6.2.6 continue命令 184
6.2.7 break命令 185
6.2.8 return命令 185
6.2.9 人机交互命令 186
6.3 函数的类型 188
6.3.1 主函数 188
6.3.2 子函数 188
6.3.3 私有函数 189
6.3.4 嵌套函数 190
6.3.5 重载函数 193
6.3.6 匿名函数 193
6.4 函数的变量 197
6.4.1 变量类型 197
6.4.2 变量的传递 199
6.5 函数句柄 201
6.5.1 函数句柄的创建 201
6.5.2 函数句柄的调用 202
6.5.3 函数句柄的操作 202
6.6 串演算函数 204
6.6.1 eval函数 204
6.6.2 feval函数 205
6.6.3 inline函数 205
6.7 内存的使用 206
6.7.1 内存管理函数 207
6.7.2 高效使用内存的策略 207
6.7.3 解决“Out of Memory”
问题 209
6.8 程序调试和优化 209
6.8.1 使用Debugger窗口调试 210
6.8.2 在命令窗口中调试 213
6.8.3 通过Profiler检测性能 216
6.9 错误处理 219
6.9.1 使用try…catch语句
捕捉错误 219
6.9.2 处理错误和从错误中恢复 219
6.9.3 警告 221
第7章 数据可视化 224
7.1 绘图的基本知识 224
7.1.1 离散数据和离散函数的
可视化 224
7.1.2 连续函数的可视化 225
7.1.3 可视化的一般步骤 226
7.2 二维图形 226
7.2.1 基本绘图函数 227
7.2.2 曲线的色彩、线型和数据
点型 229
7.2.3 坐标、刻度和网格控制 231
7.2.4 图形标识 233
7.2.5 双坐标图和子图 236
7.2.6 双轴对数图形 238
7.2.7 特殊二维图形 238
7.3 三维图形 245
7.3.1 绘制三维曲线图 246
7.3.2 绘制三维曲面图 246
7.3.3 特殊三维图形 248
7.4 三维图形的高级控制 250
7.4.1 视点控制 251
7.4.2 颜色的使用 251
7.4.3 光照控制 252
第8章 图像处理 253
8.1 图像文件的操作 253
8.1.1 查询图像文件的信息 254
8.1.2 图像文件的读写 255
8.1.3 图像文件的显示 256
8.1.4 图像格式的转换 257
8.2 图像的几何运算 259
8.2.1 图像的平移 259
8.2.2 图像的镜像变换 259
8.2.3 图像的缩放 260
8.2.4 图像的旋转 261
8.2.5 图像的剪切 262
8.3 图像的正交变换 262
8.3.1 傅里叶变换 262
8.3.2 离散余弦变换 263
8.3.3 Radon变换 265
8.4 MATLAB图像增强 266
8.4.1 像素值及其统计特性 266
8.4.2 对比度增强 268
8.4.3 直方图均衡化 270
8.4.4 空域滤波增强 271
8.4.5 频域增强 273
第9章 图形用户界面设计 275
9.1 句柄图形对象 275
9.1.1 图形对象 275
9.1.2 图形对象句柄 276
9.1.3 图形对象属性的获取和
设置 277
9.2 GUIDE简介 280
9.2.1 启动GUI 281
9.2.2 Layout编辑器 281
9.2.3 运行GUI 282
9.3 创建GUI 282
9.3.1 GUI的布局 282
9.3.2 菜单的创建 283
9.3.3 控件 287
9.4 回调函数 291
9.4.1 变量的传递 291
9.4.2 函数编写 292
9.5 GUI设计示例 294
第 10章 数据文件I/O 301
10.1 处理文件名称 301
10.2 MATLAB支持的文件格式 302
10.3 导入向导的使用 303
10.4 MAT文件的读写 304
10.4.1 MAT文件的写入 304
10.4.2 MAT文件的读取 306
10.5 Text文件的读写 306
10.5.1 Text文件的读取 307
10.5.2 Text文件的写入 309
10.6 Excel文件的读写 310
10.7 音频/视频文件操作 312
10.7.1 获取音频/视频文件的
文件头信息 312
10.7.2 音频/视频文件的导入与
导出 312
第 11章 MATLAB优化问题应用 314
11.1 MATLAB优化工具箱 314
11.1.1 MATLAB求解器 314
11.1.2 极小值优化 315
11.1.3 多目标优化 322
11.1.4 方程组求解 323
11.1.5 最小二乘及数据拟合 324
11.2 模式搜索法 325
11.3 模拟退火算法 327
11.3.1 模拟退火算法简介 327
11.3.2 模拟退火算法的应用 327
11.3.3 关于计算结果的说明 329
11.4 遗传算法 329
11.4.1 遗传算法简介 329
11.4.2 遗传算法的应用 331
11.5 Optimization Tool简介 333
第 12章 信号处理 336
12.1 信号处理基本理论 336
12.1.1 信号的生成 336
12.1.2 数字滤波器结构 340
12.2 IIR滤波器的MATLAB实现 342
12.2.1 IIR滤波器经典设计 342
12.2.2 IIR滤波器直接设计法 349
12.2.3 广义巴特沃思IIR滤波器
设计 350
12.3 FIR滤波器的MATLAB实现 351
12.3.1 FIR滤波器设计 352
12.3.2 fir1函数 352
12.3.3 fir2函数 354
第 13章 Simulink仿真 355
13.1 Simulink简介 355
13.1.1 Simulink功能与特点 355
13.1.2 Simulink的安装与启动 356
13.2 Simulink基础 358
13.2.1 Simulink模型的含义 358
13.2.2 Simulink模块操作 358
13.2.3 Simulink信号线操作 362
13.2.4 Simulink对模型的注释 363
13.2.5 Simulink中常用的
模型库 363
13.2.6 Simulink仿真配置 366
13.3 Simulink动态系统仿真 370
13.3.1 简单系统的仿真分析 370
13.3.2 离散系统的仿真分析 372
13.3.3 连续系统的仿真分析 374
13.4 Simulink模型中的子系统 377
13.4.1 子系统的建立 377
13.4.2 子系统的封装 378
13.5 Simulink中的S函数 383
13.5.1 S函数 383
13.5.2 S函数的作用和原理 383
13.5.3 用M文件创建S函数 384
第 14章 应用程序接口 387
14.1 MATLAB应用程序接口介绍 387
14.2 MATLAB调用C/C++ 388
14.2.1 MATLAB MEX文件 388
14.2.2 C/C++ MEX文件的使用 391
14.3 在C/C++中调用MATLAB
引擎 397
14.3.1 MATLAB计算引擎概述 397
14.3.2 MATLAB计算引擎库
函数 397
14.3.3 在C/C++中调用MATLAB
引擎的示例 399
14.4 MATLAB编译器 404
14.4.1 MATLAB编译器的安装和
设置 405
14.4.2 MATLAB编译器的使用 405
14.4.3 独立应用程序 407
第 15章 MATLAB基础计算技巧 416
15.1 MATLAB数组创建与重构技巧 416
15.2 MATLAB数据类型使用技巧 422
15.3 MATLAB数值计算技巧 424
15.4 MATLAB文件读取操作技巧 426
15.5 MATLAB绘图技巧 427
第 16章 MATLAB编程技巧 430
16.1 MATLAB编程风格 430
16.1.1 命名规则 430
16.1.2 文件与程序结构 432
16.1.3 基本语句 433
16.1.4 排版、注释与文档 436
16.2 MATLAB编程注意事项 439
16.3 内存的使用 440
16.4 提高MATLAB运行效率 441
16.4.1 提高运行效率的基本
原则 441
16.4.2 提高运行效率的示例 443
第 17章 MATLAB在数学建模中的
应用 446
17.1 MATLAB蒙特卡罗模拟 446
17.1.1 蒙特卡罗方法简介 446
17.1.2 蒙特卡罗方法编程示例 447
17.2 MATLAB灰色系统的理论与
应用 448
17.2.1 GM(1,1)预测模型简介 449
17.2.2 灰色预测计算示例 450
17.3 MATLAB模糊聚类分析 452
17.3.1 模糊聚类分析简介 452
17.3.2 模糊聚类分析应用示例 453
17.4 MATLAB层次分析法的应用 457
17.4.1 层次分析法简介 457
17.4.2 层次分析法的应用 460
目 录
第 1章 MATLAB概述 1
1.1 MATLAB简介 1
1.2 MATLAB主要功能 2
1.2.1 开发算法和应用程序 2
1.2.2 分析和访问数据 3
1.2.3 数据可视化 3
1.2.4 数值计算 4
1.2.5 发布结果和部署应用程序 5
1.3 MATLAB的安装与启动 5
1.3.1 MATLAB的安装 5
1.3.2 MATLAB的启动 7
1.3.3 Desktop操作界面简介 8
1.4 Command Window运行入门 9
1.4.1 命令行的使用 9
1.4.2 数值、变量和表达式 10
1.4.3 命令行的特殊输入方法 12
1.4.4 Command Window的显示
格式 14
1.4.5 Command Window的常用
快捷键与命令 14
1.5 Command History窗口 15
1.6 Current Folder窗口 17
1.7 Workspace和Variable Editor窗口 18
1.7.1 Workspace窗口 18
1.7.2 Variable Editor窗口 19
1.8 命令行辅助功能与Function
Browser 19
1.9 帮助系统 21
1.9.1 帮助浏览器 21
1.9.2 在Command Window中
查询帮助 23
第 2章 矩阵和数组 25
2.1 矩阵的创建与合并 25
2.1.1 创建简单矩阵 25
2.1.2 创建特殊矩阵 27
2.1.3 矩阵的合并 27
2.2 矩阵的寻访与赋值 28
2.2.1 矩阵的标识 28
2.2.2 矩阵的寻访 29
2.2.3 矩阵的赋值 30
2.3 进行数组运算的常用函数 30
2.3.1 函数数组运算规则的定义 30
2.3.2 进行数组运算的常用函数 31
2.4 查询矩阵信息 32
2.4.1 矩阵的形状信息 32
2.4.2 矩阵的数据类型 32
2.4.3 矩阵的数据结构 33
2.5 数组运算与矩阵运算 33
2.6 矩阵的重构 34
2.6.1 矩阵元素的扩展与删除 34
2.6.2 矩阵的重构 35
2.7 稀疏矩阵 37
2.7.1 稀疏矩阵的存储方式 37
2.7.2 稀疏矩阵的创建 38
2.7.3 稀疏矩阵的运算 41
2.7.4 稀疏矩阵的交换与重新
排序 42
2.7.5 稀疏矩阵视图 44
2.8 多维数组 44
2.8.1 多维数组的创建 44
2.8.2 多维数组的寻访与重构 47
2.9 多项式的表达式及其操作 50
2.9.1 多项式的表达式和创建
方法 50
2.9.2 多项式运算函数 51
第3章 数据类型 53
3.1 数值型 53
3.2 逻辑型 53
3.2.1 逻辑型简介 53
3.2.2 返回逻辑结果的函数 54
3.2.3 运算符的优先级 56
3.3 字符和字符串 57
3.3.1 创建字符串 57
3.3.2 比较字符串 58
3.3.3 查找与替换字符串 59
3.3.4 类型转换 60
3.3.5 字符串应用函数小结 61
3.4 结构数组 62
3.4.1 结构数组的创建 63
3.4.2 结构数组的寻访 65
3.4.3 结构数组域的基本操作 66
3.4.4 结构数组的操作 67
3.5 元胞数组 69
3.5.1 元胞数组的创建 70
3.5.2 元胞数组的寻访 71
3.5.3 元胞数组的基本操作 72
3.5.4 元胞数组的操作函数 72
3.6 Map容器 74
3.6.1 Map容器数据类型介绍 74
3.6.2 Map对象的创建 75
3.6.3 Map对象内容的查看 76
3.6.4 Map对象的读写 77
3.6.5 Map对象中键和值的修改 79
3.6.6 映射其他数据类型 81
3.7 日期和时间 82
3.7.1 创建日期和时间数组 82
3.7.2 日期和时间元素 86
3.7.3 日期和时间的计算与绘图 88
3.7.4 以日期和时间作为数值和
字符 92
3.8 类别数组 93
3.9 表 97
第4章 数值计算 106
4.1 因式分解 106
4.1.1 行列式、逆和秩 106
4.1.2 Cholesky因式分解 108
4.1.3 LU因式分解 109
4.1.4 QR因式分解 110
4.1.5 范数 111
4.2 矩阵特征值和奇异值 112
4.2.1 特征值和特征向量的求取 112
4.2.2 奇异值分解 114
4.3 概率和统计 115
4.3.1 基本分析函数 115
4.3.2 概率函数、分布函数、
逆分布函数和随机数 125
4.4 数值求导与积分 126
4.4.1 导数与梯度 126
4.4.2 一元函数的数值积分 127
4.4.3 二重积分的数值计算 129
4.4.4 三重积分的数值计算 129
4.5 插值 130
4.5.1 一维数据插值 130
4.5.2 二维数据插值 131
4.5.3 多维插值 132
4.5.4 样条插值 133
4.6 曲线拟合 134
4.6.1 最小二乘原理及其曲线
拟合算法 134
4.6.2 曲线拟合的实现 134
4.7 傅里叶分析 135
4.8 微分方程 137
4.8.1 常微分方程 137
4.8.2 偏微分方程 140
第5章 符号计算 143
5.1 符号变量、表达式及符号方程 143
5.1.1 符号变量与表达式的创建 143
5.1.2 符号计算中的运算符和
基本函数 145
5.1.3 创建符号方程 146
5.2 符号微积分 146
5.2.1 符号求导与微分 146
5.2.2 符号求极限 148
5.2.3 符号积分 149
5.2.4 级数求和 149
5.2.5 泰勒级数 150
5.3 符号表达式的化简与替换 151
5.3.1 符号表达式的化简 151
5.3.2 符号表达式的替换 156
5.4 符号可变的精度计算 159
5.5 符号线性代数 161
5.5.1 基础代数运算 161
5.5.2 线性代数运算 162
5.6 符号方程求解 164
5.6.1 求代数方程的符号解 164
5.6.2 求代数方程组的符号解 164
5.6.3 求微分方程的符号解 166
5.6.4 求微分方程组的符号解 168
5.7 符号积分变换 168
5.7.1 傅里叶变换及其反变换 168
5.7.2 拉普拉斯变换及其反变换 170
5.7.3 z变换及其反变换 171
第6章 MATLAB编程基础 173
6.1 M文件 173
6.1.1 M文件编辑器 174
6.1.2 M文件的基本内容 175
6.1.3 脚本式M文件 178
6.1.4 函数式M文件 178
6.2 流程控制 179
6.2.1 顺序结构 179
6.2.2 if语句 180
6.2.3 switch语句 181
6.2.4 for循环 182
6.2.5 while循环 183
6.2.6 continue命令 184
6.2.7 break命令 185
6.2.8 return命令 185
6.2.9 人机交互命令 186
6.3 函数的类型 188
6.3.1 主函数 188
6.3.2 子函数 188
6.3.3 私有函数 189
6.3.4 嵌套函数 190
6.3.5 重载函数 193
6.3.6 匿名函数 193
6.4 函数的变量 197
6.4.1 变量类型 197
6.4.2 变量的传递 199
6.5 函数句柄 201
6.5.1 函数句柄的创建 201
6.5.2 函数句柄的调用 202
6.5.3 函数句柄的操作 202
6.6 串演算函数 204
6.6.1 eval函数 204
6.6.2 feval函数 205
6.6.3 inline函数 205
6.7 内存的使用 206
6.7.1 内存管理函数 207
6.7.2 高效使用内存的策略 207
6.7.3 解决“Out of Memory”
问题 209
6.8 程序调试和优化 209
6.8.1 使用Debugger窗口调试 210
6.8.2 在命令窗口中调试 213
6.8.3 通过Profiler检测性能 216
6.9 错误处理 219
6.9.1 使用try…catch语句
捕捉错误 219
6.9.2 处理错误和从错误中恢复 219
6.9.3 警告 221
第7章 数据可视化 224
7.1 绘图的基本知识 224
7.1.1 离散数据和离散函数的
可视化 224
7.1.2 连续函数的可视化 225
7.1.3 可视化的一般步骤 226
7.2 二维图形 226
7.2.1 基本绘图函数 227
7.2.2 曲线的色彩、线型和数据
点型 229
7.2.3 坐标、刻度和网格控制 231
7.2.4 图形标识 233
7.2.5 双坐标图和子图 236
7.2.6 双轴对数图形 238
7.2.7 特殊二维图形 238
7.3 三维图形 245
7.3.1 绘制三维曲线图 246
7.3.2 绘制三维曲面图 246
7.3.3 特殊三维图形 248
7.4 三维图形的高级控制 250
7.4.1 视点控制 251
7.4.2 颜色的使用 251
7.4.3 光照控制 252
第8章 图像处理 253
8.1 图像文件的操作 253
8.1.1 查询图像文件的信息 254
8.1.2 图像文件的读写 255
8.1.3 图像文件的显示 256
8.1.4 图像格式的转换 257
8.2 图像的几何运算 259
8.2.1 图像的平移 259
8.2.2 图像的镜像变换 259
8.2.3 图像的缩放 260
8.2.4 图像的旋转 261
8.2.5 图像的剪切 262
8.3 图像的正交变换 262
8.3.1 傅里叶变换 262
8.3.2 离散余弦变换 263
8.3.3 Radon变换 265
8.4 MATLAB图像增强 266
8.4.1 像素值及其统计特性 266
8.4.2 对比度增强 268
8.4.3 直方图均衡化 270
8.4.4 空域滤波增强 271
8.4.5 频域增强 273
第9章 图形用户界面设计 275
9.1 句柄图形对象 275
9.1.1 图形对象 275
9.1.2 图形对象句柄 276
9.1.3 图形对象属性的获取和
设置 277
9.2 GUIDE简介 280
9.2.1 启动GUI 281
9.2.2 Layout编辑器 281
9.2.3 运行GUI 282
9.3 创建GUI 282
9.3.1 GUI的布局 282
9.3.2 菜单的创建 283
9.3.3 控件 287
9.4 回调函数 291
9.4.1 变量的传递 291
9.4.2 函数编写 292
9.5 GUI设计示例 294
第 10章 数据文件I/O 301
10.1 处理文件名称 301
10.2 MATLAB支持的文件格式 302
10.3 导入向导的使用 303
10.4 MAT文件的读写 304
10.4.1 MAT文件的写入 304
10.4.2 MAT文件的读取 306
10.5 Text文件的读写 306
10.5.1 Text文件的读取 307
10.5.2 Text文件的写入 309
10.6 Excel文件的读写 310
10.7 音频/视频文件操作 312
10.7.1 获取音频/视频文件的
文件头信息 312
10.7.2 音频/视频文件的导入与
导出 312
第 11章 MATLAB优化问题应用 314
11.1 MATLAB优化工具箱 314
11.1.1 MATLAB求解器 314
11.1.2 极小值优化 315
11.1.3 多目标优化 322
11.1.4 方程组求解 323
11.1.5 最小二乘及数据拟合 324
11.2 模式搜索法 325
11.3 模拟退火算法 327
11.3.1 模拟退火算法简介 327
11.3.2 模拟退火算法的应用 327
11.3.3 关于计算结果的说明 329
11.4 遗传算法 329
11.4.1 遗传算法简介 329
11.4.2 遗传算法的应用 331
11.5 Optimization Tool简介 333
第 12章 信号处理 336
12.1 信号处理基本理论 336
12.1.1 信号的生成 336
12.1.2 数字滤波器结构 340
12.2 IIR滤波器的MATLAB实现 342
12.2.1 IIR滤波器经典设计 342
12.2.2 IIR滤波器直接设计法 349
12.2.3 广义巴特沃思IIR滤波器
设计 350
12.3 FIR滤波器的MATLAB实现 351
12.3.1 FIR滤波器设计 352
12.3.2 fir1函数 352
12.3.3 fir2函数 354
第 13章 Simulink仿真 355
13.1 Simulink简介 355
13.1.1 Simulink功能与特点 355
13.1.2 Simulink的安装与启动 356
13.2 Simulink基础 358
13.2.1 Simulink模型的含义 358
13.2.2 Simulink模块操作 358
13.2.3 Simulink信号线操作 362
13.2.4 Simulink对模型的注释 363
13.2.5 Simulink中常用的
模型库 363
13.2.6 Simulink仿真配置 366
13.3 Simulink动态系统仿真 370
13.3.1 简单系统的仿真分析 370
13.3.2 离散系统的仿真分析 372
13.3.3 连续系统的仿真分析 374
13.4 Simulink模型中的子系统 377
13.4.1 子系统的建立 377
13.4.2 子系统的封装 378
13.5 Simulink中的S函数 383
13.5.1 S函数 383
13.5.2 S函数的作用和原理 383
13.5.3 用M文件创建S函数 384
第 14章 应用程序接口 387
14.1 MATLAB应用程序接口介绍 387
14.2 MATLAB调用C/C++ 388
14.2.1 MATLAB MEX文件 388
14.2.2 C/C++ MEX文件的使用 391
14.3 在C/C++中调用MATLAB
引擎 397
14.3.1 MATLAB计算引擎概述 397
14.3.2 MATLAB计算引擎库
函数 397
14.3.3 在C/C++中调用MATLAB
引擎的示例 399
14.4 MATLAB编译器 404
14.4.1 MATLAB编译器的安装和
设置 405
14.4.2 MATLAB编译器的使用 405
14.4.3 独立应用程序 407
第 15章 MATLAB基础计算技巧 416
15.1 MATLAB数组创建与重构技巧 416
15.2 MATLAB数据类型使用技巧 422
15.3 MATLAB数值计算技巧 424
15.4 MATLAB文件读取操作技巧 426
15.5 MATLAB绘图技巧 427
第 16章 MATLAB编程技巧 430
16.1 MATLAB编程风格 430
16.1.1 命名规则 430
16.1.2 文件与程序结构 432
16.1.3 基本语句 433
16.1.4 排版、注释与文档 436
16.2 MATLAB编程注意事项 439
16.3 内存的使用 440
16.4 提高MATLAB运行效率 441
16.4.1 提高运行效率的基本
原则 441
16.4.2 提高运行效率的示例 443
第 17章 MATLAB在数学建模中的
应用 446
17.1 MATLAB蒙特卡罗模拟 446
17.1.1 蒙特卡罗方法简介 446
17.1.2 蒙特卡罗方法编程示例 447
17.2 MATLAB灰色系统的理论与
应用 448
17.2.1 GM(1,1)预测模型简介 449
17.2.2 灰色预测计算示例 450
17.3 MATLAB模糊聚类分析 452
17.3.1 模糊聚类分析简介 452
17.3.2 模糊聚类分析应用示例 453
17.4 MATLAB层次分析法的应用 457
17.4.1 层次分析法简介 457
17.4.2 层次分析法的应用 460