本书以实践为导向,将理论与实践相结合,深入浅出地介绍了使用Python与OpenCV进行计算机视觉实践的基本知识和具体方法。
本书旨在为各种背景的读者提供通向计算机视觉世界的路径,从零基础的初学者到有编程经验的开发者都能够受益。其中,第1章介绍了人工智能的历史与发展,第2章提供了Python编程的基础,而第3章至第9章详细介绍了OpenCV的安装、配置和应用,帮助读者构建坚实的计算机视觉基础。最后,第10章为实例练习,巩固了所学知识,可以作为课堂和课后作业的良好补充。
本书作为普通高等院校计算机科学、人工智能、数学等专业相关课程的材。学习本书无需前置知识。本书也可作为所有专业学生了解计算机视觉与编程地参考书。
1. 内容简单、易学,简化理论,重视实践。
2. 适合零基础读者,没有编程基础也可以。
3. 案例丰富,每章都有十几个实例。
4. 基于Python+OpenCV平台实现。
郭佳 [个人经历] 华中科技大学软件工程专业硕士,日本法政大学信息科学专业硕士、博士,日本京都大学特任研究员、特任助理教授。SCI期刊Applied Intelligence, Complex & intelligent systems 审稿人 [研究方向] 人工智能、进化计算、神经网络。 [学术成果] 近年来在SCI、EI期刊上发表多篇论文,多次参与进化计算领域会议。 [主要荣誉] 2017年1月,在国际会议 International Symposium on Artificial Life and Robotics 上获得青年作者奖(Young Author Award)
第1章 认识人工智能 1
1.1 人工智能概述 2
1.2 计算机视觉概述 3
1.3 R-CNN系列算法 5
1.3.1 R-CNN算法 5
1.3.2 Fast R-CNN算法 7
1.3.3 Faster R-CNN算法 8
1.4 残差网络 10
1.4.1 ResNet概述 10
1.4.2 ResNet背景 10
1.4.3 ResNet核心内容 11
1.4.4 ResNet结构 13
1.5 YOLO 19
1.5.1 YOLOv1 19
1.5.2 YOLOv2 21
1.5.3 YOLOv3 23
1.5.4 YOLOv4 24
1.5.5 YOLOv5 28
1.6 本章小结 29
1.7 习题 30
第2章 Python基础 31
2.1 Python概述 32
2.2 开发环境的安装 33
2.2.1 Python的下载与安装 33
2.2.2 PyCharm的下载与安装 37
2.2.3 第一次使用PyCharm 40
2.3 Python语法 42
2.3.1 Python的保留字 42
2.3.2 输出“hello world” 44
2.3.3 使用if()判断 44
2.3.4 使用for()循环 45
2.3.5 使用while()循环 45
2.3.6 Python数字 47
2.3.7 Python字符串 49
2.3.8 Python时间 53
2.3.9 Python内置函数 54
2.3.10 Python运算符 55
2.3.11 Python实例 58
2.4 本章小结 61
2.5 习题 61
第3章 使用OpenCV处理
图像 71
3.1 OpenCV基础 72
3.1.1 Python的第三方库(框架) 72
3.1.2 OpenCV的安装与导入 73
3.2 读取图像 81
3.3 显示图像 82
3.4 保存图像 83
3.5 图像属性 84
3.6 本章小结 85
3.7 习题 86
第4章 使用OpenCV和
NumPy操作像素 87
4.1 NumPy与像素 88
4.2 创建数组 90
4.3 操作数组 92
4.4 创建图像 93
4.5 拼接图像 96
4.6 修改图像 99
4.7 本章小结 100
4.8 习题 100
第5章 使用OpenCV绘制
图形与文字 101
5.1 绘制线段 102
5.2 绘制矩形 103
5.3 绘制圆 106
5.4 绘制多边形 109
5.5 绘制文字 111
5.6 本章小结 114
5.7 习题 114
第6章 使用OpenCV对图像
进行几何变换 115
6.1 缩放 116
6.2 翻转 117
6.3 平移 119
6.4 旋转 119
6.5 本章小结 121
6.6 习题 121
第7章 使用OpenCV进行模板
匹配和图像分割 122
7.1 模板匹配 123
7.2 图像分割 126
7.2.1 使用分水岭算法的图像分割 126
7.2.2 图像金字塔 129
7.2.3 交互式前景提取 133
7.3 本章小结 136
7.4 习题 136
第8章 使用OpenCV进行
特征检测 137
8.1 角检测 138
8.2 特征点检测 140
8.3 特征匹配与对象查找 142
8.4 本章小结 146
8.5 习题 146
第9章 使用OpenCV进行
人脸检测与识别 147
9.1 人脸识别技术的发展历程 148
9.2 人脸检测与识别方法介绍 148
9.3 人脸检测 150
9.4 人脸识别 153
9.5 本章小结 154
9.6 习题 154
第10章 实例练习 155
10.1 实例一:绘制4条竖线 156
10.2 实例二:绘制4个空心正方形 156
10.3 实例三:绘制4个实心正方形 157
10.4 实例四:绘制3个空心圆 158
10.5 实例五:绘制3个实心圆 159
10.6 实例六:绘制彩色圆环 159
10.7 实例七:绘制四边形和圆 160
10.8 实例八:绘制线条粗细不同的
四边形 161
10.9 实例九:在缩放后的图像上绘制
4条竖线 162
10.10 实例十:在缩放后的图像上绘制
4个矩形 163
10.11 实例十一:在缩放后的图像上绘制
矩形与文字 163