編輯推薦
適讀人群 :本書可作為MATLAB圖像處理工作者的參考用書。 本書從實用角度齣發,詳細介紹MATLAB各種圖像處理函數,包括圖像顯示、繪圖、圖像類型轉換、圖像用戶界麵、空間變換、圖像統計、圖像代數運算、圖像增強、去模糊、濾波變換、形態學操作、塊與鄰域操作、色彩空間變換函數等。
內容簡介
MATLAB圖像處理工具箱是目前*流行的圖像處理工具之一,其函數能有效地實現各種圖像算法。本書從實用角度齣發,詳細介紹MATLAB各種圖像處理函數,包括圖像顯示、繪圖、圖像類型轉換、圖像用戶界麵、空間變換、圖像統計、圖像代數運算、圖像增強、去模糊、濾波變換、形態學操作、塊與鄰域操作、色彩空間變換函數等。為加深讀者對MATLAB圖像處理應用的認識,書中列舉瞭8個MATLAB圖像處理應用綜閤實例。本書寫作結構清晰、解釋翔實、實例豐富。隨書贈送的DVD光盤中附有大量教學視頻,方便讀者學習與提高。本書可作為MATLAB圖像處理工作者的參考用書。
作者簡介
國防科學技術大學博士,大學教師。從事智能算法應用、有限元仿真、慣性器件加工研究工作,參與過多個智能與仿真項目的開發,熟悉各種工程計算、有限元仿真以及圖像處理軟件,精通MATLAB軟件應用,有豐富的教學和開發經驗。
目錄
目 錄
第1章 圖像顯示與圖像文件輸入/輸齣函數 1
1.1 圖像顯示函數 1
1.1.1 immovie―創建視頻結構數組 1
1.1.2 implay―在視頻播放工具中播放視頻 2
1.1.3 imshow―顯示圖像 3
1.1.4 colorbar―顯示顔色條 7
1.1.5 imtool―顯示圖像工具 8
1.1.6 montage―在矩形框中顯示多幀圖像序列 11
1.1.7 subimage―在圖形窗口或窗口的分區中顯示圖像 14
1.1.8 warp―將圖像顯示到紋理映射錶麵 16
1.1.9 image―顯示圖像對象 17
1.1.10 movie―播放視頻 19
1.1.11 line―創建綫條 22
1.2 圖像文件輸入/輸齣函數 25
1.2.1 imwrite―把圖像寫入圖形文件中 25
1.2.2 imread―從圖像文件中讀取圖像 26
1.2.3 analyze75info―從analyze7.5數據集頭文件中讀取信息 30
1.2.4 analyze75read―讀取analyze7.5數據 30
1.2.5 dicomanon―修改DICOM文件 31
1.2.6 dicomdict―獲得DICOM數據目錄 31
1.2.7 dicominfo―從DICOM文件中讀取元數據信息 32
1.2.8 dicomlookup―尋找DICOM文件的屬性 34
1.2.9 dicomread―從DICOM文件中讀取圖像 34
1.2.10 dicomuid―生成DICOM文件標識符 35
1.2.11 dicomwrite―把圖像寫入DICOM文件 36
1.2.12 getframe―獲取動畫幀 37
1.2.13 imfinfo―返迴圖形文件的信息 39
1.2.14 hdrread―讀取HDR圖像 41
1.2.15 hdrwrite―將HDR圖像寫入文件 41
1.2.16 interfileinfo―從Interfile文件中讀取圖像信息 43
1.2.17 interfileread―從Interfile文件中讀取圖像 43
1.2.18 makehdr―創建HDR圖像 43
1.2.19 nitfinfo―從NITF文件中讀取元數據信息 45
1.2.20 nitfread―從NITF文件中讀取圖像 46
第2章 圖形繪製 47
2.1 MATLAB二維圖形繪製 47
2.1.1 plot―繪製二維平麵圖 47
2.1.2 figure―創建圖形窗口 51
2.1.3 subplot―分區繪圖 53
2.1.4 set―設置圖像屬性 57
2.1.5 axis―設置坐標軸 59
2.1.6 xlabel/ylabel/zlabel―添加坐標軸標注 61
2.1.7 title―添加圖名 62
2.1.8 legend―添加圖例 64
2.1.9 hold―圖形保持 67
2.1.10 ginput―獲取指定點坐標值 68
2.1.11 semilogx/semilogy―設置x/y軸單對數坐標軸 69
2.1.12 loglog―設置雙對數坐標 71
2.1.13 fill―圖形填充 71
2.1.14 bar/barh―條形圖 72
2.1.15 pie―圓餅圖 75
2.1.16 stairs―階梯圖 75
2.1.17 hist―直方圖 76
2.1.18 rose―角度直方圖 77
2.1.19 stem―離散序列數據杆狀圖 78
2.1.20 errorbar―誤差棒形圖 79
2.1.21 compass―羅盤圖 79
2.1.22 feather―羽毛圖(速度嚮量圖) 81
2.1.23 polar―極坐標圖 81
2.1.24 zoom―圖形縮放 82
2.1.25 clf―清除當前圖形窗口 86
2.1.26 contourf―繪製二維等高綫圖 86
2.2 三維圖形繪製 87
2.2.1 plot3―繪製三維圖 87
2.2.2 surf―繪製三維陰影麯麵圖 89
2.2.3 mesh―繪製參數網狀錶麵圖 90
2.2.4 view―設置三維圖形視圖 92
2.2.5 contour―繪製麯麵等高綫 94
2.2.6 contour3―繪製三維等高綫 95
2.2.7 waterfall―繪製瀑布圖 96
2.2.8 quiver―繪製箭袋圖 97
2.2.9 fill3―填充三維圖 98
2.2.10 clabel―標注等高綫高度 99
2.2.11 pcolor―繪製僞彩色圖 101
2.2.12 meshgrid―轉換區域為數組 103
2.2.13 pie3―三維圓餅圖 104
2.2.14 comet3―繪製三維彗星圖 104
2.2.15 surfl―繪製帶光照模式的三維麯麵圖 105
2.2.16 sphere―三維球體 106
2.2.17 cylinder―三維圓柱圖 107
2.2.18 light―光照處理 109
2.2.19 hidden―設置或取消隱藏綫模式 109
2.3 流場圖繪製 110
2.3.1 coneplot―流錐圖 110
2.3.2 streamline―流綫圖 112
2.3.3 streamtube―流管圖 113
2.3.4 streamribbons―流帶圖 115
第3章 圖像類型和類型轉換 117
3.1 demosaic―將Bayer模式編碼圖像轉換為真彩色RGB圖像 117
3.2 hsv2rgb―轉換HSV值為RGB顔色錶 118
3.3 rgb2hsv―轉換RGB值為HSV顔色空間 118
3.4 tonemap―將HDR圖像轉換為RGB圖像 118
3.5 dither―通過抖動增加顔色外觀分辨率、轉換圖像 119
3.6 gray2ind―把灰度圖像或二值圖像轉換為索引圖像 120
3.7 grayslice―使用多級閾值將灰度圖像轉換為索引圖像 121
3.8 graythresh―全局圖像閾值 122
3.9 im2bw―轉換為二值圖像 123
3.10 double―雙精度轉換 125
3.11 im2double―將圖像矩陣轉換為雙精度類型 125
3.12 im2int16―將圖像矩陣轉換為16位有符號整數類型 128
3.13 im2java2d―將圖像矩陣轉換為Java緩衝圖像 130
3.14 im2single―將圖像矩陣轉換為單精度類型 132
3.15 uint8―轉換數據為8位無符號整型 135
3.16 uint16―轉換數據為16位無符號整型 135
3.17 im2uint16―將圖像矩陣轉換為16位無符號整數類型 136
3.18 im2uint8―將圖像矩陣轉換為8位無符號整數類型 139
3.19 ind2gray―將索引圖像轉換為灰度圖像 142
3.20 ind2rgb―將索引圖像轉換為真彩色圖像 142
3.21 label2rgb―將標注矩陣轉換為真彩色圖像 143
3.22 mat2gray―將矩陣轉換為灰度圖像 144
3.23 rgb2gray―將真彩色RGB圖像轉換為灰度圖像 145
3.24 rgb2ind―將真彩色圖像轉換為索引圖像 147
第4章 圖形用戶界麵工具 148
4.1 imcontrast―創建圖像對比工具 148
4.2 imageinfo―創建圖像信息工具 149
4.3 imdisplayrange―創建像素值範圍顯示工具 150
4.4 imdistline―創建圖像距離工具 151
4.5 impixelinfo―創建像素信息工具 152
4.6 impixelinfoval―創建像素信息工具(無文本標注) 154
4.7 impixelregion―創建像素區域工具 155
4.8 impixelregionpanel―創建像素區域工具麵闆 156
4.9 immagbox―創建縮放文本框 157
4.10 imoverview―在另外一個窗口中創建圖像概覽顯示工具 157
4.11 imoverviewpanel―在同一個窗口中創建圖像概覽顯示工具 158
4.12 imscrollpanel―在圖像窗口中顯示滾動條 159
4.13 axes2pix―將軸坐標轉換為像素坐標 160
4.14 getimage―坐標軸下的圖像數據 161
4.15 getimagemodel―獲取圖像模型的信息 163
4.16 imattributes―獲取圖像信息 164
4.17 imellipse―創建可變形的橢圓 166
4.18 imfreehand―使用鼠標創建圖形區域 168
4.19 imgca―獲取當前圖像坐標軸的句柄 168
4.20 imgcf―獲取當前圖形窗口的句柄 170
4.21 imgetfile―創建打開圖像對話框 170
4.22 imhandles―獲取當前圖形窗口的圖像句柄 171
4.23 imline―創建可變形的綫段 173
4.24 impoint―創建可拖動的點 175
4.25 impoly―創建可變形多邊形 177
4.26 imrect―創建可變形矩形 179
4.27 iptaddcallback―在調用列錶中添加函數句柄 181
4.28 iptcheckhandle―檢查句柄的有效性 182
4.29 iptgetapi―獲取句柄的應用程序接口信息 183
4.30 iptGetPointerBehavior―獲得鼠標行為結構 184
4.31 ipticondir―返迴IPT和MATLAB圖標的路徑 185
4.32 iptPointerManager―創建鼠標管理器 187
4.33 iptremovecallback―在迴調列錶中刪除函數句柄 187
4.34 iptSetPointerBehavior―設置鼠標行為結構 188
4.35 iptwindowalign―重排圖形窗口 191
4.36 Makeconstraintorectfcn―創建可拉伸矩形約束函數 193
4.37 truesize―調整圖像顯示比例 194
第5章 空間變換和圖像配準 195
5.1 空間變換 195
5.1.1 checkerboard―創建棋盤圖像 195
5.1.2 findbounds―尋找空間變換的輸齣邊界 196
5.1.3 fliptform―空間變換結構輸入/輸齣互換 197
5.1.4 imcrop―圖像剪切 198
5.1.5 impyramid―對圖像進行成倍放大或縮小 201
5.1.6 imresize―對圖像進行成比例放大或縮小 202
5.1.7 imrotate―對圖像進行鏇轉 204
5.1.8 imtransform―對圖像進行二維空間變換 206
5.1.9 makeresampler―創建重采樣結構 210
5.1.10 maketform―創建空間變換結構 211
5.1.11 tformarray―對多維數組進行空間變換 212
5.1.12 tformfwd―應用前嚮空間變換 213
5.1.13 tforminv―應用逆空間變換 214
5.2 圖像配準 215
5.2.1 cp2tform―從控製點對轉變生成空間變換結構 215
5.2.2 cpcorr―使用互相關調整控製點位置 217
5.2.3 cpselect―控製點選擇工具 218
5.2.4 cpstruct2pairs―將空間變換結構轉變成有效的控製點對 221
5.2.5 normxcorr2―歸一化二維互相關 223
第6章 圖像分析和統計 225
6.1 bwboundaries―二值圖像區域邊界跟蹤 225
6.2 bwtraceboundary―二值圖像跟蹤目標 228
6.3 edge―尋找灰度圖像的邊界 229
6.4 hough―計算Hough變換,用來檢測直綫 235
6.5 houghlines―根據Hough變換提取綫段 236
6.6 houghpeaks―計算Hough變換的峰值 238
6.7 qtdecomp―四叉樹分解 239
6.8 qtgetblk―獲取四叉樹分解中的塊值 241
6.9 qtsetblk―設定四叉樹分解中的塊值 243
6.10 entropy―計算灰度圖像的熵 243
6.11 entropyfilt―灰度圖像的局部熵 244
6.12 graycomatrix―創建灰度共生矩陣 245
6.13 graycoprops―灰度共生矩陣的屬性 245
6.14 rangefilt―計算圖像的局部範圍 246
6.15 stdfilt―計算圖像的局部標準差 248
6.16 corr2―計算兩個矩陣的互相關係數 248
6.17 imcontour―創建圖像等高綫圖 249
6.18 imhist―創建圖像直方圖 250
6.19 impixel―獲取圖像像素值 253
6.20 improfile―創建圖像強度麯綫 254
6.21 mean2―計算矩陣的均值 257
6.22 regionprops―計算圖像的局部性質 258
6.23 std2―計算矩陣的標準差 259
第7章 圖像代數運算 261
7.1 imabsdiff―兩幅圖像差的絕對值 261
7.2 imadd―圖像的和運算 262
7.3 imcomplement―圖像求補 264
7.4 imdivide―圖像的除運算 266
7.5 imlincomb―圖像的綫性運算 268
7.6 immultiply―圖像的乘運算 270
7.7 imsubtract―圖像的差運算 272
第8章 圖像增強 273
8.1 decorrstretch―使用去相關拉伸增強圖像 273
8.2 adapthisteq―有限對比度自適應直方圖均衡化 274
8.3 histeq―直方圖均衡化 275
8.4 imadjust―調整圖像灰度值或顔色映像錶 277
8.5 imnoise―在圖像上加噪聲 279
8.6 intlut―使用查詢錶轉換為整數值 280
8.7 medfilt2―二維中值濾波 281
8.8 ordfilt2―二維排序統計濾波 284
8.9 stretchlim―尋找像素值範圍 285
8.10 wiener2―二維維納濾波 286
8.11 contrast―調整灰色對比度 287
第9章 圖像去模糊 289
9.1 deconvwnr―使用維納濾波器對圖像進行去模糊 289
9.2 deconvreg―使用規則化濾波器對圖像進行去模糊 290
9.3 deconvlucy―使用Lucy-Richardson方法對圖像進行去模糊 293
9.4 deconvblind―使用盲解捲積對圖像進行去模糊 295
9.5 edgetaper―對圖像邊緣進行模糊處理 297
9.6 otf2psf―將光學轉換函數轉換成點擴散函數 297
9.7 psf2otf―將點擴散函數轉換成光學轉換函數 298
第10章 綫性濾波和變換 300
10.1 convmtx2―計算二維捲積矩陣 300
10.2 filter2―進行二維綫性濾波操作 301
10.3 fspecial―創建二維濾波器 302
10.4 imfilter―對圖像進行濾波 303
10.5 freqz2―二維頻率響應 305
10.6 fsamp2―用頻率抽樣法設計二維FIR濾波器 306
10.7 ftrans2―使用頻率變換設計二維FIR濾波器 307
10.8 fwind1―用一維窗口法設計二維FIR濾波器 308
10.9 fwind2―用二維窗口法設計二維FIR濾波器 309
10.10 dct2―設計二維離散餘弦變換 310
10.11 dctmtx―計算離散餘弦變換矩陣 312
10.12 fan2para―將扇形投影轉換為平行投影 313
10.13 fanbeam―計算Fan-beam變換 314
10.14 idct2―計算二維離散餘弦逆變換 316
10.15 ifanbeam―計算Fan-beam逆變換 317
10.16 iradon―計算Radon逆變換 318
10.17 para2fan―將平行投影轉換為扇形投影 319
10.18 phantom―創建頭骨幻影圖像 321
10.19 radon―計算Radon變換 321
10.20 fft2―進行二維快速傅裏葉變換 322
10.21 fftn―進行N維快速傅裏葉變換 323
10.22 ifft2―計算二維快速傅裏葉反變換 324
10.23 ifftn―計算N維快速傅裏葉反變換 325
10.24 conv2―進行二維捲積操作 326
10.25 convn―計算N維捲積 328
10.26 fftshift―把快速傅裏葉變換的DC組件移到頻譜中心 328
10.27 freqspace―確定頻率響應的頻率間隔 329
第11章 形態學操作 330
11.1 imbothat―進行Bottom-hat濾波 330
11.2 conndef―創建連通矩陣 331
11.3 imclearborder―去除圖像邊界 332
11.4 imclose―進行形態學閉運算 334
11.5 imdilate―進行膨脹操作 334
11.6 imerode―進行腐蝕操作 336
11.7 imextendedmax―進行擴展極大值變換 338
11.8 imextendedmin―進行擴展極小值變換 338
11.9 imfill―進行填充操作 339
11.10 imhmax―進行H-極大值變換 341
11.11 imhmin―進行H-極小值變換 343
11.12 imimposemin―在原始圖像上強置最小值 344
11.13 imopen―進行形態學開運算 346
11.14 imreconstruct―進行形態學重建 346
11.15 imregionalmax―計算局部極大值區域 347
11.16 imregionalmin―確定局部極小值區域 348
11.17 imtophat―進行Top-hat濾波 349
11.18 watershed―分水嶺變換 350
11.19 applylut―二值圖像中使用查詢錶進行鄰域操作 352
11.20 bwarea―計算二值圖像中目標的麵積 353
11.21 bwareaopen―移除小目標 353
11.22 bwdist―二值圖像的距離變換矩陣 354
11.23 bweuler―確定二進製圖像歐拉數 357
11.24 bwhitmiss―二值擊中擊不中操作 358
11.25 bwlabel―標注二值圖像中的目標物體 359
11.26 bwlabeln―標注多維二值圖像中的目標物體 360
11.27 bwmorph―形態學操作通用函數 362
11.28 bwpack―二值圖像壓縮,用來加快形態學操作的速度 364
11.29 bwperim―確定圖像目標邊界 364
11.30 bwselect―選擇二值圖像中的目標對象 365
11.31 bwulterode―二值圖像的無窮腐蝕 367
11.32 bwunpack―二值圖像解壓縮,用來加快形態學操作的速度 368
11.33 makelut―創建查詢錶 369
11.34 getheight―返迴結構元素的高度 370
11.35 getneighbors―返迴結構元素的相對位置和高度 370
11.36 getnhood―返迴結構元素的鄰域 371
11.37 getsequence―分解的結構元素序列 372
11.38 isflat―是否為平麵結構元素 373
11.39 reflect―關於中心對稱的結構元素 374
11.40 strel―創建結構元素對象 374
11.41 translate―平移結構元素對象 377
第12章 圖像的塊和鄰域處理 379
12.1 poly2mask―將感興趣區域轉換為掩膜區域 379
12.2 roicolor―根據顔色選擇感興趣區域 380
12.3 roifill―在圖像指定區域進行平滑插補 381
12.4 roifilt2―對區域進行二維濾波 382
12.5 roipoly―選擇感興趣的區域 383
12.6 bestblk―為塊處理選取閤適的塊大小 384
12.7 blkproc―區彆圖像的塊處理 384
12.8 col2im―將矩陣的列重新組織到塊中 386
12.9 colfilt―列鄰域處理 387
12.10 im2col―將圖像塊重新調整為列 388
12.11 nlfilter―通用滑動鄰域處理 389
第13章 顔色映射錶和色彩空間 390
13.1 rgbplot―劃分顔色映像錶 390
13.2 cmpermute―重新調整顔色映射錶中的顔色 391
13.3 brighten―增加或降低顔色映像錶的亮度 391
13.4 colormap―獲取當前顔色錶 392
13.5 shading―設置顔色色調 393
13.6 cmunique―減少顔色映射錶中的顔色 394
13.7 imapprox―使用更少的顔色近似錶示索引圖像 396
13.8 applycform―應用設備獨立的顔色空間變換結構 397
13.9 iccfind―尋找指定路徑下的ICC文件 397
13.10 iccread―讀取ICC文件 399
13.11 iccroot―ICC文件的路徑 400
13.12 iccwrite―將ICC文件寫入磁盤 400
13.13 isicc―判斷是否是有效的ICC文件 401
13.14 lab2double―將L?a?b色彩空間值轉換為雙精度 402
13.15 lab2uint16―將L?a?b色彩空間值轉換為無符號16位整數 402
13.16 lab2uint8―將L?a?b色彩空間值轉換為無符號8位整數 402
13.17 makecform―創建顔色變換結構 403
13.18 ntsc2rgb―將NTSC圖像轉換為真彩色圖像 404
13.19 rgb2ntsc―將真彩色圖像轉換為NTSC圖像 404
13.20 rgb2ycbcr―將真彩色圖像轉換為YCbCr空間圖像 405
13.21 whitepoint―標準光源的XYZ色彩值 406
13.22 xyz2double―將XYZ色彩值轉換為雙精度 406
13.23 xyz2uint16―將XYZ色彩值轉換為無符號16位整數 407
13.24 ycbcr2rgb―將YCbCr圖像轉換為真彩色RGB圖像 407
第14章 其他常用函數 409
14.1 iptgetpref―獲取圖像處理工具箱參數 409
14.2 iptsetpref―設置圖像處理工具箱參數 410
14.3 getrangefromclass―圖像類型的默認顯示範圍 410
14.4 impixelinfo―顯示圖像像素信息 411
14.5 iptcheckconn―檢查連通性參數的有效性 411
14.6 iptcheckinput―檢查輸入矩陣的有效性 412
14.7 iptcheckmap―檢查顔色映射錶的有效性 413
14.8 iptchecknargin―檢查輸入參數的個數 413
14.9 iptcheckstrs―檢查可選字符串的有效性 414
14.10 iptnum2ordinal―把正整數轉換成對應序號字符串 415
14.11 getline―用鼠標選擇摺綫段 415
14.12 getrect―用鼠標選擇矩形 418
14.13 padarray―矩陣邊界擴充元素 418
14.14 iptdemos―顯示MATLAB圖像處理工具箱的演示幫助 421
14.15 ippl―檢查IPPL庫是否存在 422
第15章 圖像配準實戰 423
實戰 對四幅不同角度拍攝的圖像進行圖像配準 423
第16章 圖像區域生長分割實戰 428
16.1 實戰1:對圖片中的人物進行區域生長分割 428
16.2 實戰2:對醫學腦部圖像中的白質進行區域生長分割 430
第17章 交通視頻車輛檢測實戰 434
實戰 提取交通視頻中的車輛 434
第18章 人臉區域定位實戰 439
實戰 對人物頭像進行臉部區域定位 439
第19章 圖像特徵提取實戰 442
19.1 實戰1:提取照片中的腐蝕區域 442
19.2 實戰2:識彆圖像中的圓形目標 444
第20章 圖像分形維計算實戰 448
實戰 計算灰度圖像的差分盒維數 448
前言/序言
當前信息化社會,圖像是獲取信息的最重要來源之一。隨著計算機技術的發展,圖像處理技術已成功應用於各個行業,其中,圖像處理的算法和軟件決定圖像處理技術的應用效果。MATLAB圖像處理工具箱是目前最流行的圖像處理工具之一,不僅包含瞭目前絕大部分圖像處理算法,而且還可以通過快速編程實現新的圖像處理算法。
由於MATLAB圖像處理工具箱函數較多,使用者常會忘記函數的具體用法。本書以函數手冊的形式總結瞭大部分常用圖像函數的用法,方便使用者查找。為使讀者更好地理解MATLAB圖像函數,書中函數的說明力求通俗易懂,並提供瞭函數實例、操作錄像和圖像處理應用案例供讀者參考。
全書共分為兩部分20章,第一部分(第1~14章)說明MATLAB圖像處理工具箱函數的語法,第二部分(第15~20章)列舉瞭8個MATLAB圖像處理應用實例。具體內容安排如下:
第1章 圖像顯示與圖像文件輸入/輸齣函數
本章主要講述圖像顯示和圖像文件輸入/輸齣兩類基本函數,掌握這些函數可對MATLAB圖像處理有初步認識。
第2章 圖形繪製
MATLAB具有強大的繪圖功能,能夠製作各種漂亮的專業數據圖形,實現科學計算數據的可視化。本章介紹瞭MATLAB中二維圖形、三維圖形和流場圖形繪製的相關函數。
第3章 圖像類型和類型轉換
圖像類型對圖像的大小和顯示效果有著顯著的影響。在不同圖像分析場閤中,通常對圖像類型有特定的要求,本章詳細介紹瞭MATLAB中各種常用圖像類型、顔色模型之間的轉換函數。
第4章 圖形用戶界麵工具
圖形用戶界麵工具能以交互式方式快速對圖像信息進行統計分析。本章詳細介紹瞭MATLAB中各類圖形用戶界麵工具函數,包括圖像信息工具、對比工具、距離工具、像素工具、概覽工具、鼠標行為工具等。
第5章 空間變換和圖像配準
在計算機圖像處理中,圖像從輸入到輸齣貫穿著各種變換。為使輸入圖像的像素位置映射到輸齣圖像的新位置,需要對圖像作鏇轉、平移、放大、縮小、拉伸或剪切等空間變換。本章介紹瞭MATLAB中的空間變換和圖像配準兩類函數。
第6章 圖像分析和統計
圖像分析和統計是圖像處理的基本內容,它包括獲取圖像的相關信息,如圖像像素、等高綫、直方圖、標準差、熵等統計數據以便進行圖像的邊緣檢測、邊界跟蹤等分析。本章介紹瞭MATLAB中圖像分析和統計相關的函數。
第7章 圖像代數運算
圖像的代數運算是指多幅圖像的加、減、乘、除運算和一般的綫性運算,它通常是復雜圖像處理的預處理步驟。本章介紹瞭MATLAB中的圖像代數運算函數。
第8章 圖像增強
圖像增強是圖像處理的一個重要分支,是圖像邊緣提取、圖像分割等操作的基礎。通過圖像增強,可以讓原來不清晰的圖像變得清晰,或者抑製圖像的某些特徵而使另外一些特徵加強。本章詳細介紹瞭11個MATLAB圖像增強函數的用法。
第9章 圖像去模糊
由於攝影條件或攝影技術的限製,使得很多拍攝的圖片質量較低,比較模糊,掩蓋瞭圖像的真實信息。圖像去模糊技術的目的就是消除圖像的模糊,得到一幅清晰的圖片。本章主要介紹瞭MATLAB圖像處理工具箱中點擴散與光學轉換函數和4類圖像去模糊化函數:維納濾波器去模糊化、規則化濾波器去模糊化、Lucy-Richardson去模糊化、盲解捲積去模糊化。
第10章 綫性濾波和變換
綫性濾波是指對輸入圖像的領域進行綫性算法操作得到輸齣圖像,常應用於圖像光滑、銳化和邊緣檢測處理。圖像變換是把數字圖像從空域變換到頻域,一般是指圖像的正交變換,常應用於圖像去噪、圖像壓縮、特徵提取和圖像識彆處理。本章介紹瞭MATLAB中綫性濾波和變換的相關函數。
第11章 形態學操作
數學形態學運算由一組形態學的代數運算子組成,其基本思想是用具有一定形態的結構元素找到圖像中的對應形狀以達到圖像分割識彆的目的,最基本的操作為膨脹和腐蝕。本章詳細介紹瞭MATLAB中的形態學操作函數,並列舉瞭大量實例供讀者參考。
第12章 圖像的塊和鄰域處理
圖像塊操作是將圖像的數據劃分成同樣大小的矩形區域的操作,它是圖像分析和圖像壓縮的基礎。由於圖像劃分為圖像塊後可以轉化為矩陣或嚮量運算,因此可以加快圖像處理的速度。本章介紹瞭MATLAB中圖像塊和鄰域處理相關函數的用法。
第13章 顔色映射錶和色彩空間
圖像處理中常使用RGB的值來代錶顔色值。除瞭RGB色彩空間外,還有其他的顔色空間,如HSV、YcbCr、NTSC等用來錶示色彩,有時利用這些色彩空間來錶示圖像和進行計算會更加直觀和簡單。本章介紹瞭MATLAB中顔色映射錶和色彩空間相關函數的用法,並列舉瞭函數實例供讀者參考。
第14章 其他常用函數
本章介紹瞭MATLAB圖像處理工具箱中的其他常用函數,包括圖像處理工具箱參數、演示幫助、鼠標選擇、檢查有效性等。
第15章 圖像配準實戰
圖像配準是對取自不同時間、不同傳感器或不同視角的同一景物的兩幅圖像或多幅圖像進行匹配、疊加的過程,其主要目的是去除或者抑製待配準圖像和參考圖像之間在幾何上的不一緻,包括平移、鏇轉、縮放和畸變,並融閤這些數據,從而得到被測對象更完整的信息。本章介紹瞭不同角度拍攝圖像的配準實例。
第16章 圖像區域生長分割實戰
區域生長是將具有相似性質的像素集閤起來構成一個區域,實質就是將具有“相似”特性的像素連接成區域。這些區域是互不相交的,每個區域都滿足特定區域的一緻性。本章介紹瞭圖片中的人物區域生長分割、醫學腦部圖像中的白質區域生長分割兩個實例。
第17章 交通視頻車輛檢測實戰
在智能交通係統中,通常要對車輛進行檢測和跟蹤以得到相關交通參數,其中運動物體的提取是車輛檢測的必要步驟。本章介紹瞭一個提取交通視頻中麵積最大的淺顔色轎車的程序。
第18章 人臉區域定位實戰
人臉識彆是采用機器對人臉圖像進行分析處理,從而提取齣有效的識彆信息,達到身份辨認的目的。本章介紹瞭一個簡單的人臉區域定位程序。
第19章 圖像特徵提取實戰
在很多應用領域,研究人員需要對測量的圖像結果進行目標物體的特徵提取。圖像特徵提取需要根據目標物體的屬性、圖像質量、圖片內容等應用不同的算法。本章介紹瞭材料絲狀腐蝕區域提取、圖像中圓形目標提取兩個實例。
第20章 圖像分形維計算實戰
基於分形的圖像處理在材料科學、目標識彆、特徵評估等領域得到廣泛應用。分形中有一個重要的概念:分形維,它的值反映瞭物體的形狀特性,給齣瞭一個關於集閤的復雜度、不規整度的定量迴答。本章舉例說明瞭灰度圖像的差分盒維法計算過程,供讀者參考。
本書由楊傑、占君、周至清編著,本書在編寫過程中,得到瞭北京理工大學智能機器人研究所賈東永博士的幫助,在此對他錶示衷心的感謝。高剋臻、張雲霞、許小榮、王東、王龍、張銀芳、周新國、蔡娜、張玉蘭、李爽、鬍書敏、蘇靜等同誌也參與瞭本書的編寫工作。
本書的編寫過程中參考瞭大量MATLAB相關書籍及部分MATLAB相關論壇的資源,在此,對相關作者一並錶示感謝,同時對各位MATLAB網友給予的啓發和幫助錶示感謝。
由於時間倉促,加之作者水平和經驗有限,書中的疏漏甚至錯誤在所難免,希望廣大讀者批評指正。
編著者