21xrx.com
2024-12-22 21:25:55 Sunday
登录
文章检索 我的文章 写文章
C++如何实现图像显示
2023-07-08 04:29:12 深夜i     --     --
C++ 图像 显示 实现

C++作为一种高级的编程语言,常用于图像处理、计算机视觉等领域。图像显示是其中一个重要的应用之一。下面将介绍如何使用C++实现图像显示。

1. 载入图像:要显示图像,首先需要将图像载入到程序中。C++中可使用OpenCV库或其他图像处理库来载入图像。以下是使用OpenCV载入图像的示例代码:


#include <opencv2/opencv.hpp>

int main() {

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

  if (image.empty())

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

    return -1;

  

  cv::imshow("My Image", image);

  cv::waitKey(); // Wait for a keystroke

  return 0;

}

该示例中,我们使用`cv::imread`函数来载入一张名为`image.jpg`的图像,并将其存储在`cv::Mat`类型的变量`image`中。如果载入失败,我们会输出错误信息。然后,使用`cv::imshow`函数来显示图像,并指定显示窗口的名称为"My Image"。最后,使用`cv::waitKey`函数等待用户按下任意键。

2. 显示图像:一旦图像被载入到程序中,就可以使用图像处理库的函数来显示图像。以下是使用OpenCV显示图像的示例代码:


#include <opencv2/opencv.hpp>

int main() {

  cv::Mat image = ...; // Load image here

  cv::imshow("My Image", image);

  cv::waitKey(); // Wait for a keystroke

  return 0;

}

该示例中,我们使用`cv::imshow`函数来显示名为"My Image"的窗口,并在其中显示`image`变量中的图像。然后,使用`cv::waitKey`函数等待用户按下任意键。

3. 在图像上绘制图形:除了显示原始图像外,我们还可以在图像上绘制各种图形,如线条、矩形、圆形等。以下是使用OpenCV在图像上绘制矩形的示例代码:


#include <opencv2/opencv.hpp>

int main() {

  cv::Mat image = ...; // Load image here

  cv::rectangle(image, cv::Point(100, 100), cv::Point(200, 200), cv::Scalar(0, 0, 255), 2);

  // Draw a red rectangle at (100, 100) to (200, 200) with thickness 2

  cv::imshow("My Image", image);

  cv::waitKey(); // Wait for a keystroke

  return 0;

}

该示例中,我们使用`cv::rectangle`函数在图像上绘制一个名称为`My Image`的窗口,并在其中显示`image`变量中的图像。然后,在图像上绘制一个红色矩形,起点坐标为(100, 100),终点坐标为(200, 200),线条厚度为2。

综上所述,使用C++实现图像显示非常简单。只需要加载图像,并使用图像处理库函数来显示和绘制图形即可。这些函数可以让我们实现各种功能,使得图像处理变得更加简单和方便。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复