You are on page 1of 10

REPRESENTATION, PROCESSING, ANALYSIS,

AND UNDERSTANDING OF IMAGES

An Algorithm for Calculating the Similarity Measures


of Surfaces Represented as Point Clouds
N. F. Dyshkant
Moscow State University, Department of Computational Mathematics and Cybernetics,
Leninskie gory, Moscow, 119991 Russia
email: Natalia.Dyshkant@gmail.com

Abstract—The problem of estimating the similarity of surfaces represented as point clouds is studied. An
approach is suggested to the comparison of such surfaces based on the surface approximation by piecewise
linear functions of two variables in the Delaunay triangulations. The approach is based on the developed algo
rithm for comparison of the functions of two variables specified on various irregular sets of points. Possible
applications of this algorithm were considered such as the problems of 3D portraits comparison, e.g., prob
lems of estimation of facial asymmetry and dynamics of lower jaw movements on the basis of a 3D video
sequence of models. The performed experiments confirmed the correctness, validity, and computational effi
ciency of the proposed algorithm.

Keywords: Surface comparison, pointwise surface description, irregular meshes, mesh location in triangula
tion, 3D face comparison.
DOI: 10.1134/S1054661810040103

INTRODUCTION faces, each of which is defined on its own set of points,


i.e., on different irregular meshes.
Any spatial object has a certain geometric shape. Most of the existing methods for the comparison of
The problems of comparison, recognition, and analy object surfaces assume that for every point of the same
sis of such objects require the description of a strict surface there is a corresponding point on the other one
mathematical model of this shape. The shape of an (e.g., [10]). This implies either the continuous repre
object can be treated as a set of surfaces, each of which sentation of the surface or defining the surface on a set
is uniquely projectable onto a plane. In this work the of points with a regular structure (regular mesh). In
problem of the comparison of such surfaces is studied. this case, it is possible to calculate directly the Euclid
For complex nonsmooth surfaces, the method of ean distance between the pairs of neighboring points,
pointwise description is often used where the surface is the average distance between the surfaces, or any other
represented by a discrete point cloud belonging to it. comparison measure. Some other methods where the
Such discrete surface models can be obtained, for surfaces are initially defined on irregular sets use the
instance, by the methods of 3D scanning rapidly gain regularization of meshes.
ing popularity. At the same time, the projection of an It seems a topical problem to work out a computa
initial point cloud created by the scanner onto a plane tionally efficient algorithm for the comparison of sur
usually has an uneven structure and is an irregular faces defined by the functions of two variables on dif
plane mesh. A surface uniquely projectable onto a ferent irregular meshes, i.e., in such cases when it
plane can be treated as an explicit function of two vari appears impossible to calculate directly the difference
ables z = f(x, y) defined on a discrete set of points. between the functions. Here, the solution of this prob
The rapid development of 3D scanning technolo lem is proposed retaining the initial irregularity.
gies brings about the problems of improving the algo The issue of constructing similarity measures for
rithms for the analysis, comparison, and classification the comparison of a given object with a sample arises
of the obtained surfaces. The applications require in the problems of computer vision, in biometric iden
exact and computationally efficient algorithms for the tification and verification (e.g., using a 3D face model)
calculation of the surface similarity measures because and in different medical applications.
the reconstruction of a surface configuration based on Here, an approach is proposed based on the local
its separate fragments and the classification of surfaces ization of the Delaunay triangulation of every set
are problems requiring algorithms for their compari inside each other using spanning trees and on the con
son. In particular, it is often necessary to compare sur struction of the general Delaunay triangulation on the
basis of the union of two discrete sets. Since the proce
dure of the merging of nondivided triangulations can
Received September 7, 2009 be performed over a linear time [18], the total operat

ISSN 10546618, Pattern Recognition and Image Analysis, 2010, Vol. 20, No. 4, pp. 495–504. © Pleiades Publishing, Ltd., 2010.
496 DYSHKANT

the surface comparison with the help of these maps


[9]. The idea of the PCA (Principal Component Anal
ysis) method consists in the resolution of the surface
mapping vectors in the system of eigenvectors corre
sponding to the highest eigenvalues [11]. There are
methods for surface comparison based on the template
or pattern matching or attribute description; for
instance, in [7] the problem of object comparison is
reduced to the problem of comparing graphs, the ver
Fig. 1. Regular (on the left) and irregular (on the right) tri tices of which represent information about the sepa
angular meshes. rate fragments of the object surface, and the edges
reflect the information about the connectivity of these
ing time of the proposed method is asymptotically fragments.
comparable with the construction time of the In [12] and [13] the problem was studied of com
Delaunay triangulation; i.e., it equals O(NlogN) paring the surfaces defined on different sets of points;
where N is the total number of points in two sets. at the same time, the distance from the point on one
Therefore, the advantage and novelty of this method surface to another one is calculated along the normal
consists in making it possible to avoid quadratic back to the nearest spline of the second surface. The com
tracking when comparing surfaces. parison measure based on calculating the difference of
the distances along the normals is of interest because it
As surface dissimilarity measures, it is proposed to
does not require the reduction of the compared func
use the volume of the space between triangular meshes
tions to the general mesh.
(metric L1) or the average axial spacing between them.
The paper consists of an introduction, four sec
tions, and the conclusions. The first section presents a 1.2. Problem Statement
survey of the methods for surface comparison and a The surface obtained by a 3D scanning is repre
statement of the problem of the comparison of surface sented as a point cloud, which can be interpreted as a
patches uniquely projectable onto the plane, and singlevalued function of two variables defined on a
introduces the similarity and dissimilarity measures of certain discrete set, i.e., on a mesh.
surfaces. In the second section, the structure of the Definition. By an irregular twodimensional mesh G
suggested algorithm for the calculation of the similar a finite set of points will be understood from the space
ity measure is presented with a detailed description of R2: G = {(xi, yi)|i = 1, …, N}, N ≥ 3.
every stage, and the computational complexity of the
algorithm is estimated. In the third section, the appli The following problem statement is considered.
N1 N2
cation of the proposed measure is considered for sev i i i i
Let G1 = { ( x 1, y 1 ) } i = 1 and G2 = { ( x 2, y 2 ) } i = 1 be
eral problems involving the analysis of 3D face mod
els. The fourth section presents the results of several irregular twodimensional meshes. Let F1 and F2 be
computational experiments. the mesh functions defined on the meshes G1 and G2,
i N1 i i i
respectively, F1 = { f 1 } i = 1 , f 1 = F1( x 1 , y 1 ), F2 =
1. SURFACE SIMILARITY MEASURES i N2 i i i
{ f 2 } i = 1 , f 2 = F2( x 2 , y 2 ).
1.1. Surface Comparison: Survey of the Literature
It is required to introduce a similarity measure for
There are several approaches to the problem of sur the surfaces defined by such mesh functions and
face comparison. In many algorithms the initial irreg develop an algorithm for its calculation.
ular meshes are regularized at the first stage to obtain a Definition. The surface is called monotonic with
general regular mesh (see Fig.1), which is followed by respect to a certain axis if any straight line parallel to
the calculation of the surface dissimilarity measure. this axis crosses the surface at a single point at most.
Most methods require a significant amount of compu Let R be a rectangle in the space R2, within which
tation to secure an acceptable accuracy of computer there are meshes G1 and G2 (the enveloping rectangle of
vision systems. At the stage of the irregular mesh regu the convex hull of the merging of two meshes). μ(x, y)
larization, the surface approximation accuracy is lost is the function defining the weight of different frag
and, in addition, the problem arises of selection of the ments of the surfaces being compared from the view
optimum mesh size. We propose a method for surface point of their similarity.
comparison retaining the initial irregular meshes. Let Ᏻ be a set of irregular twodimensional meshes
Some existing approaches to surface comparison contained in R, and let Ᏺ be a set of singlevalued
involve the initial continuous representation of the functions defined on the meshes from the set Ᏻ.
surface [10] or its definition on a regular mesh. Mak Let Conv(G) be a convex hull of the set G, F1, F2 ∈
ing use of curvature maps is based on isoline contour
ing in the vicinity of certain surface points followed by Ᏻ. Consider the continuous functions Fˆ 1 and Fˆ 2

PATTERN RECOGNITION AND IMAGE ANALYSIS Vol. 20 No. 4 2010


AN ALGORITHM FOR CALCULATING THE SIMILARITY MEASURES 497

approximating F1, F2, respectively, so that Fˆ 1 ≡ F1 on ⎧ 1/ρ d , ρ d ≠ 0,


ρs = ⎨ (5)
the set G1 and Fˆ 2 ≡ F2 on the set G2. Fˆ 1 and Fˆ 2 can be ⎩ 1, ρ d = 0.
obtained by a linear interpolation of the functions F1,
F2 in the points of the meshes G1 and G2, respectively. Note that the functions F1 and F2 are defined on
different sets. The basic idea of the proposed approach
Therefore, Fˆ 1 and Fˆ 2 define triangular meshes. is that each function is performed at the points of the
Let T be the Delaunay triangulation based on the other set using the Delaunay triangulation of the two
merging of two meshes G1 ∪ G2; it will be called the sets and the localization of the triangulations in each
general Delaunay triangulation. ΔABC is a triangle of other.
the triangulation T. The following denotation will be
introduced: 2. THE ALGORITHM FOR THE CALCULATION
V ( A, B, C, F 1, F 2 ) OF THE SIMILARITY MEASURE
An algorithm is proposed for the solution of the
(1)
Fˆ 1 ( x, y ) – Fˆ 2 ( x, y ) μ ( x, y ) dx dy. stated problem consisting in the following: Delaunay
=
∫∫ triangulations are constructed on both meshes, then
ΔABC each of the functions is interpolated with respect to the
The value of the quantity V is the weighted volume other mesh, which is followed by the construction of
of the difference between the functions F1 and F2 in the general triangulation for those two meshes. Then
ΔABC. at each point of the merged mesh the values of the two
Here, the case is considered where the merging of functions are known, and operations can be per
the convex hulls of two meshes is not empty: formed on individual cells (triangles) of the general
triangulation analyzing the mutual arrangement of the
Conv ( G 1 ) ∩ Conv ( G 2 ) ≠ 0. (2) space triangles defined by the functions.
In the opposite case, the surfaces must be reduced Therefore, the developed algorithm is based on the
to a system of coordinates where the condition (2) will idea of supplementing the values of each function in
be satisfied and the surfaces will be comparable. the nodes of the other mesh by constructing the
Delaunay triangulation and their localization in each
Introduce the dissimilarity measure ρd as other.
The main stages of the proposed algorithm are the
ρ d ( F 1, F 2 ) = ∑ V ( A, B, C, F 1, F 2 ). (3) following:
(1) Construction of the Delaunay triangulation on
ΔABC ∈ T
each of the meshes G1 and G2;
The introduced dissimilarity measure is a semimet
ric for the initial functions. (2) Localization of the points of each triangulation
in the triangles of the other one;
Therefore, as a dissimilarity measure, the sum of (3) Interpolation of the values of the function F1 at
the volumes of the difference is calculated between two the points of the mesh G2 and of the values of the func
surfaces with respect to all the triangles of the general tion F2 at the points of the mesh G1;
triangulation T. At the same time, at the cost of the (4) Construction of the general triangulation (on
function μ(x, y) it is possible to use the “weighted” the mesh G1 ∪ G2);
volume when the similarity of some fragments of the (5) Comparison of the functions in the separate
surface have a greater weight than the similarity of cells of the general triangulation.
other fragments.
Consider each of these in more detail.
When at the points of the merged Delaunay trian
gulation the values of both compared functions are
known, the average axial spacing can be proposed as a 2.1. Construction of Delaunay Triangulations
dissimilarity measure, i.e., For the construction of the triangulation, a well
known algorithm is used based on the recursive
ρ 'd ( F 1, F 2 ) = ∑ N +N
Fˆ 1 ( x i, y i ) – Fˆ 2 ( x i, y i ) . (4) decomposition paradigm “divide and conquer,” where
the initial set is split by a vertical line into two approx
1 2
( x i, y i ) i = 1 imately equal subsets, which is followed by the recur
Such a measure is easier to compute, but if the dif sive construction of triangulations of these subsets and
ference volume is known, the obtained value is more then by the merging of the two split triangulations.
informative. The computational complexity of this stage is
O(NlogN), where N is the number of points in the ini
Measure (3) equals 0 if and only if F1 ≡ F2. tial set. In the implementation of this algorithm, the
The similarity measure of the surfaces can be intro data structure “nodes with neighbors” described in
duced as follows: [20] was used.

PATTERN RECOGNITION AND IMAGE ANALYSIS Vol. 20 No. 4 2010


498 DYSHKANT

(a) D (b)
B
D
P
Q M Q
A M C
A
C G

Fig. 2. (a) Localization of the point in the triangulation, (b) the segment (MQ) passes through the vertex of the triangulation C.

2.2. Localizations of the Triangulations More formally, the algorithm of the localization
can be written in the following form:
At this stage the constructed triangulations are
localized in each other. At the same time, spanning (1) Select the initial triangle ΔABC. Assign it the
trees are used constructed in the nodes of each mesh. status of the current one. Find the coordinates of the
At one of the subsequent stages, i.e., that of the con intersection point of the median lines (centroid) of the
struction of the general triangulation, the algorithm of triangle: Mx = (Ax + Bx + Cx)/3; My = (Ay + By + Cy)/3.
the merging of nondivided Delaunay triangulations (2) Determine, which of the sides of the current tri
suggested by L. M. Mestetskiy and E. V. Tsarik in [18] angle is crossed by the segment [MQ]. If this item is
will be employed. This algorithm uses the minimum performed for the first time, all three sides of the cur
spanning trees of both meshes; therefore, it is just the rent triangle are checked for the intersection; other
minimum spanning trees (MSTs) that are feasible to wise, it will be sufficient to check only two sides, if the
use for the localization of the meshes in the triangula side on which the transition to the current triangle was
tion. made at the previous step.
First consider the problem of the point localization (a) Let us take that the segment [MQ] does not
in the Delaunay triangulation. cross any of the sides or crosses it at the point Q. Then
the current triangle is the sought one, and the opera
2.2.1. Problem of point location in the triangulation. tion of the algorithm is completed.
Let there be given a point Q and the triangulation T. It (b) Let the segment [MQ] cross one of the vertices
is required to define the triangle from T containing the of the current triangle. Then the transition is made to
point Q. If the point Q coincides with one of the verti the triangle adjacent to the current one at any of the
ces of the triangulation, any triangle can be indicated sides containing this vertex, and the new triangle is
incident to this vertex. If the point Q belongs to one of assigned the status of the current one. Transfer to the
the edges of the triangulation, any triangle can be indi beginning of item 2.
cated incident to this edge. If the point is beyond the
triangulation, i.e., does not belong to the convex hull (c) Let the segment [MQ] cross one of the sides of
of the set of the triangulation nodes, the point can be the triangle at an interior point. Then we transfer to
considered to belong to a certain infinite triangle, or the triangle adjacent to the current one at one side and
the triangle nearest to the point can be defined. make it current. Transfer to the beginning of item 2.
The complexity (labor intensity) of the localization
The idea of an algorithm for the calculation of the of a single point is determined by the number of trian
localization problem consists in the selection of a cer
tain initial point M, the localization of which in the gles located along the segment [MQ] and is O( N ) on
triangulation is known, and the gradual transition average and O(N) at the worst.
from M to Q along the straight line (MQ) (see Fig. 2). 2.2.2. Problem of mesh localization in the triangula
At each step, the transition is performed to the adja tion. The problem of the localization of the two
cent (adjoining to the side) triangle. Of special interest dimensional mesh G in the triangulation T will be
is the case when the segment [MQ] passes through understood as the problem of the localization of every
some vertex of the triangulation (see Fig. 2). A similar point of the mesh G in the triangulation.
algorithm was described in [6]. The algorithm of the mesh localization is proposed
Therefore, in the process of the point localization, using MST, the vertices of which are the points of the
a path of triangles from the triangulation is con given mesh (see Fig. 3).
structed, each of which (except the initial one) is adja 2.2.3.Construction of minimum spanning trees. The
cent to the previous triangle. Such a path will be called theoretical complexity of the algorithm for MST con
a localization path. In Fig. 2 the triangles of the local struction at N points is equal to O(NlogN). However,
ization path are shown by bold lines. on the basis of the Delaunay triangulation of the initial

PATTERN RECOGNITION AND IMAGE ANALYSIS Vol. 20 No. 4 2010


AN ALGORITHM FOR CALCULATING THE SIMILARITY MEASURES 499

Fig. 3. Localization of the mesh in the triangulation.


3
2
point set, the minimum span can be constructed over
the time O(N).
For the MST construction, the Cheriton–Tarjan
algorithm ([2]) described in [14] was used, which Fig. 4. Interpolation of the functions: (1) the surface
defined by the first function on the first mesh, (2) the sur
makes it possible to construct MST for a set of points face defined by the second function on the second mesh,
in a linear time by means of the Delaunay triangula (3) the interpolated surface defined by the second function
tion of the initial set. on the first mesh.
The main strategy of the algorithm consists in a
stagewise processing of a queue of trees (forest) F, the function F2 are interpolated at all the points of the
which initially is a set of N vertices. At every step a cer mesh G1 (see Fig. 4).
tain tree T is selected from the queue and a pair of ver
tices (U',V') such that
ρ ( U', V' ) = min { ρ ( U, V ) U ∈ T, V ∈ { N } – T }, 2.4.General Delaunay Triangulation
( U, V )
Now, at every point of both meshes the values of
a tree T ' is found containing V, trees T and T' are two functions are known, one of which was specified
merged in T', which is added to the forest F, and the and the other of which was obtained by the interpola
tree T' is removed from the F. tion. Here, the most efficient is the algorithm for the
The linear operating time is attained at the cost of merging of two nondivided triangulations because we
the cleanup procedure suggested by Cheriton and Tar know the localization of the points of one triangula
jan, during which the initial Delaunay graph H is com tion in the triangles of the other one.
pressed into some other graph H* so that every tree
In every node of the general triangulation, two
from the forest F is converted to a single “superver
tex,” i.e., the vertex of the graph H*. Making use of the functions are defined. At this stage, it is already possi
cleanup operation allows the graph H at each step to ble to perform some operations on them, e.g., to cal
contain only the information necessary for the perfor culate the difference distance between the functions
mance of this step. To implement the queue of the and use the result as a dissimilarity measure of the ini
trees, the data structure of a Fibonacci heap was tial surfaces.
selected introduced by M. Fredman and R. Tarjan in
[2] and [8]. For a detailed description of this data 2.5. Comparison of the Functions in a Triangular Region
structure and the proof of the computational complex
ity of the operations, see [4]. Of interest for possible applications is also the
By means of the described algorithm, the mesh G1 operation for calculating the volume of the difference
is localized in the triangulation of the mesh G2, and the between two functions. Such an operation is per
mesh G2 is localized in the triangulation of the mesh G1. formed in separate cells (triangles) of the general tri
Therefore, every point of the mesh is localized in a angulation. For each triangle, the volume of the differ
certain triangle of the triangulation of another mesh, ence between two functions is calculated, then all the
and the problem of the interpolation of the function results are summed and the similarity measure of the
defined on one mesh can be considered at the points of surfaces (5) is calculated. Below, the proposed method
the other mesh. for the computation of this volume is presented in
greater detail.
Consider a certain triangle ΔA0B0C0 of the general
2.3. Interpolation of the Functions triangulation. Let ΔABC (ΔA’B'C') be a triangle, let
For the interpolation of the surface on an element every vertex of which have the same coordinates along
of the triangulation, the linear interpolation is the axes Ox and Oy as the corresponding vertex
employed. The values of the function F1 are interpo ΔA0B0C0, and let the coordinate along the axis Oz be
lated at all the points of the mesh G2, and the values of equal to the value of the function F1(F2) at this vertex.

PATTERN RECOGNITION AND IMAGE ANALYSIS Vol. 20 No. 4 2010


500 DYSHKANT

(a) (c)
C'
B
C'
A' (b)
M M
A A(A')
C N
A' C
B'
A0 C0
A0 C0
C'

A C
B0 B0

Fig. 5. (a) a ≥ 0, c ≥ 0, b ≤ 0, (b) the wedge AA'MCC'N; (c) a = 0, b ≤ 0, c ≥ 0.

Let a = A 'z – Az, b = B 'z – Bz, c = C 'z – Cz. In calculat the same time, the linear estimate of the complexity
ing the measure (3), F1 and F2 are compared in the tri holds true for the stage of the mesh localization in the
Delaunay triangulation of the other mesh using the min
angle ΔA0B0C0. For this purpose, all the possible cases
imum span under the uniform distribution of the mesh
of the mutual arrangement of the triangles ΔABC and points. The complexity of the algorithm for the construc
ΔA’B'C' were studied. tion of the Delaunay triangulation is O(NlogN) and is
The first case. a ≥ 0, b ≥ 0, c ≥ 0, or a ≤ 0, b ≤ 0, c ≤ 0. determinant for the proposed approach.
In this case the sought volume equals the volume of a
truncated prism: V = SΔ( a + b + c )/ 3.
The second case. Two quantities out of {a, b, c} 3. APPLICATIONS OF THE ALGORITHM:
have one sign, and the sign of the third number is dif COMPARISON OF THREEDIMENSIONAL
ferent. PORTRAITS
Without loss of generality of our considerations, it
will be assumed that a ≥ 0, c ≥ 0, and b ≤ 0. Let MN be As applications of the proposed algorithm, prob
the segment at which the triangles ΔABC and ΔA’B'C' lems were considered on the comparison of three
(see Fig. 5a) intersect. dimensional facial models obtained by the method of
In this case the sought volume will be equal to the threedimensional scanning [1]. A 3D facial model,
sum of the volumes of the pyramid and the wedge: V = generated by a threedimensional scanner, was studied
VBMNB' + VAA'MCC'N. The coordinates of the points M as a singlevalued function of two variables defined on
and N are obtained by the formulas Mt = (At a + an irregular mesh (see Fig. 6).
Bt b )/( a + b ), Nt = (Bt b + Ct c )/( b + c ) In [17], the application of the algorithm is
where t ∈ {x, y, z}. The volume of the pyramid BMNB' described for the problem of comparing threedimen
is calculated by the formula VBMNB' = HSMNB'/ 3, where sional models of faces belonging to different people.
H is the distance from the point B to the plane (MNB').
The volume of the wedge AA’MCC'N is equal to the
sum of the volumes of the two pyramids (see Fig. 5b) 3.1.Model Normalization in the System of Coordinates
VAA'MCC'N = VMAA'C'C + VNMCC', the volumes of which
can readily be calculated. In the considered applications, at the first stage of
The third case. One of the quantities {a, b, c} equals face comparison preprocessing is performed, i.e., the
zero, and the remaining two have different signs. In model normalization in the system of coordinates.
this case the sought volume equals the sum of the vol Each of the models is transformed to the standard sys
umes of two triangular pyramids (see Fig. 5c): V = tem of coordinates, for which the following conditions
VBAMB' + VMAC'C. are fulfilled: (a) the axis Oz goes along the axis of sight
2.6.Estimate of the Computational Complexity of and directed to the camera, (b) the axis Oy goes along
the Algorithm the face and is directed from the chin to the forehead,
The experimental estimates show that each of the (c) the axis Ox goes across the face from the right to the
stages, with the exception of the triangulation con left, (d) the origin of coordinates satisfies the following
struction, is asymptotically performed in time linear system (the summation is performed over all the points
with respect to the number of nodes in the meshes. At (x, y) on which the function of the model is defined):

PATTERN RECOGNITION AND IMAGE ANALYSIS Vol. 20 No. 4 2010


AN ALGORITHM FOR CALCULATING THE SIMILARITY MEASURES 501

Fig. 6. On the left is the triangulation of a regular mesh, on the right is the triangulation of an irregular mesh.

⎧ every model of the video sequence into the upper


⎪ ∑
⎨ ( x, y ) ∈ G
x = ∑ y = 0 (static) and lower (dynamic) parts and construction
( x, y ) ∈ G for each of the parts of special local coordinate systems
⎪ of its own. For a face model made at rest, the upper
⎩ max F ( x, y ) = 0. and the lower systems of coordinates coincide, and for
( x, y ) ∈ G
The preliminary reduction of the models to such a the models of a dynamic video sequence, they differ.
standard system of coordinates enables the application The problem consists in recording these differences.
of the proposed algorithm to the comparison of The transformation of the lower system of coordinates
human faces. into the upper one for every frame of the video
sequence describes the dynamics of the lower jaw
motion. The formal description of the motion is rep
3.2. The Problem of Facial Asymmetry Estimation resented in the form of matrices of the lower coordi
Based on a 3D Model nates transformation into the upper ones.
In [16], the method application is considered to the The applications use the idea of a transformation of
computation of a quantitative estimation of facial the coordinate system of one of the models into the other
asymmetry on the basis of a threedimensional model. one yielding their best match (see Fig. 7). The search for
In order to calculate the asymmetry estimate, the ini the best coincidence is carried out by means of the stan
tial facial model is compared with the mirror reflection dard minimization methods (gradient descent, coordi
by the proposed method. The obtained value is called nate descent, and simplex method) by the parameters of
the initial estimation of the asymmetry. This is fol elementary transformations (small shifts and rotations
lowed by the stage at which the model symmetry plane about the coordinate axes). At the same time, the optimi
is refined, which results in the computation of the final zation problem is being solved, i.e., the functional differ
asymmetry estimate. Computational experiments per ences between the models are minimized.
formed on the basis of 3D faces proved the validity and
correctness of the final asymmetry estimation. Tested The comparison (matching) of the surfaces con
on the collected base of faces, the proposed estimate sists in finding a motion under which the measure of
satisfies the compactness hypothesis. the dissimilarity between surfaces describing faces is
minimum (Fig. 7).

3.3.The Problem of Estimating the Motion of the Human


Lower Jaw Based on a Sequence of 3D Models 4. COMPUTATIONAL EXPERIMENTS
It was proposed in [15] and [16] to use the intro In order to verify and validate the software imple
duced measure (3) in order to estimate the dynamics mentation of the proposed algorithm and to estimate
of the lower jaw motion in the process of chewing on its computational complexity, computational experi
the basis of a series of sequential threedimensional ments were performed1 for highdimensional prob
models. Such a problem is topical for investigations in lems (10 000–100 000 points).
the field of orthodontology and maxillofacial surgery.
The idea of estimating the motion parameters of 1 All
the computational experiments were performed on a computer
the lower jaw consists in the conditional subdivision of with an AMD Athlon 2600+ processor with 512 MB of RAM.

PATTERN RECOGNITION AND IMAGE ANALYSIS Vol. 20 No. 4 2010


502 DYSHKANT

Fig. 7. Search for the best coincidence of the two models.

As can be seen from Table 1, one comparison of stage of which the initial mesh is reduced to a regular
face models can be carried out in less than half a sec one by the interpolation method. The experiments
ond. In solving the verification problem (onetoone show that the method retaining the initial irregularity
comparison) when one of the models is in the base, the of the mesh is more efficient.
time can be reduced by half at the expense of the con In addition, on the basis of 3D facial models,
struction of the triangulation and MST at the prepro experiments were carried out making it possible to
cessing stage. estimate the approximation accuracy of the scanned
In Tables 2–4 the time consumption is shown for surfaces. In [3], P. Cignoni et al. considered in detail
some of the stages of the algorithm for various num the problem of the accuracy loss under the transition
bers of points in the initial models. As is obvious from to a simplified mesh. By comparing the initial triangu
the third columns of these tables, the labor intensity lar mesh with a simplified mesh obtained by the trun
(complexity) of the implementation of these stages is cation of some random points, it can be determined to
linear. what extent the model can be simplified without a sig
nificant loss of accuracy with respect to measure (3)
Experiments were also performed comparing the for the specific application. In [16], it is shown how
proposed method with the technique for the calcula the accuracy of the facial model approximation affects
tion of the similar dissimilarity measure, at the first the asymmetry estimation.

Table 1. Time consumption for various stages of the algo Table 2. Time of MST construction from the Delaunay tri
rithm in the calculation of the volume of the difference angulation by the Cheriton and Tarjan algorithm with the
between two facial models. The number of points in both use of Fibonacci heaps
meshes is N1 ≈ N2 ≈ 3000
Number Time (t)
N/t
Stage of the algorithm Time (s) of points (N) of construction, s
10000 0.453 22075
Construction of two triangulations 0.124
20000 0.906 22075
Construction of two MST 0.203 30000 1.312 22865
Localization of the triangulations in each other 0.015 40000 1.812 22075
50000 2.156 23191
Interpolation of the functions <0.001 60000 2.562 23419
Construction of the general triangulation 0.031 70000 3.156 22179
80000 3.531 22656
Calculation of the volume of the difference 0.031
90000 4.093 21988
Total time 0.405 100000 4.468 22381

PATTERN RECOGNITION AND IMAGE ANALYSIS Vol. 20 No. 4 2010


AN ALGORITHM FOR CALCULATING THE SIMILARITY MEASURES 503

Table 3. Time of the localization of one mesh in the trian Applications of the algorithm are considered for
gles of the triangulation of the other mesh problems of the analysis of human face models
obtained on the basis of threedimensional scanning.
Number of points
of the mesh G1(N1)
Time, s (t) N1/t Computational experiments have been performed on
highdimensionality problems for each stage of the
5000 0.015 3 × 10–6 algorithm for the comparison of monotonic surfaces
10000 0.031 3.1 × 10–6 and for an applied problem on the comparison of
threedimensional facial models.
15000 0.046 3.0667 × 10–6
The performed experiments confirmed the validity
20000 0.078 3.9 × 10–6 and correctness of the proposed algorithm operation.
25000 0.093 3.72 × 10–6
30000 0.098 3.2667 × 10–6
ACKNOWLEDGMENTS
35000 0.109 3.1143 × 10–6
This work was supported by the Russian Founda
40000 0.14 3.5 × 10–6
tion for Basic Research, project nos. 080100670 and
45000 0.156 3.4667 × 10–6 080700305.
50000 0.171 3.42 × 10–6
55000 0.176 3.2 × 10–6 REFERENCES
60000 0.187 3.1167 × 10–6
1. http://artecgroup.com, Artec Group Company, 3D
65000 0.203 3.1231 × 10–6 Scanning Technologies.
70000 0.212 3.0286 × 10–6 2. D. Cheriton and R. E. Trajan, “Finding Minimum
75000 0.234 3.12 × 10–6 Spanning Trees,” SIAM J. Comput. 5 (4), 724–742
(1976).
80000 0.25 3.125 × 10–6
3. P. Cignoni, C. Rocchini, and R. Scopingo, “Metro:
85000 0.256 3.0118 × 10–6 Measuring Error on Simplified Surfaces,” Comput.
90000 0.265 2.9444 × 10–6 Graphics Forum 17 (2), 167–174 (1998).
95000 0.296 3.1158 × 10–6 4. T. H. Cormen, C. E. Leiserson, R. L. Rivest, and
C. Stein, Introduction to Algorithms, 2nd ed. (MIT Press
100000 0.312 3.12 × 10–6 and McGraw–Hill, 2001).
5. N. Dyshkant and L. Mestetskiy, “Estimation of Asym
Table 4. Time consumption for the linear interpolation of metry in 3D Face Models,” in Proc. Int. Conf. on Com
both functions puter Vision Theory and Applications (VISAPP 2009)
(Lisbon, 2009), pp. 402–405.
Number of points of the 6. E. Mucke and I. Z. B. Saias, “Fast Randomized Point
Time, s (t) (N1 + N2)/t
meshes G1 and G2 (N1 + N2) Location without Preprocessing in Two– and Three–
Dimensional Delaunay Triangulation,” in Proc. 11th
50000 0.015 3333333.33 Ann. Symp. on Computational Geometry (Los Alamos,
100000 0.031 3225806.45 1996).
150000 0.046 3260869.56 7. T. Fan, G. Medioni, and R. Nevatia, “Recognizing 3D
Objects Using Surface Descriptions,” IEEE PAMI 11
200000 0.062 3225806.45
(11), 1140–1157 (1989).
8. M. Fredman and R. Tarjan, Data Structures and Net
work Algorithms (Society for Industrial and Applied
CONCLUSIONS Mathematics, Philadelphia, 1983).
A new algorithm is proposed for construction of the 9. T. Gatzke, C. Grimm, M. Garland, and S. Zelinka,
“Curvature Maps for Local Shape Comparison,” in Int.
similarity measure of monotonic surfaces represented Conf. on Shape Modeling and Applications (SMI) (Cam
as point clouds, based on the approximation of the bridge, MA, 2005).
surface by piecewiselinear functions of two variables 10. A. Gruen and D. Akca, “Least Squares 3D Surface and
in the Delaunay triangulations. The algorithm enables Curve Matching,” ISPRS J. Photogram. Remote Sens.
the comparison of the functions defined on two differ 59, 151–174 (2005).
ent sets of points. A semimetric is proposed for the 11. C. Mccool, J. Cook, V. Chandran, and S. Sridharan,
comparison of the surfaces, which can be adapted to “Feature Modeling of PCA Difference Vectors of 2D
any specific application, e.g., by the introduction of and 3D Face Recognition,” in IEEE Int. Conf. on Video
and Signal Based Surveillance, AVSS’06 (Sydney, Nov.
the measure on the surface. Therefore, the offered 2006).
method presents a mathematical apparatus for the 12. T. Schenk, “Fibonacci Heaps and Their Uses in
construction of general and applied measures for the Improved Network Optimization Algorithms,” JACM
comparison of surfaces. 34 (3), 596–615 (1987).

PATTERN RECOGNITION AND IMAGE ANALYSIS Vol. 20 No. 4 2010


504 DYSHKANT

13. T. Schenk, “Photogrammetry and Laser Altimetry,” in in Proc. Int. Conf. GraphiCon’04 Computer Graphics
Proc. Workshop on Mapping Surface Structure and (Moscow, 2004).
Topography by Airborne and Spaceborne Lasers (La 19. F. P. Preparata and M. I. Shamos, Computational Geom
Jolla, CA, Nov. 9–11 1999). etry: An Introduction (SpringerVerlag, 1985; Mir, Mos
14. R. Tarjan, “Fibonacci Heaps and Their Uses in cow, 1989).
Improved Network Optimizations Algorithms,” J. Assoc. 20. A. V. Skvortsov, “A Survey of Algorithms for Construct
Comput. Mach. 34, No. 3 (1987). ing a Delaunay Triangulation,” “Numerical Methods
15. D. V. Gordeev and N. F. Dyshkant, “Modeling of Jaw and Programming, No. 3 (2002).
Movement Dynamics during Mastication according to
the Series of 3D Images,” in Proc. 19th Int. Conf. on Natalia F. Dyshkant. Born in
Computer Graphics and Vision “GraphiCon’2009” (Mos 1987. Graduated from Moscow State
cow, 2009), pp. 348–352. University, Department of Computa
16. N. F. Dyshkant, “Estimation of Jaw Mimic Dynamics tional Mathematics and Cybernetics
during Mastication according to 3D Imagery,” in Proc. in 2008. Postgraduate student of the
Conf. “Lomonosov–2009” (Moscow, 2009), p. 28. Chair of Mathematical Methods for
Forecasting, Department of Compu
17. N. F. Dyshkant and L. M. Mestetskiy, “Comparison of tational Mathematics and Cybernet
3D Portraits during Faces Recognition,” in Proc. All– ics. Scientific interests: pattern rec
Russian Conf. “Mathematical Methods of Pattern Recog ognition, data mining, machine
nition–13” (Zelenogorsk, the Leningradskaya Region, learning, computational geometry,
2007). image processing and analysis, imag
18. L. M. Mestetskiy and E. V. Tsarik, “Delaunay Triangu ing systems, comparison of the shapes of threedimensional
lation: Recursion without Space Division of Vertices,” objects. Author of 5 papers.

PATTERN RECOGNITION AND IMAGE ANALYSIS Vol. 20 No. 4 2010

You might also like