opencv通过轮廓点生成闭合图像

前言

有时候需要将某一些点生成闭合的二值图像。记录一下。

cpp 复制代码
// 轮廓点个数
int nrCurvePoints = curContour.nr;
// 轮廓点
DIM2DL* curvePoints = curContour.pts;

std::vector<cv::Point> points; // 轮廓点集合
for (int cntPoint = 0; cntPoint < nrCurvePoints; ++cntPoint)
{
	int x = curvePoints[cntPoint].x;
	int y = curvePoints[cntPoint].y;
	points.emplace_back(cv::Point(x, y));
}

// 轮廓点转Mat
cv::Mat contourImg = cv::Mat::zeros(cv::Size(usW, usH), CV_8UC1);
std::vector<std::vector<cv::Point>> contoursCV;
contoursCV.push_back(points);
cv::fillPoly(contourImg, contoursCV, cv::Scalar(255));

// 保存至io文件夹
std::string savePath(str_ws_US + "io/inContour_flag" + std::to_string(curFlag) + "_index" + std::to_string(index) + ".jpg");
cv::imwrite(savePath, contourImg);
相关推荐
之墨_26 分钟前
【大语言模型】—— 自注意力机制及其变体(交叉注意力、因果注意力、多头注意力)的代码实现
人工智能·语言模型·自然语言处理
从孑开始1 小时前
ManySpeech.MoonshineAsr 使用指南
人工智能·ai·c#·.net·私有化部署·语音识别·onnx·asr·moonshine
涛涛讲AI1 小时前
一段音频多段字幕,让音频能够流畅自然对应字幕 AI生成视频,扣子生成剪映视频草稿
人工智能·音视频·语音识别
可触的未来,发芽的智生1 小时前
新奇特:黑猫警长的纳米世界,忆阻器与神经网络的智慧
javascript·人工智能·python·神经网络·架构
WWZZ20252 小时前
快速上手大模型:机器学习2(一元线性回归、代价函数、梯度下降法)
人工智能·算法·机器学习·计算机视觉·机器人·大模型·slam
前端开发爱好者2 小时前
尤雨溪官宣:"新玩具" 比 Prettier 快 45 倍!
前端·javascript·vue.js
AKAMAI2 小时前
数据孤岛破局之战 :跨业务分析的难题攻坚
运维·人工智能·云计算
欧阳呀2 小时前
Vue+element ui导入组件封装——超级优雅版
前端·javascript·vue.js·elementui
Chicheng_MA2 小时前
算能 CV184 智能相机整体方案介绍
人工智能·数码相机·算能
Element_南笙2 小时前
吴恩达新课程:Agentic AI(笔记2)
数据库·人工智能·笔记·python·深度学习·ui·自然语言处理