技术教育社区
www.teccses.org

OpenCV 4计算机视觉:Python语言实现(原书第3版)

封面

作者:[加]约瑟夫·豪斯(Joseph How

页数:252

出版社:机械工业出版社

出版日期:2021

ISBN:9787111689485

电子书格式:pdf/epub/txt

内容简介

本书首先介绍OpenCV 4以及如何基于Python 3在各种平台上安装OpenCV 4。接下来,你将学习如何执行读取、写入、操纵,以及显示静态图像、视频和摄像机回馈等基本操作。你还将学习图像处理、视频分析、深度估计和分割,并通过构建一个简单的GUI应用程序获得实践经验。接下来,你将处理两类常见问题:人脸检测和人脸识别。你还将学习物体分类和机器学习的概念,这将使你能够创建和使用物体检测器和分类器,甚至跟踪电影或摄像机回馈中的物体。稍后,你将学习3D跟踪和增强现实。本书末尾,你将学习人工神经网络和深度神经网络,学习如何开发手写数字识别以及对人的性别和年龄分类的应用程序。

本书特色

适读人群 :对计算机视觉、机器学习、以及OpenCV感兴趣的读者计算机视觉是一门发展迅速的科学,涵盖了多种应用和技术。这本书不但适用于计算机视觉的初学者,也适用于计算机视觉相关领域的专家。通过学习本书,你将能够利用OpenCV 4和Python 3构建应用程序,将理论应用于实践。
首先,你将了解OpenCV 4,以及如何基于Python 3在各种平台上安装OpenCV 4。然后,你将学习如何执行读取、写入、操纵,以及显示静态图像、视频和摄像头回传信号等基本操作,还将学习图像处理、视频分析、深度估计和分割,并通过构建GUI应用程序获得实践经验。接下来,你将处理两类常见问题——人脸检测和人脸识别,还将学习物体分类和机器学习的概念,这将使你能够创建和使用物体检测器及分类器,甚至跟踪电影或摄像头回传信号中的物体。稍后,你将学习3D跟踪和增强现实的技能。最后,你将学习人工神经网络和深度神经网络,学习如何开发手写数字识别以及对人的性别和年龄进行分类的应用程序。
学习本书之后,你将拥有完成实际计算机视觉项目所需要的技能。
通过阅读本书,你将能够:
?安装并熟悉OpenCV 4的Python 3绑定。
?理解图像处理和视频分析的基础知识。
?利用深度相机来区分前景和背景区域。
?检测和识别物体,并跟踪物体在视频中的运动。
?训练和使用自己的模型匹配图像以及分类物体。
?检测和识别人脸,并对性别和年龄进行分类。
?构建增强现实应用程序来跟踪3D图像。
?使用机器学习模型,包括支持向量机、人工神经网络和深度神经网络。

目录

译者序

前言

作者简介

审校者简介

第1章 安装OpenCV 1

11 技术需求 2

12 OpenCV 4有哪些新特性 2

13 选择和使用合适的安装工具 3

131 在Windows上安装 3

132 在macOS上安装 7

133 在Debian、Ubuntu、Linux Mint以及类似系统上安装 8

134 在其他类UNIX系统上安装 11

14 运行示例 12

15 查找文档、帮助和更新 13

16 本章小结 13

第2章 处理文件、摄像头和GUI 14

21 技术需求 14

22 基本I/O脚本 14

221 读取/写入图像文件 15

222 在图像和原始字节之间进行转换 17

223 基于numpyarray访问图像数据 19

224 读取/写入视频文件 21

225 捕捉摄像头帧 22

226 在窗口中显示图像 23

227 在窗口中显示摄像头帧 24

23 项目Cameo(人脸跟踪和图像处理) 25

24 Cameo:面向对象的设计 26

241 基于managersCaptureManager提取视频流 26

242 基于managersWindowManager提取窗口和键盘 30

243 基于cameoCameo应用所有内容 31

25 本章小结 33

第3章 基于OpenCV的图像处理 34

31 技术需求 34

32 在不同颜色模型之间进行图像转换 34

33 探索傅里叶变换 35

34 创建模块 38

35 边缘检测 38

36 自定义核:获取卷积 39

37 修改应用程序 41

38 基于Canny的边缘检测 43

39 轮廓检测 43

391 边框、最小矩形区域以及最小外接圆 44

392 凸轮廓和Douglas-Peucker算法 46

310 检测线、圆以及其他形状 48

3101 检测线 48

3102 检测圆 49

3103 检测其他形状 50

311 本章小结 50

第4章 深度估计和分割 51

41 技术需求 51

42 创建模块 52

43 从深度摄像头捕捉帧 52

44 将10位图像转换成8位图像 54

45 由视差图创建掩模 56

46 修改应用程序 57

47 基于普通摄像头的深度估计 59

48 基于GrabCut算法的前景检测 64

49 基于分水岭算法的图像分割 67

410 本章小结 69

第5章 人脸检测和识别 70

51 技术需求 71

52 Haar级联的概念化 71

53 获取Haar级联数据 72

54 使用OpenCV进行人脸检测 72

541 在静态图像上进行人脸检测 73

542 在视频上进行人脸检测 74

543 进行人脸识别 77

55 在红外线下换脸 83

551 修改应用程序的循环 84

552 掩模复制操作 86

56 本章小结 88

第6章 使用图像描述符检索和搜索图像 89

61 技术需求 89

62 理解特征检测和匹配的类型 90

63 检测Harris角点 90

64 检测DoG特征并提取SIFT描述符 92

65 检测快速Hessian特征并提取SURF描述符 95

66 使用基于FAST特征和BRIEF描述符的ORB 96

661 FAST 97

662 BRIEF 97

663 蛮力匹配 98

664 匹配两幅图像中的标识 98

67 使用K最近邻和比率检验过滤匹配 101

68 基于FLANN的匹配 104

69 基于FLANN进行单应性匹配 107

610 示例应用程序:文身取证 110

6101 将图像描述符保存到文件 110

6102 扫描匹配 111

611 本章小结 114

第7章 建立自定义物体检测器 115

71 技术需求 115

72 理解HOG描述符 116

721 HOG的可视化 116

722 使用HOG描述图像的区域 117

73 理解非极大值抑制 118

74 理解支持向量机 118

75 基于HOG描述符检测人 119

76 创建并训练物体检测器 122

761 理解BoW 122

762 将BoW应用于计算机视觉领域 123

763 k均值聚类 123

77 检测汽车 124

771 支持向量机和滑动窗口相结合 129

772 检测场景中的汽车 130

773 保存并加载经过训练的支持向量机 135

78 本章小结 135

第8章 物体跟踪 136

81 技术需求 136

82 基于背景差分检测运动物体 137

821 实现基本背景差分器 138

822 使用MOG背景差分器 140

823 使用KNN背景差分器 143

824 使用GMG和其他背景差分器 145

83 利用MeanShift和CamShift跟踪彩色物体 147

831 规划MeanShift示例 148

832 计算和反投影颜色直方图 148

833 实现MeanShift示例 152

834 使用CamShift 153

84 使用卡尔曼滤波器寻找运动趋势 155

841 理解预测和更新阶段 155

842 跟踪鼠标光标 156

85 跟踪行人 158

851 规划应用程序的流程 158

852 比较面向对象范式和函数范式 159

853 实现行人类 160

854 实现主函数 162

855 考虑接下来的步骤 165

86 本章小结 165

第9章 摄像头模型和增强现实 166

91 技术需求 166

92 理解3D图像跟踪和增强现实 167

921 理解摄像头和镜头参数 168

922 理解cv2solvePnPRansac 172

93 实现demo应用程序 174

931 导入模块 174

932 执行灰度转换 175

933 执行2D到3D的空间转换 176

934 实现应用程序类 177

935 运行和测试应用程序 192

94 改进3D跟踪算法 195

95 本章小结 195

第10章 基于OpenCV的神经网络导论 197

101 技术需求 198

102 理解人工神经网络 198

1021 理解神经元和感知器 199

1022 理解神经网络的层 200

103 用OpenCV训练基本人工神经网络 202

104 训练多阶段人工神经网络分类器 203

105 基于人工神经网络识别手写数字 207

1051 理解手写数字的MNIST数据库 207

1052 为MNIST数据库选择训练参数 208

1053 实现模块来训练人工神经网络 208

1054 实现简单测试模块 212

1055 实现主模块 212

1056 试着提升人工神经网络训练性能 217

1057 寻找其他潜在应用程序 218

106 在OpenCV中使用其他框架的深度神经网络 219

107 基于第三方深度神经网络的物体检测和分类 220

108 基于第三方深度神经网络的人脸检测和分类 223

109 本章小结 228

附录 基于曲线滤波器弯曲颜色空间 229

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《OpenCV 4计算机视觉:Python语言实现(原书第3版)》
Article link:https://www.teccses.org/1289924.html