图像练习-识别中圆形锡点 (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));
	}

结果

相关推荐
民乐团扒谱机3 分钟前
【微科普】BERT 主题建模 + 多模态分析,解锁阆中古镇评论数据价值
人工智能·深度学习·bert
Keep_Trying_Go8 分钟前
accelerate 深度学习分布式训练库的使用详细介绍(单卡/多卡分布式训练)
人工智能·pytorch·分布式·深度学习
昨夜见军贴061620 分钟前
IACheck × AI审核:重构来料证书报告审核体系,夯实生产质量管控第一道防线
人工智能·重构
一点一木20 分钟前
2025 年终技术复盘:从传统编程到 Vibe Coding 的工作流跃迁
前端·人工智能·程序员
liliangcsdn22 分钟前
VAE中Encoder和Decoder的理论基础的探索
人工智能·算法·机器学习
王莽v21 小时前
FlexRound:基于逐元素除法的可学习舍入后训练量化方法
人工智能
爱思德学术1 小时前
【IEEE会议】第三届智能计算与机器人国际会议(ICICR 2026)
人工智能·机器学习·机器人
楚来客1 小时前
AI基础概念之七:一个AI应用的基本架构
人工智能·架构
沛沛老爹1 小时前
用 Web 开发思维理解 Agent 的三大支柱——Tools + Memory + LLM
java·人工智能·llm·llama·rag
光羽隹衡1 小时前
深度学习----PyTorch框架(手写数字识别案例)
人工智能·pytorch·深度学习