📜  绘制矩形opencv c++(1)

📅  最后修改于: 2023-12-03 15:41:15.920000             🧑  作者: Mango

绘制矩形 OpenCV C++

OpenCV是一个计算机视觉库,可用于实现各种应用程序。其中,绘制矩形是很常见的一种需求。在OpenCV C++中,使用cv::rectangle()函数可以很容易地实现矩形的绘制。下面,将详细介绍如何使用OpenCV C++绘制矩形。

步骤一:包含头文件

首先,需要包含OpenCV头文件,以便能够在程序中使用相关函数和变量。

#include <opencv2/opencv.hpp>
步骤二:创建图像

接下来,需要创建一个用于绘制矩形的空白图像。

cv::Mat image(400, 400, CV_8UC3, cv::Scalar(0,0,0));

此处创建了一个400x400像素的RGB图像,并将其所有像素初始化为黑色(RGB值均为0)。

步骤三:绘制矩形

现在,可以使用cv::rectangle()函数绘制矩形。

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

cv::rectangle()函数需要四个参数:

  • 参数一:要绘制矩形的图像。在这里,使用了上文创建的空白图像。
  • 参数二:要绘制的矩形的区域。cv::Rect()函数用于创建一个矩形区域,其参数分别是左上角点的x坐标、左上角点的y坐标、矩形的宽度和矩形的高度。
  • 参数三:要绘制矩形的颜色。cv::Scalar()函数用于创建一个RGB颜色,参数分别是红、绿、蓝三个颜色通道的值。
  • 参数四:要绘制矩形的线条宽度。
步骤四:显示图像

最后,使用cv::imshow()和cv::waitKey()函数显示图像,并在显示窗口上等待按键输入,然后退出程序。

cv::imshow("image", image);
cv::waitKey();
return 0;

完整的代码示例:

#include <opencv2/opencv.hpp>

int main()
{
    cv::Mat image(400, 400, CV_8UC3, cv::Scalar(0,0,0));
    cv::rectangle(image, cv::Rect(100, 100, 200, 150), cv::Scalar(0,255,0), 2);
    cv::imshow("image", image);
    cv::waitKey();
    return 0;
}

以上就是使用OpenCV C++绘制矩形的全部步骤。