1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Opencv -- 14图像几何形状绘制 -- 矩形 圆形 直线 椭圆

Opencv -- 14图像几何形状绘制 -- 矩形 圆形 直线 椭圆

时间:2022-04-22 18:39:20

相关推荐

Opencv -- 14图像几何形状绘制 -- 矩形 圆形 直线 椭圆

绘制矩形

在前面已经介绍过了,这里就不再重复介绍了,只把代码贴在这儿。

需要注意,若矩形填充颜色,则对应的参数的值为-1,而不填充时,参数的值大于0,表示线宽。

#include <iostream>#include "14_opencv_mat.h"using namespace std;void QuickDemo::drawing_demo(Mat &image){Rect rect;rect.x = 130;rect.y = 40;rect.width = 200;rect.height = 250;rectangle(image, rect, Scalar(0,0, 255), 2, LINE_8, 0);imshow("绘制矩形", image);}

运行效果如下:

除了可以绘制矩形之外,我们还可以绘制圆形。

绘制圆形可以使用函数 circle()

#include <iostream>#include "14_opencv_mat.h"using namespace std;void QuickDemo::drawing_demo(Mat &image){/** 函数功能:画一个圆* 函数原型:* void circle(InputOutputArray img, Point center, int radius,const Scalar& color, int thickness = 1,int lineType = LINE_8, int shift = 0);* 函数参数:* img - 输入图像* center - 圆心坐标* radius - 圆的半径* color- 圆的颜色 * thickness - 圆轮廓的厚度,如果为正值。负值,比如#FILLED,表示要画一个填充的圆。* lineType - 线形,默认为LINE_8* shift- 中心坐标和半径值的小数位数。*/circle(image,Point(200,100),100,Scalar(0,0,255),2,LINE_8,0);imshow("绘制圆形", image);}

运行效果如下:

可以使用函数 line()来绘制直线

void QuickDemo::line_demo(Mat& image){/** 函数功能:绘制连接两点的线段。* 函数原型:void line(InputOutputArray img, Point pt1, Point pt2, const Scalar& color,int thickness = 1, int lineType = LINE_8, int shift = 0);函数参数:img - 输入图像。pt1 - 线段的第一点。pt2 - 线段的第二点。color - 线条颜色。thickness - 线条厚度。lineType - 线的类型,是否为反锯齿shift - 点坐标的小数位数。*/line(image,Point(20,20), Point(70, 70),Scalar(0,255,255),2);imshow("line_demo", image);}

运行效果如下:

可以使用函数 ellipse()来绘制椭圆

估计不常用,就不学了,用到了再来补充。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。