OpenCV 教程 | 使用 Python 的 OpenCV

2025 年 3 月 8 日 | 阅读 4 分钟

OpenCV 教程解释了 OpenCV 的基本和高级概念。我们的 OpenCV 课程面向初学者和专家。

OpenCV 是一种开源计算机视觉库。它赋予系统识别面部或其他对象的能力。在本课中,我们将使用 Python 编程语言掌握 OpenCV 的基础知识。

我们的 OpenCV 教程涵盖了所有主题,包括读取和保存图像、Canny 边缘检测、模板匹配、Blob 检测、轮廓、鼠标事件、高斯模糊等。

什么是 OpenCV?

What is OpenCV

OpenCV 是一个用于人工智能、机器学习、人脸识别等计算机视觉的 Python 开源库。

OpenCV 中“计算机视觉”(缩写为“CV”)一词指的是一个研究分支,该分支使计算机能够理解数字图像的内容,例如图片和电影。

理解图像的内容是计算机视觉的目标。它获取图像的描述——可能是对象、文本描述、三维模型等——并从图像中提取它。例如,计算机视觉可以通过使汽车能够识别各种路边物品(例如行人、交通标志和交通灯)然后做出相应的反应来帮助汽车。

What is OpenCV

由于计算机视觉,人类执行的相同类型的工作也可以由计算机有效地完成。下面列出了两个主要任务,定义如下

  • 对象分类:在此过程中,训练模型根据特定对象的数据集将新对象分类为属于您的一个或多个训练类别。
  • 对象识别:在对象识别阶段,我们的模型将查明对象的特定实例。例如,它可以在图像中解析两张脸,分别识别 Rohit Sharma 和 Virat Kohli。
What is OpenCV

历史

OpenCV 代表开源计算机视觉库,广泛用于图像识别。它于 1999 年由英特尔正式推出。它最初是用 C/C++ 编写的,但现在也经常用于 Python 中的计算机视觉。

在 2000 年的 IEEE 计算机视觉与模式识别会议上,OpenCV 的第一个 alpha 版本可供一般使用。从 2001 年到 2005 年,发布了五个 beta 版本。2006 年,发布了最初的 1.0 版本。

2009 年 10 月,OpenCV 第二个版本的关键更新发布。第二个版本的 C++ 接口发生了重大变化,以促进更好、更容易和更安全的类型实现。一个独立的俄罗斯团队开发该软件,每六个月发布一个新版本。

OpenCV 的工作原理

在本教程中,我们将学习计算机如何执行图像识别。

计算机如何识别图像?

人眼根据它们所观察到的内容提供了很多信息。机器可以观察所有事物,将该视觉转换为数字,并将这些数字存储在内存中。在这里,出现了计算机如何将视觉转换为数字的问题。像素值用于将图像转换为数字,这就是答案。像素是数字图片或图形的一个小组件,可以在数字显示设备上显示。

How does computer recognize the image

这些数字显示了图像在该特定位置的亮度。在上面的图像中,我们已经演示了灰度图像的像素值仅包含一个值——那里的黑色强度。

识别图像有两种典型的方法

1. 灰度

仅包含黑白两种颜色的图像称为灰度图像。根据强度评估的对比度,黑色被认为具有最低的强度,而白色具有最高的强度。当使用它时,计算机会为灰度图像中的每个像素分配一个值,具体取决于它的暗度。

2. RGB

RGB 是红色、绿色和蓝色的混合,产生一种新颜色。计算机提取每个像素的值,然后将信息组织成一个数组以供解释。

How does computer recognize the image

为什么 OpenCV 用于计算机视觉?

  • 可以免费下载 OpenCV。
  • OpenCV 库相对较快,因为它用 C/C++ 编写。现在可以使用 Python 来使用它。
  • 它可能仅使用 60-70 MB 的 RAM。
  • 作为 OpenCV,计算机视觉是可移植的,可以与任何支持 C 的设备一起使用。

前提条件

在学习 OpenCV 之前,您必须对 Python 编程有一个基本的了解。

目标受众

初学者和专家都可以从我们的 OpenCV 课程中的信息中受益。

问题

我们保证您不会在本 OpenCV 教程中发现任何问题。但如果有任何错误,请在联系表格中发布问题。


下一个主题OpenCV 安装