本文讲述霍夫变换的一些内容,关于霍夫变换的总结参考了浅墨_毛星云-OpenCV霍夫变换、YuYunTan-经典霍夫变换、痴情一笑恋红颜-霍夫变换-----特征提取、zlm丶-霍夫变换及应用、yqtaowhu-基于OpenCV实现霍夫变换等文章,希望能对霍夫变换有所了解。博主水平有限、欢迎大家一起讨论学习,如果发现错误还请及时帮忙纠正。
霍夫变换概述
霍夫变换(Hough Transform)是图像处理中的一种特征提取技术,该过程在一个参数空间中通过计算累计结果的局部最大值得到一个符合该特征的集合作为霍夫变换的结果。
霍夫变换于1962年由PaulHough首次提出,最初的Hough变换是设计用来检测直线和曲线,起初的方法要求知道物体边界线的解析方程,但不需要有关区域位置的先验知识。这种方法的一个突出优点是分割结果的Robustness,即对数据的不完全或噪声不是非常敏感。然而,要获得描述边界的解析表达常常是不可能的。该专利对直线采用斜截距参数化,但由于斜率可能变成无穷大,这有可能导致无限变换空间(unbounded transform space)。
后于1972年由Richard Duda & Peter Hart推广使用,称为“广义霍夫变换[GHT]”,经典霍夫变换用来检测图像中的直线。后来霍夫变换扩展到任意形状物体的识别,多为圆和椭圆。霍夫变换运用两个坐标空间之间的变换将在一个空间中具有相同形状的曲线或直线映射到另一个坐标空间的一个点上形成峰值,从而把检测任意形状的问题转化为统计峰值问题。
利用广义霍夫变换(GHT),找到模型位置的问题转换为寻找将模型映射到图像中的变换参数的问题。给定变换参数的值,就可以确定模型在图像中的位置。
霍夫变化原理
众所周知, 一条直线在图像二维空间可由两个变量表示:
- 笛卡尔坐标系:可以由参数斜率和截距(m,b) 表示:
- 可由参数极径和极角(r,θ)表示:
在笛卡尔坐标系中会存在参数问题,垂直线的斜率不存在(或无限大),这使得斜率参数$m$的值接近于无限。为此,为了更好的计算,Richard O. Duda和Peter E. Hart在1971年4月,提出了