新书推荐
《计算机视觉算法:基于OpenCV的计算机应用开发》
长按二维码
了解及购买
计算机视觉算法入门必读之作, 较少涉及相关算法的数学证明和实现
基于OpenCV, 以实际的例子和项目循序渐进讲解计算机视觉应用开发,提供完整示例代码
编辑推荐
本书和许多计算机视觉书籍的最大区别就在于隐藏了很多复杂的细节,绕开了相关算法的数学证明和实现,利用OpenCV,让读者自己动手,实现一个个具体且实用的例子。全书在简单介绍了计算机视觉的基本概念和OpenCV的使用方法后,按照计算机视觉项目开发的难易程度,从基础的图像视频读写操作,到简单的图像矩阵运算,再到基础的图像处理、视频分析,最后到对象检测与机器学习分类算法,抽丝剥茧层层递进。本书还配备了完整的示例代码,有助于读者自主学习并自己验证各种算法的效果。
内容简介
近年来,随着计算机处理能力和性能的显著提升,计算机视觉领域也得到极大推动,越来越多的算法被引入来更有效地执行计算机视觉任务。本书从基础开始,循序渐进,通过实例介绍每个算法,适合所有对计算机视觉领域感兴趣并希望在实际工作中使用计算机视觉算法的人入门。
首先,你将了解计算机视觉开发所需的工具及其安装和配置,接着你将探索OpenCV框架及其强大的库和函数集。从最简单的图像修改、滤镜和变换开始,你将逐步掌握各种算法知识,直到能执行更复杂的任务,例如,使用深度学习算法进行实时对象检测。
本书涵盖以下内容:
机器学习和人工智能算法。
读取、写入以及处理图像和视频。
执行数学、矩阵和其他类型的图像数据操作。
从反向投影图像创建和使用直方图。
检测运动、提取前景和追踪对象。
使用一组特征检测器算法提取关键点。
开发级联分类器并使用它们,以及训练和测试分类器。
使用TensorFlow来检测多个对象。
作者简介
Amin Ahmadi Tazehkandi是一位伊朗作家、开发工程师和计算机视觉专家。 他在伊朗完成了计算机软件工程学习,并为世界各地的众多软件和工业公司工作。
译者简介
陈靖 51Talk技术总监,前Google工程师,卡内基梅隆大学、北京大学双硕士,《深入理解视频编解码》 作者。
杨欣 51Talk首席机器学习专家,英国南安普顿大学 语音感知与识别方向博士。
目录
译者序
前言
关于作者
关于审稿人
第1章 计算机视觉概述 1
1.1 技术要求 1
1.2 理解计算机视觉 1
1.3 理解计算机图像 3
1.3.1 色彩空间 5
1.3.2 输入、处理和输出 7
1.4 计算机视觉框架和软件库 8
1.5 总结 9
1.6 习题 9
第2章 OpenCV入门 11
2.1 技术要求 12
2.2 OpenCV介绍 12
2.3 OpenCV的下载、编译和安装 14
2.4 在C++或Python项目中使用OpenCV 17
2.5 理解Mat类 19
2.5.1 创建一个Mat对象 20
2.5.2 删除一个Mat对象 23
2.5.3 访问像素 24
2.6 图像读写 27
2.7 视频文件读写 29
2.7.1 使用摄像头 31
2.7.2 使用RTSP和网络流媒体 32
2.8 Mat类家族 32
2.9 总结 32
2.10 习题 33
2.11 补充阅读 33
第3章 数组和矩阵操作 34
3.1 技术要求 34
3.2 Mat类中的操作 35
3.2.1 克隆矩阵 35
3.2.2 计算叉积 35
3.2.3 提取对角线 36
3.2.4 计算点积 36
3.2.5 学习单位矩阵 37
3.2.6 矩阵求逆 37
3.2.7 元素级矩阵乘法 37
3.2.8 全一和全零矩阵 37
3.2.9 矩阵转置 38
3.2.10 重塑Mat对象 39
3.3 元素级矩阵操作 39
3.3.1 基本操作 39
3.3.2 按位逻辑操作 43
3.3.3 比较操作 47
3.3.4 数学操作 48
3.4 矩阵和数组级操作 49
3.4.1 为外推法生成边界 50
3.4.2 翻转(镜像)和旋转图像 51
3.4.3 使用图像通道 52
3.4.4 数学函数 54
3.4.5 搜索和定位功能 58
3.5 总结 60
3.6 习题 61
第4章 绘图、滤镜和变换 62
4.1 技术要求 62
4.2 在图像上绘图 63
4.2.1 在图像上打印文字 63
4.2.2 在图像上绘制形状 66
4.3 图像滤镜 72
4.3.1 模糊/平滑滤镜 72
4.3.2 形态滤镜 76
4.3.3 基于导数的滤镜 79
4.3.4 任意滤镜 80
4.4 图像变换 81
4.4.1 阈值算法 81
4.4.2 色彩空间和类型转换 83
4.5 几何变换 84
4.6 使用色彩表 86
4.7 总结 88
4.8 习题 88
第5章 反向投影和直方图 89
5.1 技术要求 89
5.2 理解直方图 90
5.3 直方图反向投影 95
5.4 直方图比较 103
5.5 直方图均衡 105
5.6 总结 106
5.7 习题 107
5.8 补充阅读 107
第6章 视频分析——运动检测和追踪 108
6.1 技术要求 108
6.2 视频处理 109
6.3 理解均值偏移算法 112
6.4 使用连续自适应均值偏移算法 119
6.5 使用卡尔曼滤波器进行运动追踪和降噪 122
6.6 如何提取背景和前景 129
6.7 总结 132
6.8 习题 132
第7章 对象检测——特征和描述符 133
7.1 技术要求 133
7.2 用于对象检测的模板匹配 134
7.3 检测角点和边缘 137
7.3.1 学习Harris角点检测算法 137
7.3.2 边缘检测算法 143
7.4 轮廓计算和分析 147
7.5 特征检测、描述和匹配 152
7.6 总结 158
7.7 习题 158
第8章 机器学习与计算机视觉 160
8.1 技术要求 160
8.2 支持向量机 161
8.3 用人工神经网络训练模型 169
8.4 级联分类算法 171
8.4.1 使用级联分类器进行对象检测 171
8.4.2 训练级联分类器 174
8.5 使用深度学习模型 180
8.6 总结 184
8.7 习题 184
习题答案 185
你与世界
只差一个
公众号