第1章 OPENCV入門 1
1.1 如何使用 1
1.2 圖像處理基本操作 3
1.2.1 讀取圖像 3
1.2.2 顯示圖像 5
1.2.3 保存圖像 9
1.3 OpenCV貢獻庫 10
第2章 圖像處理基礎 11
2.1 圖像的基本錶示方法 11
2.2 像素處理 15
2.3 使用numpy.array訪問像素 23
2.4 感興趣區域(ROI) 29
2.5 通道操作 32
2.5.1 通道拆分 32
2.5.2 通道閤並 34
2.6 獲取圖像屬性 36
第3章 圖像運算 37
3.1 圖像加法運算 37
3.1.1 加號運算符 37
3.1.2 cv2.add()函數 38
3.2 圖像加權和 40
3.3 按位邏輯運算 43
3.3.1 按位與運算 43
3.3.2 按位或運算 46
3.3.3 按位非運算 47
3.3.4 按位異或運算 48
3.4 掩模 49
3.5 圖像與數值的運算 52
3.6 位平麵分解 53
3.7 圖像加密和解密 59
3.8 數字水印 63
3.8.1 原理 64
3.8.2 實現方法 66
3.8.3 例題 73
3.9 臉部打碼及解碼 74
第4章 色彩空間類型轉換 77
4.1 色彩空間基礎 77
4.1.1 GRAY色彩空間 77
4.1.2 XYZ色彩空間 78
4.1.3 YCrCb色彩空間 78
4.1.4 HSV色彩空間 79
4.1.5 HLS色彩空間 80
4.1.6 CIEL*a*b*色彩空間 80
4.1.7 CIEL*u*v*色彩空間 81
4.1.8 Bayer色彩空間 82
4.2 類型轉換函數 82
4.3 類型轉換實例 88
4.3.1 通過數組觀察轉換效果 88
4.3.2 圖像處理實例 92
4.4 HSV色彩空間討論 93
4.4.1 基礎知識 93
4.4.2 獲取指定顔色 95
4.4.3 標記指定顔色 96
4.4.4 標記膚色 100
4.4.5 實現藝術效果 101
4.5 alpha通道 102
第5章 幾何變換 106
5.1 縮放 106
5.2 翻轉 110
5.3 仿射 111
5.3.1 平移 112
5.3.2 鏇轉 113
5.3.3 更復雜的仿射變換 114
5.4 透視 115
5.5 重映射 117
5.5.1 映射參數的理解 117
5.5.2 復製 119
5.5.3 繞x軸翻轉 121
5.5.4 繞y軸翻轉 122
5.5.5 繞x軸、y軸翻轉 124
5.5.6 x軸、y軸互換 126
5.5.7 圖像縮放 128
第6章 閾值處理 130
6.1 threshold函數 130
6.1.1 二值化閾值處理(cv2.THRESH_BINARY) 131
6.1.2 反二值化閾值處理(cv2.THRESH_BINARY_INV) 133
6.1.3 截斷閾值化處理(cv2.THRESH_TRUNC) 135
6.1.4 超閾值零處理(cv2.THRESH_TOZERO_INV) 136
6.1.5 低閾值零處理(cv2.THRESH_TOZERO) 138
6.2 自適應閾值處理 139
6.3 Otsu處理 141
第7章 圖像平滑處理 144
7.1 均值濾波 146
7.1.1 基本原理 146
7.1.2 函數語法 150
7.1.3 程序示例 150
7.2 方框濾波 152
7.2.1 基本原理 152
7.2.2 函數語法 153
7.2.3 程序示例 154
7.3 高斯濾波 156
7.3.1 基本原理 156
7.3.2 函數語法 158
7.3.3 程序示例 159
7.4 中值濾波 159
7.4.1 基本原理 160
7.4.2 函數語法 161
7.4.3 程序示例 161
7.5 雙邊濾波 162
7.5.1 基本原理 162
7.5.2 函數語法 164
7.5.3 程序示例 164
7.6 2D捲積 166
第8章 形態學操作 168
8.1 腐蝕 168
8.2 膨脹 173
8.3 通用形態學函數 178
8.4 開運算 179
8.5 閉運算 180
8.6 形態學梯度運算 182
8.7 禮帽運算 183
8.8 黑帽運算 185
8.9 核函數 186
第9章 圖像梯度 189
9.1 Sobel理論基礎 189
9.2 Sobel算子及函數使用 191
9.2.1 參數ddepth 192
9.2.2 方嚮 195
9.2.3 實例 196
9.3 Scharr算子及函數使用 200
9.4 Sobel算子和Scharr算子的比較 204
9.5 Laplacian算子及函數使用 206
9.6 算子總結 208
第10章 CANNY邊緣檢測 209
10.1 Canny邊緣檢測基礎 209
10.2 Canny函數及使用 213
第11章 圖像金字塔 215
11.1 理論基礎 215
11.2 pyrDown函數及使用 217
11.3 pyrUp函數及使用 219
11.4 采樣可逆性的研究 220
11.5 拉普拉斯金字塔 223
11.5.1 定義 223
11.5.2 應用 225
第12章 圖像輪廓 229
12.1 查找並繪製輪廓 229
12.1.1 查找圖像輪廓:findContours函數 229
12.1.2 繪製圖像輪廓:drawContours函數 237
12.1.3 輪廓實例 238
12.2 矩特徵 240
12.2.1 矩的計算:moments函數 241
12.2.2 計算輪廓的麵積:contourArea函數 243
12.2.3 計算輪廓的長度:arcLength函數 246
12.3 Hu矩 248
12.3.1 Hu矩函數 248
12.3.2 形狀匹配 252
12.4 輪廓擬閤 254
12.4.1 矩形包圍框 254
12.4.2 最小包圍矩形框 257
12.4.3 最小包圍圓形 259
12.4.4 最優擬閤橢圓 260
12.4.5 最優擬閤直綫 261
12.4.6 最小外包三角形 262
12.4.7 逼近多邊形 263
12.5 凸包 266
12.5.1 獲取凸包 267
12.5.2 凸缺陷 268
12.5.3 幾何學測試 270
12.6 利用形狀場景算法比較輪廓 275
12.6.1 計算形狀場景距離 275
12.6.2 計算Hausdorff距離 278
12.7 輪廓的特徵值 280
12.7.1 寬高比 280
12.7.2 Extent 281
12.7.3 Solidity 282
12.7.4 等效直徑(Equivalent Diameter) 283
12.7.5 方嚮 284
12.7.6 掩模和像素點 286
12.7.7 最大值和最小值及它們的位置 291
12.7.8 平均顔色及平均灰度 293
12.7.9 極點 294
第13章 直方圖處理 297
13.1 直方圖的含義 297
13.2 繪製直方圖 301
13.2.1 使用Numpy繪製直方圖 301
13.2.2 使用OpenCV繪製直方圖 302
13.2.3 使用掩模繪製直方圖 307
13.3 直方圖均衡化 312
13.3.1 直方圖均衡化原理 313
13.3.2 直方圖均衡化處理 317
13.4 pyplot模塊介紹 319
13.4.1 subplot函數 319
13.4.2 imshow函數 320
第14章 傅裏葉變換 324
14.1 理論基礎 324
14.2 Numpy實現傅裏葉變換 328
14.2.1 實現傅裏葉變換 329
14.2.2 實現逆傅裏葉變換 330
14.2.3 高通濾波示例 331
14.3 OpenCV實現傅裏葉變換 333
14.3.1 實現傅裏葉變換 333
14.3.2 實現逆傅裏葉變換 335
14.3.3 低通濾波示例 336
第15章 模闆匹配 339
15.1 模闆匹配基礎 339
15.2 多模闆匹配 345
第16章 霍夫變換 351
16.1 霍夫直綫變換 351
16.1.1 霍夫變換原理 351
16.1.2 HoughLines函數 357
16.1.3 HoughLinesP函數 359
16.2 霍夫圓環變換 361
第17章 圖像分割與提取 364
17.1 用分水嶺算法實現圖像分割與提取 364
17.1.1 算法原理 364
17.1.2 相關函數介紹 366
17.1.3 分水嶺算法圖像分割實例 375
17.2 交互式前景提取 376
第18章 視頻處理 383
18.1 VideoCapture類 383
18.1.1 類函數介紹 383
18.1.2 捕獲攝像頭視頻 387
18.1.3 播放視頻文件 388
18.2 VideoWriter類 389
18.2.1 類函數介紹 389
18.2.2 保存視頻 391
18.3 視頻操作基礎 392
第19章 繪圖及交互 393
19.1 繪畫基礎 393
19.1.1 繪製直綫 394
19.1.2 繪製矩形 394
19.1.3 繪製圓形 395
19.1.4 繪製橢圓 397
19.1.5 繪製多邊形 398
19.1.6 在圖形上繪製文字 400
19.2 鼠標交互 402
19.2.1 簡單示例 404
19.2.2 進階示例 405
19.3 滾動條 407
19.3.1 用滾動條實現調色闆 408
19.3.2 用滾動條控製閾值處理參數 409
19.3.3 用滾動條作為開關 410
第20章 K近鄰算法 412
20.1 理論基礎 412
20.2 計算 415
20.2.1 歸一化 415
20.2.2 距離計算 416
20.2 手寫數字識彆的原理 417
20.3 自定義函數手寫數字識彆 421
20.4 K近鄰模塊的基本使用 427
20.5 K近鄰手寫數字識彆 429
第21章 支持嚮量機 431
21.1 理論基礎 431
21.2 SVM案例介紹 434
第22章 K均值聚類 439
22.1 理論基礎 439
22.1.1 分豆子 439
22.1.2 K均值聚類的基本步驟 441
22.2 K均值聚類模塊 441
22.3 簡單示例 442
第23章 人臉識彆 448
23.1 人臉檢測 448
23.1.1 基本原理 448
23.1.2 級聯分類器的使用 451
23.1.3 函數介紹 452
23.1.4 案例介紹 453
23.2 LBPH人臉識彆 454
23.2.1 基本原理 454
23.2.2 函數介紹 456
23.2.3 案例介紹 457
23.3 EigenFaces人臉識彆 458
23.3.1 基本原理 458
23.3.2 函數介紹 459
23.3.3 案例介紹 460
23.4 Fisherfaces人臉識彆 461
23.4.1 基本原理 461
23.4.2 函數介紹 463
23.4.3 案例介紹 464
23.5 人臉數據庫 465
參與文獻 467
附錄A 範例 470
· · · · · · (
收起)