next up previous
Next: Training phase Up: published in proceedings Forth Previous: Introduction

Four-dimensional geometric feature

We now introduce a four-dimensional feature which is invariant to translation and rotation. The intrinsic geometrical relation between a pair of oriented surface points is parameterized, where an oriented point consists of its position and its local surface normal. In the following, oriented points are referred to as surflets.

Surflet-pair relations can be viewed as a generalization of curvatures. While curvatures measure geometric relations between neighboring surflets, surflet-pair relations encode the same for any two surflets.

Each surflet is described by a pair $(\bf {p},\bf {n})$, consisting of the position vector $\bf {p}$ and the surface normal $\bf {n}$. Positions and surface normals are here extracted from a triangular mesh, but may as well be estimated from multiple 3D-data points.

Let $\circ$ denote the scalar product of two vectors, $\times$ the cross product of two vectors, $\vert\vert\,\cdot\,\vert\vert$ the Euclidean norm of a vector, and $\vert\,\cdot\,\vert$ the modulus of a real number. For each pair of surflets $(\bf {p}_1,\bf {n}_1)$ and $(\bf {p}_2,\bf {n}_2)$, we define a coordinate system as follows. The origin is chosen to be $\bf {p}_1$, if

\begin{displaymath}
\vert\bf {n}_1\circ(\bf {p}_2-\bf {p}_1)\vert \le
\vert\bf {n}_2\circ(\bf {p}_2-\bf {p}_1)\vert\ ,
\end{displaymath} (1)

and it is $\bf {p}_2$ else. Let us now assume that $\bf {p}_1$ is the origin. The base vectors of the coordinate system are then defined as
$\displaystyle \bf {u}$ $\textstyle =$ $\displaystyle \bf {n}_1\ ,$ (2)
$\displaystyle \bf {v}$ $\textstyle =$ $\displaystyle \frac{(\bf {p}_2-\bf {p}_1) \times \bf {u}}
{\Vert(\bf {p}_2-\bf {p}_1) \times \bf {u}\Vert}\ ,$ (3)
$\displaystyle \bf {w}$ $\textstyle =$ $\displaystyle \bf {u} \times \bf {v}\ .$ (4)

The relation between the surflets $(\bf {p}_1,\bf {n}_1)$ and $(\bf {p}_2,\bf {n}_2)$ is described by the parameters
$\displaystyle \alpha$ $\textstyle =$ $\displaystyle \arctan(\bf {w}\circ\bf {n}_2,\bf {u}\circ\bf {n}_2)\ ,$ (5)
$\displaystyle \beta$ $\textstyle =$ $\displaystyle \bf {v}\circ\bf {n}_2\ ,$ (6)
$\displaystyle \gamma$ $\textstyle =$ $\displaystyle \bf {u} \circ
\frac{\bf {p}_2-\bf {p}_1}{\Vert \bf {p}_2-\bf {p}_1 \Vert}\ ,$ (7)
$\displaystyle \delta$ $\textstyle =$ $\displaystyle \Vert\bf {p}_2-\bf {p}_1\Vert\ ,$ (8)

which define our feature $S=(\alpha, \beta, \gamma, \delta)$. Here we have used the shorthand notation

\begin{displaymath}
\arctan(x,y) = \left\{
\begin{array}{ll}
\arctan(y/x) & \...
...(y/x)+2\pi& \mbox{for $x>0 \wedge y<0$.}
\end{array} \right.
\end{displaymath}

The attributes $ \alpha$ and $ \beta$ represent $\bf {n}_2$ as an azimuthal angle and the cosine of a polar angle, respectively; $ \gamma$ and $ \delta$ represent the direction and length of the translation from $\bf {p}_1$ to $\bf {p}_2$, respectively. This parameterization is illustrated in Figure 1. Of course, if Condition (1) determines $\bf {p}_2$ to be the origin, the parameters are obtained by interchanging the indices 1 and 2 in the equations above.

Equations (5)-(8) map every configuration of a surflet pair onto a unique set of parameters, and every possible set of parameters describes exactly one such configuration. Moreover, Condition (1) ensures that the base vectors $\bf {u}$, $\bf {v}$, $\bf {w}$ are defined in the most robust manner: by choosing the more orthogonal angle between $\bf {p}_2-\bf {p}_1$ and the two surface normals $\bf {n}_1$, $\bf {n}_2$ for defining $\bf {v}$ [cf. Equations (2) and (3)], the direction of $\bf {v}$ is determined with higher accuracy. From a surface with $m$ surflets we obtain a total of $m(m-1)/2$ features.


next up previous
Next: Training phase Up: published in proceedings Forth Previous: Introduction
Eric Wahl 2003-11-06