基于Hough变化的答题卡识别matlab仿真

630 篇文章 1048 订阅 ¥39.90 ¥99.00

目录

1.算法概述

2.仿真效果

3.MATLAB仿真源码


1.算法概述

        Hough变换:Hough变换是1962年由Hough提出来的,用于检测图像中直线、圆、抛物线、椭圆等形状能够用一定函数关系描述的曲线,它在影像分析,模式识别等很多领域中得到了成功的应用。Hough变换的基本原理是将影像空间中的曲线(包括直线)变换到参数空间中,通过检测参数空间中的极值点,确定出该曲线的描述参数,从而提取影像中的规则曲线。
       Hough圆变换的原理与前文的Hough线变换相似,Hough线变换是在p-θ平面中不断累加,最后寻找极大值点,Hough圆变换也可以通过类似的方式寻找,需要在三维空间中累加体积,三维分别是圆心的横坐标、纵坐标、半径,但是这样时间复杂度和空间复杂度会非常大,所以实际实现时没有采用这种方法。OpenCV中的Hough圆变换是通过Hough梯度法实现的。
所以Hough圆变换就可以通过下面的方法实现了:
① 同样的,首先对图像进行边缘检测,得到edge_img;
② 对edge_img中的每一个非0点计算局部梯度(可以通过Sobel算子计算)
③ 沿着每个点的梯度所在的直线在累加平面中进行累加,同时记录非0点的位置
④ 根据阈值选取累加平面中的局部极大值点作为候选圆心
⑤ 对于每个圆心都有一个与它相关的非0点的列表(步骤③中记录的),计算这些非0点与该圆心的距离,从中选取出最优值作为半径
⑥ 如果有足够数量的点构成圆且该圆心与其它圆心间距超过阈值,就保留这个圆
⑦ 最终就能够得到检测结果
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Simuworld

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值