OpenCV图像处理技术(微课版)

OpenCV图像处理技术(微课版)
作 者: 傅贤君
出版社: 电子工业出版社
丛编项:
版权说明: 本书为出版图书,暂不支持在线阅读,请支持正版图书
标 签: 暂缺
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  傅贤君(1994.5―),男、东北大学硕士毕业,人工智能技术应用专业负责人,从事图像算法开发多年,具有丰富的图像识别、分割及目标检测领域相关知识,在 外知名会议、期刊发表相关论文多篇,拥有专利5项。

内容简介

本书通过项目化的教学模式,采用“任务驱动、案例教学、探究实践”的教学方法组织编写而成,可以培养学生的动手能力,充分发挥学生的 作用。本书系统地介绍了图像处理基础、图像运算、图像增强、图像分析4个方面的相关知识,内容包括数字图像处理基础、图像运算、色彩空间与几何变换、阈值处理与图像平滑、形态学操作、图像梯度与边缘检测、图像金字塔、图像轮廓、图像直方图、模板匹配与霍夫变换、图像分割与提取、视频处理,同时结合综合实战,注重理论联系实际,培养学生的综合实践能力。案例选取贴近岗位真实应用,以“任务目标→任务场景→任务准备→任务演练→任务巩固”的设计思路,深入解析计算机视觉的方式与方法,引导学生崇德尚能、知行合一、服务社会,形成良好的职业素养。

图书目录

项目1 数字图像处理基础 1

任务1 数字图像处理简介 1

1.1.1 数字图像处理的概念 2

1.1.2 数字图像处理的应用领域 4

任务2 OpenCV的安装配置 7

1.2.1 OpenCV简介 7

1.2.2 Python的安装配置 8

1.2.3 Numpy的安装配置 11

1.2.4 OpenCV库的安装配置 11

1.2.5 Jupyter Notebook的安装与使用 12

任务3 读取图像、显示图像、保存图像 15

1.3.1 读取图像 16

1.3.2 显示图像 16

1.3.3 保存图像 17

任务4 图像的属性与图像像素级操作 18

1.4.1 图像的属性 18

1.4.2 图像像素级操作 19

项目2 图像运算 22

任务1 图像算术运算 22

2.1.1 图像算术运算的概念 23

2.1.2 图像加法 23

2.1.3 图像减法 24

任务2 图像淡入淡出效果 27

任务3 图像逻辑运算 28

2.3.1 按位与运算 29

2.3.2 按位或运算 30

2.3.3 按位非运算 31

2.3.4 按位异或运算 31

任务4 面部加密及解码 34

项目3 色彩空间与几何变换 39

任务1 图像类型转换 39

3.1.1 RGB色彩空间 40

3.1.2 GRAY色彩空间 41

3.1.3 HSV色彩空间 41

3.1.4 图像类型转换函数 42

任务2 提取 颜色的物体 44

3.2.1 HSV色彩空间的进阶知识 44

3.2.2 标记 颜色 45

任务3 简单的几何变换 48

3.3.1 缩放图像 48

3.3.2 翻转图像 50

3.3.3 平移图像 50

3.3.4 旋转图像 51

任务4 图像几何矫正 54

项目4 阈值处理与图像平滑 57

任务1 阈值处理基础 57

4.1.1 简单阈值法 58

4.1.2 Otsu阈值法 59

4.1.3 自适应阈值法 59

任务2 使用滑动条调整阈值 62

4.2.1 cv2.createTrackbar()函数 63

4.2.2 cv2.getTrackbarPos()函数 63

任务3 平滑处理基础 65

4.3.1 均值滤波 65

4.3.2 高斯滤波 66

4.3.3 中值滤波 66

4.3.4 双边滤波 67

任务4 使用滑动条进行平滑处理 70

项目5 形态学操作 73

任务1 腐蚀与膨胀 73

5.1.1 结构元 74

5.1.2 腐蚀 74

5.1.3 膨胀 75

任务2 通用形态学函数 77

任务3 形态学结构元 81

任务4 去除电子书笔记中的注释 83

项目6 图像梯度与边缘检测 85

?任务1 使用Sobel算子进行边缘检测 85

6.1.1 图像梯度的概念 86

6.1.2 Sobel算子 86

6.1.3 cv2.convertScaleAbs()函数 87

任务2 使用Laplacian算子进行边缘检测 89

任务3 Canny边缘检测算法 91

6.3.1 Canny边缘检测算法的概念 92

6.3.2 cv2.Canny()函数 92

任务4 实战:车道检测 94

项目7 图像金字塔 97

任务1 图像金字塔与高斯金字塔 97

7.1.1 图像金字塔的概念 98

7.1.2 高斯金字塔 98

任务2 拉普拉斯金字塔 100

任务3 还原高分辨率的图像 103

任务4 使用图像金字塔进行图像融合 106

项目8 图像轮廓 109

任务1 查找与绘制图像轮廓 109

8.1.1 查找图像轮廓 110

8.1.2 绘制图像轮廓 110

任务2 计算轮廓长度与面积 112

8.2.1 轮廓长度的计算方法 113

8.2.2 轮廓面积的计算方法 113

任务3 实现形状匹配 115

任务4 轮廓的几何形状拟合 116

8.4.1 矩形包围框 117

8.4.2 小外接矩形框 117

8.4.3 小包围圆形 118

8.4.4 逼近多边形 118

任务5 绘制凸包 122

任务6 凸缺陷检测 124

任务7 实战:轮廓分类 126

8.7.1 宽高比 126

8.7.2 占空比 126

项目9 图像直方图 128

任务1 绘制直方图 128

9.1.1 图像直方图 129

9.1.2 绘制图像直方图 129

任务2 直方图均衡化 131

9.2.1 直方图均衡化的概念 132

9.2.2 自适应直方图均衡化 132

任务3 直方图比较 134

任务4 直方图阈值分割 136

项目10 模板匹配与霍夫变换 139

任务1 模板匹配的概念 139

10.1.1 模板匹配 140

10.1.2 cv2.matchTemplate()函数 140

10.1.3 cv2.minMaxLoc()函数 141

任务2 实战:印花检测 142

任务3 霍夫变换的概念 144

10.3.1 霍夫线变换 145

10.3.2 霍夫圆变换 145

任务4 实战:车道检测进阶 147

项目11 图像分割与提取 150

任务1 图像分割与提取的概念 150

11.1.1 基于阈值的分割方法 151

11.1.2 基于区域的分割方法 151

11.1.3 基于边缘的分割方法 151

11.1.4 基于特定理论的分割方法 151

11.1.5 基于神经网络的分割方法 152

任务2 实现分水岭算法 153

11.2.1 分水岭算法的概念 154

11.2.2 分水岭算法的步骤 154

11.2.3 距离变换函数 154

11.2.4 图像标注函数 155

11.2.5 分水岭算法函数 155

任务3 鼠标交互 160

任务4 实现区域生长算法 163

11.4.1 区域生长算法的原理 163

11.4.2 灰度差值的区域生长算法实现 163

项目12 视频处理 167

任务1 视频处理基础 167

12.1.1 cv2.VideoCapture()函数 168

12.1.2 捕获帧 168

12.1.3 释放帧 168

任务2 保存视频 170

任务3 对视频进行逐帧处理 171

任务4 实战:口罩佩戴检测 173

12.4.1 口罩佩戴检测模型简介 173

12.4.2 口罩佩戴检测模型分析 174

项目13 综合实战 176

任务1 产品缺陷检测 176

13.1.1 背景介绍 177

13.1.2 逻辑框示意图 177

13.1.3 高斯滤波 177

13.1.4 图像二值化 178

13.1.5 形态学操作 178

13.1.6 瑕疵判断 178

任务2 图像拼接 182

13.2.1 背景介绍 183

13.2.2 逻辑框示意图 183

13.2.3 SIFT角点检测算法 183

13.2.4 Brute-Force匹配 184

13.2.5 图像融合 185

任务3 人脸检测与人脸识别 188

13.3.1 背景介绍 188

13.3.2 逻辑框示意图 188

13.3.3 cv2.CascadeClassifier()函数 188

13.3.4 faceCascade.detectMultiScale()函数 189

任务4 人体目标跟踪检测 193

13.4.1 背景介绍 193

13.4.2 逻辑框示意图 193

13.4.3 OpenCV目标追踪算法 194