图像加密和解密 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.1GRAY色彩空间 77
4.1.2XYZ色彩空间 78
4.1.3YCrCb色彩空间 78
4.1.4HSV色彩空间 79
4.1.5HLS色彩空间 80
4.1.6CIEL*a*b*色彩空间 80
4.1.7CIEL*u*v*色彩空间 81
4.1.8Bayer色彩空间 82
4.2类型转换函数 82
4.3类型转换实例 88
4.3.1通过数组观察转换效果 88
4.3.2图像处理实例 92
4.4HSV色彩空间讨论 93
4.4.1基础知识 93
4.4.2获取指定颜色 95
4.4.3标记指定颜色 96
4.4.4标记肤色 100
4.4.5实现艺术效果 101
4.5alpha通道 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.6x轴、y轴互换 126
5.5.7图像缩放 128
第6章阈值处理 130
6.1threshold函数 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.3Otsu处理 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.62D卷积 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.1Sobel理论基础 189
9.2Sobel算子及函数使用 191
9.2.1参数ddepth 192
9.2.2方向 195
9.2.3实例 196
9.3Scharr算子及函数使用 200
9.4Sobel算子和Scharr算子的比较 204
9.5Laplacian算子及函数使用 206
9.6算子总结 208
第10章CANNY边缘检测 209
10.1Canny边缘检测基础 209
10.2Canny函数及使用 213
第11章图像金字塔 215
11.1理论基础 215
11.2pyrDown函数及使用 217
11.3pyrUp函数及使用 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.3Hu矩 248
12.3.1Hu矩函数 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.2Extent 281
12.7.3Solidity 282
12.7.4等效直径(EquivalentDiameter) 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.4pyplot模块介绍 319
13.4.1subplot函数 319
13.4.2imshow函数 320
第14章傅里叶变换 324
14.1理论基础 324
14.2Numpy实现傅里叶变换 328
14.2.1实现傅里叶变换 329
14.2.2实现逆傅里叶变换 330
14.2.3高通滤波示例 331
14.3OpenCV实现傅里叶变换 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.2HoughLines函数 357
16.1.3HoughLinesP函数 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.1VideoCapture类 383
18.1.1类函数介绍 383
18.1.2捕获摄像头视频 387
18.1.3播放视频文件 388
18.2VideoWriter类 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.4K近邻模块的基本使用 427
20.5K近邻手写数字识别 429
第21章支持向量机 431
21.1理论基础 431
21.2SVM案例介绍 434
第22章K均值聚类 439
22.1理论基础 439
22.1.1分豆子 439
22.1.2K均值聚类的基本步骤 441
22.2K均值聚类模块 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.2LBPH人脸识别 454
23.2.1基本原理 454
23.2.2函数介绍 456
23.2.3案例介绍 457
23.3EigenFaces人脸识别 458
23.3.1基本原理 458
23.3.2函数介绍 459
23.3.3案例介绍 460
23.4Fisherfaces人脸识别 461
23.4.1基本原理 461
23.4.2函数介绍 463
23.4.3案例介绍 464
23.5人脸数据库 465
参与文献 467
附录A范例 470