NURBS procedures in reverse engineering.
Ivanov, Marian ; Pupaza, Cristina
1. INTRODUCTION
Reverse Engineering (RE) methodologies are fairly mature. However,
one of the most important issues is still how to adequately define and
manipulate surface details, in order to accurate represent and easily
modify the original shape.
NonUniform Rational Spline (NURBS) are the ultimate RE output for
CAD-CAM-CAE applications. These surfaces can be constructed based on the
CAD entities from the curve phase or by using polygon meshes for surface
fitting. The main objective of the NURBS surface definition phase in RE
is to prepare a patch structure of quadrangular shapes for surface
construction and for further utilization of the model. The patches can
be drawn on the polygon model manually, semi-automatically, or
automatically based on a target patch count and the curvature of the
model. Although most RE software packages provide an automatic method to
generate patch structures quickly, manual organization of the patch
structure is always required to obtain the optimal layout, because, in
many cases features such as edges and primitives cannot be recognized
and patches do not adequately define the surface curvature (Raja &
Fernandes, 2008). Examples of multilevel approximation have been
reported (Moller, 2004), focusing on virtual reality simulations. Recent
papers present an algorithm of NURBS surface fitting for reverse
engineering (Dan & Lancheng, 2006), but the algorithm is
computational intensive and the model has to be divided. Each patch has
to be digitized separately, which is not the best choice. Many RE
challenges are in fact modeling capabilities needed to process the 3D
captured data. At present these functionalities are already implemented
in advanced CAD systems (Lombard, 2008) and the designer has to use them
in a rapid and efficient manner. The present paper deals with new
procedures implemented in CAD systems used in processing RE models. A
human face model was recovered and details were improved using NURBS
technology in SolidWorks 2008.
2. SHAPE REPREZENTATION USING NURBS
NURBS are mathematical representations of 2D or 3D objects, which
can be standard shapes or free-form shapes. Advantages of using NURBS
representation are: * flexible design to a wide range of shapes; *
compact expressions that can be evaluated and displayed quickly; *
useful especially in 3D modelling, allowing the designer to easily
manipulate control vertices and control curvature and the smoothness of
contours; * defined from little data; * used to represent exactly the
conic curves, with the added advantage of local control; * easy and
stable evaluators, breaking and joining, degree elevation, and affine invariance.
NURBS enables local modification. Changing a control point affects
the shape of the curve only in the neighbourhood of that point. The
actual range of the change depends on the degree used. NURBS lets the
CAD system to interpolate a large number of points while maintaining a
low-degree basis function. This helps eliminate twists and spikes that
often result from using high-degree polynomials (Piegl & Tiller,
1997). NURBS are generally characterized by four features: control
points, weights, degree, and knot vector (Fig. 1). NURBS curve C(u),
which is a vector-valued piecewise rational polynomial function, is
defined as (Altmann, 2005)
C(u) = [n.summation over (i=0)] [w.sub.i] [P.sub.i] [N.sub.i,k]
(u)/[n.summation over (i=0)] [w.sub.i] [N.sub.i,k] (u) (1)
where [w.sub.i] are weights, Pi--control points (vector),
[N.sub.i,k]--normalized B-spline basis functions of degree k. These
B-splines are defined recursively as
[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] (2)
and
[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] (3)
where [t.sub.i] are the nodes forming a knot vector U{[t.sub.0],
[t.sub.1], [t.sub.m]}. The definition of the NURBS curve (1) can be
rewritten using rational basis functions [R.sub.i,k] (u) (4).
C(u) = [n.summation over (i=0)] [P.sub.i] [R.sub.i,k] (u) (4)
The NURBS surface is defined in a similar way. NURBS are actually
regarded as a standard way to create and represent complex objects and
free form shapes.
[FIGURE 1 OMITTED]
3. MODEL RECOVERING AND IMPROVEMENT
The point cloud model of a scanned human face was transformed into
a 3D image file created in Virtual Reality Modeling Language and saved
in a WRL--ASCII text format. This file contains only the coordinates of
the measured points and viewpoint coordinates for the initial view of
the model. The most important operations for optimizing the file were
noise reduction and gap cleaning, abnormal surface cleaning, polygon and
mesh refinement and polygon mesh decimation.
3.1 Mesh recovering and cleanup
A visual inspection of the model was proceeded before mesh
preparation and cleanup. Figure 2 shows the WRL format, which was
transformed into a polygon model.
[FIGURE 2 OMITTED]
[FIGURE 3 OMITTED]
All holes were automatically detected and filled. In order to
reduce the dimensions of the model and to emphasize the modelling
procedure some simplifications were done. This helped speeding up
surface generation of the model, which contains no symmetrical features.
Individual submeshes were identified by colors (Fig. 3). The sensitivity
was adjusted to obtain a desired submesh separation, which was improved
in a later stage.
3.2 Surface extraction and solid model generation
After geometry recovering and mesh refinement the NURBS patches
were obtained. When generating patches guided creation of the faces was
chosen to better control the shapes. Editing of the patches was needed
because the nose of the model proved to be distorted.
The geometry and topology of the model were checked with
'zebra stripes' option, in order to find the face
imperfections, difficult to detect otherwise. This time no
irregularities or breaks in the model were found. Figure 4 shows stripe
checking options and editing of the patches. New curves and control
points were added on the NURBS surfaces in order to allow improving
local details. The geometry of the model was updated by means of new
parameter definition and interactively changing control points. When
changing the local shape of the model tangency constraints were imposed
(Fig. 5). Surface extraction converted all the regions into faces. When
the base model was completed and the surfaces were turned into a solid,
the model was saved in an STEP format.
[FIGURE 4 OMITTED]
[FIGURE 5 OMITTED]
4. CONCLUSION
Most RE applications need at least two software packages to
complete the data processing chain: one for RE data manipulation and the
other for the geometric modeling work, which is based on CAD entities or
NURBS surfaces. This attempt proved that advanced modeling technologies
help the designer to reduce the processing time and close the gap
between traditional RE packages and CAD systems. The procedure was
tested on free form shapes, but it is useful for mechanical components
with complex geometries as well. The designer has to carefully check
that the geometry of the model remained unchanged, controlling the
number of control points of the grids when constructing NURBS patches,
although automatic model recovering and cleanup functionalities are user
friendly. Further work is in progress for retrieving and editing the
parameter definition of the surfaces in order to integrate the procedure
in an optimization loop.
5. REFERENCES
Altmann, M. (2005). About Nonuniform Rational B-Splines NURBS.
Available from: http://www.cs.wpi.edu/~matt/
courses/cs563/talks/nurbs.html. Accessed: 2005.05.05
Dan, J.; Lancheng, W. (2006). An Algorithm of NURBS Surface Fitting
for Reverse Engineering, Int. Journal of Advanced Manufacturing Tech.,
Springer-Verlag, DOI 10.1007/ s00170-005-0161-3, No. 31, pp. 92-97,
London
Lombard, M. (2008). SolidWorks. Surfacing and Complex Shape
Modelling. Wiley Publishing Inc., ISBN 978-0-470-25823-1, Indianapolis,
Indiana
Moller, D.P.F. (2004). Computational Modeling an Simulation for
Industry. Proceedings of the 16th European Simulation Symposium, Gyorgy
Lipovszki, Istvan Molnar (Ed.), SCS Press, ISBN 1--56555-286-5.
Piegl, R.; Tiller, W. (1997). The NURBS Book, Springer-Verlag, ISBN
3-540-61545-8, Berlin Heidelberg
Raja, V.; Fernandes K.J. (2008). Reverse Engineering. An Industrial
Approach, Springer-Verlag, ISBN 978-1-84628855-5, London
IVANOV, Marian & PUPAZA, Cristina *