Elsevier

Pattern Recognition Letters

Volume 23, Issue 14, December 2002, Pages 1705-1710
Pattern Recognition Letters

Point-to-line mappings as Hough transforms

https://doi.org/10.1016/S0167-8655(02)00133-2Get rights and content

Abstract

In 1962 [US Patent 3069654], Hough used a linear point-to-line mapping (PTLM) to detect large sets of collinear points in an image, by mapping the points into concurrent lines and detecting peaks where many lines intersect. In 1972, Duda and Hart [Commun. ACM 15 (1972) 11] pointed out that Hough's method is not practical, because the peaks need not lie in a bounded region. They (and others after them) therefore developed methods of detecting sets of collinear points using nonlinear point-to-curve mappings that map collinear points into concurrent curves whose intersections do lie in a bounded range. In this paper we show that any PTLM that maps collinear points into concurrent lines must be linear, and that no such PTLM can map all the sets of collinear points in an image into peaks that lie in a bounded region; thus Duda and Hart's objection applies to any PTLM-based Hough transform.

Introduction

A point-to-line mapping (PTLM) on the plane maps the points of the plane into the lines on the plane; in other words, it maps any point (u,v) into a line ax+by+c=0, where the coefficients a, b, c are functions of u and v. A PTLM is called linear if these functions are linear. It is not hard to show that a linear PTLM must map collinear points (points that all lie on the same line) into concurrent lines (lines that all pass through the same point). To avoid situations in which many points all map into the same line, we will deal primarily with one-to-one PTLMs in this paper.

Hough (1962) patented a method of using a linear PTLM to detect collinear sets of points in an image. Suppose the image I has value 1 at a set of points (ui,vi), and let the PTLM take (ui,vi) into the line aix+biy+ci=0. For each i, we create a new image Ji that has value 1 at the points of this line, and construct a final image J by summing the Ji's. If n of the points are collinear, the corresponding n lines are concurrent; hence J has a peak of height n at the point where the n lines intersect. We can thus detect large sets of collinear points in I by searching for high peaks in J.

Hough used the PTLM that maps the point (u,v) into the line x=vy+u. Evidently, if a set of points all have the same v coordinate (i.e., they lie on a horizontal line), this PTLM maps them into lines that all have the same slope. These lines are parallel rather than concurrent, so that there is no peak at their “intersection”. Even if the lines are not exactly parallel, their intersection may be arbitrarily far from the origin, so that it may be impractical to search for the peak.

This problem with Hough's PTLM was pointed out by Duda and Hart (1972). They therefore used a nonlinear mapping, which they called a “Hough transform” (HT), to detect collinear sets of points. This mapping took points into sinusoids rather than lines, but it took collinear points into concurrent sinusoids, so that large collinear sets of points still gave rise to peaks. Moreover, the positions of the peaks were confined to a bounded range, so that it was practical to search for the peaks. The HTs that have been used since 1972 to detect collinear sets of points (Illingworth and Kittler, 1988; Leavers, 1993; Picton, 1987) have been based on nonlinear point-to-curve mappings.

Since PTLMs can be nonlinear, it is conceivable that practical PTLM-based HTs could exist. In this paper we will show that Duda and Hart's objection applies to any possible PTLM-based HT. To avoid the need to consider special cases involving parallel lines, we will develop our results in the real projective plane, which is obtained by adding “points at infinity” to the Euclidean plane.

We will begin (2.1 Points and lines; the projective plane; homogeneous coordinates, 2.2 Collineations and correlations) by reviewing basic facts about points and lines in the projective plane. We will then show (Section 2.3) that any one-to-one point-to-line correspondence (in brief: 1–1 PTLM) that takes collinear points into concurrent lines, and can therefore be used to define an HT, must be linear. Finally, we will show (Section 2.4) that because of its linearity, no such PTLM can map all the sets of collinear points that lie in a bounded region (such as an image) into sets of concurrent lines whose intersections all lie in a bounded region; hence if such a PTLM is used to define an HT, it cannot be practical to search for all the peaks in this HT.

Section snippets

PTLMs as HTs

Our first goal is to prove that if a 1–1 PTLM takes collinear points into concurrent lines, so that it can be used to define an HT, then it must be linear. To make the discussion self-contained, in Section 2.1 we present a brief, informal introduction to the real projective plane. In Section 2.2 we introduce linear mappings of the projective plane into itself that take points into points (“collineations”) or points into lines (“correlations”). It is known that if a one-to-one point-to-point

Concluding remarks

A single PTLM cannot define a practical HT, but it is easy to define practical HTs by using two PTLMs. For example, Hough's PTLM maps points that lie on a horizontal line into parallel lines, so it cannot be used to detect sets of collinear points that lie on a line that is close to horizontal. Similarly, the PTLM that maps the point (u,v) into the line y=ux+v maps points that lie on a vertical line into parallel lines, so it cannot be used to detect sets of collinear points that lie on a line

References (28)

  • L. da Fontoura Costa et al.

    Effective detection of digital bar segments with Hough transform

    CVGIP: Graphical Models and Image Processing

    (1993)
  • R.O. Duda et al.

    Use of the Hough transformation to detect lines and curves in pictures

    Communications of the ACM

    (1972)
  • W.C. Graustein

    Introduction to Higher Geometry

    (1930)
  • R. Hartley et al.

    Multiple View Geometry in Computer Vision

    (2000)
  • Cited by (0)

    View full text