本書由淺入深地全面講解了MATLAB軟件的基礎知識及MATLAB的相關應用。全書以MATLAB 2014a版本的基本功能敘述為主,內容涉及面廣,涵蓋了一般用戶需要使用的各種功能。本書按邏輯結構編排,自始至終采用實例描述,內容編排上循序漸進;每章內容完整并相對獨立,且相輔相成,是一本簡明的MATLAB參考書。 本書共分為16個章節,內容包括MATLAB概述、數值計算、結構體和單元數組、字符串、MATLAB程序設計、M文件、數據分析、繪制二維圖形、繪制三維圖形、MATLAB在信號與系統中的應用、MATLAB在數字信號處理中的應用、參數建模、MATLAB圖形處理工具箱、句柄圖形對象、圖形用戶界面、外部接口操作等,其中重點介紹了數字信號處理工具、圖像處理工具箱的原理及其運用。 本書以實用為目標,敘述深入淺出,采用實例引導,講解詳實,適合作為理工科高等院校本科生、研究生教學用書,也可作為廣大科研工程技術人員的參考用書。
(1) 由淺入深,循序漸進:本書以初、中級讀者為對象,首先從MATLAB的基礎講起,分別介紹了MATLAB的基本特點、數據矩陣、字符串操作、程序設計等內容,接著更深層次地講解MATLAB的相關應用,讓讀者在MATLAB的使用方面有一定的提高。
(2) 步驟詳盡、內容新穎:本書結合編者多年MATLAB使用經驗與實際工程應用案例,將MATLAB軟件的使用方法與技巧詳細講解給讀者。應用新的MATLAB版本,講解內容全面詳細,使讀者在閱讀時耳目一新。
(3) 實例典型,簡單易學:本書講解的例子參考了MATLAB幫助內容中的例子,每個例子經過精心設計,有針對性,讀者學習起來比較容易,能夠很好地接受。
免費提供教學素材及程序代碼素材
第1章 MATLAB概述 1
1.1 MATLAB簡介 1
1.1.1 什么是MATLAB 1
1.1.2 MATLAB的特點 2
1.1.3 MATLAB系統 5
1.2 MATLAB的安裝和卸載 6
1.3 MATLAB用戶操作 8
1.3.1 命令窗口 8
1.3.2 M文件 10
1.3.3 幫助窗口 12
1.3.4 工作窗口 12
1.3.5 圖形窗口 13
1.3.6 搜索路徑 13
1.4 查詢幫助命令 14
1.4.1 help命令 14
1.4.2 lookfor函數的使用 15
1.4.3 模糊尋找 16
1.5 本章小結 16
第2章 數值計算 17
2.1 數組運算 17
2.1.1 數組的創建與操作 17
2.1.2 數組運算 21
2.2 矩陣及其操作 26
2.2.1 矩陣的創建 26
2.2.2 矩陣的擴展 36
2.2.3 矩陣的重構 39
2.3 MATLAB矩陣元素的運算 40
2.3.1 矩陣加減運算 40
2.3.2 矩陣乘運算 41
2.3.3 矩陣除運算 41
2.3.4 矩陣冪運算 42
2.3.5 矩陣元素的查找 43
2.3.6 矩陣元素的排序 45
2.3.7 矩陣元素的求和 46
2.3.8 矩陣元素的求積 46
2.3.9 矩陣元素的差分 48
2.4 矩陣分析 49
2.4.1 向量和矩陣的范數 49
2.4.2 矩陣的秩 50
2.4.3 矩陣的行列式 50
2.4.4 矩陣的跡 51
2.4.5 矩陣的化零矩陣 51
2.4.6 矩陣的求逆 52
2.4.7 矩陣的分解 53
2.4.8 矩陣特征值和特征向量 57
2.4.9 矩陣的超越函數 58
2.5 稀疏矩陣 61
2.5.1 稀疏矩陣的存儲方式 61
2.5.2 稀疏矩陣的生成 61
2.5.3 稀疏矩陣的運算 68
2.6 本章小結 70
第3章 結構體和單元數組 71
3.1 結構體 71
3.1.1 結構體的創建 71
3.1.2 獲取結構體內部數據 74
3.1.3 結構體操作函數 75
3.1.4 結構體嵌套 76
3.1.5 結構體函數 77
3.2 單元數組 78
3.2.1 單元數組的創建 78
3.2.2 單元數組的顯示 80
3.2.3 單元數組的圖形顯示 80
3.2.4 單元數組的訪問 81
3.2.5 單元數組的刪除和重新定義 82
3.2.6 單元數組的操作函數 83
3.3 本章小結 84
第4章 字符串 85
4.1 創建字符串 85
4.1.1 創建單行字符串 85
4.1.2 創建多行字符串 86
4.2 字符串操作 87
4.2.1 字符串的比較 87
4.2.2 字符串的替換和查找 89
4.2.3 其他操作 90
4.3 字符數組與數值數組間的相互轉換 92
4.4 本章小結 94
第5章 MATLAB程序設計 95
5.1 MATLAB分支控制語句 95
5.1.1 順序結構 95
5.1.2 if-else-end分支結構 96
5.1.3 switch-case和otherwise 99
5.1.4 for循環結構 100
5.1.5 while循環結構 103
5.2 交互式程序控制命令 104
5.2.1 input和disp命令 104
5.2.2 pause命令 106
5.2.3 continue命令 106
5.2.4 break命令 106
5.2.5 echo命令 108
5.3 程序終止的return語句 108
5.4 錯誤控制的try-catch結構 109
5.5 本章小結 110
第6章 M文件 111
6.1 變量 111
6.1.1 變量的命名 111
6.1.2 變量的類型 111
6.1.3 MATLAB默認的特殊變量 113
6.1.4 流程控制變量 113
6.2 M文件和MATLAB編程概述 114
6.2.1 M文件概述 114
6.2.2 MATLAB的工作模式 117
6.3 M文件結構實例 118
6.3.1 M文件的一般結構 118
6.3.2 腳本文件實例 119
6.3.3 函數文件實例 119
6.4 函數類型 123
6.4.1 匿名函數 123
6.4.2 M文件主函數 124
6.4.3 子函數 124
6.4.4 嵌套函數 125
6.4.5 私有函數 125
6.4.6 重載函數 125
6.5 本章小結 125
第7章 數據分析 127
7.1 數據插值 127
7.1.1 一維插值 127
7.1.2 二維插值 128
7.2 曲線擬合 129
7.3 函數極限 131
7.4 函數求導 131
7.5 數值積分 132
7.5.1 一元函數的數值積分 132
7.5.2 多重數值積分 134
7.6 本章小結 135
第8章 繪制二維圖形 137
8.1 MATLAB圖形窗口概述 137
8.2 二維繪圖 139
8.2.1 基本繪圖流程 139
8.2.2 plot命令 139
8.2.3 設置曲線格式和標記點格式 141
8.2.4 子圖繪制 142
8.2.5 疊加繪制 143
8.2.6 坐標軸設置 144
8.2.7 對數坐標系繪圖 146
8.2.8 繪制雙縱坐標曲線圖 147
8.2.9 極坐標繪圖 147
8.3 二維特殊繪圖 148
8.3.1 條形圖和面域圖 148
8.3.2 餅形圖 150
8.3.3 直方圖 151
8.3.4 等高線圖 151
8.3.5 向量圖 152
8.3.6 網格圖繪制 153
8.3.7 曲面圖繪制 155
8.3.8 其他特殊繪圖指令 156
8.3.9 函數繪制 158
8.4 本章小結 159
第9章 繪制三維圖形 161
9.1 創建三維圖形 161
9.1.1 三維圖形概述 161
9.1.2 三維曲線圖 162
9.1.3 三維曲面圖 164
9.2 特殊的三維圖形 167
9.2.1 三維柱狀圖示例 167
9.2.2 散點圖 168
9.2.3 火柴桿圖 169
9.2.4 等高線圖 170
9.2.5 瀑布圖 171
9.2.6 簡易繪圖函數 171
9.3 顯示與控制三維圖形 173
9.3.1 顏色控制 173
9.3.2 坐標控制 175
9.3.3 視角控制 176
9.4 繪制動畫圖形 177
9.5 四維圖形可視化 180
9.5.1 用顏色描述第四維 180
9.5.2 其他函數 182
9.6 本章小結 183
第10章 信號與系統應用 185
10.1 MATLAB信號處理基礎介紹 185
10.1.1 連續時間系統的時域信號處理 185
10.1.2 離散時間系統及其實現 189
10.1.3 離散時間信號的基本運算 201
10.2 MATLAB信號積分變換 211
10.2.1 傅里葉變換及其反變換 211
10.2.2 Z變換定義與性質 220
10.2.3 離散余弦變換 221
10.3 MATLAB統計信號處理 223
10.3.1 相關性 223
10.3.2 重新采樣 224
10.3.3 窗函數 230
10.3.4 功率譜估計 233
10.3.5 現代譜分析 241
10.3.6 時頻分析 244
10.3.7 特殊變換方法 245
10.4 本章小結 249
第11章 數字信號處理 251
11.1 IIR濾波器的設計 251
11.1.1 IIR濾波器優勢 251
11.1.2 IIR濾波器設計過程 251
11.1.3 經典法IIR濾波器設計 252
11.1.4 雙線性變換法IIR濾波器設計 271
11.2 FIR濾波器設計 275
11.2.1 窗函數FIR濾波器設計 276
11.2.2 最小二乘法FIR濾波器設計 291
11.2.3 其他設計方法 293
11.3 本章小結 299
第12章 參數建模 301
12.1 時域建模 301
12.1.1 AR模型 301
12.1.2 MA模型 306
12.1.3 ARMA模型 309
12.2 頻域建模 315
12.2.1 非參量類方法 316
12.2.2 參數法 323
12.2.3 Subspace Methods子空間法 326
12.2.4 譜分析綜合應用 327
12.3 信號處理GUI工具 337
12.3.1 信號處理綜合工具 337
12.3.2 波形查看器 338
12.3.3 譜分析查看器 338
12.3.4 濾波可視化工具 339
12.3.5 濾波器設計與分析工具 340
12.3.6 濾波器處理工具 341
12.4 本章小結 343
第13章 圖像處理工具箱 345
13.1 MATLAB圖像處理基礎知識 345
13.1.1 MATLAB圖像表達方式 345
13.1.2 MATLAB支持的圖像文件格式 346
13.1.3 MATLAB圖像的類型 346
13.1.4 MATLAB圖像類型轉換 349
13.1.5 MATLAB圖像數據的讀寫 355
13.2 圖像顯示 357
13.2.1 標準圖像顯示技術 357
13.2.2 特殊圖像顯示技術 360
13.3 圖像運算 363
13.3.1 代數運算 363
13.3.2 幾何運算 365
13.4 圖像數據變換 368
13.4.1 二維傅里葉變換 368
13.4.2 離散余弦變換 369
13.4.3 其他變換 371
13.5 圖像分析 374
13.5.1 像素值及統計 374
13.5.2 灰度圖邊緣檢測 377
13.5.3 四叉樹分解 379
13.6 圖像調整 380
13.6.1 灰度的調整 380
13.6.2 增強圖像色彩 381
13.7 圖像平滑 382
13.7.1 線性濾波 382
13.7.2 中值濾波 383
13.7.3 自適應濾波 383
13.8 圖像區域處理 384
13.8.1 區域濾波 384
13.8.2 區域填充 385
13.8.3 移除小對象 386
13.9 形態學操作 387
13.9.1 圖像膨脹 387
13.9.2 圖像腐蝕 388
13.9.3 形態學重建 388
13.10 本章小結 389
第14章 句柄圖形對象 391
14.1 句柄圖形對象概述 391
14.2 get和set函數 391
14.3 根對象 393
14.4 圖形窗口對象 394
14.5 核心圖形對象 394
14.6 本章小結 400
第15章 圖形用戶界面(GUI) 401
15.1 圖形用戶界面(GUI)簡介 401
15.1.1 GUI程序概述 401
15.1.2 打開GUIDE開發環境 401
15.2 使用GUIDE創建GUI界面 403
15.2.1 設置組件屬性 403
15.2.2 幾何排列工具 403
15.2.3 設計菜單 404
15.2.4 對象瀏覽器 405
15.3 對話框對象 405
15.3.1 公共對話框 406
15.3.2 一般對話框 407
15.4 建立菜單 412
15.5 本章小結 413
第16章 外部接口操作 415
16.1 數據基本操作 415
16.2 底層文件基本I/O操作 416
16.3 文件的讀寫 418
16.3.1 讀寫二進制文件 418
16.3.2 讀寫記事本數據 420
16.3.3 讀寫電子表格數據 421
16.3.4 讀寫聲音文件 424
16.3.5 讀寫視頻文件 425
16.4 本章小結 426