使用opencv识别同心圆

使用过opencv视觉库的小伙伴都知道,opencv自带的函数HoughCircles()可以用来检测圆,但无法直接检测同心圆。所以当我们在识别靶盘的时候,需要对该函数进行改进应用,以下是我的思路:
1. 对原图像进行边缘检测
2. 运用HoughCircles()函数,将其中的半径参数加以限制,由小到大扫描。取出每次扫描得分值最高的圆
3. 计算这些圆的圆心距,找出最小的圆心距,然后以该圆心为基准,判断其他圆与该圆心的距离。若小于一个阈值,则视为该圆的同心圆。

初步效果如下:
这里写图片描述

可以看出,可以有效检测出同心圆,但也有被误检的情况。调整一下参数可以改善检测的情况。实际中通过外置摄像头检测靶盘,亲测有效。

VS2013工程下载地址http://download.youkuaiyun.com/detail/u011853479/9377731

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值