📅  最后修改于: 2023-12-03 15:37:34.696000             🧑  作者: Mango
OpenCV 是一个用于图像处理和计算机视觉的开源库,它支持多种编程语言,包括 C, C++, Python 等。通过 OpenCV,我们可以使用很多简单的代码实现强大的图像处理功能。
在这里,我们将介绍如何在 C++ 中使用 OpenCV 画一条线。下面是实现这个功能的完整代码:
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/imgproc.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
// 创建一张大小为 400x400 的黑色图像
Mat img = Mat::zeros(400, 400, CV_8UC3);
// 定义起点和终点
Point startPoint(50, 50);
Point endPoint(350, 350);
// 画一条线
line(img, startPoint, endPoint, Scalar(0,255,0), 3);
// 显示图像
imshow("Image", img);
waitKey();
return 0;
}
首先,我们需要包含必要的头文件,例如 opencv2/core.hpp
, opencv2/highgui.hpp
, opencv2/imgproc.hpp
等。
然后,我们需要创建一张指定大小的图像,这里我们创建了一张大小为 400x400 的黑色图像。可以使用 Mat::zeros
函数创建一张没有色彩的黑色图像。
接下来,我们定义了起点和终点的位置。在这个例子中,我们使用了两个 Point
类型的变量来表示起点和终点的位置。在实际应用中,我们可以根据需要选择其他类型的变量来表示坐标。然后,我们使用 line
函数在图像上画了一条线。这里,我们使用了 line
函数的五个参数,分别是图像、起点的位置、终点的位置、线的颜色和线的宽度。在这个例子中,我们使用了绿色的线条。
最后,我们使用 imshow
函数来显示生成的图像,并使用 waitKey
函数等待键盘输入。
在本例中,我们使用了 C++ 中 OpenCV 的一些基本函数来画线,但 OpenCV 支持的功能远不止这些。通过 OpenCV,我们可以很容易地完成图像的处理、检测、跟踪等任务,具有广泛的应用范围。