Table of Contents
Hough Transform是图像处理中的一种流行技术,用于检测图像内部的线和圆等几何形状,它通过将图像空间中的点转换成参数空间,可以更容易地识别形状,从而发挥作用. 本篇文章解释了如何从Hough Transform中衍生并应用到线和圆检测.
线条的角变换衍生
基本思想是将图像中的一行作为一组参数来表示。最常见的形式是普通形式:[ ⁇ = x cos ⁇ + y sin ⁇ ,其中 ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
应用 Hough 变换线程检测
为了探测线条,算法涉及以下步骤:
- 利用像Canny这样的边缘检测方法将图像转换成二进制边缘图.
- 初始化( $, $) 参数的累积数组 。
- 对于每个边缘点,计算所有可能的( ^, ^)对和相应的累积单元格。
- 识别累积器阵列中与检测到的线条对应的峰值。
圆角的角变换的衍生和应用
圆圈检测通过添加半径参数来延长线线检测. A 圆圈可以表示为 (x - a)^2 + (y - b)^2 = r^2 ,其中(a,b)为中心,r为半径. 参数空间变为三维:(a,b,r) 对于每个边缘点,可能存在的圆圈中心会计算各种弧度,并在这个3D空间中积分.
应用圆圈检测的 Hough 变形
步骤包括:
- 在图像上进行边缘检测 。
- 选择一个区域来搜索圆圈 。
- 对于每个边缘点和每个半径,计算潜在的圆中心,并更新积分器.
- 在3D积分器中查找峰值,以表示圆中心和弧度.