图像练习-识别中圆形锡点 (04)

图片

代码

cpp 复制代码
	cv::Mat src = cv::imread("light_point.png", cv::IMREAD_COLOR);

	cv::Mat draw = src.clone();
	cv::Rect rt0(20, 80, src.cols - 30, 190);
	cv::Rect rt1(20, 480, src.cols - 30, 190);

	cv::Mat gray;
	cv::cvtColor(src, gray, cv::COLOR_BGR2GRAY);

	cv::Mat dst(gray.size(), gray.type(), cv::Scalar(0));

	gray(rt0).copyTo(dst(rt0));
	gray(rt1).copyTo(dst(rt1));

	cv::Mat gauss;
	cv::GaussianBlur(dst, gauss, cv::Size(45, 45), 0.0);

	cv::Mat binary = gauss > 90;

	std::vector<std::vector<cv::Point>> contours;
	cv::findContours(binary, contours, cv::RETR_EXTERNAL, cv::CHAIN_APPROX_NONE);

	cv::Mat marker = src.clone();
	for (size_t i = 0; i < contours.size(); ++i)
	{
		cv::Point2f center;
		float radius = 0.0f;
		cv::minEnclosingCircle(contours[i], center, radius);
		cv::RotatedRect rRect = cv::fitEllipse(contours[i]);
		cv::drawMarker(marker, rRect.center, cv::Scalar(255), cv::MARKER_CROSS);
		cv::circle(marker, center, (int)radius, cv::Scalar(0, 255));
	}

结果

相关推荐
大猪宝宝学AI40 分钟前
【AI Infra】BF-PP:广度优先流水线并行
人工智能·性能优化·大模型·模型训练
Jerryhut43 分钟前
Opencv总结7——全景图像拼接
人工智能·opencv·计算机视觉
Captaincc1 小时前
AI 原生下的新的社区形态会是什么
人工智能
简简单单OnlineZuozuo3 小时前
提示架构:设计可靠、确定性的AI系统
人工智能·unity·架构·游戏引擎·基准测试·the stanford ai·儿童
liu****3 小时前
机器学习-线性回归
人工智能·python·算法·机器学习·回归·线性回归
龙腾AI白云3 小时前
深度学习—卷积神经网络(2)
人工智能·神经网络
阿里云大数据AI技术3 小时前
一站式构建 AI 数据处理 Pipeline:DataWorks Notebook + MaxCompute MaxFrame 快速入门指南
大数据·人工智能
阿里云大数据AI技术3 小时前
StarRocks + Paimon: 构建 Lakehouse Native 数据引擎
大数据·人工智能
简简单单OnlineZuozuo3 小时前
对话式AI的安全和治理模式
人工智能·深度学习·安全·图像识别·banana
间彧4 小时前
智能体工作流:从架构设计到行业落地
人工智能