XXIV CONVEGNO NAZIONALE DELL`ASSOCIAZIONE ITALIANA

advertisement
Surface--Normal Estimation with Neighbourhood Reorganization for 3D
Reconstruction
Felix Calderon1, Ubaldo Ruiz1 and Mariano Rivera2
1
Universidad Michoacana de San Nicoláss de Hidalgo. División de Estudios de Posgrado.
Facultad de Ingeniería Eléctrica. Santiago Tapia 403 Centro. Morelia, Michoacán, México.
CP 58000.2 Centro de Investigacion en Matematicas A.C. Apdo. Postal 402, Guanajuato, Gto.
Mexico. CP 36000. calderon@umich.mx ubaldo@fismat.umich.mx mrivera@cimat.mx
ABSTRACT. Our proposal changes the characteristics of the neighborhood in places with
corners or edges by assuming a locally plane piecewise surface. The results obtained by
NENR improve the quality of the normal with respect to the state of the art algorithms. The
new neighborhood computed by NENR, use only those points that belong to the same plane
and they are the nearest neighbors.
1. Introduction
The estimation of surface-normals from a point cloud is usually done in two stages, as
proposed Hoppe et al. in [1] (NE--Hoppe). In the first stage the Tangent Plane (TP) is
estimated at each point. Thus the Orthogonal unitary vector to the Tangent Plane (OTP) will
be used as an approximation of the normal at such point. In the second stage the orientation of
the OTP, spatially coherent, is computed.
In general given set of points P={p1, … , pN} and let be Vi the set of k nearest neighbours
(neighbourhood) of the point pi. Then the TP at pi is obtained by fitting a plane, Api,x+ Bpi,y +
Cpi_z + D = 0, for all the points pj in Vi by using a least-squares procedure or some robust
estimator, then the surface-normal, ni, is the normal to the TP. Hoppe et al. [1] proposed to
compute, ni, as the third eigenvector (associated with the smallest eigenvalue if 1 > 2 > 3
then ni = -3 o 3) of the local covariance matrix given by equation (1):
(1)
The RANSAC algorithm [2] is an algorithm for robust fitting of models in the presence of
many data outliers. RANSAC can not distinguish between noise and information, for instance,
in case of a corner with three points (see figures 1), RANSAC randomly can find three
different planes using only two point and the three solutions satisfy the same stop criteria and
only two points. Figure 1a represents the worst solution which is equivalent to the plane using
three points and figure 1b the best solution.
The Oriented OTP (OOTP) is computed such that nearby planes are consistently oriented
(remember that ni = -3 o 3). The NE-Hoppe algorithm, proposed in [1], considered the state
of the art, resolves the ambiguity between normals in the same neighbourhood building a
minimum spanning tree with cost 1-|ninj|. We use this part of NE-Hoppe algorithm in our
procedure in order to resolve the ambiguity (for details see [1]).
Although the previous algorithms [1,2] work well in the presence of smooth regions and
moderate noise, they perform poorly in those regions near corners or edges. If the
neighbourhood at each points has a fixed size and it is constructed using only the Euclidean
distance then it is possible that points considered as outliers for a certain region be used in the
computation of the normal. Figure 2 shows the normal estimation by different approaches for
a step function in two dimensions. Figure 2a shows the ground truth and Fig. 2b shows the
normal computed using neighbourhoods based only in a proximity measure, note the effect in
corners of the step function. On the other hand, Fig. 2c, shows the results applying our
approach (that will be introduced in next section).
Fig. 1. Different plane estimations using three points on a corner. (a) Plane over the three points and (b) plane
over points pi and ph when pj is not included.
Fig.2. Step function normal estimation. (a) Ground Truth, (b) NE-Hoppe algorithm and (c) NENR algorithm
2. Our Approach
In case of a piecewise constant surface, for a given neighborhood, we approximate this surface
by TPs and it is desirable to get out points of the cloud belonging to different TPs. So a new
neighborhood is computed, considering only the nearest neighbors who belong to the same
TP. Figure 1a shows the standard plane estimation, for the case of three points on a corner,
and Fig. 1b shows the plane estimation when a point is rejected, a desirable condition in those
cases. We propose a HQR cost function for this purpose and the indicator variable in our case,
is used as non-membership term, lij=1 means that the j-th point, in the original neighborhood,
it is not in the same TP that i-th point. The OOTP smoothness is controlled with the
parameters  and . We proposed to compute the surface-normal as the minimization of a
constrained HRQ cost function given by equation (2). The additional constraint imposes a
unitary norm to the flat piecewise normal vector mi:
(2)
where ni is the normal vector computed with the NE-Hoppe for some neighborhood size. Then
by using the Lagrange multipliers, , we include the constraint in the Lagrangian given by (3):
(3)
Then the solution is computed solving the Karush-Khun-Tucker. We propose to use the
Gauss-Seidel algorithm, for solving this linear system of equation, due the fact that the system
of equation has a banded, diagonally dominant and semi-positive defined matrix, so the t-th
Gauss-Seidel Iteration is given by the equations (4)
(4)
3. EXPERIMENTS
We perform experiments in both synthetic and real data, for comparing NE-Hoppe, Ransac
and NENR algorithms for normal estimation. The synthetic data corresponds to a step
function (fig 1), a corner model in 3D, and a 3D model (fig 3), while the real data corresponds
to 3D models widely used in the literature (fig 4). All the 3D models were reconstructed using
the Ohtake's MPUI implementation available at [3].
Table 1 shows the average angle between the ground truth and the normal computed for
synthetic data. For this table you can see that NERN up perform the normal estimation by NEHoppe and RANSAC. RANSAC presents a variable result due its random nature, in some
cases de normal estimation is the worst and in some case is better than NERN.
Figure 3 show the final reconstruction using MPUI. The final reconstruction for NERN is very
similar that the ground truth and NE-Hoppe presents some artifacts in borders and corners.
Finally figure 4 show a reconstruction using real models NERN and MPUI.
Table 1. Normal estimation angle between ground truth normals and the estimated normals.
Algorithm
Step Function
3D corner
Synthetic Model
NE-Hoppe
5.6278
8.8843
7.65258
NERN
0.0055
3.0548
3.1935
RANSAC (best)
0.0000
3.7999
2.9032
RANSAC (worst)
5.6249
6.1976
6.3870
Fig. 3. Surface reconstruction using MPUI and different
Surface--Normal Estimations
Fig. 4. Surface reconstruction using MPUI and NERN
3. CONCLUSIONS
The NENR algorithm produces a reduction in the neighborhood size, rejecting the neighbors
that have large differences. This condition warranties that the neighbors have the same
smoothness degree between them. The NERN algorithm was tested using synthetic examples
building with shape discontinuities. The experiments presented better quantitative and
qualitative results using NENR than NE—Hoppe and RANSAC.
REFERENCES
[1] Hugues Hoppe and Tony DeRose and Tom Duchamp and John McDonald and Werner Stuetzle, “Surface
reconstruction from unorganized points”, SIGGRAPH '92: Proceedings of the 19th annual conference on
Computer graphics and interactive techniques, (1992). 71-78.
[2] M. A. Fischler, R. C. Bolles, “Random Sample Consensus: A Paradigm for Model Fitting with Applications
to Image Analysis and Automated Cartography”, Comm. of the ACM, 24, 381-395, (1981)
[3] Yutaka Ohtake and Alexander Belyaev and Marc Alexa and Greg Turk and Hans-Peter Seidel, “Multi-level
partition of unity implicits”, SIGGRAPH '03: ACM SIGGRAPH 2003 Papers, (2003), 463-470.
Download