647
The International Archives oj the Photogrammetry, Remote Sensing and Spatial Information Sciences. Vol. XXXVII. Part B3b. Beijing 2008
According to the collinearity principle, points p d and p d of
straight line segment L
in the straight line L r
Mathematically, every cross products of each two vectors of a ,
b and c equal to 0 , i.e.
ax b = 0
axe = 0
In details,
(*2 - x \ )Of -y[)~(y r 2 - y r \ )Of -O = o
(x[ - x[)(y d -y d )~ (y r 2 -y[)(x d -X d ) = 0
Translate it to the error equations,
Kb = ( X 2 - X 1 )Of - y[ ) - (y r 2 - y[ )0? - x[)
Vac = ( X 2 ~ X 1 )(y d 2 -yt)~ (y r 2 ~ yi )( X 2 ~ X \ ) ( 2 }
Taking formula (1) to equation (2), using enough number of
corresponding straight line segments, a group of error equations
are built. Then the Unknown parameters of formula (1) are
found by a least squares adjustment process.
For example, take affine transform
However, we cannot directly detect them using these two
characters above, in fact. Because, if we want to validate
whether these two characters come into existence, we must fit a
straight line with the chain firstly. In this way we blindly
suppose that all points in the chain are from one straight line. In
practice straight line segments are often embodied in parts of
the whole chain. In this condition, we cannot rightly divide
straight line parts from the whole chain, using these two
characters. As shown in figure 3, the solid line represents a edge
chain code, which assembled by a straight line segment AC
and a curve CB. The dashed line represents the fitted straight
line. This fitted straight line satisfies the two characters, but it is
not a right division of straight line segment AC ■
x =a Q +a x x +a 2 y
y d = b 0 + h x x s + b 2 y s
as coordinate transform form, we need to find 6 transform
parameters. Every pairs of corresponding straight lines can give
2 error equations, so we need 3 pairs of corresponding straight
lines at least. They should be distributed uniformly in the whole
image. In addition, there is a connotative basic request: each
two pairs should not be parallel if there are only 3 pairs of
corresponding straight lines.
3. AUTOMATIC EXTRACTION OF STRAIGHT LINE
SEGMENT
Traditional straight line extraction methods include Hough
transform [Hough 1962], which transforms binary image
function to straight line parameter description. The maximum
values in parameter space are the straight lines in image space.
However, because of poor positioning capability, Hough
transform is not a good method to extract control straight lines
from image. [Zhang Hongwei, 2004] adopts a “feature
extraction and straight line tracking” process to extract straight
line segments from image. Firstly the prominent edges are
extracted using Canny operator (Canny 1986). Then the edges
are thinned and tracked to get edge chains with one single pixel
width. At last edge chains are separated and merged until they
can be fitted as straight line segments.
To act as control objects of image registration, straight line
segments must be the prominent features in both reference and
source image. In this article, two characters of the prominent
straight line segment are proposed. They are
(1) The length of the straight line segment must be above a
threshold value N , and
(2) The vertical distance from every point in the chain to the
fitted straight line must be below a threshold value A .
B
Figure 4. Straight line segment detection with a link line
between head and tail of edge chain
As shown in figure 4, deriving from the two straight line
segment characters, if a straight line segment is embodied in the
edge chain, a line AC can represent this straight line segment.
Here AC is a link line between head and tail of the straight line
part in the edge chain. Using this rule, we design a straight line
segment detection process. In this process, the fitted straight
line is replaced by line AB, a link between head and tail of
the whole edge chain. Then all points in edge chain are checked
to validate whether these two characters are met. If both two
characters are met, the output straight line will be fitted with all
points in edge chain. Otherwise, the edge chain is divided into
two parts AD and DB. Here D is the farthest endpoint from
straight line AB . Then the “detecting and dividing” process is
performed with these two edge chains. This process is repeated
until all the edge chains divided into short chains. That is,
except the edge chains which have fitted to straight line, all
others have pixels less than N , thus the two characters will be
not met anymore.
The algorithm is described as follows: for each chain code of
edge,
(1) This chain is abandoned and the process turns to the next
chain, unless the number of pixels in it is above the
threshold value N;
(2) This chain is abandoned and the process turns to the next
chain, unless the length of AB, a link line from the head