霍夫变换 Hough Transfom(附Matlab实验代码)

本文介绍了Hough变换在边缘检测中的应用,详细讲解了其在直线和圆边缘检测的过程,包括直线检测的参数表示、统计峰值原理,以及圆检测的轨迹计算和累计数组峰值检测。并提供了Matlab实验代码链接。
摘要由CSDN通过智能技术生成

前言

    在学习过程中,我发现许多文章一上来就介绍Hough变换的特点和数学原理,却忽视了Hough变换的使用场景(在边缘检测之后使用),因此很容易让人捉摸不透。在本文中,大家可以关注一下这一点。    

一、Hough变换使用场景

    我们先通过边缘检测,得到了幅值超过某个阈值的像素集合,即边缘像素。我们想知道,这些边缘像素是否连成直线,即验证这些边缘像素是否在某直线上。为此,我们可以采用Hough变换。

二、Hough变换用于直线边缘检测

 

    我们猜测:边缘像素点A:和B:在一条直线上:。我们希望通过Hough变换,验证我们的猜测。

    注意,我们往往不知道直线的具体参数,即我们只能先假设存在边缘直线,然后再找出斜率和纵坐标的具体值。

    一句话:我们现在只有边缘像素点集合,任务是:一,验证是否在直线上;二,找出k和q的具体值

    继续。我们把点A和点B代入方程中,经过变形,我们可以得到两条直线方程:

    如上方右图所示。注意,此时k和q是变量,因此两条直线位于参数空间中

    如果A和B确实是上的两个点,那么这两条直线方程就一定会经过点!并且,这个交点是唯一的!因为,A和B只能唯一确定一条直线!

    总结、拓展

    1、我们把每一个样本坐标,代入我们猜测的直线方程中,都能得到一条直线

    2、这一条直线上包括无穷多个离散的坐标对。

    3、因此,由边缘像素点集,可以计算得到多条直线,每一条直线都有对应的坐标集合。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值