OpenCV 4.12.0
开源计算机视觉
加载中...
搜索中...
无匹配项
图像入门

上一个教程: 使用 CUDA 为 Tegra 构建 OpenCV
下一个教程: 为 OpenCV 编写文档

原始作者Ana Huamán
兼容性OpenCV >= 3.4.4
警告
本教程可能包含过时的信息。

目标

在本教程中,您将学习如何

源代码

解释

现在,让我们分析主要代码。 第一步,我们从 OpenCV 示例中读取图像“starry_night.jpg”。 为此,调用 cv::imread 函数使用第一个参数指定的文件路径加载图像。 第二个参数是可选的,指定我们想要的图像格式。 这可能是

  • IMREAD_COLOR 以 BGR 8 位格式加载图像。 这是此处使用的默认设置。
  • IMREAD_UNCHANGED 按原样加载图像 (包括 alpha 通道,如果存在)
  • IMREAD_GRAYSCALE 将图像加载为灰度图像

读取后,图像数据将存储在 cv::Mat 对象中。

注意
OpenCV 支持 Windows 位图 (bmp)、可移植图像格式 (pbm、pgm、ppm) 和 Sun 光栅 (sr, ras) 图像格式。 在插件的帮助下 (如果您自己构建库,则需要指定使用它们,但在我们默认提供的软件包中),您还可以加载 JPEG (jpeg、jpg、jpe)、JPEG 2000 (jp2 - 在 CMake 中命名为 Jasper)、TIFF 文件 (tiff, tif) 和可移植网络图形 (png) 等图像格式。 此外,OpenEXR 也是一种可能性。

之后,将执行检查,以查看图像是否已正确加载。

然后,使用调用 cv::imshow 函数显示图像。 第一个参数是窗口的标题,第二个参数是要显示的 cv::Mat 对象。

因为我们希望我们的窗口一直显示,直到用户按下按键 (否则程序会过早结束),所以我们使用 cv::waitKey 函数,该函数的唯一参数就是它应该等待用户输入的时间 (以毫秒为单位)。 零表示永远等待。 返回值是按下的键。

最后,如果按下的键是“s”键,则将图像写入文件。 为此,调用 cv::imwrite 函数,该函数具有文件路径和 cv::Mat 对象作为参数。