OpenCV绘图函数(8)填充凸多边形函数fillConvexPoly()的使用

  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

填充一个凸多边形。

函数 cv::fillConvexPoly 绘制一个填充的凸多边形。这个函数比 fillPoly 函数快得多。它可以填充的不仅仅是凸多边形,还可以填充任何没有自相交的单调多边形,即,一个轮廓最多与每一条水平线(扫描线)相交两次的多边形(虽然它的最顶部和/或最底部边缘可能是水平的)。

函数原型1

cpp 复制代码
void cv::fillConvexPoly
(
	InputOutputArray 	img,
	InputArray 	points,
	const Scalar & 	color,
	int 	lineType = LINE_8,
	int 	shift = 0 
)		

参数1

  • 参数img 图像.
  • 参数points 多边形顶点的向量。
  • 参数color 用于填充多边形的颜色。
  • 参数lineType 边界的类型. 参见 LineTypes
  • 参数shift 顶点坐标中的分数位数

函数原型2

这是重载的成员函数,为方便提供。它与上面的函数仅在所接受的参数方面有所不同。

cpp 复制代码
void cv::fillConvexPoly	
(
	InputOutputArray 	img,
	const Point * 	pts,
	int 	npts,
	const Scalar & 	color,
	int 	lineType = LINE_8,
	int 	shift = 0 
)		

参数2

  • 参数img 图像.
  • 参数pts 多边形顶点的向量。
  • 参数npts 点的个数
  • 参数color 用于填充多边形的颜色。
  • 参数lineType 边界的类型. 参见 LineTypes
  • 参数shift 顶点坐标中的分数位数

代码示例

cpp 复制代码
#include <opencv2/opencv.hpp>
#include <iostream>

int main()
{
    // 创建一个空白图像
    cv::Mat image = cv::Mat::zeros(400, 400, CV_8UC3);

    // 设置多边形的顶点
    std::vector<cv::Point> points;
    points.push_back(cv::Point(100, 100));
    points.push_back(cv::Point(150, 50));
    points.push_back(cv::Point(200, 100));
    points.push_back(cv::Point(200, 200));
    points.push_back(cv::Point(150, 250));
    points.push_back(cv::Point(100, 200));

    // 设置填充颜色
    cv::Scalar color(0, 0, 255); // 红色 (BGR)

    // 填充凸多边形
    cv::fillConvexPoly(image, points, color);

    // 显示图像
    cv::namedWindow("Convex Polygon Filling", cv::WINDOW_NORMAL);
    cv::imshow("Convex Polygon Filling", image);
    cv::waitKey(0);

    return 0;

运行结果

相关推荐
Bony-17 分钟前
奶茶销售数据分析
人工智能·数据挖掘·数据分析·lstm
山烛36 分钟前
YOLO v1:目标检测领域的单阶段革命之作
人工智能·yolo·目标检测·计算机视觉·yolov1
华仔AI智能体1 小时前
Qwen3(通义千问3)、OpenAI GPT-5、DeepSeek 3.2、豆包最新模型(Doubao 4.0)通用模型能力对比
人工智能·python·语言模型·agent·智能体
大千AI助手1 小时前
高斯隐马尔可夫模型:原理与应用详解
人工智能·高斯·hmm·高斯隐马尔可夫模型·ghmm·马尔科夫模型·混合高斯模型
西柚小萌新1 小时前
【深入浅出PyTorch】--6.2.PyTorch进阶训练技巧2
人工智能·pytorch·python
一品威客网1 小时前
语音控制 APP 开发:唤醒率 99% 的实现
人工智能·语音识别
fsnine2 小时前
图像视觉——颜色识别
图像处理·python·计算机视觉
摘星编程2 小时前
Trae Solo+豆包Version1.6+Seedream4.0打造“AI识菜通“
人工智能·trae·doubao
FIN66682 小时前
昂瑞微:射频与模拟芯片领域的国产领军者
前端·人工智能·科技·前端框架·智能