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

结果

相关推荐
泰迪智能科技01几秒前
分享|智能视觉分拣教学实训沙盘:高校AI视觉与工业应用的教学桥梁
人工智能
javpy5 分钟前
AI生成 Python小游戏 怪物防御战???
人工智能·python·pygame
半问10 分钟前
付费投流硬控互联网
人工智能·算法·互联网·推荐·流量
爱笑的眼睛1111 分钟前
超越SIFT与ORB:深入OpenCV特征检测API的设计哲学与高阶实践
java·人工智能·python·ai
西岸行者14 分钟前
学习Hammerstein-Wiener 模型,以及在回声消除场景中的应用
人工智能·学习·算法
拉姆哥的小屋17 分钟前
突破传统PINN瓶颈:基于LSTM-格林函数的3D瞬态温度场智能预测新方法
人工智能·3d·lstm
无心水17 分钟前
【神经风格迁移:深度实战】7、高级调参实战指南:从调参盲盒到科学优化方法论
人工智能·深度学习·神经网络·机器学习·vgg·神经风格迁移·vgg19
luojiezong29 分钟前
锐捷极简以太彩光网络解决方案入选《“AI中国”生态范式案例集(2025)》
网络·人工智能
Light6032 分钟前
再见,REST API?你好,MCP Server!AI时代后端开发新范式
java·人工智能·rest api·ai agent·spring ai·mcp
鲨莎分不晴33 分钟前
强化学习第四课 —— 深度强化学习:Policy Gradient 入门
人工智能·学习·机器学习