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

结果

相关推荐
yvestine9 分钟前
自然语言处理——文本表示
人工智能·python·算法·自然语言处理·文本表示
zzc92117 分钟前
MATLAB仿真生成无线通信网络拓扑推理数据集
开发语言·网络·数据库·人工智能·python·深度学习·matlab
点赋科技18 分钟前
沙市区举办资本市场赋能培训会 点赋科技分享智能消费新实践
大数据·人工智能
HeteroCat25 分钟前
一周年工作总结:做了一年的AI工作我都干了什么?
人工智能
YSGZJJ38 分钟前
股指期货技术分析与短线操作方法介绍
大数据·人工智能
Guheyunyi1 小时前
监测预警系统重塑隧道安全新范式
大数据·运维·人工智能·科技·安全
码码哈哈爱分享1 小时前
[特殊字符] Whisper 模型介绍(OpenAI 语音识别系统)
人工智能·whisper·语音识别
郄堃Deep Traffic1 小时前
机器学习+城市规划第十三期:XGBoost的地理加权改进,利用树模型实现更精准的地理加权回归
人工智能·机器学习·回归·城市规划
Lucky-Niu1 小时前
解决transformers.adapters import AdapterConfig 报错的问题
人工智能·深度学习