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;

运行结果

相关推荐
TracyCoder1231 分钟前
BERT:让模型 “读懂上下文” 的双向语言学习法
人工智能·深度学习·bert
亚马逊云开发者6 小时前
Q CLI 助力合合信息实现 Aurora 的升级运营
人工智能
全栈胖叔叔-瓜州7 小时前
关于llamasharp 大模型多轮对话,模型对话无法终止,或者输出角色标识User:,或者System等角色标识问题。
前端·人工智能
坚果派·白晓明7 小时前
AI驱动的命令行工具集x-cmd鸿蒙化适配后通过DevBox安装使用
人工智能·华为·harmonyos
GISer_Jing8 小时前
前端营销技术实战:数据+AI实战指南
前端·javascript·人工智能
Dekesas96958 小时前
【深度学习】基于Faster R-CNN的黄瓜幼苗智能识别与定位系统,农业AI新突破
人工智能·深度学习·r语言
大佐不会说日语~8 小时前
Spring AI Alibaba 的 ChatClient 工具注册与 Function Calling 实践
人工智能·spring boot·python·spring·封装·spring ai
CeshirenTester8 小时前
Playwright元素定位详解:8种定位策略实战指南
人工智能·功能测试·程序人生·单元测试·自动化
棒棒的皮皮9 小时前
【OpenCV】Python图像处理几何变换之翻转
图像处理·python·opencv·计算机视觉
无能者狂怒9 小时前
YOLO C++ Onnx Opencv项目配置指南
c++·opencv·yolo