《CAX工程應用叢書:Matlab R2016a從入門到精通》是針對MATLAB R2016a(V9.0)*新版本進行編寫的。書中講述的內容是使用MATLAB進行科學研究、係統仿真、數據分析與處理的必備知識。通過全麵學習本書,讀者可以獲得使用MATLAB進行數學計算、數據分析及處理的相關技能,並能快速掌握使用MATLAB進行工作的基本方法。
全書可分為5篇,共20章:基礎知識部分包括MATLAB概述、MATLAB基礎、數據輸入輸齣基礎、編程基礎和可視化基礎;數學基礎部分包括數組與矩陣操作、數學函數運算和符號數學計算;數據分析部分包括多項式分析、數值運算、優化和概率統計;拓展知識部分包括句柄圖形、GUI編程、Simulink基礎、編譯器和應用程序接口;MATLAB應用部分包括信號處理應用、圖像處理應用、小波分析應用和偏微分方程應用等內容。
本書結構嚴謹、重點突齣、條理清晰,既可以作為大中專院校相關專業以及社會有關培訓班的教材,也適閤廣大MATLAB讀者自學使用。
溫欣研,北京航空航天大學博士後,現就職於航天五院,精通Matlab、ANSYS、Fluent等工程仿真計算軟件。在國內外期刊發錶論文多篇,其中被被EI檢索3篇。研究生期間獲光華奬學金及優秀研究生等榮譽;博士創新基金;所負責項目獲申請專利兩項,北航科學技術二等奬以及國防科學技術成果三等奬等。曾主持編著《FLUENT流體計算應用教程》等計算機圖書。
第一篇 基礎知識
第1章 MATLAB概述 3
1.1 工作環境 3
1.1.1 係統組成 3
1.1.2 工作窗口 4
1.1.3 應用簡介 8
1.2 文件管理 9
1.2.1 目錄結構 9
1.2.2 當前文件夾瀏覽器 10
1.2.3 路徑搜索 10
1.3 幫助係統 12
1.3.1 文本幫助 12
1.3.2 演示幫助 13
1.3.3 幫助導航窗口 14
1.4 MATLAB使用初步 16
1.5 本章小結 16
第2章 MATLAB基礎 17
2.1 數據類型 17
2.1.1 數值類型 17
2.1.2 字符與字符串 22
2.1.3 結構 23
2.1.4 單元數組 25
2.1.5 函數句柄 27
2.1.6 映射容器 28
2.1.7 數據類型識彆與轉換 32
2.2 運算符與運算 33
2.2.1 算術運算符 33
2.2.2 關係運算符 34
2.2.3 邏輯運算符 35
2.2.4 運算優先級 36
2.3 字符串處理 36
2.3.1 字符串構造 36
2.3.2 字符串比較 37
2.3.3 查找與替換 38
2.3.4 字符串類型轉換 38
2.4 矩陣基礎 39
2.4.1 有關概念 39
2.4.2 創建矩陣 39
2.4.3 改變矩陣結構 41
2.4.4 矩陣下標 42
2.4.5 矩陣信息 44
2.5 本章小結 47
第3章 數據輸入輸齣基礎 48
3.1 打開與關閉文件 48
3.1.1 打開文件 48
3.1.2 關閉文件 50
3.2 讀寫二進製文件 51
3.2.1 寫二進製文件 51
3.2.2 讀二進製文件 51
3.3 讀寫文本文件 53
3.3.1 寫文本文件 53
3.3.2 讀文本文件 54
3.4 讀寫位置控製 55
3.5 導入數據 56
3.5.1 嚮導導入數據 56
3.5.2 命令導入數據 57
3.6 本章小結 58
第4章 編程基礎 59
4.1 變量與語句 59
4.1.1 變量命名 59
4.1.2 變量類型 60
4.1.3 特殊變量 60
4.1.4 關鍵字 61
4.1.5 語句構成 61
4.2 程序控製 62
4.2.1 順序結構 62
4.2.2 分支結構 62
4.2.3 循環結構 66
4.2.4 其他常用控製命令 68
4.3 M文件與腳本 70
4.3.1 M文件 70
4.3.2 腳本 71
4.4 函數 72
4.4.1 M文件函數 72
4.4.2 匿名函數 74
4.4.3 子函數 74
4.4.4 私有函數 75
4.4.5 重載函數 75
4.4.6 內聯函數 75
4.4.7 eval、feval函數 76
4.4.8 函數的函數 77
4.4.9 內嵌函數 78
4.4.10 函數編寫建議 78
4.5 M文件變量檢測 78
4.5.1 輸入輸齣變量檢測 78
4.5.2 可變數量輸入輸齣 79
4.6 程序調試 80
4.6.1 直接調試 80
4.6.2 工具調試 80
4.7 本章小結 81
第5章 可視化基礎 82
5.1 圖形繪製對象 82
5.2 二維圖形 82
5.2.1 plot命令 82
5.2.2 圖形疊繪 87
5.2.3 子圖繪製 87
5.2.4 交互繪圖 89
5.2.5 雙縱坐標圖 90
5.2.6 特殊坐標繪圖 91
5.2.7 函數繪圖 93
5.3 三維圖形 95
5.3.1 麯綫圖 95
5.3.2 網格圖 96
5.3.3 麯麵圖 97
5.4 四維圖形 98
5.4.1 第四維錶達 99
5.4.2 四維圖繪製 99
5.5 特殊圖形 100
5.5.1 餅狀圖 101
5.5.2 直方圖 102
5.5.3 柱形圖 102
5.5.4 離散數據點圖 104
5.5.5 散點圖 105
5.5.6 嚮量圖 106
5.5.7 等值綫圖 107
5.6 圖形處理 108
5.6.1 圖形輸齣 108
5.6.2 圖形細化 109
5.6.3 坐標軸控製 114
5.6.4 視角與透視 115
5.7 繪圖窗口 117
5.7.1 創建繪圖窗口 117
5.7.2 繪圖窗口工具欄 117
5.8 本章小結 118
第二篇 數學基礎
第6章 數組與矩陣操作 120
6.1 數組運算 120
6.1.1 創建與訪問數組 120
6.1.2 數組運算 123
6.2 矩陣操作 127
6.2.1 創建矩陣 127
6.2.2 改變矩陣結構 132
6.3 矩陣元素運算 134
6.3.1 矩陣四則運算 134
6.3.2 矩陣元素冪運算 137
6.3.3 矩陣元素查找與排序 137
6.3.4 矩陣元素求和、求積與求差分 139
6.4 矩陣運算 141
6.4.1 矩陣分析 141
6.4.2 矩陣分解 145
6.4.3 特徵值與特徵嚮量 148
6.4.4 矩陣函數運算 149
6.5 稀疏矩陣 151
6.5.1 稀疏矩陣存儲方式 151
6.5.2 創建稀疏矩陣 152
6.5.3 稀疏矩陣運算 153
6.6 本章小結 153
第7章 數學函數運算 154
7.1 初等函數運算 154
7.1.1 三角函數 154
7.1.2 指數與對數函數 156
7.1.3 復數函數 157
7.1.4 截斷和求餘函數 158
7.1.5 離散數學函數 159
7.1.6 基本數據分析函數 160
7.1.7 多項式函數 162
7.2 特殊函數運算 163
7.2.1 特殊函數 163
7.2.2 坐標變換函數 164
7.3 本章小結 165
第8章 符號計算 166
8.1 符號計算概述 166
8.2 符號變量與錶達式 167
8.2.1 符號對象 168
8.2.2 符號計算運算符與函數 170
8.2.3 符號對象識彆 174
8.2.4 符號變量 175
8.2.5 符號錶達式顯示 176
8.2.6 錶達式項操作 176
8.2.7 符號數值和精度 181
8.3 符號函數 182
8.3.1 復閤函數操作 182
8.3.2 反函數運算 183
8.4 符號微積分 183
8.4.1 符號錶達式的極限 183
8.4.2 符號錶達式的導數 184
8.4.3 符號錶達式的積分 185
8.4.4 符號錶達式的級數求和積 186
8.4.5 符號錶達式的泰勒級數 187
8.5 符號積分變換 188
8.5.1 Fourier變換 188
8.5.2 Laplace變換 189
8.5.3 Z變換 189
8.6 符號矩陣計算 190
8.6.1 算術運算 190
8.6.2 綫性代數運算 191
8.6.3 特徵值分解 191
8.7 符號方程求解 192
8.7.1 代數方程求解 192
8.7.2 微分方程求解 195
8.8 符號計算界麵 196
8.8.1 funtool分析界麵 196
8.8.2 taylortool分析界麵 198
8.9 本章小結 199
第三篇 數據分析
第9章 多項式分析 201
9.1 多項式及函數 201
9.1.1 多項式及其函數 201
9.1.2 多項式計算 201
9.1.3 多項式方程求根 202
9.1.4 多項式四則運算 202
9.1.5 多項式微積分 204
9.1.6 有理多項式展開 205
9.2 極限 206
9.3 本章小結 206
第10章 數值運算 207
10.1 解綫性方程組 207
10.1.1 綫性法 207
10.1.2 迭代法 209
10.2 插值與擬閤 210
10.2.1 插值 210
10.2.2 麯綫擬閤 216
10.3 數值微積分 217
10.3.1 一元數值積分 218
10.3.2 多重數值積分 219
10.3.3 數值微分 220
10.4 常微分方程 221
10.5 本章小結 222
第11章 優化 223
11.1 優化問題求解過程 223
11.1.1 選擇求解器 223
11.1.2 設置變量 224
11.1.3 寫目標函數 224
11.1.4 寫約束條件 226
11.1.5 設置求解器參數 226
11.1.6 求解並檢查結果 228
11.1.7 改善優化結果 228
11.2 綫性規劃 228
11.3 二進製整數規劃 231
11.4 二次規劃 232
11.5 非綫性規劃 233
11.5.1 無約束優化 233
11.5.2 約束優化 236
11.6 多目標規劃 239
11.6.1 多目標規劃 239
11.6.2 最大最小化問題 240
11.7 最小二乘問題 242
11.7.1 綫性最小二乘問題 242
11.7.2 非綫性最小二乘問題 244
11.8 GUI工具 245
11.9 本章小結 246
第12章 概率統計 247
12.1 統計量操作 247
12.1.1 産生隨機數 247
12.1.2 抽樣 251
12.2 數據統計分析 252
12.2.1 特徵統計量 252
12.2.2 統計圖錶 255
12.3 概率分布與計算 261
12.3.1 概率密度計算 261
12.3.2 概率分布計算 263
12.4 本章小結 266
第四篇 拓展知識
第13章 句柄圖形 268
13.1 句柄圖形對象係統 268
13.1.1 句柄圖形對象組織 268
13.1.2 句柄圖形對象簡介 269
13.2 句柄圖形對象操作 269
13.2.1 創建與保存 270
13.2.2 訪問、復製和刪除 271
13.2.3 圖形輸齣控製 273
13.3 屬性設置 278
13.3.1 通用對象屬性 278
13.3.2 屬性設置函數 279
13.3.3 默認屬性設置 280
13.4 Figure對象 282
13.4.1 Figure對象簡介 282
13.4.2 Figure對象操作 283
13.5 Axes對象 284
13.5.1 Axes對象簡介 284
13.5.2 Axes對象操作 284
13.6 Core對象 291
13.7 Plot對象 293
13.7.1 創建Plot對象 293
13.7.2 連接變量 294
13.8 Group對象 294
13.8.1 創建Group對象 295
13.8.2 對象變換 295
13.9 Annotation對象 296
13.10 本章小結 297
第14章 GUI編程 298
14.1 GUI基礎 298
14.1.1 GUI介紹 298
14.1.2 創建GUI 299
14.1.3 迴調函數 302
14.2 GUI控件 303
14.2.1 GUI控件類型 303
14.2.2 創建GUI控件 304
14.3 GUI菜單和工具欄 306
14.3.1 GUI菜單 307
14.3.2 GUI工具欄 309
14.4 對話框 310
14.4.1 創建函數 310
14.4.2 創建方法 311
14.5 布局 314
14.5.1 布局函數 314
14.5.2 布局方式 314
14.6 GUI行為控製編程 318
14.6.1 迴調與中斷 319
14.6.2 數據管理 320
14.7 GUI實例 321
14.8 本章小結 326
第15章 Simulink基礎 327
15.1 概述 327
15.1.1 基本概念 327
15.1.2 工作環境 328
15.1.3 Simulink數據類型 331
15.1.4 模塊和模塊庫 331
15.1.5 Simulink常用工具 336
15.2 Simulink模型 337
15.2.1 模塊基本操作 337
15.2.2 設置輸齣提示 341
15.2.3 模型和模型文件 342
15.2.4 保存係統模型 345
15.2.5 打印模型框圖及生成報告 346
15.3 子係統 349
15.3.1 子係統介紹 350
15.3.2 高級子係統技術 351
15.4 運行仿真 362
15.4.1 啓動仿真過程 362
15.4.2 仿真過程診斷 363
15.4.3 仿真配置 363
15.4.4 仿真的設置 365
15.5 調試 369
15.5.1 模型調試 369
15.5.2 調試器控製 372
15.5.3 設置斷點 376
15.6 S函數 379
15.6.1 S-函數概述 379
15.6.2 M文件S-函數 382
15.7 本章小結 385
第16章 MATLAB編譯器與接口 386
16.1 編譯器安裝與配置 386
16.1.1 編譯器介紹與安裝 386
16.1.2 編譯器配置 387
16.2 編譯過程 387
16.2.1 MCR安裝 387
16.2.2 MCR編譯過程 388
16.3 編譯生成獨立程序 388
16.3.1 編譯命令mcc 388
16.3.2 編譯獨立程序 389
16.4 接口概述 392
16.4.1 MEX文件 393
16.4.2 MAT文件介紹 393
16.4.3 計算引擎 393
16.5 基於C/C++的MEX文件 393
16.5.1 MEX文件結構 394
16.5.2 創建C/C++MEX文件 395
16.5.3 調試C/C++MEX文件 399
16.6 本章小結 400
第五篇 MATLAB應用
第17章 信號處理應用 402
第18章 圖像處理應用 447
第19章 小波分析應用 488
第20章 偏微分方程應用 509
第18章 圖像處理應用
MATLAB在圖像處理方麵的應用較為成熟,其為圖像處理提供瞭豐富的函數。本章將以函數為重點介紹對象,介紹MATLAB圖像處理應用方麵的內容,具體包括圖像處理基礎、圖像顯示、圖像運算、圖像變換、圖像分析、區域處理和顔色處理等。
? 圖像處理基礎
? 圖像顯示
? 圖像運算
? 圖像變換
? 圖像分析
? 圖像增強
? 區域處理
? 顔色處理
18.1 圖像處理基礎
圖像在MATLAB中以數組的形式進行存儲,這使得MATLAB可以方便地使用數學函數對圖像進行處理。下麵介紹圖像處理基礎內容,包括圖像在MATLAB中的錶達、圖像類型、圖像文件和圖像數據讀寫等。
18.1.1 圖像錶達
在MATLAB中,圖像可以以像素索引和空間位置兩種方式進行錶達。
(1)像素索引
使用像素索引時,圖像被視為離散單元,按照空間順序從上往下、從左往右排列,如圖18.1所示。使用像素索引時,像素值與索引有一一對應的關係。例如,位於第2行第2列的像素值存儲在矩陣元素(2,2)中。
(2)空間位置
空間位置圖像錶達方式將圖像與空間位置聯係起來,使用空間位置連續值取代像素索引離散值進行錶示,如圖18.2所示;例如,包含1024列768行的圖像,使用默認的空間位置錶示為:X嚮數據存儲位置為[1,1024],Y嚮數據存儲位置為[1,768];並且,由於數據存儲位置為坐標範圍的中點位置,所使用的位置範圍分彆為[0.5,1024.5]和[0.5,768.5]。
圖18.1 像素索引 圖18.2 空間位置
與像素索引不同,空間位置的存儲方式可以將空間方位逆轉,比如將X嚮數據存儲位置定義為[1024,1]。還可使用非默認的空間位置進行錶示。
例18-1,空間位置存儲的MAGIC圖像示例。
在命令行窗口輸入:
A= magic(6);
X = [19.5 24.5]; X1 = [24.5 19.5];
y = [8.0 13.0]; y1 = [13.0 8.0];
subplot(121);
image(A,'XData',X,'YData',y), axis image, colormap(gray)%正嚮灰度圖,見圖18.3左圖
subplot(122);
image(A,'XData',X1,'YData',y1), axis image, colormap(gray) %逆嚮灰度圖,見圖18.3右圖
輸齣圖形如圖18.3所示。
圖18.3 使用空間位置存儲的MAGIC圖像示例
18.1.2 圖像類型與文件
本小節介紹圖像類型和文件有關的內容,包括圖像類型、類型轉換和文件格式等。
1.圖像類型
MATLAB 中圖像類型分為4類:二進製圖、灰度圖、索引圖(僞彩色)和RGB圖(真彩色)。下麵具體介紹這4類圖像類型。
(1)二進製圖
在二進製圖中,像素的取值為兩個離散數值0或1中的一個,分彆代錶黑與白。如圖18.4所示為一幅典型的二進製圖像。
(2)灰度圖
灰度圖通常由unit8、unit16、單精度類型或雙精度類型的數組描述,其實質是數據矩陣,該矩陣中的數據均代錶瞭一定範圍內的灰度級,每個元素與圖像的一個像素點相對應,通常0 代錶黑色,1、255 或65635(為數據矩陣的取值範圍上限)代錶白色。灰度圖帶有像素值矩陣,但一般情況下,灰度圖像不與顔色映射錶一起保存。如圖18.5所示為一個典型的雙精度灰度圖及其像素值矩陣。
圖18.4 二進製圖的像素值圖 18.5 灰度圖及其像素值矩陣
……
前 言
MATLAB R2016a(V9.0)為數據分析與處理提供瞭強大的工具。目前,MATLAB已經在很多領域取得瞭成功應用。
MATLAB具有的科學計算、仿真和基於模型的設計功能使其在嵌入式係統、控製係統、數字信號處理、通信係統、圖像和視頻處理、FPGA設計、機電係統設計、測試與測量、計算生物學和計算金融學等領域取得瞭巨大的成功,並在航空和國防、汽車、生物技術和醫藥、通信、電子和半導體、能源生産、金融服務、工業自動化和機械等行業中得到廣泛應用。
由於在各個行業中,MATLAB體現的技術優勢越來越明顯,而且在中國已有大量的工程師將MALTAB作為設計分析軟件,因此學習MATLAB顯得十分必要。
1. 本書特色
本書由從事多年MATLAB工作和實踐的一綫從業人員編寫,在編寫的過程中,不隻注重應用技巧的介紹,還重點講解瞭MATLAB和工程實際的關係。本書主要有以下幾個特色。
本書通過簡明易懂的算例展示瞭MATLAB強大的數學功能和無與倫比的解釋語言編程能力,全書基礎和實例詳解並重,重點講解對使用MATLAB至關重要的編程及數學運算功能。
本書內容編排上注意難易結閤,詳細介紹MATLAB各功能的使用方法和技巧,不僅使讀者快速入門,還能全麵瞭解MATLAB軟件,提高工作效率。通過對各章算例的學習,讀者可以從各個方麵瞭解MATLAB進行數學處理的方法論,有助於讀者理順思路,在解決實際問題時正確地建立模型。
本書詳細介紹瞭MATLAB的操作方法,讀者可以很輕鬆地按照書中的指示逐步完成,同時在編寫過程中用醒目的提示指齣瞭讀者容易遇到的睏擾和錯誤操作。
本書通過綫下綫上結閤的方式,既提供紙質版本的書籍資料,也提供郵箱溝通渠道;使讀者可以方便快捷地獲得MATLAB使用指導,提高在使用MATLAB過程中解決問題的效率。
2. 主要內容
本書分為5篇,共20章,包括基礎知識、數學基礎、數據分析、拓展知識、MATLAB應用5篇內容。章節內容安排如下:
第一篇 基礎知識。主要介紹MATLAB使用和編程方麵的基礎知識,旨在為讀者學習MATLAB提供入門引導,盡快熟悉MATLAB軟件及編程使用規則。
第二篇 數學基礎。介紹基本數學計算在MATLAB中的實現,旨在建立MATLAB進行數學計算的基本概念,使讀者能夠進行基本的工程、科研數學計算。
第三篇 數據分析。介紹使用MATLAB進行數據分析相關操作的實現方法,旨在為讀者介紹使用MATLAB進行簡單的數據分析操作入門,使讀者能夠將數學工具應用到常見的場景中。
第四篇 拓展知識。介紹使用MATLAB進行復雜的數據分析處理與編程所需的拓展知識,旨在為讀者介紹使用MATLAB進行復雜編程的基礎知識,將MATLAB的優勢充分發揮。
第五篇 MATLAB應用。主要介紹使用MATLAB實現特定領域應用的操作方法,旨在為讀者演示通過使用MATLAB進行各專業計算,為讀者將MATLAB引入專業計算中進行示範。
3. 讀者對象
本書適用於MATLAB的初中級讀者和從事科研工作的技術人員,具體說明如下:
相關從業人員 ● 初學MATLAB的技術人員
大中專院校的教師和在校生 ● 相關培訓機構的教師和學員
廣大科研工作人員 ● MATLAB愛好者
金融行業從業人員 ● 財務從業人員
4. 本書作者
本書主要由溫欣研編寫,溫正、唐傢鵬、孫國強、喬建軍、焦楠、高飛、張迪妮、韓希強、張文電、張明明、張亮亮、劉成柱、郭海霞、於滄海、李戰芬、餘勝威等也參與瞭本書的編寫工作。
5. 技術支持
MATLAB本身是一個龐大的資源庫與知識庫,本書雖然捲帙浩繁,仍難窺其全貌,加之編者水平有限、時間倉促,書中錯誤與缺點在所難免,敬請廣大讀者批評指正,也歡迎廣大同行來電、來信,共同交流探討。
讀者朋友在學習過程中遇到與本書有關的技術問題,可以發送郵件到comshu@126.com,編者會盡快給予解答,我們將竭誠為您服務。
素材文件可到網站https://pan.baidu.com/s/1kVHhUQF(請注意區分英文字母大小寫)下載,如果下載有問題,請發送電子郵件,郵件主題為“MATLAB R2016a從入門到精通”。
編者
2016年10月
nice
評分非常有用的書,京東速貨快
評分希望學到很多編程之類的東西,本身是感興趣的
評分圖書很好,質量也很棒,而且發貨速度非常快,剛好趕在開學季打摺,價格很劃算
評分您的操作太快啦
評分好書,喜歡,期待馬上的學習。隻不過送的時間久瞭一點。
評分好
評分方便快捷!
評分可以可以可以可以可以可以
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版權所有