基本信息
- 出版社 : 机械工业出版社; 第1版 (2019年7月1日)
- 出版日期 : 2019年7月1日
- 品牌 : 北京华章图文信息有限公司
- 语种: : 简体中文
- 文件大小 : 61521 KB
- 纸书页数 : 450页
- 大卫·米兰·埃斯克里瓦 (作者), 冀臻 (译者)
- 下载格式:azw3、epub、mobi
内容简介
本书通过实例和项目讲解OpenCV概念及其算法。首先介绍OpenCV的安装和图像处理的基础知识。然后,覆盖用户界面并深入讲解图像处理,读者将学到复杂的计算机视觉算法,并探索机器学习和人脸检测。之后,本书将介绍如何在复杂场景中创建光流视频分析和背景减除,还将讲解文本分割和识别,以及新的和改进的深度学习模块的基础知识。最后,本书介绍了OpenCV的基础知识,例如矩阵运算、滤波器和直方图,帮读者掌握常用的计算机视觉技术,从头开始构建OpenCV项目。
前言
OpenCV是用于开发计算机视觉应用程序的最流行的库之一,它使我们能够实时运行许多不同的计算机视觉算法。它已存在很多年了,并且已经成为该领域的标准库。OpenCV的主要优势之一是它经过高度优化,几乎可以在所有平台上使用。
本书首先简要介绍计算机视觉的各个领域以及相关的OpenCV函数,这些函数均用C++编写。每章都包含实际的例子和代码示例,用于演示用例。这有助于你轻松掌握主题并了解如何在现实生活中应用它们。综上所述,这是一本实用的指导书,你将从中学会如何在C++中使用OpenCV并使用这个库构建各种应用程序。
本书目标读者
本书面向不熟悉OpenCV并希望在C++中使用OpenCV开发计算机视觉应用程序的开发人员。了解C++的基本知识将有助于理解本书。本书对于想要学习计算机视觉入门知识并理解基本概念的人也很有用。他们应该了解基本的数学概念,例如向量、矩阵和矩阵乘法,以便充分利用本书。在阅读本书的过程中,你将学会如何使用OpenCV从零开始构建各种计算机视觉应用程序。
本书涵盖内容
第1章介绍在各种操作系统上的安装步骤,并介绍人类视觉系统以及计算机视觉中的各种主题。
第2章讨论如何在OpenCV中读/写图像和视频,并解释如何使用CMake构建项目。
第3章介绍如何构建图形用户界面和鼠标事件检测器,以构建交互式应用程序。
第4章探讨直方图和滤波器,并展示如何对图像进行卡通化处理。
第5章描述各种图像预处理技术,如噪声消除、阈值处理和轮廓分析。
第6章处理目标识别和机器学习,以及如何使用支持向量机来构建目标分类系统。
第7章讨论人脸检测和Haar级联,然后解释这些方法如何用于检测人脸的各个部位。
第8章探讨背景减除、视频监控和形态图像处理,并且描述它们如何相互连接。
第9章介绍如何使用不同技术跟踪实时视频中的目标,例如,基于颜色和基于特征进行跟踪。
第10章讨论光学字符识别、文本分割,并介绍Tesseract OCR引擎。
第11章深入探究Tesseract OCR引擎,解释如何将其用于文本检测、提取和识别。
第12章探讨如何使用两种常用的深度学习架构在OpenCV中应用深度学习,在这两种架构中,YOLO v3用于目标检测,而单发探测器(Single Shot Detector)用于人脸检测。
如何充分利用本书
了解C++的基本知识将有助于理解本书内容。这些例子使用以下技术进行构建:OpenCV 4.0、CMake 3.3.x或更新版本、Tesseract、Leptonica(依赖于Tesseract)、Qt(可选)和OpenGL(可选)。
相关章节提供了详细的安装说明。
下载示例代码
本书的示例代码可以从//www.packtpub.com通过个人账号下载,也可以访问华章图书官网//www.hzbook.com,通过注册并登录个人账号下载。
本书的代码包还托管在GitHub上,如果代码有更新,会在现有的GitHub库上更新:https://github.com/PacktPublishing/Learn-OpenCV-4-By-Building-Projects-Second-Edition。
下载彩色图像
本书提供了一个PDF文件,其中包含书中使用的屏幕截图/图表的彩色图像:https://www.packtpub.com/sites/default/files/downloads/9781789341225_ColorImages.pdf。
精彩书摘
计算机视觉应用程序很有趣,而且很有用,但是其底层算法是计算密集型的。随着云计算的出现,我们正在获得更强大的处理能力。
OpenCV库使我们能够实时高效地运行计算机视觉算法。它已经存在很多年了,并已成为该领域的标准库。OpenCV的主要优势之一是它经过高度优化,几乎可以在所有平台上使用。
本书将介绍我们要用到的各种算法和使用它们的原因,以及如何在OpenCV中实现它们。
在本章中,我们将学习如何在各种操作系统上安装OpenCV。我们将讨论OpenCV提供的开箱即用的服务,以及使用内置函数可以做的各种事情。
本章介绍以下主题:
·人类如何处理视觉数据,如何理解图像内容?
·我们能用OpenCV做什么,OpenCV中可以用于实现这些目标的各种模块是什么?
·我们如何在Windows、Linux和Mac OS X上安装OpenCV?