精简 opencv python_机器学习:基于OpenCV和Python的智能图像处理

前言

第1章 智能图像处理入门 1

1.1 智能图像处理概述 1

1.2 环境搭建 2

1.2.1 安装Python 2

1.2.2 安装PyCharm 8

1.2.3 PyCharm的初始化 12

1.2.4 OpenCV及常用库的配置 15

1.3 思考与练习 17

第2章 Python基础 18

2.1 数据类型 18

2.1.1 数值类型 18

2.1.2 字符串类型 20

2.1.3 布尔类型 20

2.2 变量与常量 21

2.3 运算符 21

2.3.1 运算符简介 21

2.3.2 运算符优先级 21

2.4 选择与循环 22

2.4.1 if语句 22

2.4.2 while循环 25

2.4.3 for循环 27

2.4.4 break和continue语句 29

2.5 列表与元组 31

2.5.1 创建 31

2.5.2 查询 32

2.5.3 修改 33

2.5.4 删除 34

2.6 字典 35

2.6.1 字典的创建 35

2.6.2 字典的常规操作 36

2.6.3 字典的遍历 37

2.7 函数 38

2.7.1 函数的定义与调用 38

2.7.2 参数传递 40

2.8 面向对象编程 42

2.8.1 类与对象 42

2.8.2 继承与多态 44

2.9 思考与练习 46

第3章 图像处理基础 48

3.1 图像的基本表示方法 48

3.1.1 二值图像 48

3.1.2 灰度图像 48

3.1.3 彩色图像 49

3.2 图像处理的基本操作 50

3.2.1 图像的读取、显示和保存 50

3.2.2 图像通道的基本操作 53

3.2.3 图像属性的获取 55

3.3 初识Numpy.array 56

3.4 图像运算 57

3.4.1 加法运算 57

3.4.2 减法运算 59

3.4.3 乘法运算 61

3.4.4 除法运算 63

3.4.5 逻辑运算 64

3.5 图像的色彩空间转换 68

3.5.1 色彩空间类型转换函数 68

3.5.2 RGB色彩空间 68

3.5.3 GRAY色彩空间 69

3.5.4 YCrCb色彩空间 70

3.5.5 HSV色彩空间 71

3.6 思考与练习 73

第4章 图像几何变换 74

4.1 仿射变换 74

4.1.1 平移 75

4.1.2 缩放 76

4.1.3 旋转 77

4.2 重映射 78

4.2.1 复制 78

4.2.2 绕x轴翻转 80

4.2.3 绕y轴翻转 82

4.2.4 绕x轴与y轴翻转 85

4.3 投影变换 87

4.3.1 原理简介 87

4.3.2 Python实现 87

4.4 极坐标变换 89

4.4.1 原理简介 89

4.4.2 Python实现 90

4.5 思考与练习 93

第5章  图像直方图处理 94

5.1 直方图概述 94

5.2 直方图的绘制 95

5.2.1 用OpenCV绘制直方图 95

5.2.2 用pyplot绘制直方图 98

5.3 直方图正规化 99

5.3.1 正规化原理 99

5.3.2 Python实现 99

5.3.3 使用normalize实现 100

5.4 直方图均衡化 102

5.4.1 均衡化原理简介 102

5.4.2 Python实现 104

5.4.3 自适应直方图均衡化 108

5.5 思考与练习 110

第6章 图像平滑滤波处理 111

6.1 图像平滑概述 111

6.2 高斯滤波 112

6.2.1 原理简介 112

6.2.2 Python实现 113

6.3 均值滤波 114

6.3.1 原理简介 114

6.3.2 Python实现 115

6.4 方框滤波 117

6.4.1 原理简介 117

6.4.2 Python实现 117

6.5 中值滤波 119

6.5.1 原理简介 119

6.5.2 Python实现 120

6.6 双边滤波 121

6.6.1 原理简介 121

6.6.2 Python实现 122

6.7 2D卷积核的实现 123

6.8 思考与练习 125

第7章 图像阈值处理 126

7.1 阈值处理概述 126

7.2 全局阈值处理 126

7.2.1 原理简介 126

7.2.2 OpenCV阈值函数cv2.threshold() 127

7.2.3 阈值分割实例 127

7.3 局部阈值处理 136

7.3.1 原理简介 136

7.3.2 cv2.adaptiveThreshold()函数 137

7.4 Otsu阈值处理 139

7.4.1 原理简介 139

7.4.2 Python实现 140

7.5 思考与练习 141

第8章 图像形态学处理 142

8.1 腐蚀 142

8.1.1 原理简介 142

8.1.2 Python实现 143

8.2 膨胀 145

8.2.1 原理简介 145

8.2.2 Python实现 146

8.3 形态学梯度运算 148

8.3.1 原理简介 148

8.3.2 Python实现 148

8.4 开运算与闭运算 149

8.4.1 原理简介 150

8.4.2 Python实现 150

8.5 黑帽与礼帽运算 153

8.5.1 原理简介 153

8.5.2 Python实现 154

8.6 思考与练习 155

第9章  图像分割处理 157

9.1 分水岭算法的介绍与实现 157

9.1.1 算法原理 157

9.1.2 OpenCV中的相关函数 158

9.2 图像的金字塔分割 165

9.2.1 图像金字塔简介 165

9.2.2 OpenCV中的相关函数 166

9.2.3 用金字塔算法实现图像分割 170

9.3 思考与练习 171

第10章 图像梯度及边缘检测 172

10.1 Sobel算子 172

10.1.1 原理简介 172

10.1.2 Python实现 173

10.2 Scharr算子 176

10.2.1 原理简介 176

10.2.2 Python实现 176

10.3 Canny边缘检测 179

10.3.1 原理简介 179

10.3.2 Python实现 180

10.4 Laplacian算子 182

10.4.1 原理简介 182

10.4.2 Python实现 182

10.5 高斯拉普拉斯边缘检测 184

10.5.1 原理简介 184

10.5.2 Python实现 185

10.6 思考与练习 187

第11章 图像轮廓检测与拟合 188

11.1 OpenCV中轮廓的查找与绘制 188

11.1.1 轮廓的查找与绘制 188

11.1.2 查找绘制轮廓的实例 189

11.2 OpenCV中轮廓的周长与面积 192

11.2.1 周长计算:cv2.arcLength()函数 192

11.2.2 面积计算:cv2.contourArea()函数 193

11.3 几何图形的最小外包与拟合 194

11.3.1 最小外包矩形 195

11.3.2 最小外包圆形 196

11.3.3 最小外包三角形 197

11.3.4 最小外包椭圆 199

11.3.5 最优拟合直线 200

11.4 霍夫检测 201

11.4.1 霍夫直线检测 201

11.4.2 霍夫圆检测 204

11.5 思考与练习 205

第12章 人脸识别实现 207

12.1 绘图基础 207

12.1.1 绘制直线:cv2.line()函数 207

12.1.2 绘制矩形:cv2.rectangle()函数 209

12.1.3 绘制圆形:cv2.circle()函数 210

12.1.4 绘制椭圆:cv2.ellipse()函数 212

12.1.5 在图形上绘制文字:cv2.putText()函数 213

12.2 人脸检测 214

12.2.1 OpenCV中级联分类器的使用 215

12.2.2 Python实现 215

12.3 人脸识别 217

12.3.1 原理简介 217

12.3.2 相关函数 217

12.3.3 LBPH人脸识别的Python实现 218

12.4 用Fisherfaces与EigenFaces算法进行人脸识别 220

12.4.1 相关函数 220

12.4.2 Python实现 221

12.5 思考与练习 223

你可能感兴趣的:(精简,opencv,python)