Manufacturing Classification of CAD Models Using Curvature and SVMs Cheuk Yiu Ip William C. Regli Geometric and Intelligent Computing Laboratory Department of Computer Science, College of Engineering Drexel University Abstract This paper used surface curvatures and support vector machines for the identification of manufacturing processes in a database of mesh based CAD artifacts. The target is to classify prismatic machined and cast-then-machined parts into their respective classification to assist the manufacturing cost estimation. Current research on shape matching techniques have used shape functions to match the gross shapes of mesh models. However, they do not adequately discrimate artifacts manufactured by different processes. Our approach shows how different kinds of surfaces can distinguish different manufacturing processes. Statistics on surface curvatures are used to construct shape descriptors; then supervised machine learning classifier support vector machines are applied to separate the two classifications. 1. Introduction This paper examines the manufacturing classification of mesh CAD models with curvature descriptors and support vector machines. Previous research, such as, feature recognition and process planning, focused on extracting manufacturing information from solid models [7, 19, 11]. Mesh models have become a useful CAD representation thanks to the development of rapid prototyping and laser scanning acquisition techologies. Mesh models allow us to compare models generated by any CAD system. This research attempts to identify manufacturing processes from the mesh representation of artifacts. Prismatic machined and cast-then-machined artifact classification are the foci in this paper. The surface curvature of artifacts is used as the discriminating feature. Support vector machines learn the separation in between the two manufacturing processes. 2. Related Work This research aims to classify different manufacturing processes from CAD models. A brief review is provided of mesh model matching, curvature estimation from mesh, and support vector machines. Comparing Mesh Models Different transformation invariant attributes can be extracted from the polygon mesh as the means of similarity among 3D models. Thompson et al. [23] examined the reverse engineering of designs by generating the surface and machining feature information off of range data collected from machined parts. Hilaga et al. [8] presented a method for matching 3D topological models using multi-resolution reeb graphs. The method of Osada et al. [15] creates an abstraction of the 3D model as a probability distribution of samples from a shape function acting on the model. Novotni and Klein demonstrated the use of Zernike descriptors [14]. Kazhdan et al. compares models with spherical harmonics [12]. Tangelder and Velkamp constructed the weighted point sets with Gaussian curvature and normal statistics to compare triangular meshes [2]. For further information, Velkamp and Tangelder published a recent survey on shape retrieval methods [22]. While these techniques target to compare general mesh models, Ip et al. [9, 1] and Bespalov et al. [1] compared shape models of CAD with shape distributions and scalespace representations. Curvature on Mesh Surfaces The curvature of a point on a planar curve is defined as the reciprocal of the the radius of an osculating circle at that point. Extending this to regular surfaces, normal curvature is the curvature of the intersection on the smooth surface with a plane in a certain direction. Principal curvatures, κ 1 and κ 2, are the largest and smallest normal curvature at a point in all directions. Estimating curvature from mesh has been of great interest in computer graphics and vision research. Some of the recent work includes: Taubin [21] and Page et al. [16] estimating the curvature tensor with through a weighted average of normal curvatures of neighboring vertices. Meyer
et al. introduced discrete differential geometry operators [13]. Goldfeather and Interrante presented a cubic method for estimating principal directions [6]. This research employs Rusinkiewcz s method [18] for a fast single pass estimation of curvature from a smooth mesh. Support Vector Machines Support Vector Machines (SVMs) are a supervised machine learning technique proposed by Vapnik [4, 2]. They find the maximum margin classifier from example data in different classes. Given examples x 1 l, SVMs find a linear classifier that 2 satisfies y i (w x i + b) 1, with a margin of width. w 2 Minimizing w 2 in the Lagrangian formulation of the classifier maximizes the width of the margin, and forms the following quadratic programming problem. L P = 1 l 2 w 2 l α i y i (x i w + b)+ i=1 α i i=1 3.2. Process Classification with Shape Matching Current research on shape matching techniques focuses on extracting features to match the gross shape of mesh models. However, they were not designed to distinguish different manufacturing processes. Table 1 shows nearest neighbor classification accuracies for some mesh based shape matching techniques. (The classification of closest example model is assigned to the query model.) Shape Matching Techniques Accuracy Shape Distributions [15, 9, 1] 57% Scalespace [1] 54% Reeb Graph [8] 55% Zernike Moments [14] 53% Table 1: Classification accuracies of shape descriptors which is equivalent to maximizing the dual of L P l L D = i i=1α 1 2 l i, j α i α j y i y j x i x j To generalize SVMs for non-linear cases, training examples can be projected into a higher dimensional space by some function Φ(x) for linear separation. Observe that L D only depends dot products in between x i and x j, which can be substituted by a kernel function K(x i,x j ) that computes Φ(x i ) Φ(x j ), rather than directly computing in the high dimensional space. Assuming K(x i,x j ) can be computed at constant time. This property allows SVMs to find a nonlinear classifier without increasing the complexity. Common kernel functions are high degree polynomials, radial basis functions, and sigmoid functions. In the context of shape model matching, Elad et. al. used linear SVMs to adjust retrieval results from 3D shape database according users feedback [5]. 3. Research Goal This research studies classification of prismatic machined and cast-then-machined artifacts. 3.1. Prismatic Machined and Cast-then-machined Classification of prismatic machined and cast-thenmachined parts assist manufacturing cost estimation. Machining is a high precision and time consuming process. It requires process plans to route tools for material removal operations. The application of casting procedure reduces the need for machining, hence reducing costs by decreasing the complexity of process plans and manufacturing time. Figure 1 shows a sample of the process classified models in our dataset. 4. Curvature Statistics Classification This research proposes the use of surface curvature and support vector machines to classify prismatic machined and cast then machined models. Surface curvature is relevant for distinguishing between the two processes, because only a finite set of surfaces can be constructed by the machining process through material removal operations, while the casting process produces a larger variety of surfaces. The challenges for classifying these two processes is that they share a common set of surfaces generated by the machining processes. 4.1. Estimating Curvature from Mesh Models Curvatures are estimated from the mesh representation of CAD models. Following [18], per vertex curvature can be computed by weighting the curvature of triangle faces adjacent to the vertex. Figure 2 shows colored sample models according to κ 1 and κ 2, zero curvature regions are colored in white, nonzero regions are colored according to curvature values. The following observations can be made: The cast-then-machined process produces artifacts with a higher portion of curved (shaded) surfaces. The minimum curvature, κ 2, of machining features, holes, slots, and pockets, surfaces are zero (white). The cast-then-machined parts possess a higher variation of curvature values (more colors).
4.2. Curvature based Shape Descriptor Statistics of per vertex curvature are used to construct shape descriptors for classification. Similar to [2], curvature values, c, is mapped from to to [ 1,1] to avoid extreme values and numerical problems, c = c ( ) 1 1 c 1 + c Equal width bins divide range [ 1,1] to record the frequencies of different curvature c values. Frequencies of curvature values are normalized. Curvature bins are aligned to produce meaningful comparisons. (e.g. Planar surfaces (c = ) always align to the same bin.) Figure 3 shows a sample of CAD models and the corresponding descriptors. 4.3. Support Vector Machines Classification Classifications of prismatic machined and cast-thenmachined processes can be learned by feeding example curvature shape descriptors to SVMs. SVMs with a radial basis function kernel is the choice of classifier in this research. As mentioned in section 2, learning the non-linear separating margin can be accomplished by using a radial basis kernel function K(x i,x j ): K(x i,x j )=e γ( x i x j 2 ) In practice, a good value of γ can be estimated by trying a growing sequence of the parameter and cross validations. K(x i,x j ) projects the curvature statistics descriptors into a high dimensional feature space for the algorithm to find a separating margin. This results in a non-linear separating margin in the low dimensional input space. 5. Experimental Results To validate our approach, the proposed technique is applied to learn and classify a dataset of 1 hand classified prismatic machined or cast-then-machined CAD models. Experiments were conducted using a subset of the mechanical part data from the National Design Repository. All models can be retrieved at http://www.designrepository.org/datasets/. Implementation of the curvature estimation and SVMs were provided by Trimesh2 [17] and libsvm [3]. Table 2 shows a summary of our results. κ 1, κ 2, mean curvature, H, and Gaussian curvature, K, histograms of 1 bins were computed for this evaluation. This experiment was repeatedly performed to confirm the robustness of our approach. The objective was to verify that the system could stably learn the classification by randomly selecting sets of training examples then accurately classify the non-training parts. Average and maximum accuracies are provided to illustrate the performance. κ 1 κ 2 H = κ 1+κ 2 2 K = κ 1 κ 2 Maximum 84% 86% 8% 8% Average 71.5% 75.33% 67.5% 65.94% Table 2: Curvature Statistics Classification Accuracy Minimum curvature,κ 2, produced the highest classification rate of 86% with an average of 75%. This is a 2%-3% increase over the existing shape matching algorithms (Table 1, accuracy 53%-57%). κ 2 performed the best in this classification because most curved surfaces generated by volume removal operations, such as holes, slots, and pockets, have zero minimum curvature. Therefore, κ 2 facilitated classification by minimizing the variety of curvature statistics for prismatic machined parts. 6. Conclusions This paper described a new approach to automate the classification of CAD models according to manufacturing processes. The contribution of this research is the use surface curvature and support vector machines to enable manufacturing categorization of CAD models. This approach relates automatic mesh model classification to a practical application. It is evident that new relevant features and classifiers are needed for the challeging domain of CAD model databases. Acknowledgments. This work was supported in part by National Science Foundation (NSF) CAREER Award CISE/IIS-9733545 and Office of Naval Research (ONR) Grant N14-1-1-618. Additional support has been provided by Honeywell FM&T. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation or the other supporting government and corporate organizations. References [1] D. Bespalov, A. Shokoufandeh, W. C. Regli, and W. Sun. Scale-space representation and classification of 3d models. ASME Transactions, Journal of Computing and Information Science in Engineering, 3:315 324, Dec 23. [2] C. J. C. Burges. A tutorial on support vector machine for pattern recognition. Data Mining and Knowledge Discovery, 2(2):121 167, 1998.
[3] C.-C. Chang and C.-J. Lin. LIBSVM: a library for support vector machines, 21. Software available at http://www. csie.ntu.edu.tw/~cjlin/libsvm. [4] C. Cortes and V. Vapnik. Support vector networks. Machine Learning, 2(3):273 297, 1995. [5] M. Elad, A. Tal, and S.Ar. Content based retrieval of vrml objects - an iterative and interactive approach. In Eurographics Multimedia Workshop, 21. [6] J. Goldfeather and V. Interrante. A novel cubic-order algorithm for approximating principal direction vectors. ACM Transaction on Graphics., 23(1):45 63, 24. [7] J.-H. Han, W. C. Regli, and M. J. Pratt. Algorithms for feature recognition from solid models: A status report. IEEE Transactions on Robotics and Automation, 16(6):782 796, December 2. [8] M. Hilaga, Y. Shinagawa, T. Kohmura, and T. L. Kunii. Topology matching for fully automatic similarity estimation of 3d shapes. In SIGGRAPH, pages 23 212, New York, NY, USA, August 21. ACM, ACM Press. [9] C. Y. Ip, D. Lapadat, L. Sieger, and W. C. Regli. Using shape distributions to compare solid models. In Seventh ACM Symposium on Solid Modeling and Applications, Jun 22. [1] C. Y. Ip, L. Sieger, W. C. Regli, and A. Shokoufandeh. Automated learning of model classifications. In Eighth ACM symposium on Solid Modeling and Applications, pages 322 27, 23. [11] Q. Ji and M. M. Marefat. Machine interpretation of cad data for manufacturing applications. Computing Surveys, 29(3):264 311, September 1997. [12] M. Kazhdan, T. Funkhouser, and S. Rusinkiewicz. Rotation invariant spherical harmonic representation of 3d shape descriptors. In Eurographics/ACM SIGGRAPH symposium on Geometry processing, pages 156 164, 23. [13] M. Meyer, M. Desbrun, P. Schröder, and A. H. Barr. Discrete differential-geometry operators for triangulated 2-manifolds. In VisMath, 22. [14] M. Novotni and R. Klein. Shape retrieval using 3d zernike descriptors. Computer Aided Design, 36(11):147 162, Sep 24. [15] R. Osada, T. Funkhouser, B. Chazelle, and D. Dobkin. Shape distributions. ACM Transactions on Graphics, 21(4):87 832, Oct 22. [16] D. L. Page, Y. Sun, A. F. Koschan, J. Paik, and M. A. Abidi. Normal vector voting: Crease detection and curvature estimation on large, noisy meshes. Graphical Models, 64:199 229, 22. [17] S. Rusinkiewicz. Trimesh2. http://www.cs.princeton. edu/gfx/proj/trimesh2/. [18] S. Rusinkiewicz. Estimating curvatures and their derivatives on triangle meshes. In 2nd International Symposium on 3D Data Processing, Visualization, and Transmission, pages 486 493. IEEE Computer Society, 24. [19] J. Shah, D. Anderson, Y. S. Kim,, and S. Joshi. A discourse on geometric feature recognition from cad models. ASME Transactions, the Journal of Computer and Information Science in Engineering, 1(1):41 51, March 21. [2] J. W. Tangelder and R. C. Veltkamp. Polyhedral model comparison using weighted point sets. International Journal of Image and Graphics, 3(1):29 229, 23. [21] G. Taubin. Estimating the tensor of curvature of a surface from a polyhedral approximation. In ICCV95, pages 92 97, 1995. [22] R. C. Veltkamp and J. W. Tangelder. A survey of content based 3d shape retrieval methods. In Shape Modeling and Applications, Jun 24. [23] W.B.Thompson, J. Owen, H. de St. Germain, S. Stark Jr., and T. Henderson. Feature-based reverse engineering of mechanical parts. IEEE Transactions on Robotics and Automation, 12(1):57 66, Feburary 1999.
(a) Prismatic Machined Parts (b) Cast-then-Machined Parts Figure 1: Manufacturing Classification Dataset Prismatic Machined Parts Cast-then-Machined Parts κ 1 κ 1 κ 2 κ 2 + Figure 2: CAD models colored by curvature values κ 1 κ 2.5 "boeingk1.dat".7 "boeingk2.dat".45.6.4.35.5.3.4.25.2.3.15.2.1.1.5.7 "cognitk1.dat".18 "cognitk2.dat".6.16.14.5.12.4.1.3.8.6.2.4.1.2 Figure 3: Curvature Descriptor