《OpenCV求轮廓的矩中心》

本文介绍了一个简单的C++程序,该程序利用OpenCV库在一个黑色背景的图像上绘制一个绿色圆,并通过计算图像的灰度矩来确定圆的质心位置。最后,程序会在原图上用红色标记出质心。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【一】效果图


【二】示例代码

#include<opencv2/opencv.hpp>
#include<iostream>

using namespace std;
using namespace cv;

void Draw_circle(Mat img, Point pt_center, int pt_radius);


#define WINDOW_NAME "【drawing】"

int main()
{
	Mat gray,global;
	Mat srcImage(480,640,CV_8UC3,Scalar(0,0,0));//height=480,width=640
	Draw_circle(srcImage,Point(320,240),100);
	cvtColor(srcImage, gray, CV_BGR2GRAY);
	
	Moments mu;
	mu = moments(gray, false);
	Point mc;
	mc = Point(mu.m10 / mu.m00, mu.m01 / mu.m00);
	circle(srcImage, mc, 3, Scalar(0,0,255), 1, 8, 0);
	imshow(WINDOW_NAME, srcImage);
	waitKey(0);
	return 0;
}
	
//【画圆】
void Draw_circle(Mat img,Point pt_center, int pt_radius)
{
	circle(img, pt_center, pt_radius, Scalar(0, 255, 0), 1, 8, 0);
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值