计算机视觉 入门项目,《OpenCV 4计算机视觉项目实战 》 —1 OpenCV入门

第1章

OpenCV入门

计算机视觉应用程序很有趣,而且很有用,但是其底层算法是计算密集型的。随着云计算的出现,我们正在获得更强大的处理能力。

OpenCV库使我们能够实时高效地运行计算机视觉算法。它已经存在很多年了,并已成为该领域的标准库。OpenCV的主要优势之一是它经过高度优化,几乎可以在所有平台上使用。

本书将介绍我们要用到的各种算法和使用它们的原因,以及如何在OpenCV中实现它们。

在本章中,我们将学习如何在各种操作系统上安装OpenCV。我们将讨论OpenCV提供的开箱即用的服务,以及使用内置函数可以做的各种事情。

本章介绍以下主题:

人类如何处理视觉数据,如何理解图像内容?

我们能用OpenCV做什么,OpenCV中可以用于实现这些目标的各种模块是什么?

我们如何在Windows、Linux和Mac OS X上安装OpenCV?

1.1 了解人类视觉系统

在进入OpenCV的功能之前,首先需要了解为什么要构建这些功能。了解人类视觉系统的工作原理是非常重要的,这样你就可以开发出正确的算法。

计算机视觉算法的目标是理解图像和视频的内容,对此,人类似乎毫不费力!那么,我们如何才能让机器以相同的精度做到这一点呢?

请看图1-1。

972b37b28d6a17c5e46a8f06f86928d4.png

图 1-1

人眼可以捕获视野内的所有信息,例如颜色、形状、亮度等。如图1-1所示,人眼捕获到关于两个主要对象的所有信息,并以某种方式将其存储起来。如果能知道人眼系统是如何工作的,我们就可以利用它来实现我们的目的。

例如,以下是我们需要知道的一些事情:

我们的视觉系统对低频内容比高频内容更敏感。低频内容是指像素值不会快速变化的平面区域,高频内容是指具有角和边缘的区域,其像素值波动很大。我们可以很容易地看到平面上是否有斑点,但很难在高度纹理化的表面发现类似的东西。

人眼对亮度的变化比对颜色的变化更敏感。

我们的视觉系统对运动很敏感。即使没有直接看到,我们也能很快识别出视野中是否有某些东西正在移动。

我们倾向于在脑海中记下视野中的特征点。假设你看到一张白色的桌子,它有四条黑色的桌腿,桌面的一角有一个红点。当你看着这张桌子时,你会立刻记下表面和桌腿有相反的颜色,并且其中一个角上有一个红点。我们的大脑非常聪明!我们自动执行此操作,这样,当再次遇到该对象时,就能够立即识别出它。

为了认识人类的视觉,让我们来看一张俯视图,以及我们看各种事物的角度,如图1-2所示。

我们的视觉系统实际上还可以提供更多功能,但这应该足够了。你可以通过在网上阅读人类视觉系统(HVS)模型来做进一步探索。

7a073d5b42bd2ca30842bcbee13728c5.png

图 1-2

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值