📅  最后修改于: 2023-12-03 14:51:14.606000             🧑  作者: Mango
OpenCV是一个开源的跨平台计算机视觉库,提供了丰富的图像处理和计算机视觉功能。本文将介绍如何使用OpenCV在C++中绘制矩形。
在开始之前,需要确保您已经安装了OpenCV,并且能够编写C++程序。如果您还没有安装OpenCV,可以从官网下载并安装。
在编写程序之前,需要包含OpenCV的头文件,以及命名空间。
#include <opencv2/opencv.hpp>
using namespace cv;
使用OpenCV绘制矩形需要使用cv::rectangle
函数。该函数有四个必需的参数:
Mat& img
:待绘制的图像。Point pt1
:左上角点的坐标。Point pt2
:右下角点的坐标。Scalar color
:矩形的颜色。Mat img = imread("test.jpg");
Point pt1(10, 10);
Point pt2(100, 100);
Scalar color(0, 255, 0);
rectangle(img, pt1, pt2, color);
上面的代码读取了一幅图像,然后在左上角坐标为(10, 10),右下角坐标为(100, 100)的位置绘制了一个矩形,颜色为绿色。
除了四个必需的参数外,cv::rectangle
还有两个可选参数:
int thickness=1
:矩形线条的宽度。默认值为1。int lineType=LINE_8
:线条的类型。默认值为LINE_8。int thickness = 2;
int lineType = LINE_AA;
rectangle(img, pt1, pt2, color, thickness, lineType);
上面的代码将矩形线条的宽度设置为2,线条的类型设置为LINE_AA
,即抗锯齿线条。
下面是一个完整的示例代码,该代码读取一幅图像,然后在图像左上角绘制了一个矩形。
#include <opencv2/opencv.hpp>
using namespace cv;
int main()
{
Mat img = imread("test.jpg");
Point pt1(10, 10);
Point pt2(100, 100);
Scalar color(0, 255, 0);
int thickness = 2;
int lineType = LINE_AA;
rectangle(img, pt1, pt2, color, thickness, lineType);
imshow("image", img);
waitKey(0);
return 0;
}
本文介绍了如何使用OpenCV在C++中绘制矩形。使用cv::rectangle
函数,可以轻松地绘制矩形。