计算机视觉_OpenCV开源库讲解(轮廓匹配)

我们得到了轮廓的点集之后,可以进行一系列的数学操作,下面讲解一个常用基于轮廓的匹配方法;

  • [1]几何炬计算

  • 比较两个轮廓最简洁的方式是比较他们的轮廓矩.这里先简短介绍一个矩的含义.简单的说,矩是通过对轮廓上所有点进行积分运算而得到的一个粗略特征.通常,我们如下定义一个轮廓的(p,q)矩;

  • 在这里插入图片描述

  • 在公式中p对应x纬度上的矩,q对应y维度上的矩,q对应y维度上的矩,阶数表示对应的部分的指数.该计算是对轮廓边界上所有像素(数目为n)进行求和.如果p和q全为0,那么m00实际上对轮廓边界上点的数目;

  • [2]基于Hu炬的轮廓匹配

  • 在这里插入图片描述

  • [3]相关API讲解;

Moments mm2 = moments(contours2[0]);//几何矩,计算Hu炬,计算轮廓的中心位置
Mat hu2;
HuMomnets(mm2,hu);

for(int i = 0; i < contours1.size(); i++)
{
	Moments mm = moments(contours2[0]);
	Mat hu;
	HuMomnets(mm,hu);
	double dist = matchShapes(hu,hu2,CONTOURS_MATCH_I1,0);
}

double matchShape(Mat hu,Mat hu2,int method,double parameter );
参数详解:
1,hu为待测目标;
2,hu2为模板目标;
3,method为匹配检测方法;
4,parameter一般为0

下面讲解参数method的种类:
在这里插入图片描述
注:常用的方法为第一个I1方法。
该函数的返回值范围在0~1之间,完全相同的图像返回值是0,返回值最大是1;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值