《OpenCV 4詳解:基于Python》基于OpenCV 4.1版本,討論OpenCV 4的功能,以及OpenCV在圖像處理和計(jì)算機(jī)視覺方面的應(yīng)用。本書共12章。主要內(nèi)容包括OpenCV的基礎(chǔ)知識,數(shù)據(jù)載入、顯示與保存,圖像基本操作,直方圖,圖像濾波,圖像形態(tài)學(xué)操作,圖像分割與修復(fù),目標(biāo)檢測,特征點(diǎn)檢測與匹配,立體視覺,視頻分析,機(jī)器學(xué)習(xí)在OpenCV中的實(shí)現(xiàn)方式。
《OpenCV 4詳解:基于Python》適合計(jì)算機(jī)視覺方面的專業(yè)人士閱讀,也可作為計(jì)算機(jī)相關(guān)專業(yè)的教材。
1.基于Python講述OpenCV大量函數(shù)用法構(gòu)建功能強(qiáng)大的應(yīng)用程序
2.基于OpenCV4.1,涵蓋上百個(gè)函數(shù)
3.一線實(shí)踐案例講述計(jì)算機(jī)視覺知識及OpenCV庫
4.深入學(xué)習(xí)圖像處理、特征檢測、視頻分析等算法
5.提供GitHub托管測試數(shù)據(jù)、源代碼等配套資源
目 錄
第 1章 初識OpenCV 1
1.1 什么是OpenCV 1
1.1.1 OpenCV與計(jì)算機(jī)視覺 1
1.1.2 OpenCV的發(fā)展 2
1.1.3 OpenCV 4帶來了什么 3
1.2 安裝OpenCV-Python 4
1.2.1 在Windows系統(tǒng)中安裝
OpenCV-Python 4
1.2.2 在Ubuntu系統(tǒng)中安裝
OpenCV-Python 9
1.3 OpenCV的模塊架構(gòu) 12
1.4 示例程序 14
1.4.1 配置運(yùn)行環(huán)境 14
1.4.2 邊緣檢測 14
1.4.3 K聚類算法 15
1.4.4 基于特征點(diǎn)的圖像匹配 16
1.4.5 行人檢測 17
1.4.6 手寫數(shù)字識別 18
1.5 本章小結(jié) 19
第 2章 載入、顯示與保存數(shù)據(jù) 20
2.1 圖像的表示 20
2.1.1 圖像基礎(chǔ) 20
2.1.2 NumPy相關(guān)介紹 22
2.2 圖片的讀取與顯示 27
2.2.1 圖片讀取函數(shù) 28
2.2.2 圖像窗口函數(shù) 29
2.2.3 圖片顯示函數(shù) 29
2.3 視頻加載與攝像頭調(diào)用 30
2.3.1 讀取視頻數(shù)據(jù) 30
2.3.2 攝像頭的直接調(diào)用 33
2.4 數(shù)據(jù)保存 33
2.4.1 保存圖像 34
2.4.2 保存視頻 36
2.4.3 保存和讀取XML和YMAL
文件 38
2.5 本章小結(jié) 41
第3章 圖像基本操作 42
3.1 顏色空間 42
3.1.1 顏色空間與轉(zhuǎn)換 42
3.1.2 多通道分離與合并 47
3.2 關(guān)于像素的操作 49
3.2.1 圖像像素統(tǒng)計(jì) 50
3.2.2 兩圖像間的像素操作 53
3.2.3 圖像二值化 58
3.2.4 LUT 62
3.3 圖像連接和圖像變換 64
3.3.1 圖像連接 64
3.3.2 圖像尺寸變換 66
3.3.3 圖像翻轉(zhuǎn)變換 68
3.3.4 圖像仿射變換 69
3.3.5 圖像透視變換 72
3.3.6 極坐標(biāo)變換 75
3.4 在圖像上繪制幾何圖形和生成文字 77
3.4.1 繪制圓形 77
3.4.2 繪制直線 78
3.4.3 繪制橢圓 78
3.4.4 繪制多邊形 79
3.4.5 生成文字 80
3.5 感興趣區(qū)域 83
3.6 圖像金字塔 85
3.6.1 高斯金字塔 85
3.6.2 拉普拉斯金字塔 86
3.7 窗口交互操作 88
3.7.1 圖像窗口滑動條 88
3.7.2 鼠標(biāo)響應(yīng) 90
3.8 本章小結(jié) 92
第4章 圖像直方圖 94
4.1 圖像直方圖的計(jì)算與繪制 94
4.1.1 圖像直方圖的計(jì)算 94
4.1.2 圖像直方圖的繪制 96
4.2 2D直方圖 100
4.3 關(guān)于直方圖的操作 103
4.3.1 直方圖歸一化 103
4.3.2 直方圖比較 106
4.3.3 直方圖均衡化 109
4.3.4 直方圖匹配 111
4.3.5 直方圖反向投影 114
4.4 圖像模板匹配 115
4.5 本章小結(jié) 119
第5章 圖像濾波 120
5.1 圖像卷積 120
5.2 噪聲的種類與生成 124
5.2.1 椒鹽噪聲 124
5.2.2 高斯噪聲 126
5.3 線性濾波 129
5.3.1 均值濾波 129
5.3.2 方框?yàn)V波 132
5.3.3 高斯濾波 134
5.3.4 可分離濾波 137
5.3.5 中值濾波 140
5.3.6 雙邊濾波 142
5.4 圖像邊緣檢測 145
5.4.1 邊緣檢測原理 145
5.4.2 Sobel算子 148
5.4.3 Scharr算子 151
5.4.4 生成邊緣檢測濾波器 152
5.4.5 Laplacian算子 154
5.4.6 Canny算法 156
5.5 本章小結(jié) 158
第6章 圖像形態(tài)學(xué)操作 159
6.1 像素距離與連通域 159
6.1.1 圖像距離變換 159
6.1.2 圖像連通域分析 164
6.2 腐蝕與膨脹 170
6.2.1 圖像腐蝕 170
6.2.2 圖像膨脹 175
6.3 形態(tài)學(xué)應(yīng)用 178
6.3.1 開運(yùn)算 178
6.3.2 閉運(yùn)算 180
6.3.3 形態(tài)學(xué)梯度 180
6.3.4 頂帽運(yùn)算 181
6.3.5 黑帽運(yùn)算 181
6.3.6 擊中擊不中變換 182
6.3.7 圖像細(xì)化 185
6.4 本章小結(jié) 187
第7章 目標(biāo)檢測 189
7.1 形狀檢測 189
7.1.1 直線檢測 189
7.1.2 直線擬合 198
7.1.3 圓形檢測 200
7.2 輪廓檢測 202
7.2.1 輪廓發(fā)現(xiàn)與繪制 203
7.2.2 輪廓面積 207
7.2.3 輪廓長度 208
7.2.4 輪廓外接多邊形 209
7.2.5 點(diǎn)到輪廓距離 213
7.2.6 凸包檢測 215
7.3 矩的計(jì)算 216
7.3.1 幾何矩與中心矩 217
7.3.2 Hu矩 218
7.3.3 基于Hu矩的輪廓匹配 220
7.4 點(diǎn)集擬合 222
7.5 二維碼檢測 224
7.6 本章小結(jié) 226
第8章 圖像分析與修復(fù) 228
8.1 傅里葉變換 228
8.1.1 離散傅里葉變換 228
8.1.2 通過傅里葉變換計(jì)算卷積 235
8.1.3 離散余弦變換 236
8.2 積分圖 240
8.3 圖像分割 243
8.3.1 漫水填充法 244
8.3.2 分水嶺法 246
8.3.3 Grabcut圖像分割 249
8.3.4 Mean-Shift分割算法 251
8.4 圖像修復(fù) 254
8.5 本章小結(jié) 256
第9章 特征點(diǎn)檢測與匹配 258
9.1 角點(diǎn)檢測 258
9.1.1 顯示關(guān)鍵點(diǎn) 258
9.1.2 Harris角點(diǎn)檢測 261
9.1.3 Shi-Tomasi角點(diǎn)檢測 264
9.1.4 亞像素級別角點(diǎn)檢測 266
9.2 特征點(diǎn)檢測 268
9.2.1 關(guān)鍵點(diǎn) 268
9.2.2 描述子 269
9.2.3 SIFT特征點(diǎn)檢測 270
9.2.4 SURF特征點(diǎn)檢測 273
9.2.5 ORB特征點(diǎn)檢測 276
9.3 特征點(diǎn)匹配 279
9.3.1 DescriptorMatcher類 279
9.3.2 暴力匹配 281
9.3.3 顯示特征點(diǎn)匹配結(jié)果 282
9.3.4 FLANN匹配 284
9.3.5 RANSAC優(yōu)化特征點(diǎn)匹配 287
9.4 本章小結(jié) 290
第 10章 立體視覺 291
10.1 單目視覺 291
10.1.1 單目相機(jī)模型 291
10.1.2 標(biāo)定板角點(diǎn)提取 294
10.1.3 單目相機(jī)標(biāo)定 298
10.1.4 單目相機(jī)校正 302
10.1.5 單目投影 305
10.1.6 單目位姿估計(jì) 307
10.2 雙目視覺 312
10.2.1 雙目相機(jī)模型 312
10.2.2 雙目相機(jī)標(biāo)定 313
10.2.3 雙目相機(jī)校正 316
10.3 本章小結(jié) 319
第 11章 視頻分析 321
11.1 差值法檢測移動物體 321
11.2 均值遷移法目標(biāo)跟蹤 323
11.2.1 均值遷移的目標(biāo)跟蹤 324
11.2.2 自適應(yīng)均值遷移的目標(biāo)跟蹤 327
11.3 光流法目標(biāo)跟蹤 330
11.3.1 Faeneback多項(xiàng)式擴(kuò)展算法 332
11.3.2 基于LK光流跟蹤 335
11.4 本章小結(jié) 338
第 12章 OpenCV與機(jī)器學(xué)習(xí) 339
12.1 OpenCV與傳統(tǒng)機(jī)器學(xué)習(xí) 339
12.1.1 k均值聚類算法 339
12.1.2 K近鄰算法 343
12.1.3 決策樹 347
12.1.4 隨機(jī)森林 349
12.1.5 支持向量機(jī) 351
12.2 OpenCV與深度神經(jīng)網(wǎng)絡(luò)應(yīng)用
實(shí)例 354
12.2.1 加載深度學(xué)習(xí)模型 355
12.2.2 圖像識別 357
12.2.3 快速風(fēng)格遷移 359
12.2.4 性別檢測 361
12.3 本章小結(jié) 363