opencv显示图片(opencv显示yuv图像)

简介:

OpenCV是一款计算机视觉库,拥有许多强大的功能,可用于图像处理、目标识别、视频分析等领域。在使用OpenCV进行图片处理时,我们需要使用一些函数来加载、显示和保存图片。本文将介绍如何在OpenCV中显示图片,包括加载、创建窗口、显示图片等。

多级标题:

一、加载图片

二、创建窗口

三、显示图片

四、完整代码示例

内容详细说明:

一、加载图片

在OpenCV中,我们可以使用函数cv::imread()来加载图片。该函数返回一个cv::Mat对象,该对象保存了图像的像素数据。

下面是函数cv::imread()的定义:

cv::Mat cv::imread(const String &filename, int flags=IMREAD_COLOR )

参数说明:

- filename: 图片文件的路径。

- flags: 图像读取方式,默认为IMREAD_COLOR。常用方式有IMREAD_COLOR(读入彩色图像)、IMREAD_GRAYSCALE(读入灰度图像)和IMREAD_UNCHANGED(读入包含带alpha通道的图像)。

加载图片的示例代码如下:

#include

#include

int main()

{

cv::Mat img = cv::imread("image.jpg", cv::IMREAD_COLOR);

if (img.empty())

{

std::cerr << "Failed to load image!" << std::endl;

return -1;

}

cv::namedWindow("Image", cv::WINDOW_AUTOSIZE);

cv::imshow("Image", img);

cv::waitKey(0);

return 0;

}

二、创建窗口

在显示图像之前,我们需要创建一个新窗口。我们可以使用cv::namedWindow()函数来创建一个带有指定名称的窗口。

下面是函数cv::namedWindow()的定义:

void cv::namedWindow(const String &winname, int flags=WINDOW_AUTOSIZE )

参数说明:

- winname: 窗口的名称。

- flags: 窗口的属性,默认为WINDOW_AUTOSIZE。常用属性有WINDOW_NORMAL(可调整窗口大小)和WINDOW_FULLSCREEN(全屏显示窗口)。

示例代码如下:

cv::namedWindow("Image", cv::WINDOW_AUTOSIZE);

三、显示图片

在创建窗口之后,我们可以使用cv::imshow()函数将图像显示在窗口中。

下面是函数cv::imshow()的定义:

void cv::imshow(const String &winname, InputArray mat )

参数说明:

- winname: 窗口的名称。

- mat: 需要显示的图像。

示例代码如下:

cv::imshow("Image", img);

四、完整代码示例

下面是完整的示例代码:

#include

#include

int main()

{

cv::Mat img = cv::imread("image.jpg", cv::IMREAD_COLOR);

if (img.empty())

{

std::cerr << "Failed to load image!" << std::endl;

return -1;

}

cv::namedWindow("Image", cv::WINDOW_AUTOSIZE);

cv::imshow("Image", img);

cv::waitKey(0);

return 0;

}

通过加载图片、创建窗口和显示图片等步骤,我们可以在OpenCV中轻松显示图片。

标签列表