跳转至

零、前言

OpenCV 可以说是使用最广泛的计算机视觉库,它包含数百种现成的成像和视觉功能,并且在学术界和工业界均得到使用。 随着相机价格的降低和对成像功能的需求的增长,无论是台式机还是移动平台,使用 OpenCV 的应用范围都在大大增加。

本书以示例为基础,介绍了 OpenCV 的主要图像处理算法。 尽管其他 OpenCV 书籍试图解释基础理论或提供几乎完整的应用的大型示例,但该书籍的目标读者是希望尽快拥有一个易于理解的工作示例,并希望在此基础上开发其他功能的人。 那。

本书从介绍性章节开始,其中介绍了库的安装,库的结构以及基本的图像和视频读写实例。 因此,涵盖了以下功能:图像和视频的处理,基本图像处理工具,校正和增强图像,颜色,视频处理和计算摄影。 最后但并非最不重要的一点是,在最后一章中还将考虑基于 GPU 的加速等高级功能。 贯穿始终,对最新主要发行版 OpenCV 3 中的新功能和技术进行了说明。

这本书涵盖的内容

第 1 章,“处理图像和视频文件”向您展示如何读取图像和视频文件。 它还显示了基本的用户交互工具,这些工具在图像处理中用于更改参数值,选择兴趣区域等非常有用。

第 2 章,“建立图像处理工具”描述了后续各章中需要的主要数据结构和基本过程。

第 3 章,“校正和增强图像”处理通常用于校正图像缺陷的转换。 本章介绍了滤波,使用查找表的点转换,几何转换以及用于对图像进行修补和去噪的算法。

第 4 章,“处理颜色”处理图像处理中的颜色主题。 本章介绍如何使用不同的色彩空间以及如何在两个图像之间进行色彩转移。

第 5 章,“视频图像处理”涵盖了使用视频或图像序列的技术。 本章重点介绍用于视频稳定,超分辨率和拼接的算法实现。

第 6 章,“计算摄影”解释了如何读取 HDR 图像并对其进行色调映射。

第 7 章,“加速图像处理”涵盖了图像处理中的一个重要主题:速度。 现代 GPU 是加速耗时图像处理任务的最佳可用技术。

这本书需要什么

本书的目的是通过带您完成许多实际的图像处理项目来教您 OpenCV 图像处理。 将使用最新版本的 OpenCV 3.0 版。

每章都提供了几个现成的示例来说明其中涵盖的概念。 因此,本书着重于尽快为您提供一个可行的示例,以便他们可以在此基础上开发其他功能。

要使用本书,只需要免费软件。 所有示例均已使用免费的 Qt Creator IDE 和 GNU/GCC 编译器进行了开发和测试。 CMake 工具还用于在目标平台上配置 OpenCV 库的构建过程。 此外,第 7 章,“加速图像处理”中显示的 GPU 加速示例需要免费提供的 OpenCL SDK。

这本书适合谁

本书面向已经了解 C++ 编程并想学习如何使用 OpenCV 进行图像处理的读者。 您应该对图像处理的理论知识了解最少。 本书没有涵盖与计算机视觉更相关的主题,例如特征和对象检测,跟踪或机器学习。

约定

在本书中,您会发现许多可以区分不同类型信息的文本样式。 以下是这些样式的一些示例,并解释了其含义。

文本,文件夹名称,文件名,文件扩展名,路径名,系统变量,URL 和用户输入中的代码字显示如下:“每个模块都有一个关联的头文件(例如core.hpp”)。

代码块设置如下:

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace std;
using namespace cv;

int main(int argc, char *argv[])
{
    Mat frame; // Container for each frame

当我们希望引起您对代码块特定部分的注意时,相关行或项目以粗体显示:

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <iostream>

using namespace std;
using namespace cv;

int main(int argc, char *argv[])
{

任何命令行输入或输出的编写方式如下:

C:\opencv-buildQt\install

新术语重要词以粗体显示。 您在屏幕上看到的字词,例如在菜单或对话框中的字样如下所示:“单击Next按钮可将您移至下一个屏幕。”

注意

警告或重要提示会出现在这样的框中。

提示

提示和技巧如下所示。

读者反馈

始终欢迎读者的反馈。 让我们知道您对这本书的看法-您喜欢或不喜欢的东西。 读者反馈对我们很重要,因为它可以帮助我们开发出您真正能充分利用的标题。

要向我们发送一般反馈,只需发送电子邮件<[feedback@packtpub.com](mailto:feedback@packtpub.com)>,然后在您的邮件主题中提及该书的标题。

如果您有专业知识的主题,并且对写作或撰写书籍感兴趣,请参阅 www.packtpub.com/authors 上的作者指南。



回到顶部