日本シミュレーション学会論文誌,Vol.3, No.1, pp.1-10, 2011 1

論 文

Mesh Segmentation Using the Platonic Solids †

Maria Savchenko*, Luis A. Diago*, Vladimir Savchenko**, Olga Egorova* and Ichiro Hagiwara*

Abstract Mesh segmentation has become an important step in model understanding and can be used as a useful tool for different applications, for instance, modeling, computer aided design (CAD), and reverse engineering. In this paper, we present a novel application of the platonic solids to find direction vectors for grouping the surface mesh elements. Normal vectors of the faces of the selected are defined as the direction vectors. Our algorithm divides a polygonal mesh into the color regions (segments) with polygonal elements with normals that correspond to the direction vectors. Results of experiments on real 3D models demonstrate the performance and efficiency of the proposed algorithm. The original contribution in this paper is using normals of the faces of the platonic solids as the direction vectors for grouping mesh elements of the 3D surface meshes. Key words Mesh segmentation, The platonic solids, Combinatorial optimization, Feature extraction

latest algorithms and evaluation results. The authors conclude 1. Introduction that each algorithm has benefits and drawbacks and future Mesh segmentation has become an important step in research works on mesh segmentation will be useful. In the model understanding and can be used as a useful tool for paper [4], a new curvature based algorithm which segments different applications, for instance, modeling, CAD, and the mesh into several regions is described. The authors extend reverse engineering. Part decomposition gains attraction since the region growing algorithm to unstructured three- it simplifies the problem with multi-part, complex objects dimensional surface meshes. After seed selection and into several subproblems each dealing with their constituent sorting the vertices by their filtered absolute curvature, single, much simpler parts. Mesh segmentation is included in regions are growing from each vertex in order of ascending many mesh processing algorithms: morphing, improvement, curvatures. The algorithm makes removing small holes in compression and more. In [1] the survey and definition of the regions: all vertices not assigned to a region, but generic algorithms for the major segmentation techniques are surrounded by region vertices, are assigned to their introduced. Simultaneously, existing methods handling surrounding region. Estimation of surface features is a main triangular meshes segment models into surfaces instead of part of the segmentation process and object recognition. into meaningful parts. A number of feature detection and mesh Features are intrinsic properties of the 3D shape, which segmentation techniques have been proposed recently. In [2] include local and [5]. The problem of an exhaustive overview of 3D mesh segmentation feature decomposition is very important and many solutions methodologies examining their suitability for CAD models were proposed for feature detection. The paper [5] discusses is presented. In the paper, a categorization of the existing 3D the extension of a scale-space decomposition approach for mesh segmentation methods is proposed and the basic feature extraction. In addition, the authors discuss the conclusions about different methods are drawn. The authors performance of the technique used to extract features from also present criteria and features used for each segmentation CAD in polyhedral representation. They demonstrate method. The paper [3] provides a comparative study of the results of the feature extraction on noisy data. In the paper [6], the authors present a simple, automatic method to recover * Tokyo Institute of Technology the sharp features that are lost by reverse engineering or by ** Hosei University † 2010 年 9 月 29 日受付 2010 年 12 月 16 日再受付 remeshing process. Identification of is

1 2 日本シミュレーション学会論文誌 第 3 巻 第 1 号 2011 年 based on the initial identification of the smooth edges and six filters that color the edges, vertices, or triangles, based on the colors of their adjacent or incident elements are used.

The work [7] describes a hybrid algorithm which while Fig. 1 The platonic solids. denoising regularizes meshes on flat regions for further mesh processing preserves crease sharpness for image denoising problem [15]. faithful reconstruction. A clustering technique, which combines K-means and geometric a priori information, is 2. The platonic solids suggested. When K-means does not give a very satisfactory The platonic solids, described by in his , vertex partition, the authors propose hierarchical K-means. are some of the simplest, if not the simplest, of polyhedra. A Clustering repeats on the unresolved cluster until all sub- platonic solid is a convex composed of convex, clusters consist of vertices with only one type of feature - congruent, regular (faces). There are five such solids corner, , or non-feature. In the paper [8] characterizations (see in Fig.1(from left to right)): a - a four-sided and techniques for detecting geometric features in surface shape composed of four equilateral triangles, a - a six- mesh are presented. A method using line extraction for the sided shape made of , an - an eight-sided purpose of hexahedral mesh generation is described in [9]. shape made of triangles, a - a twelve-sided In the paper, surface mesh groups are defined by grouping shape composed of , an - a twenty- the mesh faces on their degree of adaptation. In [10] authors sided shape made of twenty triangles. present algorithm for splitting the input mesh into reliefs. It has been well proven geometrically and topologically They do this by using the set of defining vectors: the simplest that the five known platonic solids are the only which can case - the set of 6 vectors pointing along the coordinate axes possibly exist in three-dimensional space. They have been of a cube. However, the choice of the basic vector is an analysed in great topological detail and have been completely interesting problem, which was not considered yet. In [11] defined mathematically. the iterative merging of adjacent triangles of the 3D mesh is The platonic solids have served mathematicians and presented. The surface is segmented into regions with a physical scientists in numerous applications, and their new similar normal property. A feature-shape model is generated applications could be found to solve engineering problems. by extracting the feature lines, which are defined as a set of mesh-lines shared by two different surface-mesh groups. In 3. Segmentation algorithm based on the feature line extraction algorithm [12], accurate method to platonic solids estimate the discrete curvature is used. The approach is based We suggest a new and simple method for mesh on utilizing discrete differential operators on piecewise linear segmentation based on the platonic solids. Our method meshes which allows avoiding costly preprocessing steps provides the decomposition of the mesh into groups of the such as surface fitting technique or constructing an implicit mesh elements according to the information, which is coming surface [13]. The paper [14] presents an algorithm to extract from the normals of the faces (the direction vectors) of the features lines from a point cloud without curvature estimation. platonic solid. The differences between the normals of The algorithm uses a first order segmentation for receiving each mesh element and the normals of the faces of the platonic initial information about the location of the feature lines. solid are used as a criterion for grouping elements. Those The problem of denoising (or smoothing) 3D meshes has direction vectors of the platonic solid are selected to form a received a lot of attention in recent years due to the increasing of elements (a segment), for which the θ with use of 3D scanning technology. Meshes supplied by laser the element normals nx, ny, nz are minimal. Input model is scanning devices often carry high-frequency noise in the represented as a polygonal mesh. Output model consists of a position of the vertices, so a mesh smoothing algorithm is set of disjoint, constituent segments, whose union is identical required to rapidly remove noise while preserving real details to the input model. Direction vectors of the platonic solid in the acquired data. Most techniques for 3D mesh smoothing and embedding the platonic solid into X, Y, Z- coordinates have predecessors in the literature on the significantly simpler of a given model are shown in Fig. 2.

2 M. Savchenko, L. Diago, V. Savchenko, O. Egorova and I. Hagiwara:Mesh Segmentation Using the Platonic Solids 3

4. Extensions of the algorithm

4.1 Local mesh denoising technique

Mesh denoising (correction of the “alien” colors) is produced in each separated segment. By the separated (a) (b) segment we mean a set of mesh elements that have the same Fig. 2 Direction vectors (the cube) (a); Embedding the platonic color and are topologically conjugated (one color may define solid (the tetrahedron) into the X, Y, Z-coordinates of the model (b). several distinct segments). This segment can possess the “alien” elements. So, the correction technique is based on improving of these “alien” elements. Our denoising technique includes three steps: (1) correcting all elements from the list of “alien” elements, (2) updating the list of “alien” elements, (3) repeating this process iteratively until the list of “alien” elements will be empty. The color correction is done by the of the “alien” planes according to a predefined normal, which is calculated as follows. The neighbors of each “alien” element can be elements with the color of the given segment and elements of the “alien” colors. We precede averaging only normals of the elements with the color of the given segment. Rotation of the “alien” normal N to the averaged normal of their Fig. 3 Scheme of the algorithm. alien

neighbors Nave is produced, and a new rotated plane placed at the centroid of the corrected element is defined. New Basic steps of the algorithm are as follows: coordinates of the corrected “alien” element are calculated 1. Defining a set of the normals of the faces of the selected by the projection of the old coordinates onto the rotated plane. platonic solid. The applications of this technique are demonstrated in section 2. Calculating the angles θ between the normals and 5.

mesh element normals (nx, ny, nz) (Fig. 2 (b)). 4.2 Optimization of the choice of the platonic 3. Forming coloring regions according to the minimal angle solid θ. The problematic point in a real application of the platonic 4. Creating segments in the regions based on a mesh solids approach is the selection of the best platonic solid topology. among the five solids used by the method. The selection of Scheme of the algorithm is demonstrated in Fig. 3. the best platonic solid with the optimal choice of the direction Each segment is represented by its segment color. In the vectors for mesh segmentation of a given model is defined case of the noisy meshes, elements with the different normal as a combinatorial optimization problem where the set of directions (with different colors) from the given direction feasible solutions is discrete and the goal is to find the best can appear in segments. Elements inside the segment with possible solution [16]. The inputs (design variables) for the the different from the given segment colors are called the optimization process are the orientation of the solids (angles α β γ “islands”. The “islands” and border elements of the segment , , ), five platonic solid types, and the way to define the with different colors from the color of the given segment are parts of the given model (e.g. planes, curves or combinations recognized as the noise elements. We unite these elements among them). and call them the “alien” elements for the simplicity. The The main problem with the proposed optimization model colors different from the given color are also called the “alien” is the definition of the objective function because its form is colors. These are used in section 4. not explicitly known in terms of design variables. Two objective functions to find the platonic solid and optimal

3 4 日本シミュレーション学会論文誌 第 3 巻 第 1 号 2011 年 angles α, β, γ (rotation angles of the platonic solid) were the algorithm is O(n3), where n is the number of colored proposed in [16]. Some definitions are used for understanding segments. A brute-force approach is used as a “baseline” this optimization problem: uncolored triangles correspond method for benchmarking other algorithms. Brute-force to parts with curved surfaces; colored triangles correspond search or exhaustive search is a trivial but very general to the planar parts of the model. problem-solving technique that consists of systematically The first function finds zones with the minimal number enumerating all possible candidates for the solution and of uncolored elements: checking whether each candidate satisfies the requirements N min F1 =minΣ Fni , where N is the number of model of the design (i.e. “good” segmentation result). Other S, α, β, γ S, α, β, γ i =1 elements, ni is the normal direction of element i and F(ni ) is approaches can be proposed to solve this optimization Nfs −1 • α β γ ≤ θ 2 “0” if Π cos ni s j , , =1 and “1” otherwise. problem. The brute-force algorithm takes O (n ) time, where j =0

Here, NfS is the number of faces of the platonic solid S and n is the number of mesh elements. In this section, we give an α β γ s j , , is the normal direction of the face j of the same example of applying the first function. As it can be seen from platonic solid computed by the rotation matrix of the angles Table 1 (the “Fandisk” model is presented in the next α, β and γ using xyz-sequence (see [16]). Angle θ (minimal sections), the best solution - the minimal number of the angle between a normal of the face and a normal of the model uncolored elements (θ = 10˚) and angles α, β, γ - for the element) is used as a criterion for finding uncolored and “Fandisk” model is attained by using the cube. colored elements. To select the value of θ the minimum angle Fig. 4 and Table 2 show the choice of the platonic solid η between any of two faces of a platonic solid is considered. by proposed functions F1 and F2 for the “Vase” model. For η η The values of min = / 2 are 54.7˚, 45˚, 30˚, 31.7˚ and 20.9˚ numerical calculations only 1000 combinations of angles 0˚ α β γ for the tetrahedron, cube, octahedron, dodecahedron, and < ( , , ) < 10˚ were explored that, despite being very small icosahedron respectively. In order to not favor any platonic compared with the total number of possible combinations, solid before hand during the optimization, a value of θ < min allows us to conform our approach. When the values obtained η ( min) is selected to decompose the model by almost plane parts. Inequality θ > max (η ) means that θ > 54.7˚ can be min Table 1 The “Fandisk” model. chosen for selecting plane parts and parts with curved surfaces Platonic solid α 0 β 0 γ 0 #uncol.el. of the model. Tetrahedron 36 324 72 9636 The second function minimizes the number of the Cube 0 0 0 5283 Octahedron 0 0 36 5797 “islands” or small holes within each region, which was Dodecahedron 288 108 8 8238 formed after segmentation according to inequality θ > 54.7˚. Icosahedron 252 108 0 6903 In this case, triangles of each region have the same color. Once a region is selected, it must be uniform or homogenous with respect to the normal’s direction inside the colored region. Note that each colored region could consist of several disconnected regions called segments. After forming regions θ η (a) (b) (c) (d) (e) according to the angle > max ( min) between the normals of the platonic solid and model elements, the objective function Fig. 4 The “Vase” model. Optimizing the choice of the platonic solid: (a) by the tetrahedron, (b) by the cube, (c) by the is defined as: octahedron, (d) by the dodecahedron, (e) by the Nfs Ri icosahedron. ≤ min F2 =minΣ Σ NFj T S, α, β, γ S, α, β, γ i =1 j =1 where Nfs is the number of faces of the platonic solid S, Ri is Table 2 The “Vase” model. the number of segments (disconnected regions) extracted α 0 β 0 γ 0 Platonic solid F1 F2 from region i, NFj is the number of triangles in segment j and Tetrahedron 2 0 1 3611 28 T is a threshold value used to define the size of the “islands” Cube 2 1 0 2907 6 Octahedron 1 9 3 3612 59 (e.g. more than ten elements). Using the second objective Dodecahedron 7 0 0 2805 33 function is more computationally expensive; complexity of Icosahedron 4 1 9 3182 89

4 M. Savchenko, L. Diago, V. Savchenko, O. Egorova and I. Hagiwara:Mesh Segmentation Using the Platonic Solids 5

by the function F1 are very close, (see (b) and (d)), the function using segmentation technique described below. A line-type

F2 can be used to adjust the results. Despite the selected feature drawing is produced according to a classification of model has only 3714 triangles, calculating function F2 is edges of each triangle of the colored segments according to computationally expensive mainly because the Roy-Warshall the number and colors of its neighbor elements. There are 3 algorithm [17] is used to compute the number of segments types of edges, which correspond to feature lines: creases,

(disconnected regions). From the evaluation of F2 the result corners, and model boundaries. If the number of neighbors by the cube shows the smallest number of the “islands”. These is equal to 3 and a color at least one of neighbors is different values of F2 are also consistent with the results of the from the basic triangle, then common edges are recognized segmentation shown in Fig. 4 (b, d). Also the value of F1 for as creases. If the number of neighbors is equal to 1 then two the tetrahedron and octahedron are very similar, however, uncommon edges are recognized as a corner (common edge the function F2 differentiates the quality of the segmentation may be recognized as a crease if the color of the neighbor is between both cases. The results with the tetrahedron are a different). In the case when the number of neighbors is equal little better, as demonstrated by the values of F2 and displayed to 2, uncommon edge is recognized as a model boundary by the segmentation results. Segments in Fig. 4 (a) are more (two common edges may be recognized as creases if the homogeneous and there is a smaller number of the islands. colors of neighbors are different from the basic triangle). The proposed functions can be combined to ensure both goals Basic steps of the algorithm for detecting geometric during optimization of the choice of the best platonic solid features in triangular meshes are as follows: and defining direction vectors. We suggest the algorithm for detecting geometric features 4.3 Features extraction from triangular meshes in triangular meshes with following basic steps: based on the platonic solids segmentation 1. Optimizing the choice of the oriented platonic solid. For Reverse engineering of the shape of physical objects has experimental calculations, we use the first objective many applications in CAD and manufacturing and often deals function to minimize the number of uncolored elements θ η with extracting feature lines. Feature lines (creases), which with < min ( min). can be defined as a local extrema of principal curvatures along 2. Segmenting the initial model according to results from θ η corresponding principal directions of the original shape, step 1 with > max ( min). however, can be removed by applying reverse engineering 3. Forming the incident matrix of the neighbor mesh algorithms or during the polygonization of iso-surfaces. The elements to separate segments with respect to their colors main problem is determining whether they are local or by the Roy-Warshall algorithm [17]. The adjacency absolute extrema. Our goal is to extract the line-type features matrix A: = (aij )nxn is created, where the entries aij are “1” from meshes, which can be used to restore sharp edges from if elements i and j of the region are neighbors and “0” a given model for other applications. Our approach to line- otherwise. The reach matrix W is created from the matrix type features extraction is based on the idea borrowed from A where entries wij are “1” if we can find a directed path methods that were called “beautification”. These methods with all neighborhoods from elements i to j and “0” seek similarities between feature objects, e.g. axes that are otherwise using the Roy-Warshall algorithm [17]. parallel, for each property type [18]. 4. Extracting the segments according to the matrix W. Under Here we propose a novel approach to detect the features segment, we understand the region where the number of on a triangular mesh through the mesh segmentation based topologically connected elements of the same color is on the platonic solids. Features have different definitions in more than the given threshold value. different applications. In our approach, we assume that 5. Defining the neighbors of each mesh element in the features are created from the boundaries between colored segments and classifying its edges according to the segments, which are produced by using segmentation classification given above. A list of the edges is formed. technique. The colored segment of the models means a set of 6. Constructing the feature lines of the segment according topologically connected mesh elements with small deviations to the edge list. between normals. Potential features are extracted from the 7. All steps of the algorithm are repeated for the segments boundaries between colored regions that were formed by (the flat areas are excluded) to avoid losses of the features.

5 6 日本シミュレーション学会論文誌 第 3 巻 第 1 号 2011 年

8. The list of edges is updated and the final construction of result, more feature lines can be extracted. the feature lines is produced. 4.4 A multi-step segmentation algorithm 5. Experimental results This algorithm is suggested to avoid losses of the features. Here, we demonstrate our experimental results of After the segmentation of the given model by using previously applying the technique based on the platonic solids for described algorithm the segments (with the possible lost triangular meshes as the most common representation for features) are extracted. Segmentation of the extracted objects in computer graphics and CAD. Fig. 7 shows the segments is produced and the initial segmentation is updated. visual result of segmentation of the “Fandisk” model based The multi-step process is repeated until it satisfies user on applying three types of the platonic solids: the cube, requirements. In Fig. 5 we illustrate this technique for the octahedron, and tetrahedron. Sharp features reconstruction real “Fandisk” model. is a result of the local mesh denoising as it is demonstrated In [19], a hierarchical face clustering algorithm for in Fig. 8. In the next example (see Fig. 9) we present the triangle meshes (which is a variation of the hierarchical face model “Moai” with extracting given segment and local mesh clustering (HFC) technique presented in [20] is described. It denoising in it. Number of elements of this model is 20000, is based on fitting primitives (planes, and cylinders) number elements in the segment is 1300. Calculating time belonging to an arbitrary set. In the algorithm, each triangle with ten iteration steps of denoising is 10 sec. The of represents a single cluster. All the pairs of neighbor clusters are considered. A new single cluster is formed by one of the primitives that better approximates one of cluster pairs. The approximation error is evaluated using the same metric for all the primitives and allows to choice the most suitable primitive to approximate the set of triangles in a cluster. We have compared our segmentation results (Fig. 6) for the Fig. 7 The model “Fandisk”. Illustration of applying the “Fandisk” model with the result produced by the method from different platonic solids: left side - the cube, middle side - the octahedron, right side - the tetrahedron. [19] shown in Fig. 2 (left hand side) of that paper. By comparing these results, we can find differences between feature lines. In our case, more segments appear and as a

(a) (b)

(a) (b) (c) (d) (e) (f) Fig. 8 The fragment of the model “Mechanical part”: (a) The initial mesh with the destroyed sharp edge; (b) Mesh after Fig. 5 The model “Fandisk”. (a) 1 step segmentation by the denoising with the restored sharp edge. cube. Contour of extracted green color segment is shown in (b). (c) The model after applying segmentation technique to the segment (b) by the octahedron. (d) Contour of extracted segment (b) after the second step of the segmentation. (e) The final line-type features of the model. (f) Feature extraction by the curvature estimation technique.

(a) (b) (c) (d)

Fig. 9 The model “Moai”. Results of the local mesh denoising (a) Zoom-up of the fragment of the initial model; (b) The given segment received by using octahedron; (c) Fig. 6 Results of applying the multi-step segmentation to the The given segment after denoising; (d) Zoom-up of the “Fandisk” model. fragment of the final mesh.

6 M. Savchenko, L. Diago, V. Savchenko, O. Egorova and I. Hagiwara:Mesh Segmentation Using the Platonic Solids 7 the model is preserved after implementation of the local comparison between results, we can conclude that an denoising technique. The volume (a volume enclosed by the approach used in ParaView is a very sensitive to a feature surface) difference between the initial and final meshes is angle parameter. 0.01%. In Fig. 12 the feature extraction based on optimal Next, we demonstrate the resulting segmentation through segmentation by the icosahedron and comparison with a series of examples and the comparison results with other curvature estimation technique [21] is presented. techniques. In all examples, the segments contain more than In Fig. 5(f) we also demonstrate differences with 10 triangles. We define θ = 10˚ for optimization step and θ = technique based on curvature estimation technique (see, for 60˚ for segmentation step. In Fig. 10, we demonstrate the instance, [21]). Unfortunately, this technique is a very comparison results between applying the platonic solids- sensitive to the model noise. based approach and the particle-based method used in [22]. In Fig. 13 we present the comparison results between After applying many iteration steps [22] one can attain sharp our approach based on the cube and algorithm from [23]. features and boundaries of the model while some important Histograms of distribution of the mesh elements and visual features are lost. In Fig. 11 we demonstrate feature lines observation show that our method distributes elements extraction from the model by using an open-source ParaView according to geometry of the model while the algorithm in (multi-platform visualization application) feature extraction [23] creates the equal size domains. filter with the different dihedral angles. According to The statistic information and running time of the feature ParaView User’s Guide the feature edges filter can be used extraction and optimization algorithms (1000 evaluations) to extract special types of edges from input polygonal data. These edges are either 1) boundary (used by one ) or a line cell; 2) non-manifold (used by three or more polygons); 3) feature edges (edges used by two triangles and whose (a) (Feature Angle) is a user defined parameter; or 4) manifold edges (edges used by exactly two polygons). These edges may be extracted in any combination. In

(b) (c) (d)

Fig. 12 (a) The “Mechanical part” model and the feature lines. (b) The extracted features (red color) after the optimal segmentation by the icosahedron. (c) The feature (a) (b) detection by the curvature estimation technique. (d) Zoom-up of the model with the results shown in (c) Fig. 10 Comparison results. (a) The presented technique; (b) and (b). The particles distribution method.

Fig. 11 The “Mechanical part” model. Feature extraction by (a) (b) using ParaView feature extraction filter. Feature Angle (from top left to bottom right) is: 5 deg.; 7 deg.; 17 Fig. 13 The “Detail” model. (a) Results of our approach; (b) deg.; 30deg. Results of using the algorithm from [23].

7 8 日本シミュレーション学会論文誌 第 3 巻 第 1 号 2011 年

Table 3 Statistics and experimental results. modeling in reverse engineering. Line-type features

Run. time extraction from surface mesh based on segmentation Run. time Model / optimal feature # el. # seg. optimization technique is described in this paper. Our method employs solid extraction (sec) (min) the platonic solids-based multi-step mesh segmentation Fandisk / cube 12946 22 10 72 technique and detects feature lines as boundaries between segments with assigned colors. We do not estimate the Mechanical part 3551 5 0.7 21 / icosahedron curvature of the surface but use the information, which is Technical model 41797 124 100 220 / cube coming from the direction vectors of the faces of the platonic solid. With our method, chamfered and blended sharp edges for 3 experimental models are listed in Table 3. The on a given triangular mesh could be extracted. The proposed “Technical” model is not demonstrated. method is reasonably fast and can be adapted to many kinds For testing our algorithm we use a PC with Pentium (R) of the noise models. The main application of our approach is processor, dual CPU 3.2 GHz, 2.00 GB of RAM. As it can be to be searched in reverse engineering. In this area, it is often seen from Fig. 12, the resulting segmented model contains necessary to recover how the original model was designed. the “islands” or has many unconnected pieces of feature lines As we define feature lines as the boundaries of segmented and short branches, which must be removed with the help of regions, these regions (patches) can be useful for surface a pruning algorithm or by some algorithm of remeshing. fitting with NURBS or B-splines. Our method is completely Therefore, algorithms that grow a part of a feature line and automatic and, at the same time, the user can define a connect it to another part of the same feature line have to be parameter - an angle between the platonic solid’s face used. The problem of smoothing feature lines and the sharp normals and the normals of the mesh elements and visually edges restoration is now under consideration and a final estimate the results of the segmentation and features system has to combine presented technique with the sharp extraction. The multi-step algorithm can be used as a basis edges restoration algorithm. for simulation algorithms. For instance, it can present the input geometry as an appropriate level of detail to obtain an 6. Conclusions accurate solution. There are many techniques to create mesh segmentation. In comparison with other methods our technique, which The results of segmentation techniques are different and automatically choices the best direction vectors, can provide depend on the goal of segmentation. Comparing the efficacy more detailed feature extraction. Future work is to develop of different methods for the shape segmentation is not easy. an algorithm of the sharp features restoration on 3D meshes As it was stated in many publications, there is no perfect for smoothing feature lines in a combination with suggested segmentation algorithm that will work on all meshes and for in this paper technique. In addition, we concentrate on many engineering and computational applications. It is reducing the time of computations. There is also room for difficult to compare the result of different approaches. Results enhancements in the computation of proposed functions by of experiments on the real 3D models demonstrate the using parallel computing and searching new approaches to performance and efficiency of the proposed algorithm. We solve the optimization problem. Let us notice that for some introduce the mesh segmentation technique based on the models, it is not possible to separate all parts by any of the optimal choice of the platonic solid and propose two functions five solids used by the method. In such cases, we propose an that enable automatic processing of the mesh in a simple and alternative solution. It comes from the transformations of the automatic way with minimal user intervention. Using five platonic solids [24]. As it was pointed by Plato, “their types of platonic solids, the experimental results demonstrate combinations with themselves and with each other give rise the functionality of proposed approach. The first function to endless complexities...” For example, a polyhedron with finds zones where potential features of the model exist and six faces parallel (but with different orientations) to the second function minimizes the number of the “islands” the six square faces of the cube and eight triangular faces or small holes within each colored region. The results of parallel to the triangular faces of the octahedron is called the proposed approach can be used as guidance for shape . The cuboctahedron is an example of an

8 M. Savchenko, L. Diago, V. Savchenko, O. Egorova and I. Hagiwara:Mesh Segmentation Using the Platonic Solids 9

Archimedean solid and it can be used in the same way that [12] K. Hildebrandt, K. Polthier, and M. Wardetzky : Smooth Feature Lines on Surface Meshes, Proc. of the on Geometry the platonic solids are used now to explore more complex Processing, 85/90 (2005) directions in a given model. The that are more [13] Y. Ohtake, A. Belyaev, H-P. Seidel : Ridge-valley lines on complex can also be used. In future research we intend to meshes via implicit surface fitting, Proc. of SIGGRAPH, 609/ investigate a combination of different types of the platonic 612 (2004) solids and optimization of the choice of the direction vectors [14] K. Demarsin, D. Vanderstraeten, T. Volodine, D. Roose : Detection of feature lines in a point cloud by combination of by the platonic solids for the given models. first orded segmentation and graph theory, Department of Computer Science, K.U.Leuven, Belgium, Report TW 440, Acknowledgments (2005) Several parts of the research work were carried out by [15] Sun X, Rosin P.L., Martin R.R., Langbein F.C. : Random walks for mesh denoising, Proc. of ACM Symp. on Solid and Physical the support of Grants-in-Aid for scientific research (category Modeling, 11/22 (2007) S) under Grant No.20226006. We acknowledge its aid dearly. [16] L. Diago, M. Savchenko, O. Egorova, I. Hagiwara : On the Selection of a Platonic Solid for Mesh Segmentation, Proc. of the 13th International Conference on Intelligent Engineering References System (INES), 137/141 (2009) [1] Zhang Y, Paik JK, Koschan A., Abidi MA, Gorsich D. : A simple [17] Warshall, S. : A Theorem on Boolean Matrices, J. ACM, 9, 11/ and efficient algorithm for part decomposition of 3D 12 (1962) triangulated models based on curvature analysis, Proc. of Intern. [18] F.C. Langbein, B.I. Mills, A.D. Marshals, and R. Martin : Conference on Image Processing, 3, 273/276 (2002) Finding Approximate Shapes Regularities In Reverse [2] A. Agathos, I. Pratikakis, S. Perantonis, N. Sapidis, P. Azariadis : Engineered Solid Models Bounded By Simple Surfaces, Proc. 3D Mesh Segmentation Metholodologies for CAD applications, of the Sixth ACM Symp. on Solid Modeling and Applications, J. Compute-Aided Design & Applications, 4-6, 827/841 (2007) 206/215 (2001) [3] M. Attene, S. Katz, M. Mortara, G. Patane, M. Spagnuolo, A. [19] M. Attene, B. Falcidieno, M. Spagnuolo : Hierarchical mesh Tal : Mesh segmentation: A comparative study, Proc. of the segmentation based on fitting primitives, The Visual Computer, Intern. Conf. on Shape Modeling and Applications, 14/25 (2006) 22-3, 181/193 (2006) [4] M. Vieira, K. Shimada : Segmentation of noisy laser-scanned [20] M. Garland, A. Willmott, P.S. Heckbert : Hierarchical face generated meshes with piecewise polynomial approximations, clustering on polygonal surfaces, Proc. of the ACM Symposium Proc. of ASME Design Automation Conf., 927/934 (2004) on Interactive 3D graphics, 49/58 (2001) [5] D. Bespalov, A. Shokoufanden, W.C. Regli, W. Sun : Local [21] G. Taubin : Estimating the tensor of curvature of a surface from feature extraction using scale-space decomposition, Proc. of a polyhedral approximation, Proc. of the 5th Intern. Conf. on ASME Design Engineering Technical Conf., Computers and Computer Vision, 902/907 (1995) Information in Engineering Conference (DETC 2004-57702), [22] M. Senin, N. Kojekine, V. Savchenko, and I. Hagiwara : Particle- ASME Press, 501/510 (2004) based Collision Detection, Proc. of Eurographics (EG), (2003) [6] M. Attene, B. Falcidieno, J. Rossignac, M. Spagnuolo : Sharpen [23] A. Abou-rjeili, G. Karypis : Multilevel Algorithms for & Bend: Recovering curved sharp edges in triangle meshes Partitioning Power-Law Graphs, Technical report TR 05-034, produced by feature-insensitive sampling, IEEE Transactions University of Minnesota, (2005) on Visualization and Computer Graphics, 11-2, 181/192 (2005) [24] Jay Kappraff, Connections -The Geometric Bridge Between [7] H. Huang, U. Ascher : Surface Mesh Smoothing, Regularization Art and Science, World Scientific Publishing Co. K&E Series and Feature Detection, SIAM J. Scientific Computing, 31, 74/ on Knot and Everything-, 25, the 2nd Edition, (2001) 93 (2008) [8] X. Jiao, M.T. Heath : Feature Detection for Surface Meshes, Proc. of the 8th Inter. Conf. on Numerical Grid Generation in 著 者 紹 介 Computational Field Simulations, 705/714 (2002) [9] M. Hariya, I. Nishigaki, I. Kataoka, Y. Hiro : Automatic Maria Savchenko Hexahedral Mesh Generation with Feature Line Extraction, Proc. of the 15-th IMR, 453/467 (2006) Maria Savchenko received her M.S. degree in Mechanical [10] A. Szymczak, J. Rossignac, D. King : Piecewise regular Meshes: Engineering from the Moscow Aviation Institute in Russia in 1971 Construction and Compression, J. Graphical Models, 64, 183/ and the Doctor of Engineering degree in Mechanical Engineering 198 (2002) from the Tokyo Institute of Technology, Japan in 2010, respectively. [11] D.H. Kim, I.D. Yun, S.U. Lee : Triangular Mesh Segmentation She is now a special researcher in the Tokyo Institute of Technology. Based on Surface Normal, Proc. of the 5th Asian Conference on Her research is concentrated on the solving actual mesh processing Computer Vision, 616/621 (2002) problems in the CAD/CAE/CG areas. Dr. Maria Savchenko has published many research papers in national, international journals,

9 10 日本シミュレーション学会論文誌 第 3 巻 第 1 号 2011 年

and conferences. She has gotten japanese patent issued in a mesh composing theoretical and experimental results from mathematics, processing field. physics, computer graphics, computer-aided design, computer animation, and others fields. The heart of his work is solving applied Luis A. Diago problems of mathematical simulation. He has investigated a number Luis A. Diago received the engineer degree (B. Eng) in of computing problems: gas-dynamics finite differences schemes, telecommunications and the master degree (M. Sc) in Informatics sheet forming modeling, solving of large systems of linear algebraic Applied to Engineering and Architecture from Higher Polytechnical equations, image processing, bioengineering and geometric Institute “Jose Antonio Echeverría” (CUJAE University) in Havana, modeling. Cuba, in 1995 and 1997 respectively. From September 1995 to august 2006 he was a staff member of the telecommunications and Olga Egorova bioengineering department of the Electrical Engineering Faculty of Olga Egorova received her B.S. and M.S. Degrees in differential CUJAE University, first as a lecturer and assistant professor, geometry and topology from Moscow State University in 1999 and becoming associate professor in 2004. He received the PhD degree 2001. Olga Egorova belonged to Doctoral course at the department in Biomedical Engineering from CUJAE University in 2006. In of Mechanical Sciences and Engineering of Tokyo Institute of September 2006 he joined TIT as a PhD student and recipient of an Technology from 2001 and received her Ph.D. in 2004. She worked excellence scholarship awarded by the Japan Student Service as a Postdoctoral Fellow at the Tokyo Institute of Technology from Organization (JASSO). He also received the Doctor of Engineering 2004 to 2006 and subsequently worked as a researcher from 2007 degree from Tokyo Institute of Technology (TIT), Japan, in 2008. to 2010. She has published 10 journal papers and obtained one He was awarded by the Japan Society for the Promotion of Science japanese patent. (JSPS) with a post-doctoral fellowship from 2008 to 2010. He is currently a special researcher at TIT, Japan. His research interests Ichiro Hagiwara(正会員) are in the areas of digital signal and image processing, Ichiro Hagiwara received his B.S. and M.S. Degrees in applied bioinformatics, computer vision, high performance computing and mathematical engineering from Kyoto University in 1970 and 1972. pattern recognition. Also he received his Ph.D in mechanical engineering from the University of Tokyo in 1990. He worked as a researcher at the Vladimir Savchenko research center of Nissan Motor Co., Ltd. Since 1996 he has worked Vladimir Savchenko graduated from Moscow Aviation Institute as a professor at the Department of Mechanical Sciences and in Moscow, Russia in 1971 with a M.S. in Mechanical Engineering. Engineering, Graduate School of Science and Engineering of Tokyo He received his Ph.D. in Theoretical Mechanics from the Institute Institute of Technology (TIT). Dr. Hagiwara is a fellow of ASME, of Applied Mathematics of Russian Academy of Sciences in JSME and of JSAE, an Honorary Advisor of AIIB (Asian Institute Moscow, Russia, 1985. From 1993 he was a head of Shape Modeling of Intelligent Buildings) and a director of JSIAM and JSST. He is Laboratory of the University of Aizu, Japan. Vladimir Savchenko also a member of Science Council of Japan. His current research is now a professor at Faculty of Computer and Information Sciences interests include CAD/CAM/CAE, sound and vibration, Origami of Hosei University, Tokyo, Japan. His research is related to a shape engineering. He published over 230 journal papers and presented modeling which can be considered as an interdisciplinary area many invited lectures in the research areas.

10