opencv用于绘制矩形的函数

更新时间:2023-07-08 10:07:20 阅读: 评论:0

opencv用于绘制矩形的函数
the christmas songOpenCV是一个开源计算机视觉库,可用于图像处理、计算机视觉和机器学习等领域。绘制矩形是OpenCV中的一个常用操作,下面我们就来介绍一下OpenCV中用于绘制矩形的函数。
在OpenCV中,绘制矩形的函数是cv::rectangle。cv::rectangle函数的声明如下:
void cv::rectangle(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是坐标点的小数位数。
下面我们来看一个简单的例子,演示如何使用cv::rectangle函数绘制矩形。
#include <opencv2/opencv.hpp>
using namespace cv;
int main()
mua是什么意思{
    Mat img = imread("lena.jpg");
thead    Point pt1(100, 100);
    Point pt2(200, 200);
    Scalar color(0, 0, 255);
    int thickness = 2;
    int lineType = LINE_8;
    int shift = 0;
    rectangle(img, pt1, pt2, color, thickness, lineType, shift);
    imshow("image", img);
    waitKey(0);
    return 0;
}
在上面的例子中,我们首先读入了一张lena.jpg的图片,然后定义了矩形的两个对角线端点pt1和pt2,颜色color为红色,边框粗细thickness为2,线条类型lineType为8邻接线条,小数位数shift为0。最后我们使用rectangle函数在图片上绘制了一个矩形,并显示了绘制后的图片。
除了绘制矩形,cv::rectangle函数还可以用于绘制圆角矩形、带圆弧的矩形和带旋转角度的矩形。下面我们分别来介绍一下这几种特殊的矩形绘制方式。
1. 绘制圆角矩形
专四作文模板要绘制圆角矩形,我们需要在cv::rectangle函数中指定圆角矩形的圆角半径。圆角半径的指定方式是,在pt1和pt2之间画一个内切矩形,然后指定矩形四个角的半径。具体实现如下:
#include <opencv2/opencv.hpp>
英语ppt
using namespace cv;
int main()
如何学日语{
    Mat img = imread("lena.jpg");
    Point pt1(100, 100);
    Point pt2(200, 200);
fallen
    Scalar color(0, 0, 255);
    int thickness = 2;
    int lineType = LINE_8;
    int shift = 0;
    int radius = 30;
    rectangle(img, pt1, pt2, color, thickness, lineType, shift);
    rectangle(img, pt1 + Point(radius, radius), pt2 - Point(radius, radius), color, -1, lineType, shift);
andis    Rect rect(pt1 + Point(radius, 0), pt2 - Point(radius, 0));
    ellip(img(rect), Point(rect.width / 2, rect.height / 2), Size(radius, radius), 180, 0, 90, color, -1, lineType);
    rect.x = pt1.x;
    rect.width = 2 * radius;
    ellip(img(rect), Point(radius, radius), Size(radius, radius), 180, 90, 180, color, -1, lineType);
    rect.x = pt2.x - 2 * radius;
    ellip(img(rect), Point(rect.width - radius, radius), Size(radius, radius), 0, 0, 90, color, -1, lineType);
    rect.x = pt1.x;
    rect.y = pt2.y - 2 * radius;
    ellip(img(rect), Point(radius, rect.height - radius), Size(radius, radius), 90, 0, 90, color, -1, lineType);yingyihan
    rect.x = pt2.x - 2 * radius;
信件英文    ellip(img(rect), Point(rect.width - radius, rect.height - radius), Size(radius, radius), 0, 90, 180, color, -1, lineType);
    imshow("image", img);
    waitKey(0);
    return 0;
}
在上面的例子中,我们首先绘制了内切矩形,然后绘制了四个圆角。绘制圆角的方法是:在内切矩形的四个角上绘制四个圆弧,然后填充圆弧内部的区域。其中,第一个ellip函数绘制左上角的圆弧,第二个ellip函数绘制右上角的圆弧,第三个ellip函数绘制左下角的圆弧,第四个ellip函数绘制右下角的圆弧。
2. 绘制带圆弧的矩形
要绘制带圆弧的矩形,我们需要在cv::rectangle函数中指定矩形的弧度。弧度的指定方式是,在pt1和pt2之间画一个内切矩形,然后指定矩形的四个边的弧度。具体实现如下:

本文发布于:2023-07-08 10:07:20,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/78/1085271.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:矩形   绘制   函数   圆角   圆弧   用于   指定
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图