直线
#include <opencv2/opencv.hpp>
int main()
{
cv::Mat img = cv::imread("./tu/马.jpg", cv::IMREAD_UNCHANGED);
cv::Point p0 = cv::Point(100, 100);
cv::Point p1 = cv::Point(300, 200);
cv::line(img, p0, p1, cv::Scalar(0, 0, 255), 1, 4);//画直线
/*
参数1:图像
参数2:起点坐标
参数3:终点坐标
参数4:颜色
参数5:可选参数。用于设置线段的宽度
参数6:可选参数。用于设置线段的类型,可选8(8邻接连接线-默认)、4(4邻接连接线)和cv2.LINE_AA 为抗锯齿
*/
cv::imshow("img", img);
cv::waitKey();
}
矩形
#include <opencv2/opencv.hpp>
int main()
{
cv::Mat img = cv::imread("./tu/马.jpg", cv::IMREAD_UNCHANGED);
cv::Point p1= cv::Point(100, 100);
cv::Point p2 = cv::Point(300, 200);
cv::rectangle(img,p1,p2, cv::Scalar(255, 0, 0),3,8); //画矩形--方法一
/*
参数1:图像
参数2:矩形的一个顶点
参数3:矩形对角线上的另一个顶点
参数4:颜色
参数5:矩形的线条的粗细。取负值时(如 CV_FILLED)函数绘制填充了色彩的矩形
参数6:可选参数。用于设置线段的类型,可选8(8邻接连接线-默认)、4(4邻接连接线)和cv2.LINE_AA 为抗锯齿
*/
cv::Rect area(50, 50, 200, 100); //需要裁减的矩形区域
cv::rectangle(img, area, cv::Scalar(0, 0, 255), 3, 8); //画矩形--方法二
/*
参数1:图像
参数2:矩形对象
参数3:颜色
参数4:矩形的线条的粗细。取负值时(如 CV_FILLED)函数绘制填充了色彩的矩形
参数5:可选参数。用于设置线段的类型,可选8(8邻接连接线-默认)、4(4邻接连接线)和cv2.LINE_AA 为抗锯齿
*/
cv::imshow("img", img);
cv::waitKey();
}
圆
#include <opencv2/opencv.hpp>
int main()
{
cv::Mat img = cv::imread("./tu/马.jpg", cv::IMREAD_UNCHANGED);
cv::Point p0 = cv::Point(100, 100);
cv::circle(img, p0, 100, cv::Scalar(0, 0, 255), 2); //画圆
/*
参数1:图像
参数2:圆心
参数3:半径
参数4:颜色
参数5:线条粗细
*/
cv::imshow("img", img);
cv::waitKey();
}