You are on page 1of 5


Proceedings of the International Conference on Aerospace Science and Technology
26 - 28 June 2008, Bangalore, India

INCAST 2008-126

Sanjay Kumar Shukla
Engineer, Aircraft Engines Division, General Electric-Bangalore,

For direct slicing the cloud point data a novel algorithm Intermediate Skeletal Model (ISM) is proposed in the present
work. For establishing connectivity among feature points the ISM algorithm grows a sphere recursively over the data
set. For an unsegmented cloud point data the approach of using a unified sphere’s radius results in loss of feature
information. The adaptive approach for segmentation can capture the feature information and gives more flexibility as
the quadric evaluated can be disc shape at near edge regions, ellipsoidal shape at convex/concave features or can be a
sphere in planar regions i.e. regions which encounter less curvature features. The modified algorithm estimates the
radius of sphere to be grown on a node in the real time. At the regions of higher curvature, the principal axes are small
and at relatively planar regions larger principal axes are used.

Reverse Engineering (RE) is a process, which enables to generate a computerized representation of a physical object
based on the collected point data information from the object’s surface. The process is useful (1) when an artist makes
the design of an object and it has to be captured as a CAD model for further analysis. (2) When a product design
requires frequent changes in the development cycle and the initial design data become obsolete. (3) When spare parts
for a product are needed and its engineering design is lost. [4]

In the process of generating a surface model from point cloud data the segmentation is a process that partitions the
cloud point data by extracting the edges. The process plays an important role in fitting surface patches and applying
the scan data to the rapid manufacturing process. Woo et al. [4] proposed a segmentation algorithm that archives the
cloud point data to an octree data structure. A bounding box enclosing the data points is divided to an initial grid
according to user-defined parameter. The standard deviation of normal at the data points in the initial grid blocks is
used as a decision criterion to further divide the each of the initial grid box into eight boxes by halving the three axes.
The partitioning edges are removed by removing the boxes of user-defined size. The separation between regions is
performed automatically by detecting any discontinuities using the gaps created by the removed cells. Yang and Lee
[5] proposed a parametric quadric surface approximation method to estimate the local surface curvature properties.
The surface curvatures and the principal directions are computed from the locally approximated surfaces. Edge points
are identified as the curvature extremes, and zero crossings, which are found from the estimated surface curvatures.
After edge points are identified, edge-neighborhood chain-coding algorithm is used to for form boundary curves.

The next step in RE pipeline is modeling. A structure on the set of points is needed in order to make explicit the
proximity relationships between points on the surface of the object. The modeling techniques are a means to define the
underlying structure contained by the cloud point data. The modeling techniques used in layered manufacturing for
defining the underlying surface can be categorized in three broad categories: a) Surface Interpolation, b) Surface
Reconstruction; and 3) Direct Slicing.

In recent years, some approaches have been suggested to fit a cloud point data with a skeleton rather than a full-
fledged corpus. The shape errors in the final model can crop in during the modeling, tessellation or slicing. As in
direct slicing, a layer-based model is directly generated from the cloud data, which is very close to the final RP model.
Therefore, there is basically only one source of shape error. If this error can be controlled effectively, this approach
will have the advantage over the other two modeling approaches in terms of shape error control on the RP model [6].

the color flag to the point is set “grey” and the point is enqueued to a Grey list. have reported in their work [6] an adaptive approach for finding the contour/slice information. have reported an error based segmentation approach to arbitrarily scattered cloud data [2]. The 2D points on the plane are used to construct a closed polygonal curve and the distances between the points and the polygon are then calculated as the actual shape errors (σactual). The code iteratively dequeue all the active points for the particular node and connect them with the node. We can relate the medium changes the wave encounters with the curvature changes in the cloud point data. The rest of paper is organized as follows. A point from the active list is dequeued and connected to the node. India Wu et al. The feature points in the subdivided regions are extracted and connected to nearest four feature points in and across different regions. The interpolation between the feature points generates skeletal representation of the prototype’s surface. the layer thickness is adaptively increased. The direct slicing methods are very close to final RP model and controls error metering effectively. which can be queried at a later stage for extracting the feature information. The mid-plane in the initial layer is used as the projection plane and the points within the layer are projected onto this plane. The general procedure of the algorithm starts model building along a user specified slicing direction. Liu et al. The active points are centre of fresh disturbances and form an advancing front. The skeletal model lacks in the topological information and hence it becomes imperative to have a data structure.e. The construction of ISM starts with setting the color flag for the points in cloud data as “white”. The subsequent layers are constructed in the same manner. [3]. If σactual is smaller than the given shape tolerance σgiven. Section 4 summaries the present work. In section 3 modified ISM algorithm for modeling unsegmented cloud point data is given. INTERMEDIATE SKELETAL MODEL (ISM) For modeling a skeletal model over the data points a novel algorithm Intermediate Skeletal Model (ISM) is proposed in the present work. The point from the Grey list is dequeued and serves as a new node for sphere to be grown over it.28 June 2008. 2 Proceedings of the International Conference on Aerospace Science and Technology 26 . projection of points brings in inherent assumptions and so a probability of seeping in error to the generated model. Sparse matrix representation is used for adjacency matrix formation used for the ISM algorithm. The algorithm iteratively dequeue all the data points in grey list and terminates when all the points in the data cloud are “black”. The modeling of cloud is a based on an analogy of wave propagation according to Huygens–Fresnel principle. Bangalore. but the mathematical treatment of subject via. Section 2 discusses the novel Intermediate Skeletal Model (ISM) algorithm developed in present work for generating the skeletal model. All the points in the cloud data falling inside the sphere are termed as active point and are enqueued to the Active Point list. An advancing front on a seed point is approximated to be spherical in shape and term the points falling within the sphere as active points then the local skeletal model can be seen as the connection between the seed point and the active points. then the point’s location within the data structure is retrieved and the node is connected to the point in consideration. Section 4 presents the case studies to show the efficacy of the approach. The node is turned “black” when all the point in its active list has been connected to it. The approach suggested does the modeling and segmentation simultaneously and thus does not require separate instantiation of the two procedures. A point is chosen randomly from the cloud data and a sphere of user specified radius is grown on the chosen point (node). MODELING Segmentation cum modeling technique is suggested in the present work. If the point in the Active list is already grey i. Varying the radius of the sphere grown on the active point dynamically the approach can capture the curvature information in the data points. 2. This cluster of subdivision plane is defined according to a user specified plane and its normal direction. . which grows to form a full-fledged skeletal model on the cloud point data. contribution made and give some suggestion for future research and development. The 3D data cloud is adaptively subdivided with a cluster of parallel planes. the point is already present in the data structure. The first layer is thus constructed by extruding the polygon along the slicing direction with the determined maximum allowable thickness. The initial layer is obtained from one end with a sufficiently small thickness.

2. The adaptive sphere gives more flexibility as the quadric evaluated can be disc shape at near edge regions. it should capture the point in a thin band. The modified algorithm estimates the radius of sphere to be grown on a node in the real time. The objective function is designed such that the above desired properties are represented well in the function: a) For banding the data points in a thin region an average projection error [2] in 3 coordinate planes is taken as a function to be minimized. The centre of the projected data set in each plane is calculated 1 n by Pc = ∑ Pi where. (b) Extraction of curvature information by the ellipsoid The following properties are desired for the quadric to enable it capture intricate feature information.e. y and z . The ellipsoidal band for the average projection error is used for representation ease and the error band can be of any generic shape. Pi is the ith data point and n is the number of points in the data set X. India 3. (a) Filleted edge with constant radius of sphere. For an unsegmented cloud point data the approach of using a fixed radius of sphere can result in loss of feature information as shown in figure below 3.( p − O) . Figure 3. The point set within the ellipsoid influence are projected in the three reference planes defined ∧ ∧ ∧ by vectors x .1(b). At the regions of higher curvature. this property ensures that the quadric capture points from all directions in 3D and results in a balanced or a well connected skeletal model that does not sacrifice on the feature information.e.1. T ) = . The quadric should capture sufficient number of points and the quadric should be balanced. The quadric should be banded i. Pc is the center of n i =1 the data set . The adaptive approach for segmentation can capture the intricate feature information. 3 Proceedings of the International Conference on Aerospace Science and Technology 26 . Average Projection Error Band denote a plane associated with the centre point O ∈ X and unit normal vector perpendicular to reference plane by ⎛ ∧⎞ T ⎜ O. the principal axes are small and at relatively planar regions larger principal axes are used. All through the execution of the ISM algorithm the average projection error is kept within the designer specified bound.3 shows a case of average projection error band.1(a).28 June 2008. The average projection error of the data points in the region to the projection plane is n . Assume that point O is the closest to Pc . n ⎟ to be the projecting plane of data set X. The projecting error of point Pi ∈ X to T ⎛⎜ O. Bangalore. ellipsoidal shape at convex/concave features or can be a sphere in planar regions i. The approach minimizes the filleting at the edge corners as shown in the figure below 3. (a) (b) Figure 3. ADAPTIVE RADIUS OF SPHERE The ISM algorithm suggested can be modified to segment the cloud point data while modeling in real time. Figure 3. n ⎞⎟ is then calculated ∧ ⎝ ⎠ ⎝ ⎠ ∧T by dist ( p. regions which encounter less curvature features.

a. [abc] denotes ⎝ abc + (a. India 1/ 2 estimated with the following error indicator: avg _ proj _ err = 1 ∑ (dist ( p. Ω ( delaunayPi ) represents the solid angle by ith delaunay triangle of the P data set. A balanced quadric can be evaluated by maximizing the function. 4 Proceedings of the International Conference on Aerospace Science and Technology 26 . An efficient algorithm for calculating the solid angle Ω subtended by a triangle with vertices A. T )) 2 ⎟ + max ⎜ ∑ Ω ( delaunayPi ) ⎟ + max( s ) i = x . this is r also equivalent to the scalar triple product of the three vectors. z ⎜ n p∈P ⎟ i ⎝ ⎠ ⎝ i =1 ⎠ The quadric of influence is forced to be spherical and so the objective function is penalized by the amount the moment of inertia of the quadric differs from the moment of inertia of sphere defined by the radius equal to the average of quadric’s principal axes. RESULTS The Modified Intermediate Skeletal Model algorithm suggested has been implemented in Matlab. The modeling starts initially with a constant radius of sphere. ⎝ i =1 ⎠ c) Non-Degeneracy: The quadric grown on the node is desired to enclose sufficient number of points within its region of influence.c)b + (b.28 June 2008. z ⎜ n p∈P ⎟ ⎝ ⎠ b) For balancing the quadric the total solid angle subtended by the surface fitted onto the data points within the quadric’s influence region i. The penalty value is normalized to range in 0 to 1. as seen from the origin can be found in work of Oosterom and Strackee [1]. The standard deviation of directed vectors from a seed point (node) to the active points falling within the influence of quadric is estimated. 2 2 2 ⎛ I xxq ⎞ ⎛ I yy ⎞ ⎛ I zzq ⎞ q . Bangalore. If the standard deviation of the directed vector is more than a preset value the optimization is carried out for estimating the principal axis to the quadric.b denotes the scalar product. M i1 = ai and so on. r rr The solid angle ‘ Ω ’ by the triangle is given as [1]: r rr ⎛ Ω = 2 × tan ⎜−1 rr [abc] rr rr ⎟ ⎞ where. The number of points inside the quadric of influence to be maximized in our objective function. The optimization is also used when the deviation among the quadric’s principal axis grows smaller than the threshold defined. a is the vector representation of point A. y . i = x . The resultant mathematical formulation for the objective function can be given as: ⎛1 1/ 2 ⎞ ⎛ n−2 ⎞ min ∑ ⎜ ∑ ( dist ( p . active points. y . If three or more point are registered in the quadric the points are triangulated and the solid angle is the sum total of the angle subtended by each of such triangles.b)c + (a. is taken as an objective function to be maximized. ⎛ n−2 ⎞ max ⎜ ∑ Ω ( delaunayPi ) ⎟ . where subscript denotes the axis along which moment of inertia is calculated and ⎜ S − 1⎟ + ⎜⎜ S − 1⎟⎟ + ⎜ S − 1⎟ = 0 ⎝ I xx ⎠ ⎝ I yy ⎠ ⎝ I zz ⎠ the superscript s and q denotes the sphere and quadric respectively. The two studies are based on simulated data sets in which the original cloud data are generated from the freeform surface. T )) 2 The total projecting error then n p∈P can be given as: Total _ Projection _ Error = ⎛1 1/ 2 ⎞ ∑ ⎜ ∑ (dist ( p.g. B and C.c)a ⎠ ur the determinant of the matrix that results when writing the vectors together in a row. e. The Non-Degeneracy condition avoids quadric void of any points. Ti )) 2 ⎟ . while a is the rr module of that vector (the origin-point distance). For a single point within the quadric the solid angle is taken a zero while for two points the solid angle is taken as the angle subtended by the interpolating line between the data points. The data points . The second call helps in springing back the ellipsoid to sphere when it comes out of the concave or convex features.e. where. 4. Two case studies are presented here to illustrate the efficacy of the algorithm for constructing the skeletal model.

Bangalore. Zhang. The resultant data structure from ISM algorithm can be queried for retrieving topological information from the cloud point data. Zhang and H. Loh.1 (a). India for first freeform surface are structured while data points for the second model are unstructured and are obtained by triangulated the solid model generated and extracting the coordinates of nodes of the triangles obtained during triangulation. Modeling cloud data using an adaptive slicing approach. Van Oosterom and J. IEEE Transactions on Biomedical Engineering. No.S.T. Segmentation of Measured Point Data using a Parametric Quadratic Surface. It can be seen that the approach suggested captures the curvature information aptly.1 (c) Figure 5. [6] Y. Semyung Wang and Kwan H.1 (a) Figure 5. Vol. Loh and Y. The points that are separated far apart are not captured pretty well. International Journal of Machine Tools & Manufacture 42 (2002) 167–178. Wong. Journal of Materials Processing Technology. strackee.H. E. 2.F. Yang. [4] H. Wong. Y. Lee. Lee. 138 (2003) 53-57. [3] G. (d) back view of Skeletal model in figure 5. Y. Liu. A new segmentation method for Point Cloud Data. Y. 5 Proceedings of the International Conference on Aerospace Science and Technology 26 . Error Based Segmentation of Cloud Data for Direct Rapid Prototyping. Modelling cloud data for prototype manufacturing.1 (b) Figure 5.F. H. REFERENCES [1] A. BME-30. Computer-Aided Design 36 (2004) 231–240. Liu.T. E.S. CONCLUSIONS AND DISCUSSION The present work is an attempt for directly slicing the cloud point data for Rapid Prototyping.H.28 June 2008. The Solid Angle of a Plane Triangle. The overall skeletal model has lost some connectivity information where the data points are separated by a large Euclidean distance.1 (b). Zhang and H. [5] M. b) The present approach also segments the data points in real time and thus the technique avoids the separate instantiation of segmentation and modeling procedures and thus can save huge amount of computational time and manual interface in the rapid prototyping process chain.S. Computer-Aided Design 35 (2002) 633–645. [2] G.T. Computer-Aided Design 31 (1999) 449–457. Loh. Wu.F. February 1983. The present methodology for skeletal generation requires further refinement as some of the connectivity information among data points is lost where the points are separated by large euclidean distances. . The contributions made in the present work are: a) The data structure resulting from modified ISM algorithm can be queried at a later stage for resolving the topological information embedded in the data points. Figure 5. Y. Woo. Wong. Y. 5. Kang.1 (d) (a) Front view of quad mesh of surface points taken from freeform surface defined by 16 control polygonal points (b) Front view of Skeletal Model Prepared by Modified ISM algorithm (c) Back view of quad mesh in figure 5. As the skeletal model lacks in topological information the flexibility in terms of querying task can be used for developing approaches to retrieve intricate and topologically important features (holes and boundary points) required for layered manufacturing.F.