Information Technology Reference
In-Depth Information
2.2 3D Corner Detection
Corners are easier to define in mathematical terms than edges, but they do not
necessarily correspond to any geometric entity of the observed scene [5]. Corners
detection of 3D object can be computed over matrix S that characterizes the
structure values and is defined as
2
G
G
G
G
G
x
x
y
x
z
2
S
=
G
G
G
G
G
(4)
x
y
y
y
z
2
G
G
G
G
G
x
z
y
z
z
where the sums are taken over the neighbourhood Q of a generic voxel v . The so-
lution is building the eigenvalues of S and their geometric interpretation as
described in [4] for two dimensions. Matrix S is symmetric, and can therefore be
diagonalized as:
λ
0
0
1
S
=
0
λ
0
(5)
2
0
0
λ
3
where
λ are the eigenvalues. If neighbourhood Q of v is perfectly
uniform (e.g. image intensity is completely same in Q ) image gradient compo-
nents G x , G y and G z vanish everywhere and eigenvalues are
λ
,
λ and
1
2
3
. Now
assume that Q contains the corner of a black cube against a white background: as
there are three principal directions in Q , it is expected that
λ
=
λ
=
λ
=
0
1
2
3
and the
larger the eigenvalues, the stronger (higher contrast) their corresponding image
lines. Obviously, the eigenvectors describe the edge directions, and the eigenval-
ues the edge strength. A corner is identified by three strong edges, and as
λ
λ
λ
0
1
2
3
λ is large enough. In
general terms, at corner voxels the intensity surface has three well-defined, dis-
tinctive directions, associated to eigenvalues of S , all of them significantly larger
than zero [3]. If only one of them is not large enough (
λ
λ
λ
it is a location where the smallest eigenvalue,
1
2
3
3
λ <
3
τ
, where
is thresh-
τ
old) that voxel is not the corner voxel.
The procedure for locating the corners is as follows [6]. The input is formed by
an image G and two parameters: the threshold τ on
, and the linear size of a
cube window (neighbourhood), for example 2 N + 1 voxels, where N is usually be-
tween 2 and 5. First the image gradient is computed over the entire image G , and
then for each voxel v is formed the matrix S over a (2 N + 1) × (2 N + 1) × (2 N + 1)
neighbourhood Q of v . In the next step
λ
3
λ
, the smallest eigenvalue of S , is com-
3
puted. If
λ > 3 the coordinates of v are saved into a list of possible corner voxels
L . The list L is then sorted in decreasing order of
τ
. The sorted list is scanned top
to bottom: for each current point v , all points which belong to the neighbourhood
λ
3
Search WWH ::




Custom Search