• 沒有找到結果。

以切面為基礎的三維形體分析與幾何處理

N/A
N/A
Protected

Academic year: 2021

Share "以切面為基礎的三維形體分析與幾何處理"

Copied!
93
0
0

加載中.... (立即查看全文)

全文

(1)

資訊工程學系

以切面為基礎的三維形體分析與幾何處理

Slice-Driven Shape Analysis and Geometry Processing of 3D Models

研 究 生:何丹期

指導教授:莊榮宏 教授

(2)

以切面為基礎的三維形體分析與幾何處理

Slice-Driven Shape Analysis and Geometry Processing of 3D Models

研 究 生 :何丹期 Student

:Tan-Chi Ho

指導教授:莊榮宏 Advisor

:Jung-Hong Chuang

國 立 交 通 大 學

資 訊 工 程 系

博 士 論 文

A Thesis

Submitted to Department of Computer Science College of Computer Science

National Chiao Tung University in partial Fulfillment of the Requirements

for the Degree of Doctor of Philosophy

in

Computer Science July 2011

Hsinchu, Taiwan, Republic of China

(3)

以切面為基礎的三維形體分析與幾何處理

學生:何丹期

指導教授:莊榮宏教授

國立交通大學資訊工程學系博士班

摘 要

中間階層的物體表面函數可以有效的表現物體部位的形體特徵與結構,然而

要定義與導出中間階層的表面函數是非常困難的。在本論文中,我們提出了一

個新的中間階層物體表面函數,稱為最小切面周長函數(MSP),來表示物體的區

域體積資訊並探討其在幾何處理上的應用。對於一個物體表面上的點,其最小

切面周長為是定義在通過該點的切面上,目標是用來表示該點周圍的區域體

積。相對於其他中間階層函數如形體對角函數(SDF)[73],最小切面周長函數可

以更正確的反應出物體的區域體積資訊。我們也將此一以切面為基礎的函數應

用於網格切割與骨架產生上。所提出之網格切割方法完整的利用到物體區域體

積資訊並能夠產生階層式的部位切割將重要部位首先切出並確保每一階層中所

切出的部位具有類似的重要度。而所提出之網格骨架產生方式是將三維表面透

過一連串的邊交換(edge-swap)操作直接擷取出曲線骨架。所產生之曲線骨架即

使在物體的核心區域或骨架接合處都可以保有高密度的節點,此一特性可以幫

助我們建立網格表面與骨架之間的對應。此外,所提出之方法只仰賴一個重要

度參數來操作,透過調整重要度參數可以得到不同精細度的骨架。最後,我們

也探討目前模型簡化機制只參考幾何資訊而未考量觀察者主觀定義所導致主觀

認定之重要區域會被過度簡化的問題。為了克服此問題,我們提出了一套使用

者可控制之網格簡化機制來讓使用者對網格上的主觀認定重要區域給定權重,

並確保該區域在簡化後的模型上具有與給定權重值相似的解析度提升效果。

(4)

Slice-Driven Shape Analysis and Geometry Processing of

3D Models

Student: Tan-Chi Ho

Advisor: Prof. Jung-Hong Chuang

Department of Computer Science

National Chiao Tung University

A

BSTRACT

Intermediate-level surface functions of 3D objects are useful for representing the ob-ject’s part-level shape information and structure. In this thesis, we propose an intermediate-level surface function and explore its applications to geometry processing. The proposed surface function, called minimum slice perimeter function (MSP), is defined in terms of the slices that pass through the surface point and aims to represent the local volume around the surface point. This slice-based MSP represents more accurate local volume informa-tion than previous intermediate-level surface funcinforma-tions, such as Shape Diameter Funcinforma-tion (SDF) [73] and ia immediately beneficial to applications such as mesh segmentation and skeletonization. Our proposed mesh segmentation algorithm, which takes advantage of local volume information around the surface point, is able to generate hierarchical segmen-tation where parts on the same level of the hierarchy share similar salience significance, while parts on a level are less significant than parts on their parental level. The proposed mesh skeletonization scheme employs a greedy edge-swap process that extracts the curve skeleton directly from the 3D surface. The resulting skeleton inherently possesses a dense node distribution at the core part and around the junctions which helps to derive a dense skeleton-surface mapping. Moreover, the single salience parameter for branch removal works well and provides a flexible control for deriving skeleton of varying detail. Finally,

(5)

existing level-of-detail modeling techniques consider only geometric other than semantic information, and hence areas of semantic importance are often oversimplified. To ame-liorate the problem, we propose a user-controllable mesh simplification framework that allows users to assign weights on selected regions and obtain a predictable improvement of the resolution over the regions.

(6)

A

CKNOWLEDGEMENT

I wish to thank my wife, Szu-Wei Lee, for her love and tolerance, without her support this thesis would not have been possible. I would also like to thank my parents for their kindness and encouragement, and gave me fully support during my student life.

I will always be thankful to my advisor, Prof. Jung-Hong Chuang, for his guidance on research. He has led me to the field of compute graphics and supervised me to finish this thesis. I am also grateful for his advisements for the philosophy of life. I am indebted to Prof. Wen-Chieh Lin and Prof. Wingo Sai-Keung Wong for their valuable suggestions on my research. I would like to thank all the labmates over the past decade who fulled my life in NCTU with happiness.

This thesis is dedicated to my wife, my son, and my family.

(7)

Contents

List of Figures iv

List of Tables vii

1 Introduction 1

1.1 Volume Based Mesh Segmentation . . . 3

1.2 Mesh Skeletonization using Volume Based Surface Function . . . 4

1.3 User-Controllable Mesh Simplification . . . 5

1.4 Contributions . . . 5

1.5 Thesis Organization . . . 6

2 Related Works 8 2.1 Shape Property in Geometric Modeling . . . 8

2.2 Mesh Segmentation . . . 10

2.3 Mesh Skeletonization . . . 13

2.4 User-Assisted Mesh Simplification . . . 14

3 Minimum Slice Perimeter Function 16 3.1 Definition of Minimum Slice Perimeter Function . . . 16

3.2 Minimum Perimeter Slice Refinement . . . 19

3.3 Comparisons . . . 22

3.4 Limitations . . . 24

4 Volume Based Mesh Segmentation 25 4.1 Introduction . . . 25

4.2 Volume Based Mesh Segmentation . . . 27

(8)

4.2.1 Segmentation regions finding . . . 28

4.2.1.1 Computing the gradient of MSP function . . . 28

4.2.1.2 Deriving an appropriate threshold value . . . 29

4.2.1.3 Loop closing for segmentation regions . . . 29

4.2.2 Significant segmentation pairs selection . . . 30

4.2.3 Cut boundary extraction for the selected segmentation pair pair . . . 31

4.3 Hierarchical Segmentation . . . 32

4.4 Experimental Results . . . 34

5 Mesh Skeletonization using Volume Based Surface Function 40 5.1 Introduction . . . 40

5.2 Mesh Skeletonization . . . 42

5.2.1 Mesh Shrinking . . . 43

5.2.2 Mesh Degeneration . . . 43

5.2.3 Error Metric . . . 44

5.2.4 Skeleton path smoothing . . . 46

5.2.5 Skeleton branch removal . . . 47

5.2.6 Discussions . . . 48

5.3 Results . . . 49

5.3.1 Comparisons . . . 50

5.3.2 Limitations . . . 52

6 User-Controllable Mesh Simplification 54 6.1 Introduction . . . 54

6.2 User-Controllable Mesh Simplification . . . 56

6.3 Uniform Weighting Scheme . . . 58

6.4 Nonuniform Weighting Scheme . . . 60

6.5 Local Refinement . . . 62

6.6 Results . . . 63

7 Conclusions and Future Works 70 7.1 Conclusions . . . 70

7.2 Future works . . . 71

(9)

List of Figures

1.1 Surface functions of different scaling on the fertility model. . . 2

3.1 Slices for computing MSP. . . 17

3.2 The MSP function for different 3D models. . . 18

3.3 The normal of minimum perimeter slices that is projected onto the surface. . 19

3.4 MSP function for the cat model in different poses. . . 19

3.5 MSP function for the raptor model in different resolutions. . . 20

3.6 The MSP function of noisy surfaces. . . 20

3.7 The slice deviation error of 3D models. . . 21

3.8 The refined MSP function of the 3D models. . . 22

3.9 The refined MSP function of noisy surfaces. . . 22

3.10 The distributions of MSP and SDF and their gradients. . . 23

3.11 Vertex distribution of the shrunk mesh using MSP and SDF. . . 24

4.1 MSP and the magnitude of MSP gradient on the camel model. . . 26

4.2 Steps of the mesh segmentation process. . . 28

4.3 A(V ) , curvature of A (V ), and segmentation regions derived for the camel model. . . 30

4.4 The loop closing process. . . 30

4.5 Selection of the segmentation pairs. . . 32

4.6 Segmentation regions at three levels on the camel models. . . 33

4.7 Hierarchical Segmentation of the camel model in three levels. . . 33

4.8 The segmentation result of different models. . . 34

4.9 Comparison of the segmentation methods. . . 36

4.10 Comparison of dinosaur result using MSP and randomized cuts [22]. . . 36

(10)

4.11 The benchmark of our segmentation method. . . 37

4.12 Segmentation and average error rate for different poses of the animated centaur model. . . 38

4.13 Hierarchical segmentation result of the dinosaur and armadillo models. . . . 39

4.14 Histograms of the salience-measure at four levels for the dinosaur model. . 39

4.15 Hierarchical segmentation result of the dinosaur and armadillo models us-ing SDF [73]. . . 39

5.1 The skeletonization process. . . 42

5.2 A tetrahedral is degenerated to a 1D structure using edge swap. . . 44

5.3 Metric associated with the transformed vertices on the horse model. The color ranging from blue to red represents the increasing value. . . 44

5.4 Measurement of the vertex sparseness. . . 45

5.5 Bi-linear interpolation after the edge swapping. . . 46

5.6 Effect of skeleton path smoothing. . . 47

5.7 Effect of branch removal. . . 48

5.8 The skeletons of different models. The numbers indicate salience thresh-olds used and small red spheres represent the skeleton nodes. . . 50

5.9 Skeleton extracted from a horse model with high noise. . . 51

5.10 Skeletons for the cat model in different poses. . . 51

5.11 Skeletons computed by contraction method [6]. . . 52

5.12 Dense skeleton-surface mapping on the raptor models with polygon count 2, 500 (top) and 20, 000 (bottom). . . 53

5.13 Skeletons of decreasing levels of details for the armadillo model. . . 53

5.14 Skeleton of raptor model in different resolutions (salience threshold 500). The number inside the parentheses is the number of skeleton nodes. . . 53

6.1 System overview. . . 57

6.2 Reordering edge collapses in the selected region after applying weighting 2 (uniform weighting scheme). . . 59

6.3 The effect of applying a weighting value to the selected regions with dif-ferent resolutions (uniform weighting scheme). . . 59

6.4 Effect of the nonuniform weighting scheme. . . 60

(11)

6.5 Cost adjustment in local refinement process. . . 63 6.6 Apply uniform weighting on the cow model using different weighting values. 64 6.7 Two-stage user-controllable simplification (with uniform weighting) on the

dragon model. . . 64 6.8 Two-stage user-controllable simplification (with uniform weighting) on the

male model. . . 65 6.9 Visualization of the error distributions for simplified male model before

(top) and after apply user-controllable simplification (bottom). The left column are the shaded models, the middle column shows the distributions of geometry deviation, and the right column visualizes the normal devia-tion. Both deviations are measured by using MeshDev [69]. . . 65 6.10 Two-stage user-controllable simplification (with nonuniform weighting) on

the Buste model. . . 67 6.11 Comparison of the proposed uniform weighting and nonuniform weighting

schemes against the weighting scheme in [38]. . . 67 6.12 Comparison of the proposed uniform weighting, nonuniform weighting

schemes, and the weighting scheme in [38]. . . 68 6.13 Results of applying the uniform weighting with value 3 to the cow model

of resolutions in different resolutions. . . 68 6.14 Applying two-stage user-controllable simplification to the Parasaur model. . 69

(12)

List of Tables

3.1 Timing data for computing MSP values. . . 18 5.1 Number of surface vertices retained on the skeleton. . . 50 6.1 Geometry deviation of the simplified male model before and after applying

the user-controllable simplification. . . 66 6.2 Normal deviation of the simplified male model before and after applying

the user-controllable simplification. . . 66 6.3 Comparison on the resolution improvement obtained by the proposed

weight-ing schemes and the weightweight-ing scheme of [38].The three numbers in each item of the ”vertex count in the selected region” indicate the vertex counts resulting from the uniform weighting scheme (top), the nonuniform weight-ing scheme (middle), and the weightweight-ing scheme of [38] (bottom). . . 69 6.4 Resolution improvement after applying constant weighting scheme on

dif-ferent error metrics. . . 69

(13)

C H A P T E R

1

Introduction

The geometric modeling deals with the mathematical foundation of how the shape of an object is described and manipulated. Among the various object representations, the polyg-onal mesh, which is capable of representing arbitrary boundary shapes and is efficient for rendering, is most commonly used in the computer graphics field. Many geometric op-erations are developed for handling polygonal meshes, such as mesh simplification, mesh parameterization, remeshing, and mesh segmentation.

The shape properties (called surface functions) associated with the surface play a cru-cial role in the manipulation of the polygonal mesh. In the past two decades, various surface functions have been developed for different purposes. Most of them are derived directly on the 2-manifold of the surface. For example, the local geometric features such as curvature [82, 57], and planarity [21] or the global core-salient feature such as averaged geodesic distance [27]. These surface functions, however, are at the two ends of the scaling spectrum. For geometric operations that require the knowledge of part information, these surface functions may be either too local or too global.

Recently, the intermediate-level surface functions have drawn attention in geometric modeling field. Aiming to fill the gap between local and global surface functions, functions defined in intermediate scale can reveal the information about the object’s part structures and their significance. Various intermediate-level shape properties have been proposed such as the part salience [41, 19], symmetry [63, 58], visibility inside the object [53], and the shape diameter function (SDF) [73]. In Fig. 1.1, three surface functions, namely mean curvature, our proposed minimum slice perimeter function (MSP), and averaged geodesic

(14)

2

(a) Local (Mean Curvature) (b) Intermediate (MSP) (c) Global (AGD)

Figure 1.1: Surface functions of different scaling on the fertility model.

distance function, that represent surface functions in different scales are visualized on the fertility model with color ranging from blue to red for increasing value. We can see that the minimum slice perimeter function (MSP) describes the part information better than others; the distribution of function values better reveals the surface regions representing the parts. The major difficulty for deriving the intermediate-level surface function is the definition of the affected region for gathering shape information. The local shape properties are usu-ally derived using the theorems in differential geometry by gathering the information in the neighborhood of the surface point. On the contrary, the global shape properties are derived by searching over the entire model. The intermediate-level properties, however, re-quire a reasonable definition about the region for gathering information around the surface point, and may have different region sizes for different surface points. Moreover, unlike the local shape properties, most intermediate-level properties gather shape information in 3D Euclidean space, which leads high computational complexity.

In this thesis, we propose a slice-based method for deriving the intermediate-level sur-face function. For a sursur-face point p, we aim to find a good slice to describe the shape around p so that the perimeter of the slice can be an approximation to the internal vol-ume around the surface point p. Our motivation comes from the short-cut rule [79] which states that human vision prefers to use the shortest possible cuts to parse silhouettes. For a surface point p, the slice of mesh encompassed by the short-cut passing through p should well represent the object shape around p. However, deriving short-cuts on the 3D object is difficult for 3D objects of complex shape and may be not always valid. Instead of finding the exact curved short-cuts on the object, we approximate the short-cut for a surface point pby a planar slice that is the intersection of the mesh and the plane passing through p and perpendicular to the surface at p, and has the minimum slice perimeter. We call this planar slice the minimum perimeter slice of p. Also, we denote minimum slice perimeter (MSP)

(15)

1.1 Volume Based Mesh Segmentation 3

as the perimeter of the minimum perimeter slice for the surface point.

The minimum perimeter slice has several properties for describing the object shape. First, MSP function can successfully describe the relative internal volume of the local re-gion due to the close relation between the perimeter and the interior area of the slice. Also, the normal of the minimum perimeter slice depicts the orientation of the object part, which might be useful for deriving the vector field on the surface by taking into account the orien-tation of object parts. Moreover, the fact that a short-cut always crosses a local symmetric axis implies that the intersection point of the minimum perimeter slice and the local sym-metric axis can be approximated by the centroid of the slice. Hence the union of those centroid forms a shrunk mesh that approximates the skeleton of the object. Compared to another intermediate-level surface function Shape Diameter Function (SDF) [73] that mea-sures the diameter of the object’s volume around a surface point, MSP possesses a better measure about the local volume information since SDF reveals only portion of the internal volume for object parts that do not resemble cylinder.

The minimum perimeter slice can be regarded as a good representative planar slice for describing the object shape at the surface point. Geometric modeling applications that require the information about the local shape of object can be benefited. In this thesis, we apply the MSP function to the mesh segmentation and skeletonization processes and show that with the aid of MSP function, the results can have great improvement comparing to previous works.

1.1

Volume Based Mesh Segmentation

Most existing mesh segmentation methods employ local geometric properties or global core-salient features. While local shape properties often results in a over-segmented seg-mentation, the global shape properties may handle only models with core-salience feature. The volume based surface function can reveal the information about the object’s parts. We propose a new part-based hierarchical mesh segmentation scheme that utilizes the local volume information. Based on the observation that surface regions having similar local vol-ume tend to be grouped in the same part, the candidate part boundary regions on the surface can be easily located by applying threshold to the magnitude of MSP gradient. Moreover, the significance of object part pairs separated by the boundary region can be measured using their relative volumes. Based on the significance of object part pairs, for each level of the

(16)

1.2 Mesh Skeletonization using Volume Based Surface Function 4

hierarchical segmentation, the proposed scheme decomposes the object into several object part pairs that have the most significance. Boundary of the object parts are extracted from the boundary regions using the graph-cut algorithm that takes both the local curvature and the magnitude of MSP gradient into account, resulting in smooth boundaries. Compared to the segmentation methods provided by the segmentation benchmark [10], our segmen-tation scheme is able to decompose the object into parts in a more visually convinced way for objects of different topological types.

1.2

Mesh Skeletonization using Volume Based Surface

Func-tion

The skeleton is an important shape descriptor for representing the topology of a 3D ob-ject. Most existing mesh skeletonization methods derive the skeleton by either quantizing the 3D object into volume representative or resampling processes. The quantization and resampling of object usually lead to missing topological features; for example, small han-dles on the original object may be missed in the resulting skeleton. There exists several skeletonization methods that extract the skeleton directly from the 3D mesh. Although the topology of the skeleton can be homeomorphic to the original mesh, such methods usually lead to over-simplified skeleton results.

Based on the proposed slice-based scheme, we introduce a new mesh skeletonization method to extract curved skeleton directly from the surface. Since the short-cut rule [79] implies that a valid short-cut should be across a local symmetry axis, the minimum perime-ter slice, as an approximation to the short-cut, inherits the same property. We first ap-proximate the skeleton by the geometric centers of the minimum perimeter slices for all surface points. Then a greedy edge-swap framework is invoked to degenerate the manifold mesh topology to an 1D skeleton. In the process of edge-swapping, path smoothing and branch removal are applied to smooth the skeleton and remove branches due to small sur-face features and noise. As a result, the derived curved skeleton has a dense skeleton node distribution even at the core or junction parts. Moreover, the skeleton is extracted directly from the original mesh without resampling or quantization of the original mesh. So it is homeomorphic to the original mesh. A skeleton-surface mapping is inherently established that may be useful for embedding the surface information into skeleton. The threshold for

(17)

1.3 User-Controllable Mesh Simplification 5

branch removal requires only one parameter and provides a flexible control for deriving skeleton of varying details.

1.3

User-Controllable Mesh Simplification

At the end of this thesis, we discuss the issue about a user-controllable strategy for level-of-detail modeling process. The semantic meaning of an object is important in describing the visual significance of some object regions. For example, the eyes are important cues when looking at a human model. However, such a semantic meaning can hardly be described by the existing shape properties. Moreover, different applications may give different semantic meanings about the same object. To introduce the semantic meaning into the modeling simplification process, the user-assisted strategy is often required. The most important aspect in designing a user-assisted interface is the quantization of the semantic meaning and its adaptation to applications. We introduce a user-controllable scheme for the general mesh simplification application, in which the weighting provided by users is specified as the multiple of the resolution improvement in the selected surface regions. The previous weight-based user-assisted simplification methods [38, 64] take the weighting values as the multiplication of simplification cost. As a consequence, the resolution improvement in selected regions are unpredictable. In our user-controllable simplification scheme, the weighting values are used to delay the order of the simplification operators in the sim-plification sequence. With a carefully designed order delaying scheme, we can achieve predictable resolution improvement for different simplification targets. With our proposed scheme, the same amount of resolution improvement can be obtained for models that are simplified using different simplification metrics.

1.4

Contributions

We summarize the contributions of this research as follows :

• Propose a new surface function, called minimum perimeter slice function (MSP), for representing the local volume of an object.

• Propose a new part-based mesh segmentation method that well utilizes the volume based surface function.

(18)

1.5 Thesis Organization 6

– Regions of similar volume are grouped according to the MSP function.

– Can construct a hierarchical segmentation on which not only components on a higher level reveal higher degree of salience than their descendant parts but also the components on each level of hierarchy have similar degree of salience significance.

• Propose a novel greedy framework for extracting a curved skeleton directly from the 3D model.

– The resulting skeleton possesses a dense node distribution at the core parts and around the junctions, and the skeleton-surface mapping and MSP value. – A single salience parameter is required for controlling branch removal so as to

compute skeletons with varying details.

– The proposed method is able to generate consistent skeletons for models in different resolutions and poses.

• Propose a user-controllable simplification framework that allows users to obtain a predictable resolution improvement over the simplified mesh deriving by using any existing error metrics.

– The resolution improvement for a given weighting value in a selected region is predictable.

– The weighting schemes are completely independent of the error metric used, that is, same resolution improvement for a weighting value is obtained no matter what error metric is used.

– A weighting value will result in the same resolution improvement when it is applied to simplified meshes in different resolutions.

1.5

Thesis Organization

The remainder of the thesis is organized as follow.

In Chapter 2, a survey on the shape properties, mesh segmentation, skeletonization, and user-assisted simplification is given. We introduce a new surface function representing the local volume information around the surface point in Chapter 3. In Chapter 4, a part-based

(19)

1.5 Thesis Organization 7

mesh segmentation algorithm is proposed that can take complete advantage of the volume based surface function. Chapter 5 describes a new mesh skeletonization method that de-rived from the minimum perimeter slices. In Chapter 6, we propose a user-controllable mesh simplification that allows users to achieve a predictable resolution improvement by using weighting schemes. Finally, we conclude our works and address possible future works in Chapter 7.

(20)

C H A P T E R

2

Related Works

In this chapter, we discuss the works related to our research. The review of related work begins by a survey of shape properties used in geometric modeling. We categorize the shape properties according to the spectrum of scaling. Then, we review two geometric modeling applications that benefit from the intermediate-level shape properties, the mesh segmentation and skeletonization. Finally, user-assisted mesh simplification is reviewed.

2.1

Shape Property in Geometric Modeling

Most of the geometric operations rely on the analysis of shape properties of the object. Shape property can be classified depending on its coverage on the object. Earlier researches focused on the analysis of local geometric features which mainly derived based on the the-ories in differential geometry, such as the curvature [82, 57] and planarity [21]. However, the local geometric features are sensitive to the detail signal on the surface. The global shape properties, which are classified at another end of the scaling spectrum, are derived based on the analysis that covers the entire object. The distance between two surface point p1 and p2 can be a metric for describing the relation between these two points. Various

distance measurement method have been proposed for different goals. The Euclidean dis-tance is perhaps the easiest way to measure the disdis-tance between two points. However, the Euclidean distance can not reveal the change of shape. The geodesic distance [80] is the most widely used distance measurement in shape analysis which measures the shortest length between two surface points along the surface. Additionally, Hilaga et al. used the

(21)

2.1 Shape Property in Geometric Modeling 9

average geodesic distance (AGD) to represent the protrusive of the object [27]. The major problem of AGD is its inability to capture the change of shape due to the nature of its global measurement. Moreover, the AGD is not applicable to objects without obvious core-salient features.

To fill the gap between the local and global shape properties, intermediate-scale sur-face attributes have been proposed for describing the localized regions. The salience is a perception-based measurement describing the visual importance of a region relative to oth-ers. On the surface of 3D object, the salience is usually defined as the combination of local shape properties such as the weighted averaging of Gaussian curvatures in different scales by Lee et al. [41] or the combination of curvature and area by Gal and Cohen-Or [19]. However, without the information from more global shape properties, the salience defined based only on the local shape properties may not be able to reveal the significance of the object region. Symmetry of an object is another important characteristic for analyzing the object. Kazhdan et al. defined the symmetry distance of an object using all planes and rotations through its center of mass, and used it as a global shape descriptor for performing shape matching in database retrieval [37]. Podolak et al. extended the work of Kazhdan et al. to the continuous measurement of global reflective symmetry of an object with respect to all planes pass through the surface [63]. Mitra et al. identified the object parts that have partial symmetries within or between them by using the voting process [58]. The reflec-tive symmetry defined by the plane restricts the representareflec-tive of symmetry for non-rigid shapes. Xu et al. extended the planar reflective symmetry proposed by Podolak et al. [63] to identify the partial intrinsic reflective symmetry of object [87]. They assume that surface points geodesically equidistant to both of the points in the reflective sample point pairs are the candidate position for the intrinsic reflective symmetry. A scalar surface function for describing the intrinsic reflective symmetry can be established by voting the surface points geodiscally equidistant to the sample pairs. Lipman et al. generalized the symmetry cor-respondences between points by finding orbits between them [50]. By grouping a set of points that have the same orbit in a correspondence graph, problems of finding approxi-mate and partial symmetries can be reduced to the measurement of connectedness in the correspondence graph.

The volume inside the object is another intuitive and useful intermediate-scale shape property. Shapira et al. proposed a surface attribute that describes the local volume

(22)

as-2.2 Mesh Segmentation 10

sociated with the surface point, called shape diameter function (SDF) [73]. The SDF is an approximation of medial axis transform (MAT) [11] that uses local shape diameter to approximate the radius of the maximal inscribed ball. Both MAT and SDF have the same problem that the volume information at surface points is quite local. For example, the volume information associated with a point refers only to the maximal inscribed ball asso-ciated with that point in the MAT approach. For the slab of a non-cylindrical part, the union of several balls is required for evaluating the entire volume. The SDF has the same limi-tation since it is conceptually derived from MAT. There are other shape properties defined in intermediate-scale. Liu et al. measured the possibility of surface region to be within the same object part by the visibility of surface region inside the object [53].

2.2

Mesh Segmentation

In the past decade, many mesh segmentation methods have been proposed. Based on the objective, mesh segmentation methods generally fall into two categories: patch-type and part-type [5, 71, 10]. Patch-type segmentation usually decomposes the mesh into several patches by analyzing the surface properties such as dihedral angles [46, 75], curvature [56, 60, 75], geodesic distance [88], and planarity [21]. Part-type segmentation tends to segment a complex object into several meaningful components, usually based on the concepts from cognition theory [28, 29]. For example, the minima rule states that human perception tends to break an object into parts along the region of minimum negative curvature [28]. Moreover, the salience of parts determined by relative volume, boundary strength, and degree of protrusion is important for human perception [29]. Our method is a part-type segmentation, and we will mainly review this type of segmentation and refer readers to the excellent survey paper by Shamir [71] for the patch-type segmentation.

Locating the boundary between parts can be done by either boundary-based or region-based approach. Mangan and Whitaker used the watershed to segment the object into several parts according to the curvature on the surface [56]. Lee et al. [45] cut the object into parts by first finding the loop along the minimum negative curvature, and then test the salience of the divided parts based on the part salience theory [29]. However, the surface curvature is too local for describing the shape of object and locating cut boundaries based on the curvature cannot always result in a meaningful part segmentation. Moreover, the iterative segmentation process proposed leads to a binary hierarchical segmentation on

(23)

2.2 Mesh Segmentation 11

which each level does not provide an intuitive meaning for object parts.

The geodesic distance is another attribute widely used in mesh segmentation [77, 36, 51, 52]. The averaged geodesic distance (AGD) derived as the average of geodesic distance from a surface point to all other points can be used to represent the degree of protrusion of a part. However, such attributes are useful only for models that have an obvious core part and feature parts.

The Medial Axis Transform (MAT) is a global shape descriptor of the object [11]. MAT or skeleton can be used as a guideline for segmentation. For example, Li et al. segmented the object by moving a sweep plane along the skeleton of object [48]. Since the size of the cutting section of the sweeping plane can be regarded as local volumetric information of the object, the cut boundaries are usually at the regions where the size of cutting section varies rapidly. Oscar et al. segmented the skeletal mesh by measuring thickness corresponding to the skeleton nodes derived from the skeletonization process [6]. The most concave region for the cutting is searched for each skeleton branch by comparing the thickness of the skeleton nodes with their neighbors [6]. Reniers and Telea observed that the junction between two skeleton paths has high potential to be a good place for separating two parts [66, 67]. Shapira et al. proposed a hierarchical segmentation method by fitting k Gaussian functions to the histogram of SDF values, and clustering the mesh faces according to their corresponding Gaussian functions [73]. However, the fitting of the global histogram can not reflect the difference between the object parts and some small parts with no salient feature may be segmented. The segmentations generated by using different number of Gaussian functions do not have consistent part correspondence and the part boundaries may not always lie on meaningful regions.

An iterative approach for decomposing the object into several parts is based on the k-means clustering [54]. Shlafman et al. used k-means clustering to segment the object into a user-specified number of components [77]. This work was later refined to achieve hierarchical segmentation [36]. However, the geodesic distance used in [36] describes only the protrusion of object parts and hence the resultant hierarchical segmentation tends to cut the object along the longest parts at the higher level of the hierarchy, which may not meet the concept of perception. Moreover, the method is usually suitable only for objects having obvious core-salient features. The challenge to the k-means clustering methods is that the value of k needs to be given a priori. Liu and Zhang overcame such problems by applying

(24)

2.2 Mesh Segmentation 12

the spectral analysis on the affinity matrix constructed using the mesh faces [51].

Another segmentation approach was based on the fitting of primitives. Attene et al. extended the hierarchical face clustering [21] and replaced the clustering metric by other similarity measures for the predefined primitives, such as spheres, cylinders and planes [4]. Mortara et al. detected the parts with tubular shape from the whole object [59]. They extracted the core part by excluding all the tubular parts from the object to complete the segmentation.

Pose-invariant mesh segmentation has attracted more attention in recent years. Such works focused on finding the consistent segmentation over different poses of a model. Katz et al. transformed the original model into a pose-invariant representation using multi-dimensional scaling and then used spherical mirroring to extract the core of the object and feature points to segment the objects [35]. In character animation, the pose-invariant segmentation can be achieved by finding the rigid components during the animation [41, 44, 43]. However, such methods are usually suitable only for articulated models and the requirement of animation sequences also poses some restrictions on the usability.

Consistent mesh segmentation aims to produce consistent segmentations for a set of meshes [78, 72, 84]. Golovinskiy and Funkhouser [23] employed rigid alignment [9] in a hierarchical clustering approach for consistent segmentation. Both the geometric features of individual meshes and the correspondence information between the set of meshes are considered. However, rigid alignment may not be able to correctly align the meshes in some cases, as reported in [34]. Kalogerakis et al. [34] proposed a scheme to compute segmentations and to assign labels for a set of meshes. The assignment of labels was formulated as an optimization problem and the objective function measured the consistency of primitives (i.e. triangles) with labels. The objective function was computed via a training process and then applied to the other meshes for computing consistent segmentation. Their approach handled various segmentations for a wide range of meshes. However, the training process is time consuming and usually takes hours of computing.

Golovinskiy and Funkhouser [22] defined a surface function called partition function that indicates how likely each edge is to lie on the boundary of a random segmentation drawn from a set of existing segmentations. Based on the partition function, a cut is asso-ciated with a consistency measure as the length-weighted average of the partition function values of its edges. The most consistent cuts defined as the set of cuts with highest

(25)

con-2.3 Mesh Skeletonization 13

sistency are used for finding the part boundaries. Chen et al. proposed a benchmark for quantitative evaluation of mesh segmentation algorithms [10]. The benchmark includes a data set with 4, 300 manually generated segmentations for 380 object meshes in 19 cate-gories. It also provides software for producing four quantitative metrics for the comparison of segmentation algorithms.

2.3

Mesh Skeletonization

Most of the mesh skeletonization methods can be classified into two categories: volumetric and geometric. The volumetric methods perform thinning on the voxelization structure of the objects [42, 61, 55] or tracking on the field function derived from the objects [12, 26]. The review of volumetric methods is referred to the survey by Cornea and Min [15].

A common geometric approach is based on the construction of the Voronoi diagram [85] and its extension [2, 18, 17]. The Reeb graph [65] can also be used for computing the skele-ton from the 3D model. There are a variety of techniques using different surface functions, such as the geodesic function [27, 83], harmonic function [8], and height function in 3D space [76, 3]. One challenge of this approach is to embed the skeleton into the geometry. In most cases, the skeleton is derived by averaging the position of vertices on the slab defined by the iso-contour of the function [62, 83]. Aujay et al. embedded the skeleton through an adaptively refinement by solving the Laplacian equation [8].

Sharf et al. constructed the skeleton of the 3D model by tracing the growing fronts of the blob inside the model [74]. Their method generates smoothed curved skeleton with topology homotopic to the deformable model. However, their work requires a deformable model for driving the process and a filtering process for removing the noisy branches.

There are skeletonization methods for extracting the skeleton directly from the surface of the model. Au et al. extracted the skeleton by iteratively contracting the mesh based on Laplacian smoothing [6]. The resulting skeleton has coarse node distribution around the junctions and within the core part. Moreover, the Laplacian smoothing requires several boundary constraints for ensuring that the skeleton branches are preserved. There is no in-tuitive interpretation in doing so. The shape diameter function (SDF) [73] can also be used to extract the skeleton. The candidate position of the skeleton is achieved by transforming mesh vertices using the half distance toward the inverse normal direction. The skeleton is then obtained using the moving least square reconstruction. Such skeletonization scheme

(26)

2.4 User-Assisted Mesh Simplification 14

is not homotopic since it does not take the connectivity of the mesh vertices into account. Other than the skeletonization of polygonal meshes, Tagliasacchi et al. extracted the skele-ton from the point cloud by finding the rotational symmetry axis [81]. Their scheme can compute the skeleton even though the point cloud data is incomplete.

2.4

User-Assisted Mesh Simplification

Level-of-detail (LOD) modeling aims to represent a complex mesh with several levels of detail, and from which an appropriate level is selected at run time to represent the orig-inal mesh. A number of methods have been proposed in the literature. Most methods simplify the given mesh by using a sequence of primitive collapsing operations, such as edge collapse [32], triangle collapse [25], vertex clustering [68], vertex removal [70], and multi-triangulations [16].

The primitive collapsing operations can be organized in various orders. The simplest way is to perform the operations in arbitrary order. A more sophisticate approach is to perform the operations in the increasing order of collapsing cost, which is analogous to the greedy algorithm. Several error metrics have been proposed to determine the cost of an edge collapsing operation, such as quadric error metrics (QEM) [20], appearance-preserving simplification (APS) [14], image-driven simplification (IDS) [49], and percep-tually guided simplification of lit, textured meshes [86]. Each error metric has its own strength and weakness in preserving certain properties of the original mesh. For exam-ple, quadric error metrics [20] tends to preserve only the geometric accuracy during the simplification process, appearance-preserving simplification (APS) [14] takes the texture deviation into account, and image-driven simplification [49] aims to preserve the visual fi-delity between the simplified mesh and the original mesh. Moreover, These metrics fail to consider semantic or functional features on the models. As a result, it is found in practice that these metrics alone are not able to produce satisfactory results when very low polygon count is the goal.

The first system that allows users to guide the simplification is Zeta proposed by Cignoni et al. [13]. Zeta takes a pre-computed sequence of primitive simplifications as an input, and utilizes hyper-triangulation model, which employs vertex decimation as the local mesh re-duction operator. Users can selectively refine a model by locally changing error thresholds to extract different approximations that did not appear during the original simplification

(27)

2.4 User-Assisted Mesh Simplification 15

process. Semisimp proposed by Li and Watson [47] provides three approaches for users to manipulate the simplification results using the simplification hierarchy. It allows users to improve mesh quality by manipulating the simplification orders, vertex positions, and the hierarchical partitioning of mesh during the simplification.

Kho and Garland [38] proposed a user-guided mesh simplification system particularly for meshes derived using QEM [20]. To increase resolution in a selected region, the system multiply quadric errors associated with vertices in the region by the weighting multiplier, and hence postpone the edge collapse operations in the region. The constraint quadrics can be augmented into optimal placement computation to bias the optimal position towards the constrained planes. Pojar et al. presented an approach that is very similar to the work of Kho and Garland [64]. A sophisticated Maya plug-in is provided to offer rich interface and great compatibility with other modeling applications. Since the distribution of QEM during simplification can not be described by a simple function, the weighting approach proposed in [64, 64] suffers from the problem that the value of multiplier has no direct relation to the increase in resolution. In consequence, the value of multiplier is chosen in a trial and error basis.

Hussain et al. [33] proposed a unified framework for constructing multiresolution mesh based on the simplification hierarchy and hypertriangulation model [13], called adaptive simplification model (ADSIMP). It provides the ability of real time navigation across con-tinuous LODs of meshes. Two operations, selective refinement and selective simplification, are provided to fine tune the simplified mesh at any level of detail.

A user-assisted simplification method for converting CAD models into the triangle meshes with boundary preservation was proposed by Gonz´alez et al. [24]. Their method allows users to specify different levels of detail for each subobject of the CAD models, and ensures the consistency of boundaries between subobjects. However, the requirement of subobjects limits their work to be useful only for man made CAD models.

(28)

C H A P T E R

3

Minimum Slice Perimeter

Function

Our research focus on the derivation of surface properties that benefit the intermediate-level shape analysis, such as the object part identification. The major challenge of deriving the intermediate-level shape properties for 3D object is the high computational cost and how to define the affected range.

The short-cut rule [79] states that human vision prefers to use the shortest possible cuts to parse silhouettes. Moreover, the area bounded by the short cut is an appropriate measure for the local interior volume of the object around the surface point. Hence the short cut is an important property for segmenting parts. Deriving the short cuts on a 3D model, however, is difficult due to the complex relation between the 3D shapes and silhouettes. Instead, we approximate the short cut for a surface point by using the planar slice that passes across the model through the surface point and has the minimum perimeter.

3.1

Definition of Minimum Slice Perimeter Function

For a manifold surface M, we define the Minimum Slice Perimeter (MSP) function at a surface point p as the minimum perimeter of the planar slices passing through p and parallel to the surface normal at p. It is given as follows:

MSP (p) = min

n kpl (n, p) ∩ Mk, (3.1)

(29)

3.1 Definition of Minimum Slice Perimeter Function 17

Figure 3.1: Slices for computing MSP.

where pl (n, p) represents a plane passing p with unit normal n that is perpendicular to the surface normal at p and kpl (n, p) ∩ Mk represents the perimeter of the intersecting slice of pl (n, p) and M. The planar slice having the minimum perimeter is called the Minimum Perimeter Sliceof p.

For each surface point p of the 3D mesh, the MSP value of p is derived by first com-puting the intersecting slices for a predefined number of slice planes and then compute the minimum perimeter from the intersecting slices. The slice planes are distributed uniformly about the surface normal vector at p. The intersecting slice of a slicing plane and the surface is computed by performing a surface propagating process starting from the face containing p. A slice’s perimeter is computed as the total length of the edges on the intersecting slice. The minimum perimeter is taken as the MSP value of p. Fig. 3.1 shows 10 intersecting slices and the slice with the minimum perimeter is shown in red.

Fig. 3.2 demonstrates the MSP function on some models. The color ranging from blue to red indicates MSP values from low to high. It is observed that the MSP function is effec-tive for representing the local volume information. The core parts have higher MSP value than the salient parts for the articulated models and the parts can be distinguished easily according to the MSP distribution even for models with complex topological structures. In Fig. 3.3, the normal of the minimum perimeter slices is visualized on the surface. Such normals are able to reveal the overall orientation of the object shape. Since the minimum perimeter slice describes the object shape in intermediate scale, it’s independent on the pose of object. As shown in Fig. 3.4, a cat model with different poses has similar MSP dis-tributions. Similarly, a model with different resolutions also has similar MSP distributions,

(30)

3.1 Definition of Minimum Slice Perimeter Function 18

Figure 3.2: The MSP function for different 3D models.

as shown in Fig. 3.5.

Table 3.1 shows the timing data for computing MSP value using eight slices for each surface point on the models. The test platform is a PC with Intel Core i5 2.67Ghz CPU. Notice that we did not implement any acceleration structures for our MSP method. It turns out that the computation time of our method is similar to that of SDF [73]. The accuracy of

Table 3.1: Timing data for computing MSP values. Model Number of Time (sec.)

polygons Raptor 30k 2.77 Heptoroid 20k 1.01 Dancer 20k 2.07 Armadillo 20k 2.93 Neptune 60k 14.19 Dancing Children 30k 4.93 Fertility 30k 6.02 Horse 40k 9.07

the MSP value for a surface point depends on the number of slices used. In our experiment, some noticeable noises can be observed for the number of slices less than four. For the

(31)

3.2 Minimum Perimeter Slice Refinement 19

Figure 3.3: The normal of minimum perimeter slices that is projected onto the surface.

Figure 3.4: MSP function for the cat model in different poses.

number of slices higher than or equal to eight, the MSP values are almost the same. A typical range of the number of slices is from four to eight for trading off between quality and efficiency.

Some highlights of MSP value can be observed at the tips of object parts (such as the chest of horse, shoulder of nepture, and head of dancing children) in Fig. 3.2. This is due to the improper orientation of minimum perimeter slices, where the slice planes in such tip regions are almost parallel to the local symmetric axis. Moreover, the slicing along the normal direction may be sensitive to the surface noise. Fig. 3.6 illustrates two examples for the MSP function on noisy surfaces, where the raptor model with high resolution has details on its surface and the horse model is produced by applying a turbulence function on the model surface. Non-smooth MSP value can be observed, particularly at small regions where MSP values change dramatically.

3.2

Minimum Perimeter Slice Refinement

A good minimum perimeter slice should be capable of representing the shape in the slab of its local region well. Therefore, a good minimum perimeter slice can be considered as

(32)

3.2 Minimum Perimeter Slice Refinement 20

Figure 3.5: MSP function for the raptor model in different resolutions.

Figure 3.6: The MSP function of noisy surfaces.

the slice on which all the surface points along the slice yield similar minimum perimeter. Based on this observation, to measure how well a minimum perimeter slice is, we define the slice-deviation error for the minimum perimeter slice of a surface point p as follows:

cdev(p) = 1 kS (p) k Z q∈S(p)cos −1 n p· nq dq, (3.2)

where S (p) is the minimum perimeter slice at the surface point p, np and nq are the unit

plane normals of the minimum perimeter slices at p and q, respectively. Fig. 3.7 depicts the slice-deviation error of the models shown in the top row of Fig. 3.2. High slice-deviation er-ror can be observed at the tips of object parts and the junctions, where improper orientation may be used to derive the minimum perimeter slices.

According to the definition in [79], the short-cut is not necessary to be perpendicular to the surface normal, slicing along the surface normal may be too restrict for deriving a good minimum perimeter slice for approximating the short cut. It is reasonable to argue that an ideal minimum perimeter slice at the surface point p should be minimal for both the slice perimeter and the slice deviation error. However, such a minimum perimeter slice may not always exist. Instead, we refine the orientation of the minimum perimeter slice at

(33)

3.2 Minimum Perimeter Slice Refinement 21

Figure 3.7: The slice deviation error of 3D models.

the surface point p by minimizing the objective function described in Eq. 3.3.

Op(n) =kpl (n, p) ∩ Mk 2πrM

+cdev(p)

π /2 , (3.3) where the plane normal n is not restricted to be perpendicular to the surface normal at point p, and rM denotes the half of the diagonal of the object’s bounding box, which is used to

normalize the slice perimeter.

Refining the minimum perimeter slice using Eq. 3.3 is, however, difficult due to the intercorrelation between slice normal and slice deviation error. Instead, we use an iteration-based method that takes the minimum perimeter slice computed using method described by Eq. 3.1 as an initial guess. For each iteration, the new slice that minimizes the combination of the slice perimeter and the slice deviation error is taken. The searching space for the new slice plane should cover the entire hemisphere centered at p, which is too large. For the minimum perimeter slice S (p) of the surface point p, we consider the unit plane normal nq

of the minimum perimeter slice of each point q along S (p). The average of those normal nq

weighted by using the reciprocal of slice-deviation error at q gives a reasonable orientation of the object part, and hence offers a candidate slice-plane normal for computing a better minimum perimeter slice; as shown in Eq. 3.4.

navg(S (p) , p) =

Z

q∈S(p)

nq

cdev(q)dq, (3.4) Hence, the search of the slice-plane normal in the entire hemisphere space is reduced to the search in the range bounded by the normal of the minimum perimeter slice plane derived in previous iteration and the candidate slice-plane normal navg. The iterative process is

(34)

3.3 Comparisons 22

Figure 3.8: The refined MSP function of the 3D models.

Figure 3.9: The refined MSP function of noisy surfaces.

performed until the normal difference between the new minimum perimeter slice plane and the previous one is below a user-specified threshold.

Fig. 3.8 illustrates the refined MSP function for models shown in the top row of Fig. 3.2. The highlights at the chest of horse, shoulder of nepture, and head of dancing children models are eliminated. Fig. 3.9 shows another refinement result on the noisy surfaces.

3.3

Comparisons

Both of MSP and SDF [73] reveal the local volume of the object, but by different defi-nitions. SDF is an approximation of the medial axis which describes the local volume of object at the surface point by the maximum inscribed ball attaching to the surface point. Ray casting through the interior of object is applied to approximate the diameter of the maximum inscribed ball. Both MSP and SDF can reveal the local volume well for

(35)

cylin-3.3 Comparisons 23

(a) MSP (b) SDF

(c) Gradient of MSP (d) Gradient of SDF

Figure 3.10: The distributions of MSP and SDF and their gradients.

drical parts, but MSP is capable of capturing better volume information than the SDF for those object parts that are non-cylindrical, such as the palm, as shown in Fig. 3.10. For non-cylindrical models or parts, the SDF value reflects only a portion of the internal vol-ume information and measures the local thickness or local diameter of the model. The red color around the side of the palm means that the internal volume is much larger at the side of palm than at the center. Instead of MSP function, the minimum perimeter slice carries additional shape information about the object part, such as the slice shape and the orientation. The SDF, however, is unable to derive such information.

The surface function which describes the internal volume of the object is useful for part-based mesh segmentation. The averaging computation in SDF formulation can alleviate the problem induced by surface details or noise. It, however, tends to blur the change of volume, leading to some difficulties in deriving the part boundary, especially for the surface regions with dramatic change in local volume. Fig. 3.10(c) and Fig. 3.10(d) depict that the

(36)

3.4 Limitations 24

(a) MSP (b) SDF

Figure 3.11: Vertex distribution of the shrunk mesh using MSP and SDF.

gradient of MSP changes significantly across the object parts, e.g. the regions between the fingers and the palm and the gradient of SDF does not change obviously across the object parts.

For skeletonization application, the centroid of the minimum perimeter slice has better representative for the curve skeleton, compared to the transformed vertices derived using the half-depth toward the inverse normal direction of SDF, as shown in Fig. 3.11.

3.4

Limitations

In some cases, the minimum perimeter slice does not faithfully capture the local shape of a part; e.g., at the feet of the dancing-children model in Fig. 3.2 where some planar slices pass across multiple parts and yield relatively larger MSP value than they should be.

(37)

C H A P T E R

4

Volume Based Mesh

Segmentation

4.1

Introduction

Due to the advance of 3D model acquisition equipment, 3D meshes with high polygon counts and complex topological structures can be obtained easily. As meshes are becoming larger and more complex, decomposing an object into smaller and simpler components is essential for many mesh techniques, including parameterization, texture mapping, morph-ing, editmorph-ing, shape matchmorph-ing, compression and more. Thus mesh segmentation has become a key ingredient in many mesh applications.

Most of the existing mesh segmentation methods rely on either local detail geometric features or global topological structure. The use of too local or too global surface proper-ties limits many segmentation algorithms to either decompose a model into several surface patches [21, 46, 60] or to handle only models with some specific topological structure such as core-salient features [36, 35]. As indicated in the part salience theory [29], the rela-tive size of object region is an important characteristic for identifying the object part. The neighboring regions with similar volume tend to be grouped into a part and consequently the gradient of the local volume directly implies the potential regions for deriving part boundaries. The MSP function, describing the internal volume of the local region associ-ated to the surface point, is best applicable for this scope. Fig. 4.1 depicts the MSP and the magnitude of MSP gradient on the camel model. The color ranges from blue to red

(38)

4.1 Introduction 26

(a) MSP (b) Magnitude of MSP gradient

Figure 4.1: MSP and the magnitude of MSP gradient on the camel model.

represents the function value in ascending order. The magnitude of MSP gradient directly indicates the strength of surface regions to be boundaries.

Since complex models often contain features in different scales or salience, ranging from global structure to detail surface features, it is useful to decompose the models into components in several levels or hierarchically. Several approaches have been proposed in this direction. Hierarchical face clustering techniques construct the hierarchy in a bottom-up fashion [21]. Top-down approaches start from the root, which represents the whole object, and partition the component into two or more parts [36]. This process continues recursively until a certain condition is met. At each level of the top-down approach, the segmentation is usually derived implicitly by locating the best boundary between parts. Several hierarchical segmentation techniques have been proposed [36, 35, 45, 40]. Most of the techniques claim that components on a higher level reveal higher degree of salience than their descendant parts. But many of them cannot ensure that the components on each level of hierarchy have similar degree of salience.

Locating boundary between parts can be done by either boundary-based or region-based approach. Boundary-based approach uses local geometric properties, such as curvature, to locate boundary. Region-based approach seeks for regions with similar properties, such as the combination of geodesic and angular distances in [36], from which boundaries are derived. Since parts have different levels of salience, to evaluate the significance of a boundary between parts, we need to include the salience measures of the associated parts. However, the boundary computed by using boundary-based and region-based approach usually lacks the necessary salience measures for the parts associated with the boundary.

(39)

4.2 Volume Based Mesh Segmentation 27

an object into meaningful parts in such a way that not only components on a higher level reveal higher degree of salience than their descendant parts but also the components on each level of hierarchy share similar degree of salience. Our segmentation is based on the MSP function which represents the object’s internal volume on the surface. As neighboring regions having similar internal volume tend to be grouped together and form a part, the magnitude of MSP gradient can be used to locate the candidate segmentation regions that contain the boundaries. Moreover, the significance of segmentation regions is evaluated in the process of hierarchical segmentation. The evaluation takes into account the salience information of the parts associated with the segmentation region.

The proposed hierarchical segmentation scheme starts from the whole object and, for each level of the hierarchy, locates segmentation regions by applying a threshold to the function for the magnitude of MSP gradient, then evaluates the significance of segmenta-tion regions. Finally, the scheme selects a set of the most significant segmentasegmenta-tion regions for that hierarchy level. The boundaries for that level are then computed by using graph cut [36] with a capacity that considers both the curvature and the magnitude of MSP gradi-ent.

We make the following contributions to the mesh segmentation process:

1. Propose a segmentation scheme based on the MSP function that encodes local vol-ume information. The proposed segmentation scheme has several advantages:

• Regions of similar volume are grouped into a part according to the MSP func-tion.

• A significance measure of a boundary that takes into account the local curvature and the changes in MSP value is presented.

2. Propose a hierarchical segmentation on which not only components on a higher level reveal higher degree of salience than their descendant parts but also the components on each level of hierarchy have similar degree of salience.

4.2

Volume Based Mesh Segmentation

The proposed segmentation scheme begins by deriving the gradient of MSP function for each face. Then, a set of segmentation regions is found by applying a threshold value to

(40)

4.2 Volume Based Mesh Segmentation 28 (a) MSP (b) Magnitude of MSP Gradient (c) Segmentation Regions (d) Segmented Parts

Figure 4.2: Steps of the mesh segmentation process.

the magnitude of MSP gradient. Each segmentation region divides the object into two or more potential object parts. We test the saliency of the potential parts and obtain some most significant segmentation regions. Finally, a cut is derived within each selected segmentation region which separates the object into two parts. Figure 4.2 illustrates such segmentation process.

4.2.1

Segmentation regions finding

4.2.1.1 Computing the gradient of MSP function

The magnitude of MSP gradient represents the rate of volume change in the neighborhood of the surface point. As shown in Fig. 4.1, there are large gaps in volume’s size between the body and the neck and between the body and front limbs of the camel model, which are revealed in the distribution of MSP function (Fig. 4.1(a)) and the magnitude of its gradient (Fig. 4.1(b)). Computing the gradient of MSP function on a piecewise linear polygon mesh is not as trivial as that on the continuous surface. To compute the gradient of MSP function at a surface point x, we first derive a difference-vector for every edge in a neighborhood of xand then compute the MSP gradient vector at x as the average of all difference-vectors. The difference-vector for an edge is the vector in the direction of the edge vector and with the magnitude as the difference of the MSP values at its two endpoints.

The gradient of MSP function at x is finally the averaged MSP difference-vector at x. Its detail equation is as follows:

∇MSP (x) = 1 |Nx|e∈N

x

(41)

4.2 Volume Based Mesh Segmentation 29

where Nxis the neighborhood of x with a user-specified range, viand vj are two endpoints

of the edge e, possibly clamped to be within Nx, and ¯e is the unit vector of the edge e

with direction from vj to vi. Such a formulation is similar to the method for computing the

curvature tensor in Alliez et al.[1]. For efficiency consideration, we define Nxas the surface

region within the sphere centering at x with a user-specified radius.

4.2.1.2 Deriving an appropriate threshold value

The segmentation regions are defined as the surface regions where the magnitude of MSP gradient is above a specific threshold value. An appropriate threshold value is hard to find in practice. A smaller threshold value will enlarge the segmentation regions, making the computation of a proper cut boundary more difficult. On the other hand, for a large thresh-old value, the segmentation region may not form in loops, even using extrapolation. To decide an appropriate threshold value automatically, we consider the cumulative function for the surface area with respective to the magnitude of MSP gradient as follows:

A(V ) =

Z V

0

a(v)dv, (4.2)

where a (v) denotes the area of the surface region having the magnitude of MSP gradient as vand A (V ) is the total area of the surface region that has the magnitude of MSP gradient less than or equal to V . A (V ) is a monotonically increasing function, representing the changes of cumulative surface area with respect to the magnitude of MSP gradient. A good threshold value will be the magnitude of MSP gradient value that indicates a sudden drop on the value of A (V ) when the magnitude of MSP gradient decreases. Hence, by considering A (V ) as a 2D curve segment, the desired threshold value will be at the position where the curvature is maximal. Fig. 4.3(a) and Fig. 4.3(b) illustrate the graph of A (V ) and its curvature for the horse model, respectively. The segmentation regions extracted using the derived threshold value is shown in Fig. 4.3(c).

4.2.1.3 Loop closing for segmentation regions

Since the cut boundary is extracted within the segmentation region, a segmentation region must form a loop. The segmentation region derived by applying threshold on MSP gra-dient in general does not guarantee to form a loop. We apply extrapolation to close those segmentation regions into loops. For a segmentation region that does not form a loop, a

(42)

re-4.2 Volume Based Mesh Segmentation 30

(a) A (V ) (b) Curvature of A (V ) (c) Segmentation regions

Figure 4.3: A (V ) , curvature of A (V ), and segmentation regions derived for the camel model.

(a) Original segmentation regions (b) Region extrapolation (c) Grown region peering

Figure 4.4: The loop closing process.

gion growing process is performed starting from the region boundary, and in each iteration the face with the largest magnitude of MSP gradient is added to the segmentation region until the newly added face connects to another region or close the loop. After closing up a loop, the faces within the newly grown region are peeled away iteratively in the decreasing order of their magnitude of MSP gradients until a ribbon region with one face width left between the two newly connected segmentation regions. At this point, these two segmenta-tion regions are merged. The merging process is executed iteratively until all segmentasegmenta-tion regions form in loops. Fig. 4.4 illustrates the loop closing process.

4.2.2

Significant segmentation pairs selection

The segmentation region derived using the magnitude of MSP gradient represents the strength of the part boundary, but does not reveal any salience information of the parts it separated. However, the salience of segmented parts associated with the segmentation regions may range from detail feature to global structure.

數據

Figure 3.2: The MSP function for different 3D models. as shown in Fig. 3.5.
Figure 3.4: MSP function for the cat model in different poses.
Figure 3.5: MSP function for the raptor model in different resolutions.
Figure 3.7: The slice deviation error of 3D models. the surface point p by minimizing the objective function described in Eq
+7

參考文獻

相關文件

We solve the three-in-a-tree problem on

 From a source vertex, systematically follow the edges of a graph to visit all reachable vertices of the graph.  Useful to discover the structure of

6 《中論·觀因緣品》,《佛藏要籍選刊》第 9 冊,上海古籍出版社 1994 年版,第 1

In the algorithm, the cell averages in the resulting slightly non-uniform grid is updated by employing a finite volume method based on a wave- propagation formulation, which is very

Review a high-resolution wave propagation method for solving hyperbolic problems on mapped grids (which is basic integration scheme implemented in CLAWPACK) Describe

In the size estimate problem studied in [FLVW], the essential tool is a three-region inequality which is obtained by applying the Carleman estimate for the second order

Robinson Crusoe is an Englishman from the 1) t_______ of York in the seventeenth century, the youngest son of a merchant of German origin. This trip is financially successful,

fostering independent application of reading strategies Strategy 7: Provide opportunities for students to track, reflect on, and share their learning progress (destination). •