LUCRARE DE DOCTORAT - ERASMUS Pulse...tioane. Stocând informa¸tia pierduta˘ în forma˘ de...

203
Politehnica University of Bucharest Faculty of Automatic Control and Computers Department of Automatic Control and Systems Engineering LUCRARE DE DOCTORAT Modelarea terenurilor multivariate folosind wavelets pentru grafuri: reprezentare ¸ si filtrare multirezolu¸ tie Graph Wavelet-based Multi-variate Terrain Modeling: Multiresolution Representation and Filtering Teodor-Petre Cioac˘ a Advisor Prof. dr. ing. Bogdan Dumitrescu Bucharest, 2016 Comisia de doctorat Pre¸ sedinte Prof. Dr. Ing. Adina Magda Florea de la Univ. Politehnica Bucure¸ sti Conduc˘ ator de doctorat Prof. Dr. Ing. Bogdan Dumitrescu de la Univ. Politehnica Bucure¸ sti Referent Prof. Dr. Dana Petcu de la Univ. de Vest Timi¸ soara Referent Prof. Dr. Daniela Ro¸ sca de la Univ. Tehnic˘ a Cluj-Napoca Referent Prof. Dr. Ing. Dan ¸ Stef˘ anoiu de la Univ. Politehnica Bucure¸ sti i

Transcript of LUCRARE DE DOCTORAT - ERASMUS Pulse...tioane. Stocând informa¸tia pierduta˘ în forma˘ de...

Politehnica University of Bucharest

Faculty of Automatic Control and Computers

Department of Automatic Control and Systems Engineering

LUCRARE DE DOCTORAT

Modelarea terenurilor multivariate folosindwavelets pentru grafuri: reprezentare si filtrare

multirezolutie

Graph Wavelet-based Multi-variate TerrainModeling: Multiresolution Representation and

Filtering

Teodor-Petre Cioaca

AdvisorProf. dr. ing. Bogdan Dumitrescu

Bucharest, 2016

Comisia de doctorat

Presedinte Prof. Dr. Ing. Adina Magda Florea de la Univ. Politehnica BucurestiConducator de doctorat Prof. Dr. Ing. Bogdan Dumitrescu de la Univ. Politehnica Bucuresti

Referent Prof. Dr. Dana Petcu de la Univ. de Vest TimisoaraReferent Prof. Dr. Daniela Rosca de la Univ. Tehnica Cluj-NapocaReferent Prof. Dr. Ing. Dan Stefanoiu de la Univ. Politehnica Bucuresti

i

We make our purpose.— Carl Sagan

To everyone, everywhere. . .

AcknowledgementsFirst and foremost, I would like to thank Prof. Dr. Bogdan Dumitrescu and Lect.Dr. Mihai-Sorin Stupariu for their patience, understanding, support and invaluablesuggestions that have made this work possible.Many thanks go to my professors or colleagues from University of Bucharest and ÉcolePolytechnique Fédérale de Lausanne that have made significant contributions to thejoint research programme, directly making this entire thesis possible.For having introduced me to modern, state of the art Computer Graphics chapters, Iam thankful to Prof. Dr. Lars Linsen and to his and my colleagues at the Jacobs Univer-sity Bremen. Many thanks to Jad Nohra and Mihai Frâncu for the fruitful discussionsand feedback concerning the nonlinear mean shift algorithm and other Geometry orNumerical Methods related discussions. To Horea Caramizaru, Dr. Daniel Cernea andProf. Dr. Pablo Kaluza I am profoundly grateful for their support throughout severalstages of my post-graduate life.For having given more than the expected return, I would like to thank my family andfriends, whom I have too often unwillingly neglected. I thank them and apologize fornot realizing the sheer effort required to finish a work of this caliber.Last, but not least, I would like to thank everyone, every sentient being in this knownUniverse for simply enriching it ever so slightly.

This work has been funded through the Swiss Enlargement Contribution Programmeby the Swiss National Science Foundation (SNSF) and the Executive Agency for HigherEducation, Research, Development and Innovation Funding (UEFISCDI), grant num-bers IZERZO_1421681/1 and 22 RO-CH/RSRP.

Bucharest, 1 June 2016 T. C.

i

AbstractThe goal of this work is to provide a versatile and rigorous multiresolution filter-ing mechanism for multivariate data having an underlying manifold structure. Forcommon mesh models there are numerous possible solutions to choose from, butthese do not simulatenously address the problems of approximation quality, featurepreservation and downsampling artifacts reduction. Our solution balances out thecompromises of previous methods by treating the data as a multivariate signal andapplying an invertible critically sampled lifting scheme.The framework introduced in this thesis extends a lifting scheme design, originallyproposed for univariate graph signals, to multivariate mesh data. Our novel algorithmpartitions the signal based on a heuristical ordering according to feature saliency.Opposed to normal graph downsampling, our method ensures that the manifoldproperties of the graph are preserved. Discrete Laplacian-like operators are then usedto exploit local data redundancy via the dual lifting operation. A subsequent, primallifting operation is responsible for reducing the downsampling artifacts. By storingthe missing information as detail or difference vectors, we obtain a reversible processthat allows for multiresolution editing and filtering.We describe visual and numerical experiments using mesh data from public reposito-ries, as well as terrain data derived from LiDAR scans. Our results confirm an up to 40%increase of the approximation quality measured by evaluating local distance errorsand root mean square errors (RMSE). We also offer a detailed analysis of 7 differentscale-dependent feature descriptor functions that can be used to further reduce theapproximation error for model simplification and level of detail generation.Our second, innovative contribution is the nonlinear mean shift algorithm implemen-tation which improves upon other literature solutions both in terms of performanceand Mathematical accuracy. We then complement this algorithm with the waveletmultiresolution framework to achieve plausible filtered results by drastically reducingthe size of the problem. We thus advocate the use of this multiresolution filtering toolfor scenarios where data sets consisting of several millions of points need processing.

Key words: wavelets, descriptors, scale, graphs, feature preservation, filtering, meanshift, lifting scheme, multivariate data

iii

RezumatScopul acestei lucrari este de a elabora un mecanism de filtrare riguros si flexibilpentru prelucrarea datelor multivariate acompaniate de o structura de variate difer-entiabila. Pentru modelele grafice obisnuite de tip retea (mesh), exista numeroasesolutii compatibile, dar care nu satisfac, simultan, cerintele de a produce erori deaproximare reduse, de a pastra caracteristicile relevante si de a diminua efectele de de-dublare. Solutia pe care o propunem elimina compromisurile metodelor precedentetratând datele de intrare ca pe un semnal multivariat si aplicând o schema "lifting"inversabila cu esantionare critica.

Cadrul de lucru introdus in aceasta teza extinde un design al schemei lifting, initialpropus in contextul semnalelor de tip graf univariat, pentru prelucrarea suprafetelorretea multivariate. Algoritmul nostru partitioneaza semnalul folosind o sortare eu-ristica bazata pe masurarea caracteristicilor relevante ale retelei. Spre deosebire desimplificarea obisnuita a grafurilor, metoda noastra asigura pastrarea proprietatilorgeometrice ale modelului. Folosind operatori de tip Laplace, redundanta locala esteexploatata optim în cadrul fazei de "lifting" dual. Urmatoarea faza, cea de "lifting"primar este folosita pentru reducerea reziduurilor rezultate în urma pierderii de esan-tioane. Stocând informatia pierduta în forma de diferente vectoriale, obtinem unproces reversibil care permite editarea si filtrarea pe niveluri de rezolutie.

De asemenea, descriem o serie de experimente vizuale si numerice efectuate pe dateobtinute din surse publice, dar si pe date derivate prin scanare LiDAR. Rezultatelesimularilor confirma o îmbunatatire de aproape 40% a preciziei de aproximare, ma-surata prin evaluarea unei erori locale de distanta si a errorii medii patrate (RMSE).În vederea reducerii erorii de aproximare, prezentam 7 functii descriptoare de carac-teristici dependente de scara, utile pentru ghidarea algoritmilor de simplificare si degenerare de rezolutii intermediare.

O alta contributie din lucrarea de fata consta în elaborarea si implementarea unui al-goritm mean shift neliniar, care prezinta performante superioare si are un fundamentmatematic mai riguros comparativ cu alte implementari din literatura de specialitate.Acest algoritm de filtrare poate fi complementat de metoda de filtrare si editare mul-tirezolutie dezvoltata deoarece aceasta din urma este cruciala în micsorarea setuluide date de intrare. Asadar, recomandam folosirea acestor unelte de prelucrare multi-rezolutie în scenariile unde este necesara procesarea unor multimi de milioane de

v

Acknowledgements

puncte sau chiar mai mari.

Cuvinte cheie: wavelets, descriptori, scara, grafuri, pastrarea carcatersticilor, filtrare,mean shift, schema lifting, date multivariate

vi

ContentsAcknowledgements i

Abstract (Romanian/English) iii

List of figures xi

List of tables xvii

List of algorithms xix

List of symbols xxi

Introduction 1

1 Background and related work 71.1 Hierarchical approximation . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.1.1 Point clouds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.1.2 Mesh and graph models . . . . . . . . . . . . . . . . . . . . . . . . 13

1.2 Wavelet multiresolution construction . . . . . . . . . . . . . . . . . . . . 201.2.1 Point clouds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201.2.2 Mesh and graph signals . . . . . . . . . . . . . . . . . . . . . . . . 23

2 Graph-based wavelets 392.1 Classic wavelet analysis and synthesis . . . . . . . . . . . . . . . . . . . . 40

2.1.1 Problem formulation . . . . . . . . . . . . . . . . . . . . . . . . . . 402.1.2 Second generation wavelets . . . . . . . . . . . . . . . . . . . . . . 41

2.2 Wavelets on graph data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452.2.1 Extending the lifting scheme in a manifold or graph contexts . . 452.2.2 Graph-based lifting scheme operations . . . . . . . . . . . . . . . 472.2.3 Algorithm overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

2.3 Numerical and visual experiments . . . . . . . . . . . . . . . . . . . . . . 632.3.1 Root mean squared error measurements . . . . . . . . . . . . . . 642.3.2 Feature selectivity and robustness to noise . . . . . . . . . . . . . 662.3.3 Discussion and conclusions . . . . . . . . . . . . . . . . . . . . . . 73

vii

Contents

3 Feature preserving multiresolution analysis 753.1 Incremental simplification versus wavelet analysis . . . . . . . . . . . . 75

3.2 Heuristic driven lazy wavelet partitioning . . . . . . . . . . . . . . . . . . 76

3.2.1 Scale-dependent feature descriptors . . . . . . . . . . . . . . . . 76

3.2.2 Geometric variability dense scale-dependent descriptors . . . . 79

3.2.3 Model thinning through cascaded partitioning . . . . . . . . . . 88

3.2.4 Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

4 Combined wavelet and mean shift filtering 1014.1 A generic approach to wavelet-based filtering . . . . . . . . . . . . . . . 101

4.2 Mean shift filtering on curved surfaces . . . . . . . . . . . . . . . . . . . 102

4.2.1 Background and related works . . . . . . . . . . . . . . . . . . . . 102

4.2.2 Our contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

4.2.3 Continuous and discrete differential geometry elements . . . . . 105

4.2.4 Exp map: straightest geodesics . . . . . . . . . . . . . . . . . . . . 109

4.2.5 Log map: geodesic polar coordinates . . . . . . . . . . . . . . . . 111

4.2.6 Mean shift algorithms . . . . . . . . . . . . . . . . . . . . . . . . . 117

4.2.7 Blurring mean shift . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

4.3 Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

4.3.1 Subjective evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . 123

4.3.2 Performance tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

4.3.3 Denoising experiment . . . . . . . . . . . . . . . . . . . . . . . . . 125

5 Experiments and discussion 1355.1 Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

5.2 Visual and numerical experiments . . . . . . . . . . . . . . . . . . . . . . 136

6 Works and contribution 1436.1 Publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

6.2 Detailed Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

6.3 Original End Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

6.3.1 Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

6.3.2 Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

6.3.3 Software products . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

7 Conclusions 1497.1 Concluding remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

7.2 Future work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

A Method selection based on input data and processing goals 153

B Discrete exponential map 155

viii

Contents

C Discrete logarithm map 159C.1 Discrete inverse exponential map . . . . . . . . . . . . . . . . . . . . . . 159C.2 Discrete geodesic polar coordinates . . . . . . . . . . . . . . . . . . . . . 160

Bibliography 177

ix

List of Figures

1.1 Covariance analysis on a local Np neighborhood. . . . . . . . . . . . . . 9

1.2 Multiresolution representation (3 levels of detail) of the Bimba model(visionair portal). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

1.3 Candidate edge selection. Top row: a normal vertex is removed - theblue edge is the best candidate according to the aspect ratio criterion.Bottom row: the two red edges are incident at the removed vertex - theirendpoints determine the candidate edge to be used. . . . . . . . . . . . 16

1.4 Topological operations: the (vi ,vk is collapsed and vi is removed; con-versely, vk can be split and the degenerate triangles sharing the collapsededge become once more part of the one-ring neighborhood of vi . . . . 17

1.5 Geometric wavelet construction as illustrated in [Chen and Maggioni,2010]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

1.6 Applying the analysis filter can be viewed as a reverse subdivision pro-cess. [Lounsbery, 1994] uses polyhedral subdivision to ensure C 0 conti-nuity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

1.7 Prediction scheme from [Bertram, 2007]: a) inner vertex predictionstencil, b) boundary vertex prediction stencil. . . . . . . . . . . . . . . . 33

2.1 The lifting scheme diagram: Splitting (equation (2.13)) is followed by pre-diction via equation (2.14) and then by the updating of the low resolutionoutput via equation (2.15). . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

2.2 Predicting the odd samples (orange dots) from their even neighbors(green dots) produces the detail vectors that further smooth the down-sampled signal (magenta) during the update phase. . . . . . . . . . . . 43

2.3 Computation of the bending energy for a one ring neighbourhood ofa vi vertex. For each triangle, its corresponding energy is equal to thevolume of the

[(vi ,v j ,vk ), (pi ,p j ,pk )

]truncated prism. . . . . . . . . . . 51

2.4 The cost of removing vi with respect to its one-ring neighbours. Eachv j ∈ N 1

v (vi ) contributes the sum of distances from vi to the supportplanes of each incident face at v j . . . . . . . . . . . . . . . . . . . . . . . 52

xi

List of Figures

2.5 Illegal collapse situations where the highlighted faces are involved in abreaching of one or several criteria of the can_triangulate functionfrom algorithm 2. In case a), the collapse "welds" together two faces,back-to-back, introducing an edge common to more than two triangles.In situation b), the highlighted face is "flipped" since the normal unitvectors before and after the collapse point in opposite directions. "Cut-ting a corner" is the operation depicted in situation c) where the cornervertex is no longer adjacent to at least two edges. . . . . . . . . . . . . . 54

2.6 The elements of the one-ring neighborhood of vi required to calculatethe cotangent Laplacian weights. . . . . . . . . . . . . . . . . . . . . . . . 57

2.7 An overview of our hybrid algorithm for downsampling an input set. . 62

2.8 Smoky Mountains fragment. Top row, left to right: shape and attributeevolution at levels 0, 12 and 24 using the UG filters. Bottom row: com-parative charts for the RMSE evolution across 12 analysis sequences.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

2.9 High-density Carpathian Mountains fragment. Top row, left to right:shape and attribute evolution at levels 0, 12 and 24 the UG filters. Bot-tom row: comparative charts for the RMSE evolution across 12 analysissequences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

2.10 Low-density Carpathian Mountains fragment. Top row, left to right:shape and attribute evolution at levels 0, 12 and 24 the UG filters. Bot-tom row: comparative charts for the RMSE evolution across 12 analysissequences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

2.11 Preservation of salient features after 8 analysis steps. Top image: high-density, high-detail input (1.6M faces), middle image (160K triangles):the combined QEM and thin plate energy cost, bottom image (158Ktriangles): the graph colouring strategy used in [Wagner et al., 2005] and[Narang and Ortega, 2009]. . . . . . . . . . . . . . . . . . . . . . . . . . . 67

2.12 The Dragon mesh after 8 analysis steps. Top row: high resolution model.Middle row: coarse approximation with the cost-based partitioning en-abled. Bottom row: coarse approximation with naïve vertex partitioning.The rendering is performed using a heat color mapping of the vertexcost values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

2.13 The Ramesses model after 8 analysis steps. Top row: high resolutionmodel. Middle row: coarse approximation with the cost-based parti-tioning enabled. Bottom row: coarse approximation with naïve vertexpartitioning. The rendering is performed using a heat color mapping ofthe vertex cost values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

xii

List of Figures

2.14 Colour coded geometry weighing methods. On each row, from left toright: the original mesh, the mesh with artificial Gaussian noise andthe mesh with vegetation height above ground added to the geometriccoordinates. The same heat map legend of the [0,1] interval shown infigure 2.14c is used for all three cost heuristics. A prior normalization isrequired to map the cost values to the [0,1] range. . . . . . . . . . . . . . 71

2.15 RMSE comparative charts of the conformal factor (CF, CFN, CFV), Lapla-cian cost (LC, LCN, LCV) and thin plate energy (TPE, TPEN, TPEV). . . 72

3.1 A window neighbourhood W nv (v,r ) with n = 2. The blue vertices are

inside the window, while the orange vertices are outside the spherecentered at v and of radius r . The red vertex, although inside this sphere,is more than 2 topological rings away from v. . . . . . . . . . . . . . . . 77

3.2 Normal vote cast from v to vi . . . . . . . . . . . . . . . . . . . . . . . . . 81

3.3 Dragon model. The left column represents the high resolution inputand the right column depicts the coarsest approximation. . . . . . . . . 92

3.4 Ramesses model. The left column represents the high resolution inputand the right column depicts the coarsest approximation. . . . . . . . . 93

3.5 Smoky model. The left column represents the high resolution input andthe right column depicts the coarsest approximation. . . . . . . . . . . 94

3.6 Fundata model. The left column represents the high resolution inputand the right column depicts the coarsest approximation. . . . . . . . . 95

3.7 Average plane distance evolution for the Dragon data set. The hori-zontal axis corresponds to the used descriptor, while the vertical axiscorresponds to the averaged local distance. All intermediate errors areplotted, yielding evolution curves for a better method comparison. . . 96

3.8 Average plane distance evolution for the noise affected Dragon data set.The horizontal and vertical axes have the same meaning as in figure 3.7. 96

3.9 Average plane distance evolution for the Ramesses data set. The mean-ing of each axis is the same as in figure 3.7. . . . . . . . . . . . . . . . . . 97

3.10 Average local distance evolution for the noise affected Ramesses dataset. The horizontal and vertical axes have the same meaning as in figure3.7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

3.11 Average local distance evolution for the Smoky data set. The horizontaland vertical axes have the same meaning as in figure 3.7. . . . . . . . . 98

3.12 Average local distance evolution for the noise affected Smoky data set.The horizontal and vertical axes have the same meaning as in figure 3.7. 98

3.13 Average local distance evolution for the Carpathians set. The horizontaland vertical axes have the same meaning as in figure 3.7. . . . . . . . . 99

3.14 Average local distance evolution for the noise affected Carpathians set.The horizontal and vertical axes have the same meaning as in figure 3.7. 99

xiii

List of Figures

4.1 Multiresolution analysis cascade. Upper row: low frequency approxima-tion. Bottom row: high frequency detail component sets. . . . . . . . . 102

4.2 The representation of the curve acceleration γ(s) in the local framedefined by the surface normal, n(s), the curve tangent vector, γ(s) andthe binormal vector, b(s). . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

4.3 Extending a straightest geodesic as explained in algorithm 8. Left: theextended curve intersects a mesh vertex. Right: the extended curveintersects an edge at an interior point. . . . . . . . . . . . . . . . . . . . . 110

4.4 The weighted Riemannian center of mass and tangent plane identity(4.35) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

4.5 Artificial terrain patch. The left column represents the high resolutioninput and the right column depicts the coarsest approximation. . . . . 127

4.6 Smoky Moutains terrain fragment. The left column represents the highresolution input and the right column depicts the coarsest approximation.128

4.7 Carpathian Moutains (Fundata region) terrain fragment. The left col-umn represents the high resolution input and the right column depictsthe coarsest approximation. . . . . . . . . . . . . . . . . . . . . . . . . . . 129

4.8 Carpathian Moutains (Iezer subrange) terrain fragment. The left columnrepresents the high resolution input and the right column depicts thecoarsest approximation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

4.9 The original and filtered data sets described in table 4.2. Columns, fromleft to right: original set, mean shift filtered set and blurring mean shiftfiltered set. Rows, from top to bottom: Smoky Mountains, FundataRegion and Iezer Mountain Range. . . . . . . . . . . . . . . . . . . . . . . 131

4.10 Denoising an artificially altered synthetic terrain patch. Top row, left toright: the initial noisy dataset, reconstructed set by detail suppression,reconstruction using Riemannian mean shift and suppressed details.Bottom row, left to right: reconstruction using blurring mean shift andno detail suppression, reconstructed set using blurring mean shift anddetail suppression. Reconstruction proceeds as described in algorithm 7.132

4.11 Curvature filtering using algorithm 7 with αk = 0. Left to right: initial,mean shift and blurring mean shift filtered color-coded absolute curva-ture values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

4.12 Curvature filtering using algorithm 7. Left column: original curvaturecolor map. Combined wavelet filtering (algorithm 7) using mean shift(top row) blurring mean shift (bottom row). . . . . . . . . . . . . . . . . 133

5.1 Artificial terrain patch after 8 consecutive analysis passes. Left-middleimage: the high resolution model. Top row: the low resolution ap-proximations using smoothing update weights. Bottom row: the lowresolution approximations using mean-preserving update weights. . . 137

xiv

List of Figures

5.2 Average detail vector magnitude evolution (8 levels) for the artificialterrain patch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

5.3 Smoky Mountains fragment after 12 consecutive analysis passes. Left-middle image: the high resolution model. Top row: the low resolutionapproximations using smoothing update weights. Bottom row: the lowresolution approximations using mean-preserving update weights. . . 138

5.4 Average detail vector magnitude evolution (12 levels) for the SmokyMountains fragment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

5.5 Fundata region fragment after 12 consecutive analysis passes. Left-middle image: the high resolution model. Top row: the low resolutionapproximations using smoothing update weights. Bottom row: the lowresolution approximations using mean-preserving update weights. . . 139

5.6 Average detail vector magnitude evolution (12 levels) for the Fundataregion fragment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

5.7 Iezer Mountains subrange after 12 consecutive analysis passes. Left-middle image: the high resolution model. Top row: the low resolutionapproximations using smoothing update weights. Bottom row: the lowresolution approximations using mean-preserving update weights. . . 140

5.8 Average detail vector magnitude evolution (12 levels) for the Iezer Moun-tains subrange. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

A.1 Flowchart for selecting the appropriate downsampling method basedon the input set and its processing requirements. . . . . . . . . . . . . . 154

B.1 The shortest and straightest path joining the p,q vertices of the p,s,q,tsquare passes through its center, r (left). Shifting r along the perpen-dicular line to this support plane produces a spherical vertex for whichp− r−q is not locally a shortest path, but is straight. . . . . . . . . . . . 156

B.2 Left and right angle measurement at a point r of a curve γ joining pointsp and q. Left: r is a vertex. Middle: r is an edge interior point. Right: r isa face interior point. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157

C.1 Approximating logp(q) = up,q when logp(r) = up,r and logr(q) = ur,q areknown. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

C.2 The estimation process of U (qi ) :=Ui from two computed or fixed neigh-bors in the ∆(qi ,q j ,qk ) triangle. The qi q j p′qk quadrilater is convex,hence U (qi ) = ‖p′−qi‖. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161

xv

List of Tables4.1 Algorithm parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1254.2 Algorithm benchmarks for the sets depicted in figure 4.9 . . . . . . . . . 125

xvii

List of Algorithms1 Thin plate energy computation . . . . . . . . . . . . . . . . . . . . . . . . 522 Vertex labeling and remeshing algorithm . . . . . . . . . . . . . . . . . . 533 Mixed Voronoi area computation routine. See figure 2.6 for a graphical

identification of geometric entities below. . . . . . . . . . . . . . . . . . 564 Downsampling algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 615 Descriptor-driven lazy wavelet partitioning . . . . . . . . . . . . . . . . 786 Descriptor-driven thinning . . . . . . . . . . . . . . . . . . . . . . . . . . 887 Hybrid wavelet-based filtering strategy . . . . . . . . . . . . . . . . . . . 1028 Straightest geodesic construction . . . . . . . . . . . . . . . . . . . . . . 1119 Discrete geodesic polar coordinates . . . . . . . . . . . . . . . . . . . . . 11410 Riemannian mean shift . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12211 Blurring Riemannian mean shift . . . . . . . . . . . . . . . . . . . . . . . 123

xix

List of symbols

Symbol Name or descriptionp (column) vectore unit vectorQ matrix∆(vi ,v j ,vk ) triangle consisting of vertices vi ,v j and vk

κ1,κ2 principal curvature operators of a surfaceTpM tangent plane to a manifold M at a point pexpp(q) : TpM → M exponential map of point q relative to point plogp(q) : M → TpM logarithmic map of point q relative to point pN n

v (v) n-ring neighborhood, i.e. the set of all vertices having a maxi-mum level of n in a bradth-first traversal originating at v

Pv (v,r ) surface patch, i.e. the set of all vertices of a surfaces containedwithin a sphere centered at v of radius r

W nv (v,r ) local window, defined as the intersection between an n-ring

neighborhood and a surface patch centered at vD(v,n,r ) : V ×N×R+ →R+

descriptor function

apd average plane distanceRMSE root mean squared errorQ(v) quadric error matrix associated to a vertex vL2(R) space of square integrable functionsV j function space approximation of L2(R) at scale or level jφ j ,k the k-th scaling basis function at level jψ j ,k the k-th wavelet basis function at level jΦ j row vector of scaling functions at level jΨ j row vector of wavelet functions at level js j scaling coefficents column vector at level jw j wavelet coefficients or difference vector at level js j ,o odd scaling coefficients at level js j ,e even scaling coefficients at level jP j prediction filter matrix at level jU j update filter matrix at level j

xxi

List of symbols

ς j vector of scaling function integrals at level jfi : M →R scalar-valued function defined on a manifoldVel set of even mesh or graph vertices at level lVol set of odd mesh or graph vertices at level lvl mesh or graph vertex at level lsl ,vl vector-valued scaling coefficient associated to vertex vl

wl ,wl vector-valued wavelet coefficient associated to vertex vl

sl ,Vel+1matrix of scaling coefficients corresponding to the Vel+1 vertexset

wl ,Vol+1matrix of wavelet coefficients corresponding to the Vol+1 ver-tex set

hs spatial/geometric domain bandwidth parameterhr range/attribute domaina bandwidth paramtermhs ,hr ,G (x) non-linear mean shift vector

xxii

Introduction

The purpose of this work is to adapt and generalize a graph-wavelet multiresolutionframework to multivariate data consisting of both geometric primitives and seman-tic information. The most common examples are the ubiquitous mesh models withtexture and color information used in the Computer Graphics and associated fields,or the triangular irregular network representations of terrain fragments used in theGeographic Information Systems field. The solution proposed in this thesis relieson a spatial domain wavelet lifting scheme coupled with a novel feature-preservingheuristic strategy. By the end of this work we will describe a hybrid filtering mecha-nism, designed to accommodate the geometric structure with any type of additionalsemantic information.

Background and motivation

Signal analysis is, perhaps, the most obvious means living beans have for understand-ing and interacting with their surrounding environment and even the perceivableuniverse. The increasing popularity of electronic sensing devices supports this obser-vation and is naturally justified by man’s need to have a better understanding of theenvironment through objective measurement. The tasks of interpreting the observeddata is often not trivial due to a series of factors that may surpass the capacity of ourminds of finding patterns. This can be due to the presence of misleading informationin the form of noise or at a resolution that obfuscates the features of interest. Sincealmost any signal is just a particular type of data, specialized algorithms and toolshave been developed for lifting the majority of these limitations. The family of toolsthat will be the focus of our work is multiresolution analysis, which is one of themost efficient solutions adopted in various fields ranging from computer graphicsand image processing to sound analysis, geographical information systems and evenmotion capture analysis.

One of the most widespread and important measurement device families is that oflaser scanners that transform the features of their surroundings into a set of coordinatepoints containing diverse information, both geometric and attribute (e.g. color, depth,

1

Introduction

surface temperature, etc.). The applicability of these scanning techniques is extensive.One of the first large scale projects dedicated to the conservation, restoration anddigitization of sculptures Digital Michelangelo Project has been a groundbreakingendeavor that has helped in advancing both the technical capabilities of the scannersas well as of the algorithms for processing the data. The also pioneering scanning workand efforts behind the Stanford 3D Scanning Repository are also a well establishedreference for benchmarking algorithm performance for almost any kind of ComputerGraphics methods developed since the end of the previous century to date. Other,more recent efforts include the Robotic 3D Scan Repository maintained by Prof. An-dreas Nücther of Jacobs University Bremen, the Cyberware Head & Face 3D ScannerSamples that add geometric connectivity to the raw point coordinates or the similarbut more diverse Large Geometric Models Archive maintained by Prof. Greg Turk ofGeorgia Institute of Technology. A more specialized category of applications involvedigital terrain models that play a central role in modern Geographical InformationSystems, Ecological and Environmental Studies or even in Virtual Reality and DigitalEntertainment Applications. A very important reference for data formats, applicationsand software tools is the Virtual Terrain Project. For the scope of this work and of theapplicability of the algorithms described in it a particular data source is of specificinterest: Light Detection and Raging(abbreviated as LiDAR). Large scale high densityscans of geographical regions are typically obtained using Aerial LiDAR. Opposedto the historically more spread Digital Elevation Models, which are simply regulargrids containing terrain height values, LiDAR is more precise and contains diverseinformation of the terrain, buildings and vegetation elements contained within aspecific region. The source of this accuracy is the high density of points per squaremeter modern LiDAR scanners can produce. However, compared to other formatsthat predate it, LiDAR scans lack any structure, being simply point cloud sets. Due tothe information richness, the format is also suffering from increased redundancy andis seldom useful to use the data without preprocessing it filter out the clutter, noise oreven some irrelevant feature points such as vegetation (if the user is only interested inthe geomorphology of the terrain, for example).

Efficient solutions for building coarser representations out of much denser sets havebeen developed and, to this day still, represent a hot research topic. The commongoal of both simplification and level of detail construction algorithms is to sift out theprominent components of a 3D model such that by retaining only important featuresan approximation error threshold is not exceeded (e.g. the Hausdorff distance orview-dependent error heuristics). The pioneering work of [Hoppe, 1996] resulted thepopular progressive meshes algorithm, which became the inspiration of numerousother works on this subject. The quadric error metric heuristic simplification methoddeveloped by [Garland and Heckbert, 1997] was the next major improvement overHoppe’s technique. Garland and Heckbert introduced a guided edge collapse incre-

2

mental simplification algorithm that inherently measured the geometric distortionthe removal of a vertex pair could incur. The appealing algebraic properties of thequadric error matrix representation allow accumulating and retaining all the planes ofthe faces that are removed in the process and to associate this information with eachvertex in the model. The edge collapse operation, which is both intuitive and straight-forward to understand and implement, is accompanied by only a matrix addition.Due to both their simplicity and efficacy, the combined progressive mesh and quadricerror metric algorithms have become a staple of level of detail applications and arestill a relevant alternative to perhaps more modern and more precise algorithms.

Incremental simplification is, given the previous observations, an attractive solutionfor the level of detail problem. Since the collapse operations that drive the simplifica-tion replace a pair of vertices with a new, single vertex such that the local geometricerror is minimized, the detail loss is typically much reduced. A similar artifact preven-tion mechanism is exhibited in another, more general solution for the level of detaildecomposition problem. The wavelet-based multiresolution analysis [Mallat, 1989]provides a general framework for analyzing sampled signals. The original applicationsof this theory involved one- and two-dimensional signal decomposition for filteringand compression purposes. At about the same time as the developments of [Hoppe,1996] and [Garland and Heckbert, 1997], the potential of extending wavelet analysis tomesh models was addressed by [Eck et al., 1995], [Lounsbery et al., 1997]. After the in-troduction of second generation wavelets by the means of the lifting scheme [Sweldens,1996], it has become even easier to apply wavelet transforms to mesh domains. [Zorinet al., 1997] have developed a fully functional multiresolution editing framework,while [Guskov et al., 1999] have introduced common filtering techniques that werefaithfully resembling the ones in the classic signal processing theory. Wavelet-basedmodeling of 3D models has thus a series of immediate advantages over the naïve levelof detail approach developed by Hoppe: it is possible to compress the data after usingthe same techinques applicable to one- and two-dimensional signal compression, butit is also possible to both filter and manipulate the geometry at individual levels ofdetail without having to manually cater for those features that are not representativefor a specific level. Additionally, while the quadric error metric heuristically com-pensates for the lost details, the wavelet lifting scheme design automatically handlesanti-aliasing through its constituent sample update mechanism. It is neverthelessworth noting that using a wavelet transform is not the only possibility for editingmodels at different resolutions. Such a solution was provided by [Kobbelt et al., 1998].The authors utilized the idea of storing information in local frames, a role similar tothat of wavelet or detail coefficients from lifting scheme constructions.

Terrain mesh models, also dubbed triangular irregular networks in geographic infor-mation systems literature, automatically lend themselves to the same treatment as

3

Introduction

any other mesh. However, since a terrain model is a discretization of a Monge patch,specialized methods that can further take advantage of this particularity have alsobeen developed. [Wu and Amaratunga, 2003] have built a wavelet triangular networkterrain representation by simplifying first the input and using a subdivision operatorto add details back. The result is also a progressive mesh that has the advantage of stor-ing only one detail coordinate, the height difference between the subdivision-basedestimates and the actual position on the initial terrain model. A view-dependentmultiresolution terrain editing method was later developed by [Atlan and Garland,2006]. The authors combined a quadtree structure with Haar wavelet representationof the height field to allow for interactive manipulation and rendering of large terrainmodels.

Given the topological similarities between a terrain mesh and a planar graph, it isuseful examining the research efforts dedicating to adapting multiresolution analysisto graph domains. One of the first works employing a graph wavelet method waspresented by [Crovella and Kolaczyk, 2003] for the purpose of road traffic networksanalysis. [Wagner et al., 2006] have conceived another solution through a spatial do-main construction for the representation of a network of routers, while [Rustamov andGuibas, 2013] have introduced a deep learning lifting scheme construction. Spectraldomain wavelet constructions such as those proposed by [Coifman and Maggioni,2006] and [Hammond et al., 2011] expand on the directions identified by [Taubin,2000] where the spectrum of the graph Laplacian is used to define a basis for decom-posing graph signals. It is thus clear that opting for a spectral domain graph waveletdefinition is equivalent to solving sparse eigenvector and eigenvalue problems, which,even for medium sized models, can lead to unacceptable performance compared to amore direct, spatial domain approach.

Another interesting direction for extending the wavelet transform is for manifolddomains. Although similar to most graph approaches, manifold wavelet methodsare usually built considering both the topological and geometric properties of themodels. In this category of methods we mention the work of [Saracco et al., 2010]where a planar wavelet transform is extended to curved geometries via inverse projec-tion, somewhat similar to the method developed by [Rahman et al., 2005] where theexponential and logarithmic maps were used for a few common manifolds. Anotherrecent advance is the continuous and discrete Mexican hat wavelet transform of [Houand Qin, 2012] where a Fourier-like approach is used.

The central problems that are not addressed by the state of the art terrain multiresolu-tion modeling we identify and address throughout this work are:

• Feature-driven lazy wavelet partitioning. To our knowledge, no publicationsconsider the problem of partitioning irregular mesh networks such that mostly

4

redundant samples are chosen for removal during the wavelet analysis opera-tion.The graph method of [Wagner et al., 2006] addresses the problem of reduc-ing the approximation error, while the lifting scheme design used by [Martinez-Enriquez and Ortega, 2011] is concerned with minimizing the aliasing effects ofdownsampling.

• Invertible wavelet transform without point resampling. The method of [Wu andAmaratunga, 2003] does not guarantee that the majority of the high resolutionsamples are actually the ones read by the scanning tool. On the other hand, theapproach of [Atlan and Garland, 2006] does not work on irregular meshes sincethe wavelet transform is applied to height field images.

• Assessment of combined wavelet synthesis using modified data at a different scale.While some authors have proposed efficient multiresolution editing frameworks,there are no recorded works that explore the potential of using a graph waveletlifting scheme for similar purposes.

Goals and solutions

To respond to these core problems, we pursue to extend the spatial domain graphwavelet multiresolution analysis solutions that rely on Swelden’s lifting scheme. Whatmakes this choice more appropriate than others is the remarkable scalability to verylarge data sets. Opting for a spectral domain method would have also been a validchoice. The reason for ruling out this option, besides a sizable computational over-head, is the less intuitive feature separation that is not as intimately linked to thelocal geometry of the models. On the other hand, the detail vectors resulting fromthe lifting scheme are a direct indicator of features and can also provide a means ofgrouping features based on similarity or roughness. In addition, multiresolution edit-ing requires manipulating the so-called low frequency mesh signal, but the definingdetails are still stored in vector form (e.g. [Rong et al., 2008]). Thus, instead of usingthe Laplacian operator to build orthonormal bases for decomposing mesh signals, wetake advantage of its smoothing effects in the spatial domain ([Taubin, 2000]). Sincesmoothing is achieved by moving points in the direction of the Laplacian, it becomesnatural to use this operation for estimating the positions of vertices and store the dif-ference for signal reconstruction purposes. Selecting the samples for estimation mustalso be a process that takes into account the properties of the model. As previouslymentioned, for 1D or 2D signals on regular domains, this selection is straightforward.Our proposal for graph data is to drive this process using a feature saliency mea-surement that heuristically counteracts feature decay. With such a complementarymechanism, the critically sampled lifting scheme completely solves the problem ofperfect reconstruction (since it is invertible) without having to resample the original

5

Introduction

model. The final result is a multiresolution analysis algorithm capable of operatingon both terrain data, as well as on other, more complex meshes. The relevance of ourwork is best supported by a combined filtering strategy of synthesizing the signal froma filtered coarse representation. The advantage of this strategy is that more complexalgorithms, that are otherwise prohibitive for large input sets, can be applied to thereduced model, while the details corresponding to higher frequency bands can beselectively re-added.

The essential contributions of our work are enumerated below.

• Invertible graph-based lifting scheme: we use a Laplacian-like operator for pre-dicting so-called odd data points from surrounding even samples compensatingthe detail loss with a stabilizing, signal average preserving update filter.

• Scale-dependent feature descriptors: we introduce scalar-valued functions asso-ciated with point neighborhoods that measure the local data variability and canbe used to downsample any mesh models in an action that directly serves thepurpose of the lazy wavelet partitioning of the lifting scheme.

• Non-linear mean shift filtering: we propose a novel implementation of a popularfiltering and clustering algorithm used for image processing applications. Whileprevious extensions of this algorithm to multivariate mesh data have been pro-posed, all of them avoid computations on curved domains for which no trivialanalytical expressions for the Riemannian metric are given. Our algorithm isthus the first to be completely generic and having a more rigorous foundation inthe Differential Geometry of manifolds.

Thesis outline

We approach all the above mentioned problems in the remaining chapters of this work.First, we review in more detail the relevant literature and state of the art methods forimplementing multiresolution analysis frameworks on point cloud, mesh and graphsignals in chapter 1. In chapter 2 we describe a versatile lifting scheme design formultivariate graph and mesh data and address the problem of feature preservationdownsampling by incorporating a hybrid quadric error metric mechanism for identi-fying salient regions. Other, more complex feature descriptor mechanisms are alsoevaluated in chapter 3, accounting for both geometric and model scale information.In chapter 4 we showcase the filtering capabilities of our framework by employingan original, computationally efficient strategy that combines a more complex andnovel non-linear mean shift implementation with wavelet synthesis to accelerate thefiltering of large data sets.

6

1 Background and related work

A large corpus of research works reveals both the interest and importance of multireso-lution representation of geometric data. Although not complete from a mathematicalstand point, most of these works focus on one of the immediate results of the mul-tiresolution representation: hierarchical approximations. Given this necessary butnot sufficient characterization of the multiresolution philosophy, we first review thesolutions that became industry standards. We then proceed to analyze works thatexpanded or proposed new and alternative ways for achieving this goal. Drawinga parallel with wavelet-based multiresolution methods, we also review the seminalworks that shifted the interest in this new direction. Our literature review process isalso divided from a data representation point of view: methods that work directly onpoint clouds and methods that require a mesh or graph-like topology.

1.1 Hierarchical approximation

1.1.1 Point clouds

Problem statement

A point cloud is typically a term representing a set of 3D samples acquired either artifi-cially or by scanning objects that can be modeled as compact smooth two-manifoldsembedded in R3. Thus, given an input set P = p1, . . . ,pN ⊂ R3, the goal is to finda subset P ′ ⊂ R3 that approximates the manifold sampled by P within a specifieduser-selected quality measure. In general, P is assumed to have non-uniform densityand to contain a non-negligible noise component. Hence, the samples in P ′ need notbe among the elements of P as long as the characteristics of the approximated mani-fold are within the quality specifications. From this point of view, a multiresolution

7

Chapter 1. Background and related work

representation of P is a hierarchy

P = PL Â PL−1 Â . . .P0, (1.1)

where Pi , i ∈ 0,L are successive approximation sets that correspond to L differentlevels of resolution. In the most general interpretation, the intermediate sets Pi neednot be subsets of their higher resolution counterparts, only the cardinality needs to bestrictly decreasing, meaning |Pi+1| > |Pi | for each i ∈ 0,L−1.

The criterion driving the construction of the successive approximations is often adirect consequence of the set of qualities that need to be best preserved. In thissense, one can choose the samples in Pi such that the shape in a geometrical sense isclose to the original, highest resolution one, depicted by PL . Naturally, if resamplingis performed in order to cope with non-uniform densities, then the sample pointshave to lie as close as possible to the manifold surface they approximate, besidesthe previous shape preservation constraint. For practical reasons, it becomes moreefficient to work with samples from the original, high resolution set only. Wheneverpossible, avoiding resampling diminishes the actual space required for storing newsamples and the total memory overhead is given by the number of bits required tostore the level index associated with each point.

Incremental simplification approaches

In essence, incremental simplification methods can be used to construct approxi-mation sets by storing the intermediate results. A simple and efficient algorithm forincremental point cloud simplification with no resampling was detailed by [Linsen,2001]. The method for removing points is a heuristic-guided point cloud thinningalgorithm. Each point receives an importance score as a weighted sum of curvature,color variability and non-uniformity. All computations involved in the computation ofthis importance (or entropy) measure involve k−nearest neighbors queries. For eachp ∈ P , let p j ∈ P be one of its k−nearest neighbors with j ∈ 1,k. Rewriting p j = p+d j ,the equation for estimating the importance measure is written as

M(p) :=αd Md (p)+αp Mp (p)+αn Mn(p)+αu Mu(p)+αc Mc (p), (1.2)

with Md (p) :=k∑

j=1d 2

j , Mp (p) :=k∑

j=1(nᵀd j )2, Mn(p) :=

k∑j=1

‖n−n j‖22 ·d , Mu(p) :=

k∑j=1

(n+n j )ᵀd2j ,

Mc (p) :=k∑

j=1‖c−c j‖2

2d , where n and n j are the normals of p and p j respectively,

d j = ‖d j‖2, d = 1k

k∑j=1

d 2j and c and c j are the color attributes of p and p j respectively.

8

1.1. Hierarchical approximation

[Linsen, 2001] also proposes a multiresolution editing framework closely resembling alazy wavelet strategy. In this sense, using a smoothing operator introduced by [Guskovet al., 1999], each point p is estimated from its neighbors as a weighted sum:

p = d+k∑

j=1ω j p j , (1.3)

where ω j are smoothing weights and d is a so-called detail vector. To facilitate editing,but also to minimize the component magnitudes of d, [Linsen, 2001] resorts to storingthis vector in the local frame defined by the best fit plane of points p1, . . . ,pk . Thisway, uniformly transformed neighborhoods can be easily manipulated and lost detailcan be added back in a geometrically sound manner. The process is simple: if pis a removed point, then to guarantee perfect reconstruction, only d needs to bestored in a local frame, as described. This manner of separating fine from coarsefeatures through the use of a smoothing operator allows for multiresolution editingapplications, spectral-like filtering and even information compression (since themagnitudes of the d vectors are small, this kind of information is susceptible tothresholding and quantization techniques).

In the attempt to emphasize the importance of the manifold approximated by the Psample set, [Alexa et al., 2001] used a moving least squares method to approximatethe local geometry of the sampled surface. The essence of this method is to performsurface fitting by bivariate polynomials in a weighted least squares sense. The resultingimportance measure of a point p is given by the distance between this point andthe surface approximated by the rest of the points that fall within a neighborhooddomain of p. It is then possible to sort all points in P according to their redundancyscore (points with smaller distance to the surface are less important). The samepolynomial surface used in the local fitting can also be used to perform resampling,thus overcoming the effects of variable density.

A landmark work in the feature-based iterative simplification approaches is the survey-like paper of [Pauly et al., 2002]. The authors identify three simplification methodcategories: clustering, iterative simplification and particle simulation. One particular

Np

p

pi

r

p

pi

v1

v0 λ0

λ1

πp

Figure 1.1: Covariance analysis on a local Np neighborhood.

9

Chapter 1. Background and related work

technique the authors employ relies on eigenanalysis of the covariance matrix oflocal neighborhoods. For each p ∈ P , a local neighborhood Np is used to gatherall points p j ∈ P that satisfy ‖p−p j‖ < r (see figure 1.1 for a representation in thetwo dimensional case). Then, the associated covariance matrix is computed via thefollowing equation

Cp = [p1 − p . . . pk − p

] · [p1 − p . . . pk − p]ᵀ

, (1.4)

where p = 1k

k∑j=1

p j . Then, the eigenvalues and eigenvectors of Cp are ordered according

to the magnitude of the eigenvalues and satisfy the natural definition Cp ·vl =λl ·vl ,with l ∈ 0,1,2 and vl ∈ R3 and λl ≥ 0. The eigenanalysis of the covariance matrixprovides a useful geometric interpretation of the Np neighborhood. The v0 eigenvectorcorresponds to the direction of least variance and is the normal of the tangent planeπp at p to the sampled manifold. The v1 and v2 eigenvectors span πp. [Pauly et al.,2002] define a surface variation at each point p as

σk (p) = λ0

λ0 +λ1 +λ2, (1.5)

where k is the size of the Np neighborhood. If the region is planar, σk (p) = 0. Other-wise, if the region is perfectly spherical, σk (p) = 1/3.

Clustering is then made possible by adopting two strategies: region-growing andhierarchical splitting. Both strategies create a set of clusters, denoted by Ci . Eachcluster can then be replaced by a representative point sample, leading to a simplifiedapproximation, P ′. The region-growing based clustering strategies is straightforwardto implement. The algorithm starts with a seed sample, p0, and adds it to the firstcluster, C0. The neighbors of p0 are added to C0 until σk (p0) exceeds a threshold oruntil the size of the cluster reaches a specified amount. The rest of the points areadded into clusters in a similar manner. Hierarchical clustering, however, works ina top-down manner. This strategy implies starting with the whole point cloud as asingle cluster and splitting it based on its size and σk variation. Using a binary spacepartitioning tree, the resulting clusters are stored in the leaves of this tree.

Another approach also proposed by [Pauly et al., 2002] involves pairwise point con-traction, an operation akin to the edge collapse one, specific to 3D mesh simplificationmethods. This method sequentially selects a pair of nearest neighbors, p1 and p2, andreplaces them with a new point p. The selection of the pair of points to contract andthe construction of p is performed by adapting the quadric error metric introduced by[Garland and Heckbert, 1997] for the purpose of mesh simplification. The sampledsurface can be approximated by a series of tangent planes, while a deviation of apoint from this plane can provide an estimate for an error metric. For a mesh model,

10

1.1. Hierarchical approximation

as will be detailed in a following section, each vertex v is assigned a set of planesdetermined by the triangles adjacent at this vertex. The metric itself is computed as asquared distance function to this set of planes, which is easily achievable by storingthe parameters of this function in matrix form. Thus, each vertex stores a symmetric4×4 matrix, Qv. When two vertices, v1 and v2 are collapsed into v, the target vertex isdetermined as to minimize the error, i.e.

v = argminv

vᵀQvv, (1.6)

where Qv = Qv1 +Qv2 . For point clouds, [Pauly et al., 2002] propose using k-nearestneighbor queries due to the lack of manifold connectivity. Also, the quadric errormatrices that each point has to store are computed using an estimate of the normal ateach point (via eigenanalysis). Then the point decimation algorithm works similar tothe mesh-based one, with almost no alterations.

A framework based on multi-way kd-trees was developed by [Goswami et al., 2013].Their proposed design used entropy-based reduction and k-clustering in order tobuild level of detail representations for input sets in the order of hundreds of millions.The multi-way kd-tree contains the original point samples in its leaves, while theintermediate nodes benefit from a bottom-up level of detail construction. Severalclustering options are also discussed. Normal deviation clustering groups the cellsof a node grid together based on the angle between the point normals, a mechanismsimilar to the effects of grouping according to the surface variation index (equation(1.5)). Another suggested clustering option is based on entropy reduction. For a pointpi , the entropy measure is computed as

Entr opy(pi ) =∑j

1+ l evel (pi )

1+cos(θi , j ), (1.7)

where l evel (pi ) indicates the number of times pi has been merged and θi , j indicatesthe normal angle deviation between pi and a neighbor, p j within a common cell. Thenumber of times a point gets merged increases its level and also its correspondingentropy. A point is thus selected to be merged with its neighbors based on this entropymeasure. The lower the entropy, the less impact the extraction of a point has. As a finaloption, [Goswami et al., 2013] examine k-clustering in conjunction with a hashingmethod for seeding the centers of the k desired clusters. No matter the clusteringstrategy, the resulting multi-way kd-tree is stored in a compressed form, using LZOcompression and quantization of geometrical point coordinates.

11

Chapter 1. Background and related work

Resampling methods

[Pauly et al., 2002] suggest an adapted version of the algorithm proposed by [Turk,1992] for the resampling of polygonal meshes. The author proposed distributingparticle samples across the surface, concentrating more samples in regions of highercurvature. For point clouds, samples are distributed uniformly in the sense that moreparticles are used in regions of lower point density. The particles are then treated asphysical entities that interact with one another through a repulsion force of the form

Fi (p) = k(r −‖p−pi‖) · (p−pi ), (1.8)

where Fi (p) is the force exerted on particle p by a neighbor pi , k is a linear springconstant and r is a repulsion radius. To accelerate queries and force computations, a3D grid can be used instead of using naïve k-nearest neighbor queries. During thesimulation, particle movement is restricted to the tangent plane. This way, a point pwill be projected onto πp′ , where p′ is the closest point to p from the original pointcloud. Another interesting modification of equation (1.8) is to make the radius radaptive. One possibility is to scale r by the inverse of σk (p), ensuring particles tendto concentrate in regions where the curvature is higher.

[Moenning and Dodgson, 2004] proposed a simplification algorithm supporting uni-form and user-controlled feature-sensitive simplification. The output of their algo-rithm is produced by either sub- and resampling and can be organized hierarchically inlevels of detail (multiresolution support). The sample distribution is still sub-optimal,but the greedy strategy of selecting these samples delivers more uniform results. Thefarthest point selection algorithm used by the authors increases the computationalcomplexity of the overall method. This algorithm depends on the construction ofVoronoi cells, which, in turn, requires the computation of geodesic distances using anadapted fast marching algorithm ([Sethian, 1999]). A density guarantee parameter canbe set in order to control the sampling density and, consequently, the total numberof points used to approximate the model. Varying this parameter also produces ahierarchical approximation in the sense of a multiresolution representation.

While most simplification algorithms focus on developing better heuristics for clus-tering or extracting point samples, [Sareen et al., 2009] discuss a method of buildingspline contours for the purpose of reducing the cardinality of the data set. The inputset is divided across a designated direction, n using a series of N parallel planes. Thepoints that lie between the planar sections are then subjected to a projection process.A 2D contour set is extracted and spline curves are synthesized to approximate thesecontours. A technique specific to 3D rendering applications of point clouds, surfacesplatting, is more flexible option as compared to choosing a constant direction setof parallel planes. Splatting was employed by [Wu and Kobbelt, 2004] to generate

12

1.1. Hierarchical approximation

approximations of a point set. A splat is roughly a disk-like patch (circular or elliptical)defined by its center, its support plane normal and the principal axes (for an ellipse)or radius (for a circle). It is theoretically possible to approximate any surface with suchpatches considering their number approaches infinity and their radii tend to zero.The method proposed by [Wu and Kobbelt, 2004] involves a pre-decimation step (i.e.one of the methods suggested in [Pauly et al., 2002]). The samples in the simplifiedset serve as a guide for building the splats. The process itself is incremental: a seedpoint pi is chosen such that it projects in the center of the splat, ci . The radius of thesplat is chosen such that as many neighbor points of pi are projected onto this com-mon splat without exceeding a distance threshold. The implementation of the splatconstruction can be made more efficient through the use of a graph structure derivedfrom pre-computed nearest neighbor queries. Although only circular splats can bebuilt in this fashion, extending the patch in the direction of the smallest curvatureleads to elliptical regions. The resulting set of splats might cover the sample pointsredundantly. A minimal set of splats is constructed via greedy selection of a splatsubset that guarantees full coverage, but is of a smaller size. [Wu and Kobbelt, 2004]describe a global optimization strategy for splat selection based on particle relaxation,a technique also used by [Pauly et al., 2002] and [Turk, 1992]. Overall, the splat-basedtechnique paves the way to a different class of simplification algorithms that rely onthe existence of a C 0 continuous approximation of 2D manifolds.

1.1.2 Mesh and graph models

Naturally, model simplification can benefit from the existence of connectivity informa-tion in order to bypass the needs of performing unstructured neighborhood queries,measuring geometric properties such as curvatures or altering the model in ways itsoriginal topological genus does not get modified.

Problem statement

In the classical sense, a manifold surface M is a subset of the Euclidean spaceRk , k ≥ 3,such that each point of M has an open neighborhood homeomorphic to the open discin R2. Analogously, a manifold surface with a boundary has the property that everypoint has an open neighborhood homeomorphic to either the open or half-disc. Theboundary of the manifold surface, in this case, is denoted by ∂M and contains all thepoints of M that do not have a neighborhood homeomorphic to the open disc. Sincemost applications are concerned with the examination of surfaces embedded in thethree-dimensional space, when not explicitly specified, it is assumed that k = 3.

In the discrete case, the most common representation for a manifold surface is aC 0 approximation. The primitives of this representation are points, segments/lines,

13

Chapter 1. Background and related work

triangles. In general, the mathematical equivalent of this representation is an l -simplex, where 0 ≤ l ≤ k. In more specifics, the equivalent of a manifold in the discrete(Computer Graphics) scenario is a simplicial mesh, also called a regular simplicialcomplex. Formally, T ⊂Rk is a simplicial mesh if the following conditions hold:

1. for each simplex t ∈ T , all faces of t belong to T ;

2. for each pair of simplexes t0, t1 ∈ T , either t0 ∩ t1 =; or t0 ∩ t1 is a simplex of T ;

3. each simplex t is a face of (or coincides with) some simplex t ′ such that t ′ hasthe maximum order among all simplices of T .

The maximum order of the simplices of T can further help distinguishing betweensuch surface. Thus, if d is this maximum order for T , then T is also called a d −si mpl i ci al −mesh. The union of all simplexes of T is called the domain of T and isdenoted by ∆(T ). If ∆(T ) is a polyhedral setΩ, then T is called a simplicial decomposi-tion ofΩ.

For every T that is a simplicial decomposition of a polyhedron there exists an equiva-lent graph structure, G = (V ,E), where V is a finite set of nodes (also called vertices ofthe mesh) and E ⊆V ×V is the set of edges. Since nodes are 0-simplexes and edgesare 1-simplexes, the 2-simplexes or the faces of the mesh are defined as the convexcombination of three nodes vi ,v j ,vk ∈V such that (vi ,v j ), (vi ,vk ), (v j ,vk ) ∈ E .

Throughout this work, the term mesh will be used to designated an orientable 2-simplicial-mesh embedded in either R3. When specified, the term may also refer to a2-simplicial-mesh embedded in a higher dimensional Euclidean space. This meshwill be denoted by M = (V ,E ,F ), where V is the set of vertices or nodes, E is the set ofedges and F is the set of (triangular) faces. Since the mesh is orientable, the order inwhich the vertices of a face are specified will be the counter-clockwise one.

In Computer Graphics, the term level of detail, popularized by [Clark, 1976], is inex-tricably linked with mesh simplification applications. The goal of such algorithms is,as in the case of point-based representations, to capture the features of the originalmodel using as few primitives as possible. Thus, a multiresolution mesh representa-tion is a hierarchical approximation

M = ML Â ML−1 Â . . . M0, (1.9)

where L is the number of levels of detail computed for the input mesh, M .

14

1.1. Hierarchical approximation

Figure 1.2: Multiresolution representation (3 levels of detail) of the Bimba model (visionairportal).

Incremental simplification

The work of [Schroeder et al., 1992] is among the first to discuss triangular meshsimplification in a step-by-step manner known as decimation. Almost all decimation-based methods require the existence of a decimation criterion and can be summarizedin two steps that can be repeated until the target density is reached:

1. evaluate decimation criterion (usually a cost function estimating the impact ofremoving a set of primitives);

2. remove a primitive and retriangulate the local geometry.

The heuristic driving the decimation algorithm of [Schroeder et al., 1992] is based onthe dihedral angle of mesh edges. Angles below a certain threshold imply that theirsupport edge is a feature edge and must be preserved as much as possible since itcan be part of an important geometrical feature of the overall model. The algorithmitself simplifies the model by removing vertices. If a vertex has exactly two incidentfeature edges, its removal cost is computed as the distance from this vertex to theline described by the other two endpoints of the feature edges. If a vertex has noincident feature edges, its removal cost is computed as the distance from this vertexto the average plane determined by its one-ring neighbors (i.e. those vertices thatare directly connected to this vertex through an edge). If a vertex has more than twoincident feature edges, it cannot be removed any longer. Whenever a vertex is removed,the resulting artifact is a hole in the mesh spanning the one-ring neighborhood ofthe removed vertex. Filling this hole is a necessary step after each vertex removal.Retriangulation is attempted by first selecting a candidate edge that separates theone-ring loop of edges. If the removed vertex had two feature adjacent edges, then thecandidate edge is selected as the one joining the remaining endpoints of the featureedges. The process of selecting a candidate edge is depicted in figure 1.3. The criterionupon which the endpoints of this edge are selected is the aspect ration Caspect = dmi n

l ,where dmi n is the minimum distance of the loop edges to the plane that contains thecandidate edge and the normal to the local average plane and l is the length of the

15

Chapter 1. Background and related work

vi

vj

vk

vi

vj

vk

vj

vk

vj

vk

Figure 1.3: Candidate edge selection. Top row: a normal vertex is removed - the blue edge isthe best candidate according to the aspect ratio criterion. Bottom row: the two red edges areincident at the removed vertex - their endpoints determine the candidate edge to be used.

candidate edge. It is possible to enforce a threshold upon Caspect , but this constraintleads to situations where a vertex might not be suitable for removal even if the featureedge criterion is met. Overall, the method proposed by [Schroeder et al., 1992] ispowerful due to its simplicity. It defines an entire class of incremental simplificationmethods in which the positions of the mesh vertices do not change.

An alternative solution to computing candidate edges is to rely on the existing connec-tivity in order to repair the one-ring hole of a removed vertex. In this sense, [Ronfardand Rossignac, 1996] use an operation called edge collapse. When a vertex is removed,a candidate edge emanating from it is selected to be collapsed. The result is identicalto the situation when the removed vertex is translated at the position of the otherendpoint of the collapsed edge. A maximum of two degenerate faces can thus appearand can be consequently completely removed from the set of faces. The edge collapseoperation is reversible, its converse operation being the vertex split (figure 1.4). Theheuristic driving the selection of the edge to be collapsed incorporates a distortionestimate that this operation can incur if performed. In this respect, [Ronfard andRossignac, 1996] compute the distortion error as follows. When an edge is collapsedto a single vertex, that vertex will "inherit" the faces of the vertex that is removed. Theerror itself is computed as the maximum distance from the resulting vertex to the setof support planes of the inherited faces. The algorithm can be implemented usinga priority queue and its complexity class falls within O(n logn). However, since theerror is computed as a distance from a vertex to a plane, the geometric distortion isunderestimated.

16

1.1. Hierarchical approximation

vi

vj

vk

vj

vk

vi

vj

vk

edge collapse

verte

x sp

lit

Figure 1.4: Topological operations: the (vi ,vk is collapsed and vi is removed; conversely, vk

can be split and the degenerate triangles sharing the collapsed edge become once more partof the one-ring neighborhood of vi .

The next big step in incremental simplification is represented by the introduction ofthe quadric error metric [Garland and Heckbert, 1997]. The elegance of this methodlie in its algebraically appealing structuring of the the same idea that [Ronfard andRossignac, 1996] relied on. The computation of the distance from a point to a plane πrequires a fixed set of parameters: the plane normal n of unit length and offset d . Tocompute the squared distance from a point p to this plane, the following expression isevaluated

d 2(p,π) = (nᵀp+d)2 = pᵀnnᵀp+2d nᵀp+d 2. (1.10)

The previous equation (1.10) can be arranged in a matrix form

d 2(p,π) =(

p1

)ᵀQπ

(p1

), (1.11)

where Qπ =[

A bbᵀ c

]with A = nnᵀ, b = d n and c = d 2. Since the Qπ quadric matrices

are additive, one can compute the distance from an arbitrary point p to a set of supportplanes of the faces that vertices inherit. If ( f j ) j=1,Ni

are the Ni indexed faces incidentat vi , then the sum of squared distances becomes

E(vi ,p) =(

p1

)ᵀ Ni∑j=1

Q f j

(p1

), (1.12)

17

Chapter 1. Background and related work

which provides a storage-efficient mechanism for estimating a geometric error bystoring only the sum of the quadric matrices of the inherited faces. Thus, whenthe (vi ,v j ) edge is collapsed, a new vertex, v can be created such that it minimizesE (vi , v)+E (vi , v). The quadric error metric simplification does not preserve the initialposition of the mesh vertices, but shifts them in order to minimize the local distortionwith respect to the initial mesh.The parameters of the support planes of the initialmesh are preserved after each collapse since the quadric matrix associated to v iscomputed as Qv = Qvi +Qvj .

Since its original formulation, the quadric error metric simplification algorithm hasbecome an industry standard and several notable improvements have been proposed.[Erikson and Manocha, 1999] suggested an adaptive threshold for selecting candidateedges for collapse and weighted the quadric matrix sum in equation (1.12) by the areasof their corresponding faces. These improvements allowed for better selectivity in thecase of meshes with thin triangles and irregular sampling. Apart from these additions,the authors also incorporate attribute sensitive metrics to take into account texturecoordinates, color channels and per-vertex normal coordinates. Attribute informationis regarded as part of a point cloud and not as part of a simplicial mesh and is notincorporated directly into the quadric error matrices. The inclusion of attributes in thedefinition of the quadric matrices is described by [Garland and Heckbert, 1998], while[Hoppe, 1999] proposed a memoryless modification of this algorithm by incorporatingsurface attributes and geometric coordinates in a gradient-based formulation. Thememoryless modification does not compute the quadric matrices of collapsed vertexpairs as the sum of the previous matrices, but simply relies on recomputing thesematrices using the newly created geometry. The effect of this approach is that vertexlocking is prevented, which is a side-effect of adding quadrics corresponding to faceswhose support planes form acute dihedral angles. The side-effect is manifested inthe sense that the resulting quadric error matrix has spherical iso-surfaces of smallerradii than those of the vertices that contributed to its formation. By avoiding there-distribution of the quadric matrices, [Hoppe, 1999] observes that, opposed tointuition, the simplified surfaces tend to more faithfully approximate the original.The idea of memoryless simplification is also pursued by [Lindstrom and Turk, 1998]who proposed another method also relying on edge collapses, but where a series ofproperties became constraints for the placement of the result of the collapse. Boththe original volume of the model is subject to preservation and the local tetrahedralvolumes swept by the triangles that are moved is minimized. Boundary vertices aretreated in a fashion that minimizes the per-triangle area changes.

18

1.1. Hierarchical approximation

Simplification via clustering

Clustering is also a viable option for surface simplification. As opposed to iterativemethods, clustering aims to reduce the mesh complexity in one step. Such algorithmsgroup vertices with similar properties together and replace the emerging clusterwith representative vertices. The resulting vertices serve as a basis for a coarsertriangulation that needs to be perform in order to recover a mesh connectivity. Animmediate drawback is that such techniques are not guaranteed to preserve meshtopology since they can group together points around a topological hole or can joinvertices that are far apart and create topological holes. Also, the geometric distortionis, in general, higher than with the previous family of methods.

Among the first works that fall into this category, the paper of [Rossignac and Borrel,1993] presents an approach where a uniform 3D grid is fitted in the bounding boxof the original model. The vertices of the mesh are then weighted according to theircurvature and to the incident face areas. From each cell of the grid a single repre-sentative vertex is selected such that this vertex has the maximum weight out of allcell neighbors. The remaining vertices are then collapsed to this single vertex. Sincethis approach uses uniform cells, it is possible to suppress a considerable amountof features that belong to the same cell. To counteract this drawback, [Low and Tan,1997] introduce a non-uniform clustering method called floating-cell clustering. Inthis clustering method, the positions of the grid cells are controlled by the vertexweights, whereas the cell size is specified by the user. Instead of grid cell clustering,[Valette and Chassery, 2004] employ centroidal Voronoi diagrams to define the clusters.The centroidal Voronoi regions consist of a subset of connected triangular faces of theinitial model. Neighboring clusters are separated through a subset of boundary edges.Their algorithm begins by randomly assigning a single face to each cluster, where thetotal number of clusters needs to be specified. The rest of the unallocated faces aredistributed to the clusters depending on whether they share boundary edges with anyof the cluster member faces. This initial face clustering continues until all trianglesare exhausted. A grouping of faces performed in this manner has an associated energyfunction defined as

E(Ci i=1,Nc) =

Nc∑i=1

∑f ∈Ci

a f ‖c f ‖2 −‖ ∑

f ∈Ci

a f c f ‖2

∑f ∈Ci

a f

, (1.13)

where Nc is the number of created clusters, f is a triangular face (element of a clusterCi ), c f is the centroid of this face and a f is the face area. The initial clustering isfurther modified as to minimize this associated energy level. The error minimizationis performed iteratively and acts on the boundaries between neighboring clusters.If Cm and Cn share a common edge e, part of two triangles, fm ∈ Cm and fn ∈ Cn ,

19

Chapter 1. Background and related work

then the energy is computed using equation (1.13) in three ways. First, the initialconfiguration is left unchanged. Two remaining choices are left: either move fm to Cn

or fn to Cm . The choice that best minimizes the energy is preferred and the algorithmis repeated until no further error reducing changes become possible. The final clusterconfiguration is coupled with a Delaunay triangulation for which the input verticesare the mesh vertices closest to the cluster centroids. This algorithm also suffersfrom the same inconveniences as the other clustering methods: it does not preservefeatures within the same cluster and can alter the topology. By varying the numberof cluster, a hierarchical representation of the initial mesh can be constructed. If adyadic progression is intended, a larger Nc can be specified initially and the next levelis then set to contain Nc /2 clusters only.

Since the beginning of the 1990-2000 decade, mesh simplification has become andincreasingly appealing research topic. Ongoing research is a testimony of the impor-tance such applications have from many Computer Graphics perspectives. We referthe interested reader to the works of [Ovreiu, 2012] and [Puppo and Scopigno, 1997]for a more in-depth discussion of mesh simplification algorithms.

1.2 Wavelet multiresolution construction

1.2.1 Point clouds

Point clouds are the closest format to the raw measurements most modern laserscanners provide. The lack of geometric connectivity and primitives is compensatedby the sheer volume of detail comprised in such sets. [Manson et al., 2008] addressthe problem of efficiently representing the underlying geometry from which the pointelements have been sampled. The authors use wavelets to reconstruct indicatorfunctions for the underlying shapes. Their construction relies on a tensor productgeneralization of the classic wavelet transform and consists of two stages. In the first,an octree structure is used to compute a low resolution representation of the shapefunction. The second stage adds fine details and resembles a synthesis operation. Theimmediate advantage of this approach is the performance and scalability, the authorsclaiming to have processed sets of several hundreds of millions of points on a low-endworkstation.

[Chen and Maggioni, 2010] have introduced an SVD-based construction of so-calledgeometric wavelet point cloud analysis. Their work relies on computing geometricdictionaries as follows

• perform a dyadic decomposition of M into cubes at J scales (or levels)

• obtain a d-dimensional affine approximation of the manifold in each cube

20

1.2. Wavelet multiresolution construction

• produce a piecewise linear sequence of approximations, M j , j ≤ J

• construct a low-dimensional affine operator that encodes the difference betweenconsecutive scales, i.e. between M j+1 and M j

We now describe in more detail the geometric dictionary construction. First of all, at aspecific scale denoted by its scale index, j , the space is divided into cubes based uponthe introduction of an octree structure at the coarsest level. As such, let Γ j = C j ,k with k ∈ 1, N j be the set of all N j cubes, C j ,k , at level j . By definition, M ∩Γ j = M .Also, for any j ′ ≥ j and C j ′,k ′ ∈ Γ j ′ , either C j ′,k ′ ⊂C j ,k or C j ′,k ′ ∩C j ,k share only a face.In consequence, for any j < j ′ and C j ′,k ′ ∈ Γ j ′ there exists a unique C j ,k ∈ Γ j such thatC j ′,k ′ ⊂C j ,k . In order to ensure a dyadic subdivision behavior, the cubic cells C j ,k aremeasured with respect to their centers, c j ,k and must satisfy the following constraint

Bc12− j (c j ,k ) ⊂C j ,k ⊂ Bminc22− j ,diam(M)(c j ,k ), (1.14)

where c1,c2 ∈R+ are preset constants and Bc(r ) denotes the ball centered at c of radiusr > 0.

The scaling function analogues in this cubic cell layout are obtained through singularvalue decompositions of the cell covariance matrix, i.e.

cov(C j ,k ) =Φ j ,kΣ j ,kΦᵀj ,k . (1.15)

If V j ,k = span(Φ j ,k ), then V j ,k := V j ,k + c j ,k approximates the tangent space Tc j ,k M .

The scaling function analogues are thus Φ j ,k , for k ∈ 1, N j . These scaling function-s/vectors define a projection operator

P j ,k (x) :=Φ j ,kΦ∗j ,k (x−c j ,k )+c j ,k , (1.16)

where x ∈C j ,k . The authors also denote M j :=∪C j ,k∈Γ jP j ,k (C j ,k ) and define a projec-tion operator for arbitrary points as

x j = PM j (x) := P j ,k (x), (1.17)

for any x ∈ C j ,k . For a fixed j ,k pair and a point x ∈ C j+1,k ′ ⊂ C j ,k , the differencex j+1 −x j leads to the definition of a wavelet coefficient. A subsequent consecutivescale differencing operator is defined as

QM j+1 (x) := PM j+1 (x)−PM j (x) = (I−P j ,k )(x j+1 −c j ,k )+P j ,k (x j+1 −x). (1.18)

The the space W j+1,k ′ := (I−P j ,k )V j+1,k ′ has a corresponding basis denoted byΨ j+1,k ′

(see figure 1.5) that is dubbed by the authors the geometric wavelet basis. We refer

21

Chapter 1. Background and related work

M

cj,k

cj+1,k''

cj+1,k'

x

xj+1

xj

Φj+1,k'

Ψj+1,k'

Φj,k

Figure 1.5: Geometric wavelet construction as illustrated in [Chen and Maggioni, 2010].

the interested reader to the original work of [Chen and Maggioni, 2010] for a moredetailed explanation on how a complete multiresolution algorithm can be assembledusing these operators, scaling and wavelet functions. The time complexity of theresulting algorithm is O(n log(n)) and the spatial storage requirements fall withinthe O(dD2−d ) class, where D is the dimension of the external space in which themanifold is embedded and d is reduced dimension for the approximation space. Inessence, this approach is suitable only for point clouds that sample high-dimensionalattribute data, but have a reduced intrinsic dimension. It can, nevertheless, operateon low-dimensional data as well, but the advantages are no longer justified.

[Choi and Baraniuk, 2005] applied a straightforward implementation of Swelden’slifting scheme for denoising point sampled manifolds of low intrinsic dimension.Their multiscale representation focuses on the underlying manifold geometry andnot on the coordinates of the individual points. Although the method is intended tofunction on point data sets, the actual implementation requires computing a graphstructure. The split operation makes use of the graph connectivity to establish aminimum weight pair perfect matching. The paired points are then tagged as eitherodd or even. The odd samples are then predicted using their even counterpart. Thebest fit hyperplane in the least squares sense of the neighbors of the even counterpartis used to estimate where the predicted sample is located. The authors suggest to usethe centroid of this neighborhood and compute difference vectors as

dn = po,n − ∑pe,i∈N 1

v (pe,n )

1

|N 1v (pe,n)|pe,i , (1.19)

where po,n and pe,n are the points in the n-th odd-even pair. For filtering and com-pression purposes, the normal and tangential components of the difference vectorsare stored separately. After all odd samples are predicted, the remaining even samples

22

1.2. Wavelet multiresolution construction

are updated as

cn = pe,n −dn . (1.20)

The actual filtering is performed during the synthesis phase by reversing the effectsof the above equations and thresholding the normal components of the differencevectors. While the simplicity of this approach is attractive, the requirement of com-puting the minimum weight perfect matching incurs additional costs that increasethe complexity class of the overall algorithm at O(nm logn) [Mehlhorn and Schäfer,2002], where n is the number of nodes and m the number of edges.

The recent work of [Anis et al., 2016] approaches the problem of point cloud compres-sion from multiple perspectives. Their algorithm construction uses both mesh andgraph techniques, but accepts streams of point cloud data as input. The raw pointsare then associated with a regular mesh and the process of associating a point witha mesh vertex resembles a resampling method. The hierarchical representation isperformed in a coarse-to-fine order. Coarse regular meshes are divided by introducingnew vertices at the middle of the coarse mesh edges. A natural ordering of the meshvertices into odd and even results by tagging the midpoints of the edges as odd andthe base vertices as even. An auxiliary bipartite graph structure is associated to thesubdivision process by using only the edges between even and odd vertices. Theresulting graph signal is then analyzed using the bipartite graph wavelet transformin [Nguyen et al., 2014]. Through this hybrid wavelet-based method, a time-varyinggeometric stream of data can be compressed, opening a path towards augmenting thecurrent 2D video standard with full 3D information.

1.2.2 Mesh and graph signals

Given the size of the literature corpus where a wavelet method is adopted to performeither a mesh compression, editing, filtering or any other multiresolution task, weonly review here those methods that fully or partially solve the problem of generatinga multiresolution hierarchy. The similarities between these methods and the one wepropose are listed below:

• iterative simplification of geometry via vertex removal,

• prediction of the removed data from the remaining samples,

• reconstruction error minimization.

A final but significant distinction between wavelet-based multiresolution construc-tions comes from the domain where the analysis is performed: spatial or spectral. If

23

Chapter 1. Background and related work

the method operates directly on the positions of the mesh, which is the case for ourown approach as well, then the respective strategy falls in the first category. Otherwise,if a Fourier-like spectral decomposition is employed, typically via the eigendecom-position of the graph or mesh Laplacian matrix, then the method is a of the spectraldomain type.

Spatial domain wavelet-based level of detail construction

So far, we have discussed iterative vertex removal methods for mesh simplification.Reconstruction is then possible if the removed geometry is stored separately. Thisoption is, however, not memory efficient if one wishes to also reduce the initialstorage size of the entire model. [Li and Kuo, 1998] have addressed the issue ofmesh compression by resorting to vertex removal and local one-ring retriangulation,while geometry was encoded via barycentric error prediction. [Cohen-Or et al., 1999]have grouped vertex removal operations into batches and generated discrete levels ofdetail. To ensure reconstruction coherence, the batches must be composed of verticesthat are independent. Two vertices are called independent if the one-ring of the firstdoes not contain the second, and, consequentially vice-versa. Addressing the issues ofirregular connectivity that arise from local patch retriangulation, [Alliez and Desbrun,2001] introduce two new operations. The first, called decimation conquest removesinterior vertices with degree less than 7 and border vertices with valence less than4. The second operation, called a cleansing conquest, removes the vertices that havea valence less than 4. Besides some connectivity criteria, geometry does not playany role in the vertex selection process. Experimentally, [Cheng et al., 2006] foundthat by forbidding the removal of some vertices, called anchor vertices, identified bytheir local curvature magnitude, the the rate-distortion performance is improved.For the purpose of reducing the individual parameters involved in the prediction ofremoved vertices, [Lee et al., 2011] proposed a dual ring prediction where a vertexand its one-ring neighbors are estimated together. This strategy is complemented bya minimum mean square error prediction that constructs a linear estimator based onvertices having topological distance of 1 or 2 from the predicted vertex.

The methods we examined in the previous paragraph contain most of the ingredientsoften required to define and implement a wavelet-centered level of detail solution.Historically, the first successful attempts at extending a wavelet framework such thatit could operate on 3D mesh models were made in the last decade of the twentiethcentury. To our knowledge, these pioneering works had one common element: theusage of a subdivision scheme that drove the actual refinement of the signal. Subdi-vision operators were especially appealing since their inverse operators are similarin effect to the role that low pass filters play in the classical wavelet analysis. Thus,subdivision itself is regarded as a synthesis operation, facilitating the transition from

24

1.2. Wavelet multiresolution construction

a coarse to a fine level of resolution. Conversely, the inverse subdivision operationproduces a coarse approximation of the model. Since the goal of this construction isto approximate a mesh with fewer vertices, the simplest solution is to construct theapproximation hierarchy starting from the coarsest desired resolution. Note that thisintroduces a prerequisite on the existence of a subdivision connectivity, a propertythat arbitrary meshes are not guaranteed to have. After each subdivision pass, thevertices of the model are moved in order to minimize the error with respect to the ini-tial mesh. The displacement offsets that result from this operation are the equivalentwavelet coefficients.

Wavelet-based multiresolution analysis for mesh data bares many resemblances withthe original formulation of [Mallat, 1989]. In essence, such a framework implies theconstruction of a chain of nested function spaces, V0 ≺V1 ≺ . . . and the definition of afunction dot product ⟨·, ·⟩ acting on function pairs, i.e. elements of any V j for j > 0.After establishing a dot product, the orthogonal complement of V j with respect toV j+1 is defined as

W j := f ∈V j+1|⟨

f , g⟩= 0,∀g ∈V j . (1.21)

Thus, any function f j+1 ∈ V j+1 can be decomposed as f j+1 = f j +h j , where f j ∈ V j

and h j ∈W j . The utility of this projection arises when viewing f j as an approximationof f j+1 in V j . It is then possible to define the best approximation in a least squaressense as

f j := argming∈V j

⟨f j+1 − g , f j+1 − g

⟩. (1.22)

In common terminology, f j is called the low resolution part of f j+1 and h j is the detailpart.

In the classical multiresolution framework, where the V j spaces consist of real-valuedfunctions defined on the real axis, the basis functions of V j , denoted by φ j ,i , i ∈Z, aredefined through the aid of a refinement equation

φ(x) = ∑i∈Z

siφ(2x − i ), (1.23)

where si are constants and φ(x) is a generator scaling function. In effect, φ j ,i (x) =φ(2 j − i ), which is called the two-scale relation. Similarly, the functions that spanW j , denoted by ψ j ,i and dubbed wavelet functions are generated by dilating andtranslating a single function, ψ(x).

[Lounsbery, 1994] can be credited with being the first author to attempt the extensionof the multiresolution framework to spaces of functions defined on meshes instead

25

Chapter 1. Background and related work

of the real line. In his PhD thesis, Lounsbery used a subdivision scheme to define ananalog of the refinement equation. Starting with an initial regular triangular mesh, M0,by repeated subdivision, a hierarchy M0 ≺ M1 ≺ . . . ≺ ML of surfaces is produced. Thesubdivision process defines a limit surface for L →∞. This surface can be expressedin parametric form as S(x), where x ∈ M0. The connection between this limit surfaceand the vertices of the intermediate approximation meshes, M j , is reflected by

S(x) = ∑s j ,i∈VM j

s j ,iφ j ,i (x), (1.24)

where s j ,i is the coordinate vector of the i -th vertex of M j and φ j ,i (·) : M0 →R is a scal-ing function associated to this vertex. The φ j ,i functions depend on the subdivisionscheme and are the result of a limit process. This means that, in general, they cannotbe expressed in a closed form, such as a polynomial.

By arranging the vertex coordinates of M j in a matrix form, V j , where the i -th row ofthis matrix contains the coordinates of the i -th vertex, Lounsbery write the subdivisionequation

V j+1 = R j V j , (1.25)

where R j contains the coefficients of the subdivision scheme arranged in matrix form.A remarkable property is that only the connectivity of the mesh dictates the values ofthese coefficients, and not the actual geometric coordinates of the vertices. Equation(1.25) describes a refinement transition between M j and M j+1. All of the vertices fromM j have direct correspondences in M j+1, but M j+1 also contains additional vertices.In case the chosen subidivision scheme is interpolatory, VM j ⊂VM j+1 .

Next, Lounsbery expresses equation (1.24) as

S(x) =Φ j (x)V j , (1.26)

whereΦ j (x) contains the φ j ,i (x) scaling functions arranged in a row matrix. Similarly,

S(x) =Φ j+1(x)V j+1. (1.27)

Since the subdivision matrix R j is geometry independent, combining equations (1.25),(1.26) and (1.27), a refinement equation ensues

Φ j+1(x)R j =Φ j (x), (1.28)

for all x ∈ M0.

Denoting the scaling functions submatrix corresponding to VM j by Φ j+1,E and the

26

1.2. Wavelet multiresolution construction

submatrix of scaling functions that correspond to VM j+1 \VM j byΦ j+1,O , we rewrite

Φ j+1(x) = (Φ j+1,E (x) Φ j+1,O(x)

). (1.29)

The additional E and O subscripts stand for even and, respectively, odd, a commonlyadopted terminology for describing the elements of the vertex set partition. Using thisnotation in equation (1.28), we arrive at

Φ j (x) = (Φ j+1,E (x) Φ j+1,O(x)

)(R j ,E

R j ,O

), (1.30)

where R j ,E contains the rows of R j that correspond to the even scaling functions andR j ,O contains the remaining rows.

Having defined all these elements, it is now possible to introduce nested linear spacesassociated with the mesh approximation chain, i.e.

V j (M0) := Span(Φ j (x)). (1.31)

As a consequence of the refinement equation (1.28), it is trivial to show that

V0(M0) ≺V1(M0) ≺ . . . . (1.32)

The elements of V j (M0) are functions defined on M0 taking real values. In [Lounsbery,1994], the dot product of any two such functions, f , g ∈V j (M0) is defined as

⟨f , g

⟩:= ∑

τ∈F0

1

Area(τ)

∫x∈τ

f (x)g (x)dx, (1.33)

where dx is the differential area form and F0 is the set of faces of M0. Component-wise,if f (x) =∑

i f j ,iφ j ,i (x) and g (x) =∑i g j ,iφ j ,i (x) then⟨

f , g⟩= gᵀI j f, (1.34)

where f,g are column matrices consisting of the coefficients of f and g when writtenas a combination of scaling functions, and I j is the matrix containing dot productelements, i.e.

(I j )k,l =⟨φ j ,k ,φ j ,l

⟩. (1.35)

Lounsbery remarks that Φ j (x) will be locally supported if the R j matrix is sparse.Consequently, I j will also be sparse. [Lounsbery, 1994, Lounsbery et al., 1997] describea method for computing the elements of this matrix by solving a system of linearequations. Again, from the refinement equation (1.28) the following relation is derived

27

Chapter 1. Background and related work

I j = Rᵀj I j+1R j . (1.36)

As in the classic multiresolution framework scenario, analog wavelet spaces are definedusing the above dot product, i.e.

W j (M0) := f ∈V j+1(M0)|⟨ f , g

⟩= 0,∀g ∈V j (M0)

. (1.37)

The orthonormal base of W j (M0) consists of wavelet functions, denoted byΨ j (x) = (

ψ j ,1(x) ψ j ,2(x) . . .)

for all x ∈ M0.

The wavelet framework construction then requires building a base for V j+1(M0) usingthe Φ j ∈ V j (M0) and Φ j+1,O ∈ V j+1(M0) functions. This base can be constructed ifand only if the subdivision matrix R j ,E is invertible. Given a function f j+1 ∈V j+1(M0)expressed in the previously mentioned basis, (Φ j ,Φ j+1,O), one can approximate it witha function f j ∈V j (M0) by suppressing the coefficients corresponding toΦ j+1,O . Themain inconvenient is that the result is not the best approximation in the least squaressense. To accommodate for this goal, theΦ j+1,O(x) functions must be orthogonalized.The result is the wavelet basis, Ψ j (x), of W j (M0). Equivalently, one must solve thefollowing matrix equation

Φ j+1,O(x) =Ψ j (x)+Φ j (x)α j , (1.38)

whereα j is the matrix to be determined. SinceΦ j andΨ j for a basis of V j+1(M0), thenany function f j+1 ∈V j+1(M0) can be expressed as a combination of these functions. Ifhowever the coefficients belonging to the wavelet functions,Ψ j are suppressed, theresulting expression is a function f j ∈V j (M0) that best approximates f j+1 in the leastsquares sense.

Returning to the matrix equation (1.38), by computing the inner product on bothsides, the equation is transformed into⟨

Φ j (x),Φ j+1,O(x)⟩= ⟨

Φ j (x),Φ j (x)⟩α j , (1.39)

with the remark that ⟨F,G⟩ is a conventional notation for the matrix whose elementsare the dot products ⟨Fk ,Gl ⟩ of the function elements of the row vectors F and G.Further expanding the equation, we arrive at

Rᵀj⟨Φ j+1(x),Φ j+1,O(x)

⟩= I jα j . (1.40)

In conclusion, to determineα j , the I j matrix must be inverted and the left hand sidemultiplied by this inverse. [Lounsbery, 1994] notes that this inverse is no longer sparse,which leads to wavelet functions that are no longer only locally supported on M0.

28

1.2. Wavelet multiresolution construction

The solution the author suggest to this issue is to build instead a non-orthogonalcomplementary space of V j (M0) is V j+1(M0), denoted by W ∗

j (M0). A possibility is tosparsify theα j matrix by decoupling the elements on its columns. More explicitly, thei -th column of this matrix should contain non-zero elements only for φ j ,i and for afew other scaling functions that correspond to topologically close vertices to the onecorresponding to φ j ,i .

Finally, a compound matrix equation is formed and relates the scaling functions atlevel j +1 and the scaling and wavelet functions at level j(

Φ j (x) Ψ j (x))=Φ j+1(x)

(R j T j

), (1.41)

where T j =( −R j ,Eα j

I−R j ,Oα j

)and I is a shorthand notation for a square identity matrix. In

general, the R j and T j matrices play the role of a synthesis filter. The inverse filter iscalled the analysis filter and is obtained as(

A j

B j

)= (

R j T j)−1

. (1.42)

When using an interpolating scheme, R j ,E = I, further simplifying the synthesis filterto

(R j T j

)= (I −α j

R j ,O I−R j ,Oα j

)(1.43)

and the analysis filter to(A j

B j

)=

(I−α j R j ,O α j

−R j ,O I

). (1.44)

A A

B B

A

Figure 1.6: Applying the analysis filter can be viewed as a reverse subdivision process. [Louns-bery, 1994] uses polyhedral subdivision to ensure C 0 continuity.

The end result is a suitable multiresolution framework that can decompose surface

29

Chapter 1. Background and related work

signals. If S j+1(x) ∈V j+1(M00) is such a surface function written as

S j+1(x) =∑i

s j+1,iφ j+1,i (x), (1.45)

then the same function is expressed in terms of the scaling and wavelet functions atlevel j

S j+1(x) =∑i

s j ,iφ j ,i (x)+∑i

w j ,iψ j ,i (x). (1.46)

This leads to a more compact formulation

Φ j+1(x)V j+1 =(Φ j (x) Ψ j (x)

)(A j

B j

)V j+1, (1.47)

hence V j = A j V j+1 and W j = B j V j+1. Given that the analysis procedure is invertible,the central synthesis equation relating the vertex coordinates becomes

V j+1 = R j V j +T j W j . (1.48)

Lounsbery exemplifies the application of an analysis filter whose effect is to reverse atriangular subdivision scheme. By repeatedly applying the A j and B j matrices, a fine tocoarse approximation is constructed, as depicted in figure 1.6. This wavelet adaptationfor mesh signals is equivalent to the lifting scheme formulation of [Sweldens, 1996].Being the first attempt at such a generalization, it is restricted to regular triangularmeshes and can prove to be somewhat expensive due to the requirement of solvingsparse linear systems. However, the concepts introduced by [Lounsbery, 1994] arecommon to almost any modern spatial domain wavelet transform design.

At the expense of resampling the input mesh, [Eck et al., 1995] have successfullyapplied Lounsbery’s framework to arbitrary surfaces, without subdivision connectivity.The resampled high resolution mesh, M J , is a reparametrization of the input mesh,M , over a coarse simplicial complex domain, K0. The entire resampling procedureconsists of three steps. First, the initial mesh is divided into r triangular regions orpatches, denoted by T1, . . . ,Tr . The nodes of this triangular patch network correspondto the vertices of a base simplicial complex with r triangular faces. A mapping betweenthe other, interior patch points on M and the face points of K0 is then constructed suchthat it best preserves the inner metric of M. One solution for computing this mappingis to use harmonic map algorithms. The last step produces a resampled mesh withsubdivision connectivity. Starting from the base complex, K0, 1-to-4 face splits areused throughout to build a chain of complexes from K0 to K J , where J is the desirednumber of subdivision levels. Besides the inconvenience of working with a differentmesh, this resampling method is more complex and computationally expensive than

30

1.2. Wavelet multiresolution construction

other approaches that were later developed to work directly on the irregular surface.

Using a modified subdivision strategy, [Valette and Prost, 2004] have addressed thedrawback of Lounsbery’s polyhedral subdivision design and adapted the method towork on irregular meshes. The main improvement comes from the analysis filteraction where the triangular faces of a high resolution model are merged together. Thesynthesis process implies subdividing the merged faces, but, instead of a fixed 1-to-4face split strategy, a face is allowed to be split into 1, 2, 3 or 4 triangles. During theanalysis, those vertices that are removed as a result of a local merge are not randomlyselected, but a geometric criterion is used to preserve as much as possible the sharpfeatures of the mesh.

The first works involving wavelet constructions on meshes have also led to immediatepractical applications. The pioneering work of [Zorin et al., 1997] introduced a flexiblemethod for editing meshes at a much coarser level of detail. This, in effect, has thepotential to simplify the efforts of a user and allow them to concentrate on so-calledlow frequency features. The system is then capable of adding back the fine detailsthat are stored as wavelet coefficients in local coordinate frames. Conceptually, theirframework revolves around a central equation

d j = (F j )ᵀ(s j −Rs j−1) = (F j )ᵀ(I−RH)S j , (1.49)

where R is a subdivision operator, H is a linear smoothing operator (e.g. [Taubin,1995]), F j is a matrix valued function that serves as a coordinate transformationmapping, s j is a vector valued function that associates the vertices of M j with their3D coordinates and d j is another vector valued function that associates to each oddvertex in M j a detail vector. The essence of this approach is universal and can be usedregardless of the analysis and synthesis filters of the wavelet transform.

The subdivision-based multiresolution constructions discussed so far only take intoaccount the connectivity of the mesh. It is possible, however, to design a subdivisionfilter whose weights are geometry dependent. [Guskov et al., 1999] have investigatedthis option and concluded it produces superior results. Their approach is more akin toa continuous level of detail construction and combines the progressive mesh algorithm[Hoppe, 1996] with the quadric error metric [Garland and Heckbert, 1997]. At theheart of this subdivision construction lies a smoothing filter defined through the aidof an energy minimizing operator. Using finite difference approximations, a discreteenergy value is computed for each vertex in the mesh. The approach works equallywell on a simplified, functional scenario and on a surface setting. The differencebetween these two settings is the coordinate function definition. The first scenarioassumes vertices have coordinates specified via sampling a height function, i.e. are ofthe form (u, v, g (u, v)), whereas the surface setting assumes independent coordinate

31

Chapter 1. Background and related work

functions of the form (x(u, v), y(u, v), z(u, v)). The action of the relaxation operatordeveloped in [Guskov et al., 1999] is similar to that of a Laplacian smoother. Themain difference is that this operator has geometry-dependent weights and, given itssecond order approximation design, tends to produce smoother normal variationsacross the faces of the model. The multiresolution framework itself is much moredifferent than the ones discussed by previous authors. The fine-to-coarse transitionis, in this case, no longer driven by an inverse subdivision operation, but by an edgecollapse incremental simplification. The reverse operations, vertex splits, are stored asdescribed in [Hoppe, 1996], yielding a progressive mesh data structure. The advantageof this approach is that the initial geometry and connectivity of the input mesh canbe faithfully recovered. Another major difference from the classical multiresolutionconstruction is the usage of continuous level of detail. This is due to the repeatedinsertion of one vertex at a time, instead of a complete subset of odd vertices, ascommon to most subdivision schemes. Thus, the transition consists of a single vertexthat is inserted via a split operation. Its position is estimated using relaxation weightsstored at the one-ring neighbors of this vertex. The one-ring neighbors are thentreated as even vertices and updated accordingly using weights stored at the two-ring neighbors of the hub vertex. The relaxation weights and missing detail vectors(required to correct positions) are calculated during the downsampling stage andthus have to be stored for latter recovery. This leads to what the authors deem as anoversampled scheme, since for each removed vertex, detail vectors are stored for itsdirectly connected neighbors, while the update weights are computed for the entiretwo-ring vertex subset. In opposition, the classic lifting scheme design [Sweldens,1996] is critically sampled and can lead to more efficient representations in terms ofmemory requirements. However, implementing a naïve lifting-based method usingthis subdivision strategy does not lead to stable behavior. Possible applications of thismethod include multiresolution editing and displacement filtering with controllabledecay, mimicking the action of low-, band- and high-pass filters. The terms used todescribe the elements of this algorithm are not rigorous counterparts of the Euclideansetting. In this sense, a DC component for manifold data does not exist, neither canan exact frequency be established due to Heisenberg’s uncertainty principle.

A more recent, critically sampled design for irregular meshes was described by[Bertram, 2007]. This work is similar to that of [Guskov et al., 1999] in the sensethat a progressive mesh representation is used to drive the level of detail construc-tion. To achieve memory efficiency, Bertram does not use a second order predictionscheme, at the expense of creating less smoother surfaces. The central simplificationoperation, an edge collapse, is also providing the local stencil or vertex subset used topredict the lost information. For an interior edge, its endpoints, denoted by p1 and p2

in figure 1.7a, are fused together to produce a replacement vertex, p. In the originalprogressive mesh implementation of [Hoppe, 1996], the lost detail is stored using

32

1.2. Wavelet multiresolution construction

the p1 −p2 difference, leading to a lazy wavelet design. Bertram’s design capitalizeson Lounsbery’s observation that an orthogonal wavelet design produces the bestapproximation in the least squares sense. During the reverse operation, p is split intop1 and p2. Since their absolute position is not recorded, the first step is to estimatethis position using a butterfly-like stencil consisting of vertices q1,q2,q3,q4,q5 and q6.

q1

q2 q

3

q4 q

5

q6

p1 p2

c1c2

p

p1 p2

c1 c2

p

q2

q1

a) b)

Figure 1.7: Prediction scheme from [Bertram, 2007]: a) inner vertex prediction stencil, b)boundary vertex prediction stencil.

If c1 = 14 (q1+q2+q4+q5) and c2 = 1

4 (q2+q3+q5+q6), then p1 and p2 can be estimatedas

p1;2 = p+k1;2(c1 −c2), (1.50)

where k1;2 are chosen such that ‖c1 −p1‖2 +‖c2 −p2‖2 is minimized. It follows thatk1;2 =±1

2 minimizes the objective function. However, this prediction does not satisfythe convex hull property and it can lead to local artifacts. The author suggests using adesign parameter to diminish this side effect, transforming the prediction equationinto

p1;2 =αc1;2 + (1−α)(p± 1

2(c1 −c2)), (1.51)

with α ∈ [0,1].

When collapsing a boundary edge, the prediction stencil consists of only three points,p, c1 and c2, positioned as in figure 1.7b. In this case, c1;2 = 2

3 p+ 13 q1;2 and the predicted

points are computed as

p1;2 =βc1;2 + (1−β)(p± 1

2(c1 −c2)), (1.52)

with β ∈ [0,1] being another design parameter that the user can tune.

Given the relation in (1.48), a similar matrix equation can be derived for the points

33

Chapter 1. Background and related work

involved in the prediction process, i.e.(q′

1 q′2 p1 p2

)ᵀ = (R T

)(q1 q2 p w

)ᵀ, (1.53)

where R is a 4×3 matrix and T is a 4×1 column vector and q′1;2 are the displaced vertices

after p is split. Let φ j+1,1,φ j+1,2,φ j+1,3,φ j+1,4 be the scaling functions associatedwith points q′

1,q′2,p1,p2 assumed to be part of the level j + 1 representation. The

scaling functions are mutually orthogonal, hence⟨φ j+1,k ,φ j+1,l

⟩ = 0. A functionf generated by these scaling functions and their corresponding control points isthe written as f = q′

1φ j+1,1 +q′2φ j+1,2 +p1φ j+1,3 +p2φ j+1,4 and has the norm ‖ f ‖2 =

q′1ᵀq′

1 +q′2ᵀq′

2 +pᵀ1 p1 +pᵀ2 p2. The (R T) matrix is a change of basis corresponding toexpressing f = q1φ j ,1+q2φ j ,2+pφ j ,3+wψ, whereφ j ,1...3 andψ are linear combinationsof φ j+1,1...4. The change of basis equation is the equivalent of (1.41), i.e.(

φ j ,1 φ j ,2 φ j ,3 ψ)= (

φ j+1,1 φ j+1,2 φ j+1,3 φ j+1,4)(

R T)

. (1.54)

Since R is completely dependent on the known coefficients involved in the prediction,T is the correction coefficient vector that we need to determine. Using the facts that⟨ψ,φ j ,k

⟩= 0 for k ∈ 1,3 and ‖ψ‖ = 1, one can find that

T = 1p20

(1 −1 −3 3

)ᵀ. (1.55)

A similar reasoning applies for interior edges for which T vectors can also be found tobe independent of the chosen design parameters, α and β.

Numerous fields of application for a mesh wavelet multiresolution framework exist.For the purpose of our work, we have selected a terrain modeling scenario where ahigh resolution set of data is subjected to an invertible decomposition process. Terraindata is appealing due to a wealth of repositories of scans collected from aerial LiDARtraversal. Due to the inherent, very high resolution and density of these scans, almostany application where visualization, clustering and feature identification is requiredcan hugely benefit from a multilevel decomposition framework. One of the earlierapplications involving these techniques is exemplified in the work of [Yu and Ra,1999] where the raw terrain data is organized in a regular grid structure. Using 2Dwavelet transform synthesis, the cells of the grid are hierarchically subdivided. Thewavelet coefficients then dictate the direction of the edges of an emerging triangularnetwork. The magnitude of the coefficients also indicate whether a certain edgeof a cell needs to be included in the triangular representation or not. Due to thedecreasing coefficient magnitude with subdivision depth, the resulting triangulationswill be adaptive. The interpretation of the wavelet coefficients is often directly coupledwith other relevant terrain properties, such as roughness [Pai and Reissell, 1995]. In[Lee et al., 2004] these coefficients again are used to drive a template-based terrain

34

1.2. Wavelet multiresolution construction

surface model triangulation. Cells in which an energy term proportional to the sumof the wavelet detail vector magnitudes exceeds a prescribed value, the triangulationbecomes adaptive. The direction of the detail vectors also indicate which triangulationtemplate needs to be used. Wavelet analysis was found to also provide a robustestimator for scale-dependent curvature estimation and for measuring terrain slopes,as described by [Lashermes et al., 2007]. A comparison between triangular networkand grid representation approximation performance using wavelet transforms wasperformed by [Yang et al., 2005]. The irregular triangular network setting has alsoproved to be an efficient alternative for terrain modeling. The bottom-up algorithmof [Wu and Amaratunga, 2003] works on irregular terrain meshes sampled from aheight function. This approach resamples the original mesh during the synthesisphase. Instead of adopting a progressive mesh strategy for generating a coarse baserepresentation, as illustrated by either [Guskov et al., 1999] and [Bertram, 2007], [Wuand Amaratunga, 2003] use a binning strategy to find local extrema, accounting for asmall fraction of the total number of mesh points. The synthesis is then carried outusing a subdivision scheme to predict vertex positions. Due to the nature of the terraindata, only one wavelet coefficient is required to correct the predicted information andthis is stored in the height coordinate.

Spectral domain wavelet multiresolution analysis

Fourier and wavelet analysis in the scalar setup both lead to a spectral interpretationof a signal by separating it in components of different frequencies. The concept offrequency is not straightforward to define on a graph or a mesh since the connectivityis, in general, not that of a lattice. However, it is possible to assimilate the spectrum ofthe graph Laplacian with a Fourier basis. Considering the graph of vertices and edges,G(V ,E), the Laplacian is defined as the following operator

L = I−D−1/2WD−1/2, (1.56)

where W is a symmetric weight matrix and D is its associated diagonal degree matrixcontaining on the main diagonal the degree of the graph vertices. Given v ∈ V , thedegree of v is defined as

d(v) = ∑u∈N 1

v (v)

w(v,u), (1.57)

where w(u,v) is an element of the W weight matrix. [Coifman and Maggioni, 2006] usea diffusion operator, K := I−L to introduce a spectral construction of a graph wavelettransform. The central piece of this approach is the Laplacian operator. Both L and Kdescribe local similarity in G , which is what the classical sense wavelet constructiontakes advantage of. Furthermore, L is a positive semidefinite matrix that reveals

35

Chapter 1. Background and related work

immediate graph properties. It is useful to arrange the eigenvalues of L in ascendingorder, 0 =λ0 ≤λ1 ≤ . . . ≤λn−1, where n = |V |. If λi = 0 and λi+1 > 0, then G has exactlyi connected components. Since meshes have strong connectivity, then λ1 > 0. Thediffusion operator also has a practical implication. By definition,

∑v∈V K (u,v) = 1 for

any u ∈V . K can thus be viewed as a transition matrix of a random walk process. Itspowers, Km are matrices whose entries describe the probabilities of walking betweentwo separate graph nodes in m random steps. A further derived concept is that of adiffusion distance, dm(u,v) = ‖K m(u, ·)−K m(v, ·)‖. The diffusion distance behaves likea geodesic distance, but is influenced by the particular graph topology. In this sense,if there are multiple, similar length paths joining two vertices, the diffusion distancewill be small. However, if these two vertices are connected by a few paths only, thedistance becomes considerably larger, although the shortest path might not change atall.

[Coifman and Maggioni, 2006] begin their wavelet construction starting from theeigendecomposition of K. IfΦi denote the eigenvector of K for i ∈ 1,n, then a functionf ∈ L2(G) can be written in this basis as

f =n∑

i=1

⟨f ,Φi

⟩. (1.58)

Theλ−1i values are graph frequency analogues. Using this decomposition, the diffusion

distance becomes

dm(u,v) =(∑

iλ2m

i ‖Φi (u)−Φi (v)‖2

)1/2

. (1.59)

In the one-dimensional or lattice scenario, the dilation operation is straightforward tounderstand and implement. In the graph case, K fulfills the role of a dilation operatorfor function f ∈ L2(G).

The eignedecomposition of K also provides the ingredients for building a hierarchy ofapproximation spaces. Defining partial subsets of the σ(K) spectrum as

σ j (K) =λ ∈σ(K)|λ2 j+1−1

, (1.60)

for j ≥ 0, then the approximation spaces can be written in terms of the eigenvectorsas

V j = spanΦi |λi ∈σ j (K)

. (1.61)

36

1.2. Wavelet multiresolution construction

Consequently, the wavelet spaces are computed as the difference

W j =V j ªV j−1. (1.62)

The overall complexity of this wavelet transform for unweighted graphs is O(n log2 n).Decomposing graph signals is thus more expensive than uniformly sampled signals.Coifman and Maggioni address only the question of what happens with the valuesstored in the graph nodes, but the graph connectivity itself is not clearly resolvedduring the analysis.

[Hammond et al., 2011] have described a spectral graph wavelet construction thatworks for general kernels, as opposed to the diffusion kernel of [Coifman and Maggioni,2006]. The designer of the transform is required to supply a band pass filter function,g :R+ →R+ such that g (0) = 0 and lim

x→∞g (x) = 0. Then the wavelet functions at a scale

t ∈R+ are computed for each vertex v ∈V as

Ψt ,v = g (tL)δv, (1.63)

where δv is the impulse function centered at v. Similarly, the scaling functions aredefined through the use of a low pass filter function, h :R+ →R+, such that h(0) > 0and lim

x→∞h(x) = 0. A scaling function centered at v ∈V is computed via

Φv = h(L)δv. (1.64)

The novelty of the approach described in [Hammond et al., 2011] resides in the im-plementation details. Instead of diagonalizing the graph Lpalacian matrix, a costlyprocess for large graphs, the authors suggest using approximations based on Cheby-shev polynomials.

Spectral graph wavelet transforms have also proved to lead to several practical appli-cations: detecting disruptive traffic events by treating the speed as a signal distributedover the vertices of a transportation network [Mohan and Jaillet., 2014], segmentingvery high resolution images [Pham et al., 2014], shape analysis on photometric data[de Jesus Gomes Leandro et al., 2013] and image processing algorithms [Lézoray andGrady., 2012].

37

2 Graph-based wavelets

The multiresolution concept is, at least partially, present in many scientific fields, butcan be understood without using an elaborated background in Mathematics or otherreal sciences. Many arts and crafts, for example, also make use of similar mechanisms.Painters create complex scenes by starting with a roughly shaped, limited paletterepresentation of the final outcome. Then they progressively add more details usingincreasingly finer brush tips. Sculpting involves a similar strategy, where the chiseltips are the ones that help the artist transition from the coarse shape to the minutedetails that complete their work of art. A multitude of shapes that are naturally pro-duced also obey certain interesting rules such as self-similarity that can be modeledand explained using Fractal Theory. The implications in engineering applicationsare, consequently, wide, with examples ranging from efficiently transmitting andcompressing 1D analog or digital signals to filtering and compressing 2D images andeven creating 3D object representations having a much lower geometric primitivecount than the original, high fidelity models. There are several common goals of theseapplications. One immediate goal is reducing the size of the sampled signals while stillretaining the relevant details, allowing for progressively transmitting or rendering thedata with enough detail that the human eye is not able to notice the absence of anyscale-relevant features. Another possibility is filtering the input by either suppressingdetails at specific scales or augmenting certain features at other scales.

In this chapter, we review the elements of multiresolution analysis of the square-integrable function spaces. We opt for the so-called second generation wavelet trans-form, which is applied through the means of the lifting scheme ([Sweldens, 1996]).We then explain how this design can be extended to vector-valued functions definedirregular domains. In a discrete setting, the most generic irregular domain is graph,while the resulting graph and vector-valued function pair becomes a multivariategraph signal. The graph-based analysis algorithm can then be used to process varioustypes of equivalent inputs, the most relevant to our scope being that of triangular

39

Chapter 2. Graph-based wavelets

irregular networks (TIN). TINs are irregular meshes with triangular faces. The relevantinformation is stored at the mesh vertices (effectively identical to graph nodes). Theminimum required vertex information consists of geometric coordinates. For mostapplications, however, additional information is stored. Vertex color, texture coordi-nates, vegetation density or class, average ground temperature, wind direction aresome examples of scalar or vector values that vertices may also contain. In our work,we will refer to such information as attribute data to distinguish it from the geometriccoordinates.

A big part of the content of this chapter was also published in [Cioaca et al., 2016b].

2.1 Classic wavelet analysis and synthesis

2.1.1 Problem formulation

In general, wavelets are the building blocks of hierarchical function space approxima-tions, i.e. L2(R) Â . . . ÂVn ÂVn−1 Â . . . ÂV1 ÂV0 Â . . . Â 0. Let V j be a function spaceapproximation at level j . We are interested in examining the connections between twoconsecutive approximations, V j+1 and V j . LetΦ j =

[. . . φ j ,k . . .

]be the row vector

of basis functions that generate V j . Then a function f j+1 ∈V j+1 cannot be representedby using only the basis functions in V j , but it can be expressed as a combination ofthe basis functions of the V j+1 space, that is

f j+1 =Φ j+1s j+1, (2.1)

where s j+1 is an infinite column vector of scaling coefficients. The complementarybasis or wavelet functions, ψ j ,k , that generate the orthogonal subspace, W j , withV j+1 =V j ⊕W j , correspond to the lost details. One can hence write

f j+1 =Φ j+1s j+1 =Φ j s j +Ψ j w j , (2.2)

whereΨ j =[. . .ψ j ,k . . .

]and w j is the infinite column vector of wavelet coefficients.

Both the scaling and wavelet coefficients can be written in terms of internal productsbetween f j+1 and the dual basis functions of their corresponding spaces, i.e.:

s j+1 = Φᵀj+1 ¯ f j+1, (2.3)

s j = Φᵀj ¯ f j+1, (2.4)

w j = Ψᵀj ¯ f j+1, (2.5)

40

2.1. Classic wavelet analysis and synthesis

where ¯ denotes the direct inner product operator, i.e.(Φᵀj ¯ f j+1

)k= s j ,k = ⟨φ j ,k , f j+1⟩ , (2.6)

and analogously for w j .

2.1.2 Second generation wavelets

Let x = (xk )z∈Z be an infinite sampled signal.

The first operation involved in the lifting procedure is called a split or parity assign-ment. To this effect, the signal is divided into two sets, an even set, corresponding toxe = (x2k )k∈Z and an odd set, corresponding to xo = (x2k+1)k∈Z.

The second operation of the lifting procedure is the prediction step. This impliesapproximated the odd samples using the even ones by applying a prediction operator,P, i.e.

d = xo −Pxe , (2.7)

where d contains approximation errors or detail coefficients. One of the simplestpredictors is the linear average, written component-wise as

dk = x2k+1 −1

2(x2k +x2k+2). (2.8)

Lazy waveletsplitting Predictsj+1

s

s

j+1,o

j+1,e

j,o

sj,e

w OUTPUT

Pj UpdateUj

Figure 2.1: The lifting scheme diagram: Splitting (equation (2.13)) is followed by prediction viaequation (2.14) and then by the updating of the low resolution output via equation (2.15).

Usually, the even and odd sample subsets are highly correlated, and, as a directconsequence, it becomes more efficient to store the signal using the information ind as it has lower entropy than xo . The prediction phase is equivalent to mapping(xe ,xo) → (xe ,d). Since xe is essentially obtained through a naïve downsampling ofthe original signal, aliasing occurs and must be appropriately dealt with. This is

41

Chapter 2. Graph-based wavelets

performed through a third operation, the update or smoothing phase. Algebraically,this operation is implemented as

s = xe +Ud, (2.9)

where s is the smoothed downsampled signal and U is the update operator. A validoption for the update weights corresponding to the prediction step from equation(2.8) is given in the next component-wise expression

sk = x2k +1

4(dk−1 +dk ). (2.10)

By design, this choice of update weights preserves the running average of the signal.Assembling three stages of the lifting scheme into a sequence, we obtain a flow diagramshown in figure 2.1. The flow allows cascading the resulting filter bank by feeding theeven output from one lifting pass to the input of another one, effectively creating aseries of coarser approximations of the original signal.

Another immediate property of the lifting design is the straightforward invertibility,i.e.

xe = s−Ud (2.11)

xo = d+Pxe . (2.12)

Returning to the function space context, we review the mechanism behind the liftingscheme. The first operation, the split, when applied to the set of scaling coefficients atlevel j +1 produces a vector of scaling coefficients reindexed such that

s j+1 =[

s j+1,o

s j+1,e

], (2.13)

where the o and e subscripts stand for odd and even coefficients, respectively.

We write the prediction equation as

w j = s j+1,o −P j s j+1,e , (2.14)

and the update as

s j = s j+1,e +U j w j , (2.15)

with P j ∈Rno×ne being a sparse prediction matrix, U j ∈Rne×no being a sparse updatematrix and no and ne being the number of odd and even coefficients, respectively.

42

2.1. Classic wavelet analysis and synthesis

0

1

2

3

4

0

1

2

3

4

Predict

Update

Figure 2.2: Predicting the odd samples (orange dots) from their even neighbors (green dots)produces the detail vectors that further smooth the downsampled signal (magenta) during theupdate phase.

The prediction stage simply exploits the signal redundancy by assuming that theodd coefficients can be estimated as linear combinations of their spatial neighbors.If only the even coefficients are used to approximate the functions in V j+1, thenthe lost details are compensated for by redistributing them among these remainingcoefficients via the update matrix.

Since equations (2.3 - 2.5) hold for any f j+1, we can write the predict and updateequations for the duals basis functions:

Ψᵀj = Φ

ᵀj+1,o −P j Φ

ᵀj+1,e , (2.16)

Φᵀj = Φ

ᵀj+1,e +U j Ψ

ᵀj = (I−U j P j )Φᵀj+1,e +U j Φ

ᵀj+1,o . (2.17)

To deduct similar relations between the primal basis functions, we can start by rewrit-ing equation (2.2) as

[Φ j+1,o Φ j+1,e

][s j+1,o

s j+1,e

]= [Ψ j Φ j

][w j

s j

], (2.18)

43

Chapter 2. Graph-based wavelets

and, expanding the scaling and wavelet coefficients on the right-hand side usingequations (2.14) and (2.15), we arrive to

[Φ j+1,o Φ j+1,e

][s j+1,o

s j+1,e

]= [Ψ j Φ j

][s j+1,o −P j s j+1,e

(I−U j P j )s j+1,e +U j s j+1,o

]. (2.19)

Equation (2.19) must hold for any combination of the level j +1 lifting coefficients.Hence, let s j+1,e = δk , i.e. the Kronecker vector at index k, with k ∈ 1,ne , i.e. δk,i =0,∀k 6= i and δk,k = 1. Also, let s j+1,o = 0. Evaluating both sides of equation (2.19), wearrive to

Φ j+1,eδk =−Ψ j P jδk +Φ jδk −Φ j U j P jδk , (2.20)

or, since this equation holds for any k ∈ 1,ne , a more direct formulation can be writtenas

Φ j+1,e =−Ψ j P j +Φ j −Φ j U j P j . (2.21)

By setting s j+1,e = 0 and s j+1,o = δk , with k ∈ 1,no , we find that

Φ j+1,oδk =Ψ jδk +Φ j U jδk , (2.22)

or

Φ j+1,o =Ψ j +Φ j U j . (2.23)

Right-multiplying both sides of equation (2.23) by P j and adding the result to equation(2.21) we obtain:

Φ j =Φ j+1,e +Φ j+1,oP j , (2.24)

and then

Ψ j =Φ j+1,o(I−P j U j )−Φ j+1,e U j . (2.25)

Let ς j =∫ ∞−∞Φ

ᵀj (t )d t . Then integrating equation (2.24) yields:

ς j = ς j+1,e +Pᵀj ς j+1,o . (2.26)

Since the integral of the wavelet functions is zero, integrating equation (2.25) leads to:

0 = ς j+1,o −Uᵀj

(Pᵀj ς j+1,o +ς j+1,e

)= ς j+1,o −Uᵀj ς j . (2.27)

The column vectors of U j can be retrieved in a one-by-one fashion from equation

44

2.2. Wavelets on graph data

(2.27). If u jk is the kth column vector, then

ς j+1,ok= uᵀjk

ς jk . (2.28)

[Jansen, 2013] suggests choosing the minimum norm solution of this equation asit leads to increased numerical stability, as experimentally shown in [Cioaca et al.,2016b]. Thus

u jk = ς j+1,ok

ς jk

‖ς jk‖2, (2.29)

a solution that can be easily derived using any suitable optimization method such asLagrange multipliers.

2.2 Wavelets on graph data

2.2.1 Extending the lifting scheme in a manifold or graph contexts

The one-dimensional lifting scheme can be extended to functions defined on man-ifolds. Let M be a 2-dimensional manifold and F : M →Rd a multi-variate functiondefined over this manifold. Since F = ( f1, . . . , fd ) can be viewed as a tuple of d indi-vidual square-integrable functions, fi : M → R, then each of these functions can berepresented using a set of basis functions also defined on the manifold. One cangeneralize equation (2.1) as

F j+1 =Φ j+1S j+1, (2.30)

is a matrix whose columns are the s j+1iscaling coefficient vectors of fi j+1 . The theory

from the one-dimensional case does not require further changes except for workingwith scaling and wavelet matrices.

When sampling multi-variate functions defined over manifolds, we obtain a graphapproximation to a discrete counterpart of the continuous signal. In this work, thecontext of our construction is that of functions sampled over 2-dimensional mani-folds. For this reason, we will use the word graph to refer to the mesh structure thatencompasses the sampled values, called nodes or vertices, and the connectivity ortopology, comprised of edges and faces connecting these samples. The process ofpartitioning the sample set, denoted as V , into even and odd subsets, denoted by Ve

and, respectively, Vo , is still a key component of the lifting scheme design, but sincethe underlying domain is no longer one-dimensional, nor regular, the partitioningprocess is no longer trivial. As we will show in later sections, it is straightforward toapply the lifting operations in a cascaded fashion. To reflect the fact that the outputof a lifting step becomes the input of the following one and to distinguish between

45

Chapter 2. Graph-based wavelets

different levels of detail, we adopt an index-based notation, i.e. Vol and Vel notationsfor denoting the odd vertex subset and, respectively, the even vertex subset at level l .

The essence of the filter bank design illustrated in figure 2.1 is preserved in the graphcontext. Grouping together the splitting, prediction and update to yield a separation ofthe input into coarser approximation and a detail component set is exactly the samegoal the wavelet-based one-dimensional analysis has. By estimating the data in Vol

using the information from Vel , difference vectors are produced and stored for latteruse.

Classic wavelet analysis theory relies on shifting and dilating a mother wavelet func-tion to generate function bases for the subspaces of certain frequency bands. Forgraphs, the concept of frequency is not well defined, although a Fourier-like decom-position based on Laplacian eigenanalysis is possible. Examining thus the oscillatorynature of a graph signal is not possible using the same tools as for time series orimages. A root for this inconvenience is the irregular connectivity one can expect froma mesh graph structure.

Returning to our parallel with the trivial, one-dimensional construction, the placeof time series indices is taken by the nodes of the graph, where the information isconcentrated. If vil ∈ Vel denotes a vertex from the approximation set at level l , werefer to its corresponding scaling vector of coefficients by using the sl ,vil

notation.The same convention will also be used to denote the scaling functions, i.e. φl ,vil

. Thesituation is identical for the detail components, which correspond to the odd samples,v jl ∈Vol , at level l . The detail vector associated with v jl will be denoted by wl ,v jl

, whilefor the wavelet functions the ψl ,v jl

notation will be adopted. Using these conventions,we can express the equivalent multiresolution decomposition equation for graphs as

F (x) = ∑l≥0

∑vo∈Vol

wl ,voψl ,vo (x)+ ∑ve∈Vel

s0,veφ0,ve (x), (2.31)

where x ∈ M and F is an abstract signal/function defined over the manifold.

By arranging the scaling and wavelet functions into row vectors, we reproduce equa-tions (2.24) and (2.25), establishing the relationship at consecutive resolution levelsthrough the means of prediction and update filters, i.e.

Φl ,Vel=Φl+1,Vel+1

+Φl+1,Vol+1Pl , (2.32)

Ψl ,Vol+1=Φl+1,Vol+1

−Φl ,VelUl , (2.33)

where Pl is the |Vol+1 | × |Vel+1 | prediction filter matrix and Ul is the |Vel+1 | × |Vol+1 |

46

2.2. Wavelets on graph data

update filter matrix. Using the above filter matrices, a hierarchical decompositionof the scaling coefficients associated with the mesh vertices can be inferred. Thisvector-valued coefficients contain both the geometric and attribute coordinates oftheir associated vertices. Let us denote by sl ,Vel

the matrix of scaling coefficients atlevel l associated with the even nodes, Vel , the difference vectors computation andeven node updates can be written as

wl ,Vol+1= sl+1,Vol+1

−Pl sl+1,Vel+1, (2.34)

sl ,Vel= sl+1,Vel+1

+Ul wl ,Vol+1. (2.35)

Equations (2.34) and (2.35) describe the analysis stage of critically sampled liftingscheme. It is straightforward to invert this process. This converse operation, thesynthesis stage, is translated into the following two equations:

sl+1,Vel+1= sl ,Vel

−Ul wl ,Vol+1, (2.36)

sl+1,Vol+1= wl ,Vol+1

+Pl sl+1,Vel+1. (2.37)

Cascading the analysis stages yields a hierarchical wavelet decomposition of the initialmesh. The method stores the intermediary difference vectors wl ,Vol+1

and the coarsest

level scaling coefficients, s0,Ve0, with l ∈ 0,L. In order to recover the initial information,

the intermediary filter matrices, Pl and Ul , also need to be stored.

2.2.2 Graph-based lifting scheme operations

Lazy wavelet partitioning

We briefly review the construction of the generalized quadric error metric, detailedby Garland and Heckbert [Garland and Heckbert, 1998]. The goal of this metric isto facilitate computing the squared distances from any point to the support planeof a triangle. The generalized quadric error metric extends the original algorithmof [Garland and Heckbert, 1997] to work on vertices endowed with attribute data.For the remainder of this discussion, we will refer to vertices and their attributes aselements from theRn vector space, where the first three components are the geometric

47

Chapter 2. Graph-based wavelets

coordinates and the rest n −3 represent the attribute data.

Let v1,v2,v3 ∈ Rn be column vectors corresponding to the vertices of a triangle andp ∈Rn an arbitrary point. We are interested in how the squared distance from p to the∆(v1,v2,v3) triangle can be expressed. The support plane of ∆(v1,v2,v3) is uniquelydetermined by two linearly independent vectors. Moreover, one can attempt andconstruct an orthonormal frame such that two of its basis vectors are contained withinthis plane. This process only implies applying the first two steps of the Gram-Schmidtalgorithm, i.e.:

e1 = v2 −v1

‖v2 −v1‖, (2.38)

and

e2 = v3 −v1 − ((v3 −v1)ᵀe1) e1

‖v3 −v1 − ((v3 −v1)ᵀe1) e1‖. (2.39)

The remaining n −2 basis vectors can be also determined completely. Assuming allbasis components are determined, p−v1 is expressed as

p−v1 =n∑

i=1

((p−v1)ᵀei

)ei . (2.40)

Since the constructed basis is orthonormal, it follows that

‖p−v1‖2 =n∑

i=1

((p−v1)ᵀei

)2. (2.41)

Since we are interested in measuring the squared distance from p to the support planeof e1 and e2, we need to estimate the magnitude of the perpendicular componentof p−v1 relative to this plane. Then the squared distance is equal to the sum of thesquared lengths of the projection of p−v1 onto the e2, . . . , en vectors. Algebraically,this squared distance is revealed in the following equation

‖p−v1‖2 − ((p−v1)ᵀe1

)2 − ((p−v1)ᵀe2

)2 =n∑

i=3

((p−v1)ᵀei

)2. (2.42)

The above expression can be arranged in a matrix form

d(p,∆(v1,v2,v3))2 =(

p1

)ᵀ[A b

bᵀ c

](p1

), (2.43)

where d(p,∆(v1,v2,v3)) denotes the distance from p to the∆(v1,v2,v3) triangle support

48

2.2. Wavelets on graph data

plane. The block elements of the middle matrix factor are

A = I− e1eᵀ1 − e2eᵀ2 , (2.44)

b = (vᵀ1 e1)e1 + (vᵀ1 e2)e2 −v1, (2.45)

c = vᵀ1 v1 − (vᵀ1 e1)2 − (vᵀ1 e2)2. (2.46)

By denoting Q(∆(v1,v2,v3)) =[

A bbᵀ c

], one can algebraically express the sum of

squared distances from p to the support planes of a triangle family, (∆i (v1,v2,v3))i=1,N ,as:

∑i=1,N

d(p,∆i (v1,v2,v3))2 =(

p1

)ᵀ ∑i=1,N

Q (∆i (v1,v2,v3))

(

p1

). (2.47)

In the original incremental simplification algorithm [Garland and Heckbert, 1998],the set of faces in the one-ring neighborhood of each vertex is used to compute anassociated matrix:

Q(v) = ∑∆k∈N 1

f (v)

Q(∆k ), (2.48)

where N 1f (v) represents the set of all triangles incident at v.

The advantage of using the matrix notation is manifested when performing edgecollapses and fusing the endpoint vertices. Whenever two vertices, va and vb , arereplaced by a new vertex, w, the local geometric information that was characterizedby the neighborhoods of these vertices is preserved by setting Q(w) ← Q(va)+Q(vb).This way, although the mesh is coarser, the new vertex still retains the local geometricvariability of the initial model. Thus, the history of collapses is added together andrepresented as a single quadric matrix.

The matrix terms in equation (2.48) describe quadrics in the sense that all isosurfacesobtained from varying point p in equation (2.47) are quadrics. The term quadricerror metric is thus justified since these matrices offer a means of estimating an errormeasure from an arbitrary position p to a local patch around any vertex v. As describedin [Cioaca et al., 2015], this metric also allows for the introduction of a cost functionassociated to each vertex:

cost(v) =(

v1

)ᵀ ∑vi∈N 1

v (v)

Q(vi )

(v1

), (2.49)

49

Chapter 2. Graph-based wavelets

where N 1v (v) denotes the direct neighbors of v, or the one-ring vertex set.

In [Cioaca et al., 2015] we introduce an additional saliency measurement attribute andtreat the vertices of the model as points in Rn+1. We opt for a discrete bending energy(or thin plate energy) estimation since it encompasses curvature and area informationand it is also an isometric invariant.

In the continuous case, the bending energy is a well-defined quantity. If the principalcurvatures can be computed over a surface patch, A, then the amount of elasticpotential energy stored in that region can be computed by evaluating the followingintegral:

Ebendi ng =∫

A

(κ2

1 +κ22

)d A, (2.50)

where κ1 and κ2 are the principal curvature functions defined over the A patch.

The evaluation of the discrete Gaussian curvature, denoted as K (v), and of the meancurvature, denoted as H(v), can be performed as suggested by [Meyer et al., 2003].Although such estimates are known to be sensitive to noise, the data typically resultingfrom LiDAR sets does not exhibit irregularities that could affect the robustness. Re-gardless of this drawback, a curvature-based energy represents a natural measure forlocal geometric saliency over a one-ring neighbourhood. Other, more robust featurediscrimination measures could be employed, but a review and assessment of theirefficiency is beyond the scope of this paper. Nevertheless, we have considered afew other options such as the conformal factor proposed by Ben-Chen and Gotsman[Ben-Chen and Gotsman, 2008], which is more impervious to the presence of higherlevels of noise. Intuitively, the conformal factor measures the relative effort needed todeform a local neighbourhood into a spherical region with respect to the total effortneeded for the entire mesh. One argument against using this alternative is the highcomputational overhead, incurred by the resolution of a Poisson equation (furtherdetails can be found in [Ben-Chen and Gotsman, 2008]). Aside from this inconvenient,the discrimination capabilities of the conformal factor do not make it suitable foridentifying similar features within the same mesh. This is reflected in the fact thatfeatures that are found in far away regions of a mesh, but that are in essence isometric,may be assigned very different factor values.

To evaluate the discrete version of integral (2.50), we can use the Gaussian and meancurvatures to compute the sum of squared principal curvatures, or κ2

1+κ22 = 4H 2−2K .

Next, we consider a local parametrization for each ∆vi v j vk one-ring triangle. Let

v(s, t ) = (1− s − t )vi + sv j + tvk , (2.51)

50

2.2. Wavelets on graph data

with s ∈ [0,1], t ∈ [0,1− s] be such a parametrization. In the discrete context, the sumof squared curvatures can be evaluated at each vertex. The resulting discrete scalarfield can be integrated considering a face-wise interpolating function, f ≡ (κ2

1 +κ22).

For a point inside triangle ∆vi v j vk , f is defined as a barycentric combination:

f (v(s, t )) = (1− s − t ) f (vi )+ s f (v j )+ t f (vk ). (2.52)

Hence, the surface integral can be transformed into the following double integral:∫∆vi v j vk

f (x, y, z)d A =∫ 1

0

∫ 1−s

0g (s, t )

∥∥∥∥∂v

∂s× ∂v

∂t

∥∥∥∥d td s, (2.53)

where g (s, t ) = f (v(s, t )). This last expression is directly computable and leads to thefollowing discrete bending energy formulation over the one-ring face set, N 1

f , of a vi

vertex:

Ebendi ng (vi ) = ∑∆vi v j vk

∈N 1f (vi )

f (vi )+ f (v j )+ f (vk )

6·∥∥(v j −vi )× (vk −vi )

∥∥ . (2.54)

vi

vk

vj

pipj

pk

t

s

p(s,t)

v(s,t)

Figure 2.3: Computation of the bending energy for a one ring neighbourhood of a vi vertex. Foreach triangle, its corresponding energy is equal to the volume of the

[(vi ,v j ,vk ), (pi ,p j ,pk )

]truncated prism.

Alternatively, one can compute the surface integral in equation (2.53) using geometricconstructs. If pι = vι + n f (vι) are points obtained by translating the vertices of a(vi ,v j ,vk ) triangle along its unit normal, n, on a distance given by f (vι), the resultinggeometrical solid has a volume equal to the bending energy over the (vi ,v j ,vk ) triangle.

51

Chapter 2. Graph-based wavelets

An illustration of this process is given in figure 2.3: for each triangle (vi ,v j ,vk ) acorresponding (pi ,p j ,pk ) triangle is formed such that p(s, t ) = v(s, t )+ g (s, t )n.

We propose computing the discrete version of equation (2.50) by following the stepsdescribed in algorithm 1.

Algorithm 1 Thin plate energy computation

INPUT: the mesh M = (V ,E)OUTPUT: the bending energy of the vertex set, Ebendi ng (V )for vi ∈V doCOMPUTE: the Gaussian and mean curvatures of vi , K (vi ) and H(vi )COMPUTE: f (vi ) = 4H(vi )2 −2K (vi )

end forfor vi ∈V do

Ebendi ng (vi ) = 0for ∆ ∈N 1

f (vi ) do

COMPUTE: Ebendi ng (vi )+= ∫∆ f d A

end forend for

To include the computed bending energy in the cost function from equation (2.49),

one can substitute a vertex v with an (n +1)-dimensional one, v =(

vEbendi ng (v)

).

vjvi

"odd" vertex"even" vertex

Figure 2.4: The cost of removing vi with respect to its one-ring neighbours. Each v j ∈N 1v (vi )

contributes the sum of distances from vi to the support planes of each incident face at v j .

The purpose of computing the per-vertex cost values is to establish an importance-based ordering of this set. The greedy strategy we employ to label all vertices as

52

2.2. Wavelets on graph data

either even or odd is summarized in algorithm 2. The labeling process is iterativeand marks the vertices intuitively, according to their computed importance. Duringeach iteration, the vertex having the lowest cost is extracted from the set of unmarkedvertices. Its one-ring neighbors are then colored as even, while the extracted sampleis marked as odd. The intuition behind the process reflects the goal of removing lessrelevant samples, from high redundancy areas.

Algorithm 2 Vertex labeling and remeshing algorithm

INPUT: the mesh M = (V ,E)OUTPUT: an "odd-even" partitioning, V =Vo ∪Ve , coarse mesh topology M = (Ve , E)SORT: V ∗ = sort(V ) using cost(v) as a keyASSIGN: Ve =;,Vo =;, E = Ewhile V ∗ 6= ; do

v = arg minv∈V ∗(cost(v))

if can_triangulate(N 1v (v) \ v) then

for vi ∈N 1v (v) do

E = E \ v,vi end forE = E ∪create_edges(N 1

v (v))Vo =Vo ∪ vVe =Ve ∪N 1

v (v)V ∗ =V ∗ \

(v∪N 1

v (v))

elseVe =Ve ∪ vV ∗ =V ∗ \ v

end ifend while

Analyzing the vertex classification and remeshing performed by algorithm 2, wenotice the constraint of marking the neighbors of a removed odd node as even. This isjustified by the need to consistently separate the two vertex classes, a practice alsoemployed by [Guskov et al., 1999]. Another key property of this algorithm is the partialgraph connectivity alteration incurred by the removal of the odd samples. Togetherwith these nodes, their adjacent edges are also removed. Whether or not the one-ringhole bounded by N 1

v (v) \ v can be triangulated is also a key factor in deciding thelabel of v. The can_triangulate(·) function is implemented as a set of geometricaland topological consistency criteria that must be satisfied by a valid triangulation.This problem has numerous solutions, one example being the splitting plane methodof [Schroeder et al., 1992] known to produce more regular aspect ratio triangulations.It is possible for a vertex having the lowest importance score to produce invalidtriangulations, and, in this case, the vertex is marked as even. In our implementation,the triangulation of the one-ring hole is easily performed using half-edge collapses.A valid edge is selected from the set of all edges adjacent to the removed odd vertex

53

Chapter 2. Graph-based wavelets

vi vj

vk

a)

vi vj

vk

vl

vl

b)

vi

vj

vj

vk

vl

vk

vl

vl

n^

n^

c)

vi

vj

vk

vj

vk

Figure 2.5: Illegal collapse situations where the highlighted faces are involved in a breachingof one or several criteria of the can_triangulate function from algorithm 2. In case a), thecollapse "welds" together two faces, back-to-back, introducing an edge common to more thantwo triangles. In situation b), the highlighted face is "flipped" since the normal unit vectorsbefore and after the collapse point in opposite directions. "Cutting a corner" is the operationdepicted in situation c) where the corner vertex is no longer adjacent to at least two edges.

such that the quadric error measured using the Q(ve ) matrix of its even endpoint isthe smallest of all other collapsible pairs. We refer to a vertex pair to be collapsibleif it is connected through an edge and if by translating the odd vertex over the evenone the discrete manifold property of the mesh is not affected and no newly createdtriangular face is flipped with respect to its original normal vector (refer to figure 2.5for several examples of illegal collapses). Additionally, to prevent boundary shrinkage,the odd boundary vertices cannot be translated over interior even ones. Boundaryvertices can be part of a collapse if the edge connecting them is a boundary one as well.We also allow for merging an interior vertex with a boundary one when the collapsedirection is from the interior towards the border.

In the remainder of this work, to distinguish between odd and even vertex sets atdifferent resolution levels, we adopt the Vol and Vel notations for denoting the oddvertex subset and, respectively, the even vertex subset at level l .

Prediction filter construction

The goal of the prediction operation that follows the even-odd splitting is to computeestimates for the odd nodes of a graph or mesh signal from the local information

54

2.2. Wavelets on graph data

contained within even neighbor nodes. From an intuitive point of view, if the predictedvalues are closer to the actual odd samples, then it is possible to recover the a faithfulrepresentation of the entire graph or mesh signal by storing a subset of the points only.Moreover, the resulting estimates are usually obtained by applying a low-pass filter tothe even subset, while the difference between these approximations and the actualodd positions mimics the behavior of a high-pass filter. Referring to a mesh or graphlow-pass filter, we propose using a discrete Laplacian operator given its smoothingand averaging effects. As an observation, using a Laplacian operator that filters thelocal irregularities (both features and noise) may be desirable for certain applicationswhere there is no emphasis on preserving high frequency bands.

To understand how the prediction filter weights are computed, we recall the conceptof a graph Laplacian operator. For a weighted graph, the Laplacian matrix is obtainedas the difference between the weighted diagonal degree matrix, D = (di ,i ) =∑

j wi , j ,and the cost matrix, W = (wi , j ), where wi , j are the weights associated with the (vi ,v j )edges. Thus, if L = D−W, the random-walk Laplacian operator is defined as

Lr w = D−1L = I−D−1W. (2.55)

The geometric interpretation for the action this operation has on a mesh is a smooth-ing effect, also achievable through the use of a generalized umbrella operator. Anin-depth comparative discussion of various Laplacian discretizations is offered by[Desbrun et al., 1999] and [Wardetzky et al., 2007]. Concretely, the extraction of thedifference vectors wl ,Vol+1

from equation (2.34) is similar to a Laplacian smoothingwhere the difference between the smoothed vertex and its actual position is stored forlater reference. For a single vertex, vn ∈Vol+1 , this equation can be rewritten as:

wl ,vn = sl+1,vn −∑

vm∈N 1v (vn)

pl ,vn (vm)sl+1,vm , (2.56)

where pl ,vn (vm) is the prediction weight coefficient at level l associated with vertexvn and contributed by one of its even, one-ring neighbors, vm . Depending on theLaplacian discretization, several prediction weight implementations are possible. Ingeneral, the prediction weights in equation (2.56) are computed as:

pl ,vn (vm) = wn,m∑vk∈N 1

v (vn ) wn,k. (2.57)

One of the more popular Laplacian design choices is the cotangent weights Laplacian,computed as described by [Meyer et al., 2003]:

wi , j = 1

2

(cot(αi , j )+cot(βi , j )

), (2.58)

55

Chapter 2. Graph-based wavelets

while the vertex-wise Laplacian definition is

L (vi ) = 1

2Ami xed

∑v j∈N 1

v (vi )

(cot(αi j )+cot(βi j ))‖vi −v j‖, (2.59)

where the angles αi j and βi j are the opposite edge angles in the adjacent trianglesof the edge (vi ,v j ), while the mixed Voronoi area, Ami xed , takes into account theacuteness of all one-ring triangles adjacent to vi . Algorithm 3 summarizes the stepsrequired for computing this area. In figure 2.6 the elements involved in the mixedVoronoi area computation are represented.

Algorithm 3 Mixed Voronoi area computation routine. See figure 2.6 for a graphical identifica-tion of geometric entities below.

INPUT: vi ,N 1v (vi )

OUTPUT: Ami xed (vi )Ami xed (vi ) ← 0for f ∈N 1

f (vi ) doif f 6= obtuse then

AV or onoi ( f ) ← 18 (lu cotu + lv cot v)

Ami xed += AV or onoi ( f )else

if θ fi is obtuse then

Ami xed += area( f )2

elseAmi xed += area( f )

4end if

end ifend for

Both [Roy et al., 2005] and [Abdul-Rahman et al., 2013] recommend this prediction fil-ter definition for the analysis of free-form surfaces with additional attributes. Althoughits properties are desirable when dealing with mesh smoothing tasks, the weights ofthis operator depend strictly on the geometry and do not take into account any ofthe additional attributes. An alternative for this operator, that introduces movementsin the tangential plane of a vertex, is the Fujiwara or geometric Laplacian [Fujiwara,1995], which is the random-walk Laplacian associated to a cost matrix having theweights defined as:

wi , j = li , j−1, (2.60)

where li , j is the length of the (vi ,v j ) edge. This operator is scale dependent and itpreserves the distribution of triangle sizes. Several arguments support choosing thisdesign: its dependency on all geometry and range attributes, its smoothing effectbeing closer to the cotangent weight formulation than that of the umbrella operator,

56

2.2. Wavelets on graph data

α

β θ

j v

i f

i

i

j

j l u

v

u l v

i v

AVoronoi

Figure 2.6: The elements of the one-ring neighborhood of vi required to calculate the cotangentLaplacian weights.

and the predicted point being shifted towards its closest neighbours, thus inherentlyproviding a better approximation.

An alternative to the Laplacian prediction filter is to employ a least squares fitting of theprediction weights in order to minimize the approximation error, and, consequentially,the magnitudes of the difference vectors. This approach, adopted in several works[Wagner et al., 2005, Martinez-Enriquez and Ortega, 2011], proved to be numericallyunstable when applied to terrain sets. To overcome this issue, Wagner et al. [Wagneret al., 2005] did not include the boundary vertices in the downsampling process. Inregions where the one-ring neighborhood does not have a convex (x, y) projection,negative weights can appear. Furthermore, there is no control over the magnitudesof these weights, which results in an unpredictable behavior during the subsequentupdate stage. To lift these limitations, we propose a non-negative least squares (NNLS)fitting of the weights in equation (2.56), such that the magnitude of the wl ,vn vectoris minimized. Moreover, to achieve a similar Laplacian smoothing effect, the sum∑vm∈N 1

v (vn )

pl ,vn (vm) should be equal to 1. This constraint can be directly added to

the NNLS solver. By design, this modification improves the root mean square errorthroughout the hierarchical downsampling, as it will be later discussed in the results

57

Chapter 2. Graph-based wavelets

section. Having positive and convex weights allows for the extraction of odd boundaryvertices. Depending on the application needs, a constrained least squares fitting ofthe prediction weights might not be compulsory. Such examples include scenarioswhere minimizing the approximation error is not crucial or where filtering certainfrequencies is needed for augmenting or diminishing different band details.

In terms of storage complexity, the Laplacian matrix is very sparse. As a consequence,the prediction matrix at level l , Pl , is also sparse, each of its rows being populated withthe weights used to predict the same odd vertex, vn , from its even neighbours.

Update filter construction

Proven simplification methods such as the quadric error metric iteratively minimizelocal variations via edge collapses, but do not propagate the missing details. On theother hand, a wavelet transform manages this problem by redistributing the extracteddetail among the coarser scales. So far, we have described the first two stages of alifting scheme: the lazy wavelet vertex labelling and the prediction filter design. Theresulting difference vectors correspond to removed information. In essence, withoutcompensating for these losses, the algorithm shares more similarities with thinningor simplification methods. The coarser mesh, consisting of even nodes, needs toconsistently reflect the properties of the finer resolution levels. This is achieved bydesigning an update filter capable of distributing the lost details among the evenvertices in a way that preserves an aggregate signal property. One common optionwhich we also enforce is the conservation of signal average. The benefit of this designis its inherent ability to distribute the lost information throughout the coarse meshvertices and also contributing to maintaining both overall shape and decreasing theapproximation error, as we will later experimentally demonstrate. Nevertheless, aninteresting property of a straightforward incremental simplification, driven by thequadric error metric, must be noted. Since the two endpoints of a collapsed edgefuse into a new one, so do their quadric error matrices. This operation guaranteesthat at any resolution scale the error is computed with respect to the original mesh.We have recently explored the option of incorporating this mechanism within thelifting scheme, but we experimentally noticed that no consistent improvements in theapproximation error were achieved [Cioaca et al., 2015].

A consistent wavelet transform must, after each decimation stage, preserve the averageof the signal on the entire mesh. A good starting point for incorporating this propertyinto the update filter is to account for the distortions incurred during the removal of theodd nodes through the prediction operation. Thus, the update filter should expressa dependency on the prediction weights. In [Narang and Ortega, 2009, Martinez-Enriquez and Ortega, 2011], the authors suggest the following expression for the

58

2.2. Wavelets on graph data

update filter vectors:

ul ,vu = 0.5∑vp,i∈N 1

v (vu )∩Vol+1

pl ,vp,i

[pl ,vp,1 , pl ,vp,2 , . . . , pl ,vp,k

], (2.61)

where vu represents an even vertex, vp,i denotes an odd one-ring neighbour of thisvertex, and pl ,vp,i ≡ pl ,vp,i (vu) is the prediction weight vu contributed in estimating itsvp,i odd neighbour. By using this design, there is no guarantee the signal average willbe preserved, unless applied to unweighted graphs, hence when using the umbrellaoperator Laplacian.

Abdul-Rahman et al. [Abdul-Rahman et al., 2013] proposed a similar approach wherethe update filter construction aims to directly preserve the average value of the one-ring neighbourhood of an odd vertex before and after its removal. Using the sameupdate vector for all even neighbours, the following equation ensues:

1

N +1

wl ,vn +∑

vm∈N 1v (vn )

(pl ,vn (vm)+1)sl+1,vm

= 1

N

∑vm∈N 1

v (vn )

(sl+1,vm +ul ,vm ), (2.62)

with N = |N 1v (vn)|, and the update vectors ul ,vi = ul ,v j = uN 1

v (vn ) for any vi ,v j ∈N 1

v (vn). Thus, the uniform update vector is determined as:

uN 1v (vn ) =

1

N +1wl ,vn +

∑vm∈N 1

v (vn )

N pl ,vn (vm)−1

N (N +1)sl+1,vm . (2.63)

In case the prediction filter weights correspond to the umbrella operator type ofLaplacian, the second term in equation (2.63) vanishes. Generally, this design requiresstoring update weights for both difference vectors and even nodes from the previouslevel, thus becoming a more memory consuming approach. By aiming to directlypreserve the one-ring average of the scaling coefficients, it becomes more difficult tofind update weights that depend only on the difference vectors. This is due to the factthat determining such weights implies solving a sparse system involving all scalingcoefficients. In the multi-variate scenario, this system becomes overdetermined andan exact solution may not exist. In this situation, an approximate solution mustbe searched for. In its terms, this is a process more complex than the entire liftingpipeline.

In [Cioaca et al., 2016b] we also considered the solution proposed by Jansen et al.[Jansen et al., 2001]. In principle, it also exploits the average preserving requirement.This prerequisite provides a mathematical constraint that can be expressed in termsof the integrals of the scaling functions, as described for the one-dimensional contextdiscussion. Let ςl ,vu be the integral of the scaling function φl ,vu (i.e. an element of

59

Chapter 2. Graph-based wavelets

Φl ,Vel+1corresponding to the vertex vu ∈ El ). Rewriting equation (2.26), we obtain

ςl ,vu = ςl+1,vu +∑

vk∈N 1v (vu)∩Vol+1

pl ,vk (vu)ςl+1,vk . (2.64)

The wavelet biorthogonality condition requires for each wavelet function to have zerointegral. In consequence, when integrating equation (2.33) the left hand side termvanishes, i.e.:

0 = ςl+1,Vol+1−Ulςl ,Vel

. (2.65)

Further rewriting equation (2.28) for each predicted vertex, vp ∈Vol+1 , leads to

ςl+1,vp = uTl ,vp

ςl ,N 1v (vp ), (2.66)

where ul ,vp is the vector containing the update weights this vertex contributes with foreach of its one-ring, even vertices. Finding ul ,vp requires solving an overdetermined

equation of the form α = uTv, where u is the unknown vector. From all possiblesolutions, both Jansen et al. [Jansen et al., 2001] and Wagner et al. [Wagner et al.,2005] choose the minimum update norm solution due to its stabilizing effect. Thistranslates into setting u = αv

‖v‖2 . Finally, equation (2.29), which gives the expression ofthe update vector of coefficients for vp , becomes:

ul ,vp =ςl+1,vp∑

vk∈N 1v (vp )ς

2l ,vk

ςl ,N 1v (vp ). (2.67)

With these results, the update equation (2.35) of an even scaling coefficient for a vertexvu is written as:

sl ,vu = sl+1,vu +∑

vn∈N 1v (vu)∩Vol+1

ul ,vu (vn)wl ,vn (2.68)

The choice of the scaling functions does not affect the so far described transform.Since the initial integrals ςl+1,El+1 need to be computed, one option is to assume achoice of the scaling functions such that these integrals are all equal to 1.

Given the fact that a terrain mesh has sparse connectivity, the filter matrices are alsosparse. Each odd node is surrounded by even nodes, ensuring a 25% average reductionfactor for each decimation stage. Asymptotically, almost 80% of the initial edge densitywill still be required to store the filter matrices. Nevertheless, the information is stillvery sparse and lends itself for specific algebraic manipulations after the cascadedanalysis stages.

60

2.2. Wavelets on graph data

2.2.3 Algorithm overview

The lifting scheme flow depicted in figure 2.1 is at the core of the iterative downsam-pling process, illustrated in figure 2.7 and summarized in algorithm 4. In overview,we can identify three main stages: the cost computation, the labelling or lazy waveletdecomposition and the analysis itself. Together, these stages resemble the structure ofa classical filter bank.

Algorithm 4 Downsampling algorithm

INPUT: a d-dimensional point cloud consisting of vertex-attribute pairs.OUTPUT: the lowest resolution vertex set, s0,V0 , the chain of prediction and update matrices,(Pl )l and (Ul )l , and the string of difference vectors, (wl ,Vol+1

)l , where l ranges from 0 to thetotal number of refinement levels, L.TRIANGULATE: the input set, VL .for l := L - 1 downto 0 doCOMPUTE: the removal cost of each vertex using algorithm 1PARTITION: the vertex set Vl+1 =Vel+1 ∪Vol+1 using algorithm 2.COMPUTE: wl ,Vol+1

and sl ,Velfrom sl+1,Vel+1

using equations (2.34) and (2.35)STORE: Pl , Ul and wl ,Vol+1

end forSTORE: s0,V0

This algorithm has O(N log N ) complexity (where N is the total number of vertices).This higher complexity is due to the nodes being sorted according to their removalcost. While an O(N ) complexity is achievable, the salient features will not be preservedas faithfully (see figure 2.11). The initial triangulation can be performed only once,during the pre-processing stage. During the downsampling steps, the one-rings ofthe odd vertices can be re-triangulated on the fly, keeping a consistent manifoldconnectivity.

The spatial complexity of this method is linear with respect to the size of the inputdata set. More precisely, the lowest resolution data and the difference vectors requirethe same amount of storage as the initial point cloud. Empirically, the triangulatedmeshes will not be far from semi-regular, thus the prediction weights will require6N scalars in total. For the update weights, sparse structures corresponding to evenvertices being surrounded by 3 odd vertices on average have to be stored. Assuminga decimation rate of 25%, the spatial requirements for storing the update weightsasymptotically approach 15N .

Quadric error matrix update procedure

So far, the details that are contained in the removed odd samples are stored in thewavelet coefficients and the remaining even samples are updated to preserve the

61

Chapter 2. Graph-based wavelets

Computefcost

Computefcurvature

ComputefQEM

SORT

TAGfNODES

Predict

Update Store: Ul

,Store: Plwl,Vl+1

Lifting

Cos

tfco

mpu

tatio

n

Output

Labe

lling

Figure 2.7: An overview of our hybrid algorithm for downsampling an input set.

mean of the original signal. Nevertheless, the question concerning the fate of theinformation contained within the quadric error matrices of the odd samples is stillunanswered. The immediate choice is distributing the matrix corresponding to anodd sample, Q(vo j+1 ), among its even neighbors. Thus, each even matrix is updated asdescribed by the following equation

Q(ve j ) = Q(ve j+1 )+ ∑vo j+1∈N 1

v (ve j+1 )∩Vo j+1

ωve j+1(vo j+1 )Q(vo j+1 ), (2.69)

where ωve j+1(vo j+1 ) is the redistribution weight describing the influence of vo j+1 on its

even neighbor, ve j+1 . We propose using the same weights that the prediction filter

62

2.3. Numerical and visual experiments

relies on estimating the lost information, i.e.

ω j ,ve j+1(vo j+1 ) =

p j ,vo j+1(ve j+1 )∑

vu j+1∈N 1v (vo j+1 ) p j ,vo j+1

(vu j+1 ). (2.70)

This choice is natural since the even vertex that contributes more to the prediction ofan odd neighbor receives a larger fraction of its quadric error matrix. We justify this tobe a more natural choice given that most prediction weights automatically encode anode similarity magnitude (this is obviously the case of non-linear least squares andFujiwara Laplacian weights).

Other quadric error matrix redistribution weights choices and strategies are possibleand were analyzed in [Cioaca et al., 2015] and [Cioaca et al., 2016a]. Experimentally,the choice of weights presented through equation (2.70) was determined to achieve,on average, slightly more accurate approximations than the alternatives presented inour published works.

2.3 Numerical and visual experiments

We assessed the validity and efficiency of our method through a series of experimentsinvolving three different LiDAR sets. The first model is a scan fragment of the GreatSmoky Mountains (available through the www.opentopography.org/ portal) with adensity of approximately 2.23 points per square metre and a size of 280,000 points(figure 2.8). The second set is larger and much denser at approximately 20 pointsper square meter and a count of 9 million (figure 2.9). The third set is larger butless denser, consisting of 11.5 million points, at a density of 5 points per squaremeter (figure 2.10). These larger and denser LiDAR samples were acquired throughcustom aerial scans conducted over two regions of the Romanian Carpathians. Allterrain samples contain both geometry (point coordinates) and attribute information(i.e. vegetation type, as a scalar between 0 and 20, and height above ground, asa scalar between 0 and 255). For further visual assessment, we also include twoclosed, genus 0 meshes (available at liris.cnrs.fr/meshbenchmark/, more preciselythe Dragon model, consisting of 50,000 points, and the Ramesses model, totaling820,000 points). All coordinates are translated and scaled to fit within a zero-centredunit bounding box dividing them by their range width. This way we significantlyalleviate the effect of the diverse scales on the final outcome. However, the attributescould be scaled differently if one desires to diminish or enhance their contribution.

63

Chapter 2. Graph-based wavelets

2.3.1 Root mean squared error measurements

As a measure of quality and accuracy, we have chosen the root mean square error(RMSE). Although other error measuring mechanisms exist, the RMSE or L2 normis one of the simplest and most efficient indicators of shape and attribute quality(see [Farin, 2003] and [Payan and Antonini, 2006] for a more in-depth discussion ofthe properties and applications of this error). In our case, the RMSE computationconcerns both geometry and attribute vertex coordinates, except for the artificiallyadded bending energy. Thus, if sl ,vi is the scaling coefficient at level l of a node vi , andsL,vi is the corresponding coefficient in the initial input set, the RMSE is evaluated as:

RMSEl =√ ∑

vi∈El

‖sL,vi −sl ,vi ‖2. (2.71)

For the multiresolution representation experiments, we have also considered sev-eral prediction and update filter designs. In this respect, we labelled the result setsaccording to the type of prediction and update filters as follows:

• prediction filters: uniform weights obtained by using the unweighted graphLaplacian (UG), used in several works such as those of [Narang and Ortega,2009] and of [Abdul-Rahman et al., 2013], the cotangent Laplacian weights (CL),also used Abdul-Rahman et al., the Fujiwara or geometric Laplacian (GL), whichis our proposal for a Laplacian design for multi-variate data and a constrainednon-negative least squares weights design (abbreviated as NNLS), which wepropose in order to minimize the detail vector norms.

• update filters: the filter design proposed by [Narang and Ortega, 2009] and also by[Martinez-Enriquez and Ortega, 2011] compensates for the detail loss incurredby the removal of the "odd" vertices, but it does not preserve the graph signalaverage for weighted graphs, unless all weights are uniform. On the other hand,the design used in [Jansen et al., 2001, Wagner et al., 2005, Wagner et al., 2006],achieves this goal while minimizing the norm of the update coefficient vectors.To distinguish between the first option and the minimum norm update weights,we have added the MN suffix to the prediction filter abbreviation. The third andfinal design option, proposed in [Abdul-Rahman et al., 2013], preserves the local,one-ring mean of the data samples and is abbreviated as ORMP.

64

2.3. Numerical and visual experiments

(a) (b)

Figure 2.8: Smoky Mountains fragment. Top row, left to right: shape and attribute evolutionat levels 0, 12 and 24 using the UG filters. Bottom row: comparative charts for the RMSEevolution across 12 analysis sequences.

(a) (b)

Figure 2.9: High-density Carpathian Mountains fragment. Top row, left to right: shape andattribute evolution at levels 0, 12 and 24 the UG filters. Bottom row: comparative charts forthe RMSE evolution across 12 analysis sequences.

65

Chapter 2. Graph-based wavelets

(a) (b)

Figure 2.10: Low-density Carpathian Mountains fragment. Top row, left to right: shape andattribute evolution at levels 0, 12 and 24 the UG filters. Bottom row: comparative charts forthe RMSE evolution across 12 analysis sequences.

2.3.2 Feature selectivity and robustness to noise

For a proof of concept, the Smoky Mountains terrain fragment and subjected to asequence of 8 analysis steps. The same set was again analyzed using the coloringstrategy employed in [Wagner et al., 2005, Wagner et al., 2006, Narang and Ortega,2009]. Without our proposed feature preservation heuristic, the lowest resolutionrepresentation will lose a bigger fraction of the sharp features, as depicted in figure2.11.

Another visual experiment illustrates the effects of geometric variability lazy waveletpartitioning. In figures 2.12 and 2.13 the Dragon and Ramesses models are subjectedto a cascade of 8 analysis steps. For both input sets, we have switched on and off theone-ring importance cost. Overall, the preceived effects of naïvely labeling nodesis a rougher approximation surface, especially in salient feature regions. Anotherkey factor in preventing serious geometric and topological artifacts is the remeshingmechanism described in algorithm 2. It is for this reason that, even when naïvelyclassifying vertices, the coarser meshes do not lose most of their features.

Computing the discrete curvatures using the method of [Meyer et al., 2003] is rec-ommended for meshes with low to no noise. To test the robustness and relevance ofthe proposed heuristic cost, we have benchmarked the thin plate energy against theLaplacian weighing method proposed [Zhang et al., 2012], as well as against the dis-

66

2.3. Numerical and visual experiments

Figure 2.11: Preservation of salient features after 8 analysis steps. Top image: high-density,high-detail input (1.6M faces), middle image (160K triangles): the combined QEM and thinplate energy cost, bottom image (158K triangles): the graph colouring strategy used in [Wagneret al., 2005] and [Narang and Ortega, 2009].

67

Chapter 2. Graph-based wavelets

Figure 2.12: The Dragon mesh after 8 analysis steps. Top row: high resolution model. Middlerow: coarse approximation with the cost-based partitioning enabled. Bottom row: coarseapproximation with naïve vertex partitioning. The rendering is performed using a heat colormapping of the vertex cost values.

68

2.3. Numerical and visual experiments

Figure 2.13: The Ramesses model after 8 analysis steps. Top row: high resolution model.Middle row: coarse approximation with the cost-based partitioning enabled. Bottom row:coarse approximation with naïve vertex partitioning. The rendering is performed using a heatcolor mapping of the vertex cost values.

69

Chapter 2. Graph-based wavelets

crete conformal factor, introduced by [Ben-Chen and Gotsman, 2008]. The conformalfactor is defined as the solution to the following matrix equation:

LΦ= Kt ar g et −Kor i g , (2.72)

where L is the discrete Laplace-Beltrami operator (citation needed), Kor i g is the vectorcontaining the Gaussian curvature of the entire mesh and Kt ar g et is the uniformGaussian curvature vector of the same mesh. The Gaussian curvature of a singlevertex, vi is defined as the angular defect:

κor i gi =

2π− ∑

f ∈N 1f (vi )

θfi if vi ∈ V (M) \V (∂M)

π− ∑f ∈N 1

f (vi )θ

fi if vi ∈ V (∂M)

. (2.73)

The target Gaussian curvature of vi is defined such that it assigns to each vertex afraction of the total Gaussian curvature of the mesh, i.e.:

κt ar g eti =

( ∑v j∈V (M)

κor i gj

) ∑f ∈N 1

f (vi )

13 area( f )

∑f ∈F (M)

area( f ). (2.74)

Intuitively, the conformal factor measures the relative effort needed to deform a localneighbourhood into a spherical region with respect to the total effort needed for theentire mesh. One argument against using this alternative is the high computationaloverhead, incurred by the resolution of a Poisson equation (further details can befound in [Ben-Chen and Gotsman, 2008]). Aside from this inconvenient, the discrim-ination capabilities of the conformal factor do not make it suitable for identifyingsimilar features within the same mesh. This is reflected in the fact that features thatare found in far away regions of a mesh, but that are in essence isometric, may beassigned very different factor values.

The data sets we used during the tests are altered versions of the Smoky terrainfragment, shown in figure 2.8.

The feature discrimination benchmark tests we conducted are reflected by the colourcoded input meshes depicted in figure 2.14, where each row corresponds to a singlecost being used to weigh the features of this same set in 3 circumstances: the original,noise-free set, with noise added to the height coordinate (Gaussian noise with zeromean and σ= 1), and, finally the terrain where the vegetation layer was merged withthe geometry by shifting the coordinates of all points according to their heights above

70

2.3. Numerical and visual experiments

(a) Conformal factor weighing

(b) Laplacian cost weighing

(c) Thin plate energy weighing

Figure 2.14: Colour coded geometry weighing methods. On each row, from left to right: theoriginal mesh, the mesh with artificial Gaussian noise and the mesh with vegetation heightabove ground added to the geometric coordinates. The same heat map legend of the [0,1]interval shown in figure 2.14c is used for all three cost heuristics. A prior normalization isrequired to map the cost values to the [0,1] range.

71

Chapter 2. Graph-based wavelets

0

1

2

3

4

5

6

7

123456789101112

UnperturbedCF LC TPE

(a) The unperturbed Smoky Mountains set.

0

1

2

3

4

5

6

7

123456789101112

Noise perturbedCFN LCN TPEN

(b) Artificial Gaussian noise (σ = 1) added tothe height coordinate.

0

2

4

6

8

10

123456789101112

Vegetation includedCFV LCV TPEV

(c) The height above ground added to theheight coordinate.

Figure 2.15: RMSE comparative charts of the conformal factor (CF, CFN, CFV), Laplacian cost(LC, LCN, LCV) and thin plate energy (TPE, TPEN, TPEV).

ground. The conformal factor is the least affected by noise, as seen in figure 2.14a.However, since the conformal factor magnitude in a region is relative to the overallshape, this also implies there is no actual guarantee that most high frequency featureswill be as important as others situated in different portions of the terrain (i.e. a rockon top of a mountain as compared to that same rock being placed on a flatter region).We have found the Laplacian cost weighing, represented in figure 2.14b), to be slightlyless capable of distinguishing between small scale details, as compared to our thinplate energy estimator, shown in figure 2.14c. In terms of robustness, both Laplacianand energy cost heuristics become incapable of correctly discriminating the vertices.

Finally, the side-by-side RMSE results of using these three cost computation methodsare shown in figure 2.15. For the unperturbed terrain sample, the results in chart 2.15a

72

2.3. Numerical and visual experiments

indicate the conformal factor to actually increase the mean error, while both thin plateenergy and Laplacian cost are producing similar quality results. When the terrain isperturbed with Gaussian noise, chart 2.15b, the conformal factor is again constantlyoutperformed by the other two options, while the mean error increases unperceivablyin all three cases. Finally, when the vegetation is included in the geometric data, chart2.15c, the Laplacian cost performs the worst. This can be explained by the fact that thiscost is both noise sensitive and less semantically adapted for distinguishing betweencertain geometric features (for example, saddle and flat regions may get assigned asimilar importance when Laplacian weighing is used). Thus, given the lack of localdiscriminative properties and very high computational overhead the conformal factorhas, we do not recommend it for these types of meshes. Instead, the more localizedcosts such as the Laplacian and thin plate energy estimators seem to be a betterchoice. In situations where the initial noise is pronounced, the experiments favourthe energy-based cost over the other benchmarked options.

2.3.3 Discussion and conclusions

Several conclusions can be drawn by analysing the results obtained using the dif-ferent lifting designs. First, by using the update designs that are not guaranteed topreserve the signal average for general graphs (i.e. [Narang and Ortega, 2009, Martinez-Enriquez and Ortega, 2011]), we observe the RMSE levels have the highest values,regardless of the prediction filter design. As such, the charts 2.8a, 2.9a and 2.10a revealthat over a progression of 12 analysis steps, the uniform weighing prediction design(UG) is, on average, the better choice. While the geometric Laplacian (GL) and thenon-negative least squares weights (NNLS) yield better quality results, after 6 or 7 de-composition steps they become unstable. The use of the cotangent Laplacian weights(CL) is not justified either, since this design takes into account only the geometricstructure of the data, regardless of the attribute variability. Overall, both uniform andcotangent Laplacian weights produce more stable results, but the uniform design is tobe preferred due to its consistently lower RMSE levels. Next, directly preserving theaverage of the scale coefficients in a one-ring neighbourhood (ORMP) contributes toboth stability and error-minimizing properties of the analysis sequence for all sets(charts 2.8b, 2.9b and 2.10b). The best results are, however, achieved through theuse of the minimum norm, mean preserving update weights (proposed by Jansenet al. [Jansen et al., 2001]). This design ensures the highest stability while sensiblydecreasing the mean square error. More specifically, for all terrain sets the ORMPdesign is surpassed by the combined use of Laplacian prediction weights and theminimum norm update vector coefficients. Both of our proposals, the geometricLaplacian (GLMN) and the non-negative least squares (NNLSMN) attain an almosttwofold accuracy over the cotangent (CLMN) and uniform weights Laplacian (UGMN).While the RMSE could be reduced even further by lifting the constraints on the least

73

Chapter 2. Graph-based wavelets

squares prediction filter, as proposed by [Wagner et al., 2006] and [Martinez-Enriquezand Ortega, 2011], the scheme becomes numerically unstable due to both the po-tentially very high values of the weights and the prediction of the boundary vertices.While we can fix the boundary vertices and alleviate the stability issue, our designdoes not require such vertex selection constraints to be applied.

The multiresolution experiments conducted with the three samples also confirm the25% reduction ratio of the number of vertices after each downsampling step. Morespecifically, the average reduction rate attained for the Smoky set (figure 2.8) is 27%,for the high-density Carpathian set (figure 2.9) the average ratio is 28%, and for thelow-density Carpathian set (figure 2.10) this average ratio is 27%.

74

3 Feature preserving multiresolutionanalysis

In the previous chapter we have seen the correlation between the way samples arepartitioned, the local features of the data and the approximation error resulting fromthe wavelet analysis process. While a completely wavelet-based multiresolution anal-ysis framework may not, in general, allow for the preservation of all salient features,heuristically guiding the partitioning of the data samples into odd and even categoriescan improve the accuracy of the hierarchical approximation. The intuitive explanationof this phenomenon is that the odd samples should correspond to features that areredundant at the scale of resolution where the analysis is performed. This, in term,translates to wavelet coefficients that, on average, have a lower magnitude and lead toa more accurate approximation.

Most concepts illustrated in this chapter have also been discussed in [Cioaca et al.,2016c].

3.1 Incremental simplification versus wavelet analysis

In chapter 1 we have reviewed a series of methods for geometric simplification (e.g.point cloud thinning or incremental mesh decimation). Remarkable results are ob-tained using state of the art methods pertaining to this class of algorithms. When thegoal is no longer only generating different levels of resolution using simplificationalone, these methods have a series of drawbacks. Wavelet-based multiresolutiondecomposition, on the other hand, can serve a similar simplification purpose. In addi-tion, as explained in chapter 2, the information removed in the simplification processis stored separately, but also judiciously redistributed as to preserve the (local) signalaverage and smooth out the more severe aliasing artifacts. While some simplificationsmethods rely on reversible operations and can also behave like antialiasing filters(e.g. the QSlim quadric error metric method [Garland and Heckbert, 1997]), it is notpossible to directly use them for filtering or multiresolution editing tasks. For a better

75

Chapter 3. Feature preserving multiresolution analysis

understanding of which usage scenario is best matched to what geometric data pro-cessing familiy of methods we have prepared the flowchart presented in the Appendixof this thesis, figure A.1. Regardless whether the input lacks connectivity information(the case of point clouds) or not, we notice that, for pure simplification goals, it is moreefficient to use specialized methods. As seen in chapter 2, wavelet multiresolutionmethods also serve this purpose, but the simplification involves all mesh regions,not being adaptive as other dedicated alternatives. In this chapter, we eliminate theprediction and update stages from the lifting scheme design. What we are left with isthe lazy wavelet splitting that becomes the basis of a model simplification algorithm.From this point of view, we find ourselves in the last leaf situation depicted in figureA.1, i.e. mesh simplification. Nevertheless, we note that the methods we presentin this chapter can easily be employed in the point cloud context provided nearestneighbor queries are used instead of a fixed mesh structure. Since we have removedthe prediction and update lifting stages, adding them back would lead to a mesh liftingscheme context. We instead focus on the approximation quality, which is central toboth editing and filtering applications, as well as to coarsening ones.

3.2 Heuristic driven lazy wavelet partitioning

3.2.1 Scale-dependent feature descriptors

Local neighborhoods, scale parameters and dense feature descriptor definitions

The term "descriptor" has broad connotations and it is usually defined by specifyingan associated measured entity and the domain of values it can assign to this entity.This means that a descriptor definition can be stated for entities that span acrossmultiple faces of a simplicial mesh, or for entities that are sets containing isolatedpoints. The last option allows for assigning a set of additional attributes to eachmesh vertex, whereas defining a descriptor on an entire region is useful for clusteringapplications. Descriptors can thus assign a scalar or a vector value to each of theentities they measure. Since it becomes useful to separate vertices into two categories,descriptors that assign scalar values to individual vertices are the most appropriate.

Defining what such descriptors look like requires the introduction of the ingredientsthat can be used to define the scale of the features these descriptors operate on. Formesh models, a related concept is that of a local neighborhood, which is definedthrough the aid of both the topological and geometrical characteristics of the mesh.Several authors have addressed the notions of scale and neighborhood, discussingseveral possible definitions of a neighborhood-based scale concept (see the worksof [Yang and Shen, 2012], [Rocca et al., 2011], [Ho and Gibbins, 2009]). So far, wehave defined and used the concept of a one-ring neighborhood. An extension of this

76

3.2. Heuristic driven lazy wavelet partitioning

construct called an n-ring neighborhood (see [Botsch et al., 2010]) is naturally definedfor a vertex v ∈V and is denoted by N n

v (v). By definition, a vertex vi ∈V is an elementof the N n

v (v) set if the shortest topological path connecting it to vertex v consists of atmost n edges. In all, the n-ring neighborhood represents a set of vertices at a certaintopological scale identified by the number of rings, n, around the hub vertex, v. If oneneeds a way to refer to the faces contained in such a neighborhood, a distinct notationcan be used N n

f (v) to refer to a set containing triangular face elements instead ofvertices. Since most meshes are irregular both in terms of sampling density and vertexvalence (i.e. the number of edges incident at that vertex), an n-ring neighborhoodalone does not accurately reflect a geometric scale. A more suitable concept is that ofa local surface patch of radius r (see [Mitra et al., 2006]), centered at vertex v, denotedby Pv (v,r ). Another vertex, vi , is an element of this set if the distance between v andvi is less than or equal to r . A common choice for measuring distances across surfacesis the geodesic distance, but, for small local neighborhoods, the Euclidean distanceis also a suitable approximation to the otherwise more computationally complexgeodesic distance. By combining the n-ring neighborhood and the local surface patchof a vertex, we can further define the notion of a local window:

W nv (v,r ) =N n

v (v)∩Pv (v,r ), (3.1)

which comprises all vertices within an r radius around v, but not further than n ringsfrom it.

vvi

r

Figure 3.1: A window neighbourhood W nv (v,r ) with n = 2. The blue vertices are inside the

window, while the orange vertices are outside the sphere centered at v and of radius r . The redvertex, although inside this sphere, is more than 2 topological rings away from v.

Using the local window set defined in equation (3.1), a vertex-wise (or dense) descrip-tor function (see [Bronstein et al., 2011]), denoted by D(v,n,r ) : V ×N×(0,∞) → [0,∞),represents a mechanism for measuring geometric variability inside the window re-gions around each vertex. Both n, the number of rings, and r , the maximum radius,

77

Chapter 3. Feature preserving multiresolution analysis

parameters from the definition of the descriptor function are properties that togetheridentify a certain scale. The set pair (V ,D(V ,n,r )) then provides a means for settingpriorities to each of the vertices in V . The discriminative capabilities of D(·,n,r ) areparamount for improving the model approximation error. This is straightforwardsince the information corresponding to the odd vertices is lost during the analysisstage. If the odd samples correspond to low discriminator values, then there is a higherchance that their removal will not incur large amounts of geometric distortion.

Descriptor-driven even-odd partitioning

The prediction operation part of the lifting scheme design requires that the oddsamples are estimated using the values from their even neighbors. In the case of amesh, each odd vertex needs to be connected to even neighbors only. Otherwise,predicting the position of an odd vertex cannot be performed consistently. Ideally,when projecting an odd vertex and the convex hull of its even neighbors onto theaverage plane of the one-ring neighborhood, the projection of this odd vertex shouldlie in the interior of the projected hull.

Algorithm 5 Descriptor-driven lazy wavelet partitioning

Require: M = (V ,E), n ∈N∗, r > 0Ensure: V =VE ∪VO

VE ←∅, VO ←∅V ′ ←= SORT(V ,key(v) = D(v,n,r ))for all v ∈V ′ do

if v ∉VO ∪VE and can triangulate N 1v (v) then

VO ←VO ∪ vVE ←VE ∪N 1

v (v)triangulate N 1

v (v)end if

end for

The steps for building the set of odd and even vertices, denoted by VO and VE , respec-tively, are illustrated in algorithm 5. Once computed, the descriptor values for thespecified scale serve as keys for sorting the mesh vertices. The rest of the algorithmgreedily selects the least relevant vertices and assigns them iteratively to the VO set,while their one-ring neighbors are assigned in batches to VE . We note that the parti-tioning is carried out in conjunction with the triangulation of the one-ring holes. Avertex v is marked as odd if and only if it has not been assigned to any of the even orodd subsets and if its one-ring neighborhood supports a valid triangulation once v isextracted from V . The triangulation can be performed using the algorithm describedby [Schroeder et al., 1992].

Once the even and odd partitions are created for a scale corresponding to the i th level

78

3.2. Heuristic driven lazy wavelet partitioning

of resolution, a mesh approximation, Mi−1, is created. The simplification process cancontinue by simply employing algorithm 5. This way, the set VE becomes the newinput for the partitioning algorithm. Due to the vertex loss, the density of the newmesh approximation decreases. To reflect this change, the radius of the descriptorfunction must be increased. This is performed by replacing r with λ · r , where λ is adesign parameter typically between 1.5 and 2.

The effect that both radius and ring number parameters have is also important whendealing with data corrupted by noise. In this sense, increasing these parametersstrengthens the robustness to noise of the D(v,n,r ) descriptor function. The trade-offis thus between distinguishing high frequency details and coherently estimating thegeometric variability of the patch even in the presence of noise.

3.2.2 Geometric variability dense scale-dependent descriptors

PCA separability index

Computing the principal components of the covariance matrix inside a W nv (v,r ) win-

dow constitutes a more robust alternative to evaluating discrete curvatures as a mea-sure for surface variability. Pauly et al. [Pauly et al., 2002] proposed computingD(v,n,r ) using a surface variation cost equivalent to the separability index of thesingular value decomposition of the data matrix of the interest window. In practice,it suffices to compute the eigenvalues of the covariance matrix, C(W n

v (v,r )), indexedaccording to their ascending order λ0 ≤λ1 ≤λ2. Thus

C(W nv (v,r )) =

(vi1 − v)ᵀ

· · ·(viN − v)ᵀ

·

(vi1 − v)ᵀ

· · ·(viN − v)ᵀ

(3.2)

is the covariance matrix of the N vertices, vik ∈W nv (v,r ). The centroid of this window

is denoted by

v = 1

N

∑vik

∈W nv (v,r )

vik . (3.3)

Its associated separability index is then expressed as

D(v,n,r )PC A = λ0

λ0 +λ1 +λ2. (3.4)

The geometric reasoning behind this feature descriptor relies on the interpretation of

79

Chapter 3. Feature preserving multiresolution analysis

the eigenvectors of C(W nv (v,r )). The eigenvectors corresponding to λ1 and λ2 span

a plane that offers a good approximation for the tangent plane to the mesh supportsurface at v. Similarly, the eigenvector corresponding to the direction of least variationapproximates the surface normal. In the presence of noise, these approximations aremore robust than typical tangent plane and normal estimators that are based onlyon the one-ring elements around v. Thus, the separability index defined in equation(3.4) attains high values for highly deformed, far from planar regions. It is importantto mention that windows having only N ≥ 3 samples are considered, otherwise thedescriptor evaluates to zero, corresponding to a rank deficient covariance matrix.

Normal field variation via normal voting

[Hussain, 2010] suggested measuring the one-ring variation of the normal field inorder to iteratively simplify a mesh. Previously, [Koibuch and Yamada, 2000] haveused a similar measure, referred to as the bending energy, to study the first order phasetransition of a mesh membrane. For the one-ring neighbourhood of a vertex v, thisdescriptor can be evaluated as:

N FV (v) = ∑vi∈N 1

v (v)

(1− n · ni ), (3.5)

where n and ni are the unit norm surface normals at vertices v and vi , respectively.

We propose extending this descriptor to a window patch by computing the Gaussianweighted sum of normal variations over the window:

D(v,n,r )N FV = 1

S

∑vi∈W n

v (v,r )

w(vi )(1− n · ni ), (3.6)

where S = ∑vi∈W n

v (v,r )w(vi ) is the sum of the Gaussian weights w(vi ) = exp(−‖vi−v‖2

(r /3)2 ),

and nv is the unit normal vector at v. By using exponentially decaying weights, theinfluence of the normals from distant vertices is reduced. Additionally, the averagedresult contributes to the reduction of noise, but since normals themselves are usuallycomputed using only one-ring neighborhood information, a more robust means ofestimating their orientation is required. The normal voting method of [Page et al.,2002] provides a computationally inexpensive normal field smoothing option. Wehave selected this algorithm because it does not smooth the normals by modifying thevertex positions. Furthermore, normal voting can be conducted in the same windowas the one defined in equation (3.6). Individual normal votes are cast and aggregatedat the hub vertex of the window. Each vote consists of an orientation estimation. Moreexplicitly, the vote that a vertex vi casts implies transporting the normal vector at

80

3.2. Heuristic driven lazy wavelet partitioning

vi along a circular arc connecting this vertex to v. Since the (ni ,vi ) pair completelydefines a plane, the circular arc then lies on the sphere which is tangent to this planeand passes through v. Referring to figure 3.2, the expression for the normal vote fromvi at v is:

ni = ni −2ni · (vi −v)

‖vi −v‖2(vi −v). (3.7)

v

vi

ni

ñi

Figure 3.2: Normal vote cast from v to vi .

Building the robust normal estimate at vertex v requires computing the covariancematrix of the cast votes, i.e.

Cnor mal (v) = ∑vi∈W n

v (v,r )

w(vi )ni n>i , (3.8)

where the w(vi ) weights are defined as in equation (3.6). The eigenvector correspond-ing to the largest eigenvalue of Cnor mal (v) is the required normal estimate. This vectoris denoted by n. Now, equation (3.6) can then be rewritten as

D(v,n,r )N FV = 1

S

∑vi∈W n

v (v,r )

w(vi )(1− n · ni ). (3.9)

Paraboloid fitting descriptor construction

No feature description discussion is complete without including curvature as a naturalproperty of any (continuous) surface. Curvature serves discriminative purposes andcan be regarded as a dense descriptor. Although the definition of curvature in thecontinuous case is unequivocal, a discrete counterpart is not universally accepted.Nevertheless, the majority of discrete curvature definitions for meshes or point cloudsare built considering similar properties that are valid in the continuous case. We referthe interested reader to the work of [Brentzen et al., 2012]. Many available methods for

81

Chapter 3. Feature preserving multiresolution analysis

computing a curvature estimate involve only the one-ring neighborhood of a vertex.This restriction automatically leads to an increased sensitivity in the presence of noise.Arguably, noisy data sets can be subjected to a denoising treatment, but such anapproach can have undesirable side effects such as excessive smoothing of actualfeatures or aggressive resampling.

A convenient compromise solution for estimating curvature is to operate only onpolynomial surface approximations. This can be achieved by treating the neighbor-hood of a vertex as a Monge patch, i.e. a surface of the form z = f (x, y), for whichthe principal curvatures are trivial to compute if f is designed to be a second degreebivariate polynomial function. Thus, for each vertex of the mesh, a Monge patchcan be fitted in the local window defined in equation (3.1). The coefficients of the fpolynomial are typically solved for using a least squares estimation. Given the factthat the size of the local window can vary, some of the noise-induced inaccuracies arereduced. However, the larger the window, the more computationally expensive thismethod becomes. Additionally, a trade-off between window size and high frequencyfeatures needs to be considered. An option for dealing with situations where outlierscorrupt the data set is to use a nonlinear RANSAC method [Kang et al., 2011]. In allsituations, fitting proceeds by considering the v center of a W n

v (v,r ) as the origin ofthe vector space in which a z = f (x, y) function is sampled to produce the rest of theneighbors of this central vertex. Thus, the following polynomial needs to be computed

f (x, y) = ax2 +bx y + c y2 +d x +e y. (3.10)

The steps for finding the a,b,c,d ,e coefficients are summarized below:

1. Compute a pseudonormal at v, e.g. n =∑vi∈W n

v (v,r ) ni . A better normal estimatecan be obtained if the normal voting technique is employed and the eigenvectorsof the covariance matrix from equation (3.8) are computed.

2. Eliminate normal outliers by replacing the search window with W nv (v,r )′ = vi ∈

W nv (v,r ) : ni · n ≥ 0. This step serves to exclude those samples that indicate

flipping artifacts.

3. Translate the window so that v corresponds to the origin of a local coordinatesystem, i.e. W n

v (v,r )′′ = vi −v : vi ∈W nv (v,r )′.

4. Construct W nv (v,r )′′′ by rotating the W n

v (v,r )′′ set such that n becomes alignedwith the z = (0,0,1)ᵀ axis. One may argue that this rotation should cancel thefirst degree terms in equation (3.10), but such a situation would occur only if thefitted paraboloid had its origin normal perfectly aligned with n.

82

3.2. Heuristic driven lazy wavelet partitioning

5. Minimize∑

p∈W nv (v,r )′′′

‖ f (xp , yp )− zp‖2 in the least squares sense, where p = (xp , yp , zp

)ᵀ.

Considering these steps, it suffices to compute any curvature estimate (principal,mean or Gaussian) by applying the continuous definition and evaluating it at (x =0, y = 0). This is a consequence of setting v as the origin of coordinate system. Usingthe principal curvatures of v, κ1(v) ≤ κ2(v), two dense scale-dependent descriptordefinitions are possible:

D(v,n,r )C asor ati :=√κ2

1(v)+κ22(v)

2, (3.11)

also known as the Casorati curvature at v, denoted by κC (v), and

D(v,n,r )SI := 2

π

∣∣∣∣arctan

(κ2(v)+κ1(v)

κ2(v)−κ1(v)

)∣∣∣∣ , (3.12)

typically referred to as the shape index.

The Casorati curvature is an indicator of how much the surface is bent locally andit can be used to define the bending energy, as discussed in a previous chapter. Theshape index can be used to discriminate between convex and concave regions. Formany applications such as face recognition, features are usually associated withconcave regions or saddles. More applications and an in-depth discussion on thesedescriptors can be found in the [Koenderink and van Doorn, 1992].

It is useful to note a similarity that the surface bounded by the local window andan image have similar characteristics. This means one can define surface featuresin a similar manner as they are defined for 2D images. One of the most popularmechanisms for identifying image features is the Harris corner detector [Harris andStephens, 1988]. This algorithm operates on grayscale images and computes a scalarresponse for every pixel. The principle on which this detector is based is that salientfeatures lie in regions where both the horizontal and the vertical image gradient ishigher than a certain threshold. The gradient-based computations are carried out ina local region, similar to how the dense descriptors are defined on a mesh. Thus, ifI (x, y) represents the value of the (x, y) pixel and W(x,y) denotes the window centeredat this pixel, the corner features correspond to the local maxima of the followingautocorrelation function

E(∆x,∆y) = ∑(xi ,yi )∈W(x,y)

w(xi , yi ) · [I (xi , yi )− I (xi +∆x, yi +∆y)]2 , (3.13)

where w(xi , yi ) is the (Gaussian) weight of the (xi , yi ) pixel and (∆x,∆y) is a 2D shift

83

Chapter 3. Feature preserving multiresolution analysis

vector. In essence, equation (3.13) measures how similar is the image function I (x, y)at point (x, y) to itself when shifted by (∆x,∆y). The task of finding the local maximaof the autocorrelation function can be simplified using a Taylor series expansionapproximation,

I (xi +∆x, yi +∆y) ≈ I (xi , yi )+ [Ix(xi , yi ) Iy (xi , yi )

][∆x∆y

], (3.14)

where Ix(·, ·) and Iy (·, ·) are the partial derivatives of the image function. Using thisapproximation, one can rewrite equation (3.13) as

E(∆x,∆y) ≈[∆x∆y

]ᵀ ∑(xi ,yi )∈W(x,y)

w(xi , yi )

[Ix(xi , yi )2 Ix(xi , yi )Iy (xi , yi )

Ix(xi , yi )Iy (xi , yi ) Iy (xi , yi )2

][∆x∆y

].

(3.15)

By denoting the weighted matrix sum in equation (3.15) with M(x, y), we can rewritethis equation in a condensed form,

E(∆x,∆y) ≈[∆x∆y

]ᵀM(x, y)

[∆x∆y

]. (3.16)

Further, this quadratic approximation of the autocorrelation function becomes mucheasier to interpret. Since M(x, y) is symmetric and positive definite, its eigenvaluesare positive and reveal the quantity of image dissimilarity along the principal axes ofthe ellipse isocurves of E(∆x,∆y). If both eigenvalues are relatively small, the regionin the W(x,y) window is likely "flat" in the sense that the pixel intensity variation is low.Otherwise, if one eigenvalue is large while the other is small, the respective windowregion contains an edge feature. A corner is then the region that contains two (ormore) intersecting edges. The Harris response equation for the (x, y) pixel then takesthe following expression:

h(x, y) = det (M(x, y))−kTr (M(x, y))2, (3.17)

where k is a threshold parameter empirically chosen in the [0.04,0.07] range.

An extension of the Harris corner detector for 3D meshes has been proposed by[Sipiran and Bustos, 2011]. In the absence of an image function, local paraboloidfitting can be used to approximate the image intensity values in the local windowof a vertex. In their original work, the authors claim that more robust fitting in thepresence of noise can be achieved if the pseudonormal estimate, n, is computed byperforming principal component analysis in the W n

v (v,r ) window and selecting theeigenvector corresponding to the smallest eigenvalue. The M(x, y) matrix is still a 2×2

84

3.2. Heuristic driven lazy wavelet partitioning

matrix:

M(x, y) =(

A(x, y) C (x, y)C (x, y) B(x, y)

), (3.18)

where the A(x, y),B(x, y),C (x, y) elements are computed as follows:

A(x, y) = 1p2πr

∫R2

e

(−(u2+v2)2r 2

)fx(u, v)2dud v , (3.19)

B(x, y) = 1p2πr

∫R2

e

(−(u2+v2)2r 2

)fy (u, v)2dud v , (3.20)

C (x, y) = 1p2πr

·∫R2

e

(−(u2+v2)2r 2

)fx(u, v) fy (u, v)dud v . (3.21)

The expressions of the above integrals can be evaluated analytically, and the resultsare:

A(x, y) = d 2 +8a2 +2b2, (3.22)

B(x, y) = e2 +8c2 +2b2, (3.23)

C (x, y) = de +4ab +4bc, (3.24)

where a,b,c,d ,e are the coefficients of the f (x, y) polynomial as described in equation(3.10).

Through experimentation, we have found that the formulation of the Harris 3D featureresponse, as expressed in equation (3.17), has very poor discriminative properties.Instead we propose the following expression for the Harris response descriptor:

D(v,n,r )H ar r i s3D = 2det(M(x, y))

ε+Tr (M(x, y)), (3.25)

where ε is a small design parameter, meant to avoid division by zero in flat regions, setin our experiments to ε= 10−5.

85

Chapter 3. Feature preserving multiresolution analysis

Quadric error metric descriptor construction

As explained in a previous chapter, the quadric error metric and its extension [Garlandand Heckbert, 1998] play a central role in assigning priorities to the vertices of a mesh.The cost function defined in equation (2.49) mimics the effects of a descriptor limitedto the one-ring neighborhood of a vertex. Naturally, the question of how to define aquadric error metric descriptor over an arbitrary window arises. One possibility thatwe suggest is to use Gaussian weights and the additivity property of quadric matrices.This allows combining the individual quadric matrices of each vertex in the W n

v (v,r )window in a single matrix as

QW nv (v,r ) =

1

S· ∑

vi∈W nv (v,r )

w(vi )Qvi , (3.26)

where S is the sum of the Gaussian weights as mentioned in equation (3.6). With thiswindow extension of the quadric matrix, we propose the following descriptor

D(v,n,r )QE M = 1

S· ∑

vi∈W nv (v,r )

w(vi )

(vi

1

)ᵀQW n

v (v,r )

(vi

1

). (3.27)

The Qvi matrices measure the local feature saliency reliable only in the absence ofnoise. If the input is affected by Gaussian white noise, this data corruption will bereflected in the descriptor values. To some extent, the low pass filter characteristicsof the exponential decay averaging used in the descriptor formulation could aid inreducing the unwanted noise influence. Nevertheless, a more robust quadric errormatrix formulation should be used. Since both the classic quadric error matricesand principal component analysis can be visually represented using isosurfaces thatare quadrics, we suggest designing a metric matrix using the eigenvectors of localwindow covariant matrices. f λi is an eigenvalue corresponding to the ei eigenvector,we can scale ei by αi = 1

1+λi. This scaling helps to construct a non-Euclidean distance

function that attains larger values for any vector quantities aligned with the axesof highest variation, just like the Mahalanobis distance does. To proceed with theconstructions, we arrange the eigenvectors into an orthonormal matrix:

R = (e1 e2 . . . ed

), (3.28)

where d is the number of dimensions of the space into which the mesh is embedded(in our case, d = 3, but the same logic is valid in the general case).

If S is the scaling matrix with elements si ,i = α−1i and si , j = 0 for i 6= j , then the RS

product represents a change of basis transforming a vector vu written in the scaledlocal principal component space into another vector ve written in the canonical

86

3.2. Heuristic driven lazy wavelet partitioning

Euclidean space. Thus, the reciprocal transform becomes:

vu = S−1R−1ve , (3.29)

where R−1 = Rᵀ considering the definition of R.

The squared norm of the vu vector can be easily computed from equation (3.29):

vᵀuvu = vᵀe Mve , (3.30)

where M = R(S−1)2Rᵀ. If p is a vertex of the mesh for which the R and S matrices havebeen computed, the squared pseudo-Mahalanobis distance from p to an arbitraryvector x can be written in matrix form as:

dpM (p,x)2 = (x−p)ᵀM(x−p). (3.31)

Through basic algebraic manipulation, we can also derive a block matrix expressionfor this distance such that:

dpM (p,x)2 = xᵀMx−2bᵀx+ c, (3.32)

where A is a d ×d matrix with elements

ai ,k = ∑j=1,d

eji ·α2j ejk , (3.33)

and b = Mp is a d ×1 vector, and c = pᵀMp is a scalar term. Using these M, b and cblock elements, we can now define the PCA-based quadric error matrix for a vertex vas:

QPC Av =

(M bbᵀ c

). (3.34)

The descriptor value at vertex v is then computed as described in equation (3.27) byreplacing QW n

v (v,r ) with QPC AW n

v (vi ,r )

D(v,n,r )QE M−PC A = 1

S· ∑

vi∈W nv (v,r )

w(vi )

(vi

1

)ᵀQPC A

W nv (v,r )

(vi

1

). (3.35)

By construction, this PCA-based quadric error metric design is not as sensitive tothe presence of noise, although an objective measure needs to be applied to betterconfirm this quality.

87

Chapter 3. Feature preserving multiresolution analysis

3.2.3 Model thinning through cascaded partitioning

The partitioning method illustrated in algorithm 5 can be applied in a cascade fashionto produce a hierarchy of fine-to-coarse approximations. We write this process in theform of algorithm 6

Algorithm 6 Descriptor-driven thinning

Require: M = (V ,E), n ∈N∗, r > 0, β> 1, L ∈NEnsure: M = ML ≺ ML−1 ≺ . . . ≺ M0

for k = L−1,0 doVMk+1 =VO ∪VE , according to algorithm 5VMk ←VE

r ←βrend for

In the above algorithm, β is a design parameter used to dilate the window radius rafter each pass of algorithm 5 and to account for the change in geometric scale. Thisalgorithm is similar to the cascaded filterbank algorithm part of the lifting scheme,but the prediction and update steps are completely omitted. During each iteration,algorithm 5 retriangulates the one-ring holes of the removed odd vertices. The evensubset, VE of Mk+1 becomes the set of vertices of the coarse approximation Mk , whilethe faces and edges are the ones resulting from the partitioning algorithm.

3.2.4 Experiments

For the purpose of assessing the efficiency of each descriptor, we have set up a seriesof numerical tests. Four different mesh models have been selected out of the onesalready presented in chapter 2: the Dragon and Ramesses models and the SmokyMountains and Fundata Region terrain fragments.

The performance evaluation criteria we have used are:

• subjective: a colormap rendering by selecting the descriptor value as a vertexscalar attribute. Before feeding these values to the color transfer function, wenormalize the scalar data such that they fit in the [0,1] interval. The purpose ofthis mapping is to facilitate visual inspection and to reveal the feature separation.We expect a good descriptor to produce high contrasting colors when stronggeometric features are encountered.

• objective: average local distance. This measure is derived from the distanceto the local one-ring best fit plane, proposed by [Schroeder et al., 1992] in thecontext of mesh decimation. This error measure is formulated as a distance

88

3.2. Heuristic driven lazy wavelet partitioning

operator

apd(VO ,VE ) = 1

l |VO |∑

v∈VO

d(v,π

(N 1

v (v)))

, (3.36)

where l is the average edge length of the initial mesh, π(N 1v (v)) is the best fit

plane of N 1v (v), and d(v,π(N 1

v (v))) is the distance from v to this plane.

Methodology

The evaluation of the descriptor performance was carried out using a sequence ofL = 8 approximations obtained using algorithm 6. The input parameters for thethinning algorithm are n = 4 an r = 3l , where l is computed as suggested in equation(3.36). The radius dilation factor is set to β= 1.5. Experimentally, we have determinedthe vertex count of the local window to vary from approximately 40 vertices for thehighest resolution model to almost 70 vertices for the coarser approximations. If themesh model is completely regular (i.e. each vertex having a degree of 6) and r =∞,then the size of the window for n = 4 is 60. In conclusion, an irregular mesh does notincur a much increased computational overhead as compared to a regular one.

We have also added white Gaussian noise to the vertex coordinates of all models. Thevariance was set to be on third of the average edge length to simulate a rough surfacewith only sporadic geometric artifacts (e.g. self intersections).

For brevity reasons, we propose the following abbreviations for the different descriptorfunctions introduced in this chapter: the principal component analysis separabilityindex, defined in equation (3.4) will be denoted by PCA, the normal field variation,defined in equation (3.9) will be denoted by NFV, the Casorati curvature descriptor,defined in equation (3.11), will be denoted by CASORATI, the shape index, definedin equation (3.12), will be denoted by SHAPE IDX, the Harris 3D corner detector,defined in equation (3.25), will be denoted by HARRIS 3D, the smoothed quadric errormetric descriptor, defined in equation (3.27), will be denoted by S-QEM and the PCA-based quadric error metric descriptor, defined in equation (3.35), will be denoted byPCA-QEM.

Subjective evaluation

We provide the colormap rendering for the following models: the Dragon model, figure3.3a, the Ramesses statue model 3.4a, the Smoky Mountains fragment 3.5a and theCarpathian Mountains fragment 3.6a. The visual interpretation of these images allows

89

Chapter 3. Feature preserving multiresolution analysis

for a preliminary assessment of the feature scoring capabilities of each discriminator.Both CASORATI and HARRIS 3D options lead to a poor visual feature separability,especially at the highest level of resolution. The other descriptors do present higherlevels of contrast and the distribution of the score values better highlights the presenceof scale specific features. In terms of feature highlighting abilities, the SHAPE IDX andPCA-QEM descriptors exhibit exaggerated variability, at least for the Dragon (figure 3.3a)and Ramesses (figure 3.4a) closed surfaces. The PCA, NFV and S-QEM descriptors aremore balanced and produce similar profiles for both the highest and lowest resolutionapproximations. Due to its construction, the PCA-QEM descriptor assigns a higher costto the vertices closer to ridge or valley features, but does not accurately associate localextrema in the colormap profile with their geometric counterparts.

When the data is perturbed artificially, the colormap contrast decreases for mostdescriptors, as can be observed in figures 3.3b, 3.4b, 3.5b and 3.6b. In this sense, thePCA and S-QEM exhibit a dramatic decrease in contrast, especially where the higherfrequency features are measured, i.e. at the highest level of resolution. This is anindication the noise component manifests itself affecting the descriptors qualitatively.

Objective evaluation

The distinction between the presented descriptors based on color coding only offersan intuitive understanding of the discriminative capabilities and robustness to noise.We complement this subjective comparison by measuring the averaged local distancedefined through equation (3.36). We prefer this distance as it best suits the lazy waveletpartitioning algorithm. Since each removed vertex is labeled as an odd sample, itsone-ring neighbors are guaranteed to be part of the lower resolution model. Hence, itis natural to measure the local distortion that occurs after this change in geometry.Moreover, the wavelet prediction filters proposed in chapter 2 use the even, one-ringneighbors of an odd node to predict its coordinates. The weighted linear combinationof these samples influences directly the magnitude of the wavelet coefficients. Thedistance vector from an odd vertex to its corresponding average local plane is usu-ally an underestimation of this wavelet detail vector, but is nevertheless a means ofdistinguishing between less and more precise approximations.

The evolution of the average distance in equation (3.36) was tracked at each level foreach individual set. The results are charted in figures 3.7-3.14. The PCA descriptorachieved mediocre approximation quality regardless of the data set. The descriptorsbased on paraboloid fitting, SHAPE IDX, CASORATI, HARRIS 3D, outperformed, onaverage, all other proposed alternatives. However, the SHAPE IDX delivered betterapproximations for the Ramesses (figure 3.9) and Smoky (figure 3.11) sets, whilethe CASORATI descriptor seemed a better choice for the Dragon (figure 3.7) and

90

3.2. Heuristic driven lazy wavelet partitioning

Carpathians (figure 3.13) sets. The HARRIS 3D descriptor exhibited a much moreconsistent behavior, achieving, on average, the best results, regardless of the inputset. Contrary to the intuition offered by the colormap profiles, the proposed NFVand S-QEM descriptors did not help achieve good quality approximations, yieldingerrors almost 10% higher than those offered by the paraboloid fitting descriptors.The PCA-QEM did outperform the pure PCA descriptor and, for the terrain data sets(figures 3.11 and 3.13), even surpassed the paraboloid fitting alternatives.

The addition of artificial noise did not seem to affect the approximation quality. Theplots shown in figures 3.8, 3.10, 3.12 and 3.14 were obtained using equation (3.36)where the initial vertex coordinates were used, the noise affected ones being consid-ered only when computing the descriptor values. The simplification experimentsreveal a mild increase in the approximation error for the fine resolution levels. Forthe coarser approximations, the error actually decreases on average, but the relativebehavior of a descriptor with respect to its competitors does not change from the oneobserved when using the unperturbed sets. In conclusion, these charts indicate that,for the chosen noise intensity, the influence of noise on the error is not considerable,all descriptors being reasonably robust.

In all, the purpose of a descriptor, as explained in this chapter, is to complement ageometry thinning method. In addition, the lifting scheme design proposed in ourwork produces better signal approximations when the wavelet coefficients have smallmagnitudes. A geometric descriptor is often a marker of feature prominence, andcan thus identify regions of increased redundancy. The simplest such redundancyindicator is a descriptor that looks for flat regions. It is in such a region where theone-ring prediction filter also produces zero magnitude wavelet coefficients. Wethus recommend also complementing the wavelet-based algorithm with a descriptorwhenever one of the goals is error minimization and the computational trade-off isacceptable.

91

Chapter 3. Feature preserving multiresolution analysis

(a) Original mesh. (b) Noise affected mesh.

Figure 3.3: Dragon model. The left column represents the high resolution input and the rightcolumn depicts the coarsest approximation.

92

3.2. Heuristic driven lazy wavelet partitioning

(a) Original mesh. (b) Noise affected mesh.

Figure 3.4: Ramesses model. The left column represents the high resolution input and theright column depicts the coarsest approximation.

93

Chapter 3. Feature preserving multiresolution analysis

(a) Original mesh. (b) Noise affected mesh.

Figure 3.5: Smoky model. The left column represents the high resolution input and the rightcolumn depicts the coarsest approximation.

94

3.2. Heuristic driven lazy wavelet partitioning

(a) Original mesh. (b) Noise affected mesh.

Figure 3.6: Fundata model. The left column represents the high resolution input and the rightcolumn depicts the coarsest approximation.

95

Chapter 3. Feature preserving multiresolution analysis

0.050.075

0.10.125

0.150.175

0.20.225

0.250.275

0.30.325

0.350.375

0.4

Level 7

Level 6

Level 5

Level 4

Level 3

Level 2

Level 1

Level 0

Figure 3.7: Average plane distance evolution for the Dragon data set. The horizontal axiscorresponds to the used descriptor, while the vertical axis corresponds to the averaged localdistance. All intermediate errors are plotted, yielding evolution curves for a better methodcomparison.

0.050.075

0.10.125

0.150.175

0.20.225

0.250.275

0.30.325

0.350.375

0.4

Level 7

Level 6

Level 5

Level 4

Level 3

Level 2

Level 1

Level 0

Figure 3.8: Average plane distance evolution for the noise affected Dragon data set. Thehorizontal and vertical axes have the same meaning as in figure 3.7.

96

3.2. Heuristic driven lazy wavelet partitioning

0.045

0.055

0.065

0.075

0.085

0.095

0.105

0.115

0.125

0.135

0.145

Level 7

Level 6

Level 5

Level 4

Level 3

Level 2

Level 1

Level 0

Figure 3.9: Average plane distance evolution for the Ramesses data set. The meaning of eachaxis is the same as in figure 3.7.

0.045

0.055

0.065

0.075

0.085

0.095

0.105

0.115

0.125

0.135

0.145

Level 7

Level 6

Level 5

Level 4

Level 3

Level 2

Level 1

Level 0

Figure 3.10: Average local distance evolution for the noise affected Ramesses data set. Thehorizontal and vertical axes have the same meaning as in figure 3.7.

97

Chapter 3. Feature preserving multiresolution analysis

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

0.11

0.12

0.13

Level 7

Level 6

Level 5

Level 4

Level 3

Level 2

Level 1

Level 0

Figure 3.11: Average local distance evolution for the Smoky data set. The horizontal andvertical axes have the same meaning as in figure 3.7.

0.03

0.04

0.05

0.06

0.07

0.08

0.09

0.1

0.11

0.12

0.13

Level 7

Level 6

Level 5

Level 4

Level 3

Level 2

Level 1

Level 0

Figure 3.12: Average local distance evolution for the noise affected Smoky data set. Thehorizontal and vertical axes have the same meaning as in figure 3.7.

98

3.2. Heuristic driven lazy wavelet partitioning

0.015

0.02

0.025

0.03

0.035

0.04

0.045

0.05

0.055

0.06

0.065

0.07

Level 7

Level 6

Level 5

Level 4

Level 3

Level 2

Level 1

Level 0

Figure 3.13: Average local distance evolution for the Carpathians set. The horizontal andvertical axes have the same meaning as in figure 3.7.

0.015

0.02

0.025

0.03

0.035

0.04

0.045

0.05

0.055

0.06

0.065

0.07

Level 7

Level 6

Level 5

Level 4

Level 3

Level 2

Level 1

Level 0

Figure 3.14: Average local distance evolution for the noise affected Carpathians set. Thehorizontal and vertical axes have the same meaning as in figure 3.7.

99

4 Combined wavelet and mean shiftfiltering

The versatility of wavelet-based methods is generally illustrated through a large sphereof possible applications. Compression, either lossy or lossless, becomes straightfor-ward and is achieved by hard thresholding, quantization, entropy encoding, Huffmanencoding and so on. Filtering applications include denoising, feature highlightingor scale-dependent feature extraction and multiresolution editing. While the firstcategory of applications, compression, has been widely studied by other authors, wepropose focusing on the second and illustrate a combined strategy where waveletanalysis and synthesis is used to accelerate a computationally intensive non-linearmean shift filter on multi-variate mesh data.

4.1 A generic approach to wavelet-based filtering

In the previous chapters we have seen how wavelet-based multiresolution analysiscan be used to construct a chain of hierarchical approximations for dense data setswith graph connectivity. In essence, any data set that resembles a triangular mesh andwhose vertices carry both geometric and attribute information can be subjected toseries of analysis stages through the use of adequate prediction and update filters.

Let M := ML Â ML−1 Â . . . Â M0 be the resulting chain of n successive approximations,where M := ML is the initial mesh that is subjected to the multiresolution analysisprocedure. In general, this process implies repeating the following decompositionMk+1 = Mk ∪⊕ Dk , where Dk is the set of detail vectors that are removed from Mk+1 inorder to produce the lower resolution approximation, Mk . Using the lifting scheme,this analysis operation becomes trivially invertible. This decomposition chain resultsin an invertible diagram, illustrated in figure 4.1. Given the many multiresolutionediting applications available in literature, we briefly review the principle behind afamily of such frameworks. The main reason why mesh models are not altered athigh levels of details is due to the data density that hinders the operations. A model

101

Chapter 4. Combined wavelet and mean shift filtering

M = ML//

%%

ML−1//

""

. . . //

M1//

!!

M0

DL−1 . . . D1 D0

Figure 4.1: Multiresolution analysis cascade. Upper row: low frequency approximation. Bot-tom row: high frequency detail component sets.

consisting of several millions of points has several, albeit insignificant in intensity,high frequency details that are not easy to manipulate. An immediate solution isthen to work on a coarser representation and operate geometric modifications addingback via synthesis the missing details. The same strategy can be adopted in order tofacilitate the application of a generic filter that proves to be computationally expensiveto perform on the high resolution model. We summarize this principle in algorithm 7.

Algorithm 7 Hybrid wavelet-based filtering strategy

Require: M = (V ,E ,F ) high resolution mesh, n number of intermediate approximationsEnsure: M := ML Â ML−1 Â . . . Â M0 a filtered hierarchical approximation

for k ← L,1 doMk = Mk−1 ∪⊕ Dk−1

end for

M0f i l ter // M0

for k ← 1,L doMk = Mk−1 ∪⊕αk−1(Dk−1)

end for

The synthesis operation, Mk = Mk−1 ∪⊕ Dk−1, can be further altered to augment orsuppress details contained within Dk−1. Mathematically, this amounts to setting Mk =Mk−1∪⊕αk−1(Dk−1) where αk−1(·) is an operator that scales and applies thresholds tothe detail vectors based on histograms or other statistical measurements.

4.2 Mean shift filtering on curved surfaces

Next, we describe a filtering operation with both smoothing/denoising and clusteringapplications, the mean shift algorithm.

4.2.1 Background and related works

The mean shift algorithm is a well established method for finding the modes of adistribution given a set of samples drawn from this distribution. It has first been

102

4.2. Mean shift filtering on curved surfaces

described by [Fukunaga and Hostetler, 1975] and reemerged due to its image process-ing applications popularized by [Comaniciu and Meer, 2002]. In this work, we willfocus not on image processing, but on mesh data requiring filtering for denoising andclustering purposes.

Even for 3D data, several applications of this algorithm exist. One example is theALS point cloud segmentation framework of [Melzer, 2007] that directly employs theEuclidean mean shift algorithm. A similar application is detailed in [Ferraz et al., 2010]where a segmentation method capable of grouping vegetation data contained withinLiDAR point cloud data is proposed. This is another direct application of the classicmean shift algorithm but requires the preprocessing of the data in the sense that thecanopy is projected above a plane of constant height. This projection procedure issubjected to distortions that can affect the density and distribution of the samples bymodifying the relative distances between these points.

As detailed later in this work, the mean shift algorithm iteratively moves a seed sampletowards the weighted center of mass of a nearest neighbor subset. This process re-quires computing weighted averages. If the space where the average needs computingis no longer linear, the direct sum of point samples cannot be performed. We notethat finding weighted averages on manifolds is a separate problem that has beenaddressed by many authors starting with [Grove and Karcher, 1973]. The same prob-lem is paramount to several generalizations including tensor calculus and statisticson manifolds [Pennec et al., 2006]. It is also central to the extension of the meanshift algorithm onto curved or manifold spaces. [Subbarao and Meer, 2009] havesuccessfully adapted this method for several manifolds for which certain operators aredefined analytically. The authors have discussed the extension for matrix Lie groups,Grassmann manifolds, essential and positive definite matrices and provided exampleapplications.

In the case of 3D mesh models, several applications that rely on a mean shift strat-egy exist. [Yamauchi et al., 2005] have used a separable kernel to estimate a densityfunction for vertex positions and normals. Using Dijkstra’s method to compute theneighbors of each vertex that fall within a certain distance boundary, the implemen-tation described in their paper is an attempt at expanding the mean shift algorithmbeyond the Euclidean scenario. However, the only step in this direction consists intreating normals as direction vectors and defining a distance between them basedon their angle. A curvature-based segmentation algorithm is outlined in [Zhanget al., 2008] where the mesh distance function is replaced by a topological distance.Although the authors classify their approach as a mean shift procedure, only thecurvatures of the vertices are actually shifted, whereas the spatial positions are notaltered. Hence, the original neighborhood of samples never changes for a startingseed and the actual procedure closely resembles a center of mass computation. The

103

Chapter 4. Combined wavelet and mean shift filtering

geodesic mean shift algorithm, as dubbed by [Shamir et al., 2006], was used to filterthe attributes of mesh vertices (e.g. color, curvature, etc.). The key of this methodis to employ a local geodesic parametrization and constrain the shifted mean to themesh surface. Further, the local parametrization is sampled into a raster map where aclassic mean shift iteration is applied and the resulting pixel is reprojected back ontothe mesh. More recently, [Solomon et al., 2014] have introduced new bilateral andmean shift filter formulations for meshes and other discrete signals. One exampleapplication is normal smoothing by treating the normal field as a signal defined onthe S2 sphere. The main drawback of this method is that the resulting mean shiftalgorithm is not a sliding window mode-finding algorithm. Instead, their frameworkcomputes a weighted average of the attributes with respect to the neighborhood of afixed sample on a curved domain.

4.2.2 Our contributions

After examining the existing literature, we can conclude that there is no mean shiftimplementation that can be considered an accurate generalization of the originalalgorithm to curved domains.

We hence aim to build such a method by solving the following issues:

• the curved, sampled domain cannot be treated using Euclidean geometry opera-tions (as described by [Cerveri et al., 2012]) since the filter output is no longerguaranteed to remain on the support domain;

• locally flattening the neighborhood of a seed point only partially solves theprevious issue (e.g. by performing the classic mean shift algorithm in a texturesampled from this neighborhood as done by [Shamir et al., 2006]). The issue per-sists because the results of the shifting iterations are not reprojected back ontothe underlying domain until convergence is achieved, and hence not accountingfor the increasing distortion errors;

• while it is possible to partially account for the non-Euclidean nature of the data(e.g. handling both geometry and normals using different metrics and kernels asin [Yamauchi et al., 2005]), such methods fail to constrain the mean shift filter tothe underlying domain;

• both the geometric and attribute coordinates must be affected by the filterdue to the sliding window principle of the original mean shift algorithm (theimplementations of [Zhang et al., 2008] and [Solomon et al., 2014] actuallycompute the weighted center of mass of a fixed window);

• the filter must function even when no closed-form expressions are known for

104

4.2. Mean shift filtering on curved surfaces

the underlying manifold metric tensor, exponential and logarithm maps (asrequired in the implementation of [Subbarao and Meer, 2009]).

In response to these issues, we propose the following:

• performing the mean shift iterations in a fashion similar to the non-Euclideandiscrete Weiszfeld algorithm ([Fletcher et al., 2009] and [Aftab et al., 2015]). Thisrequires alternating between tangent space averaging and projection onto thesupport manifold;

• incorporating the geodesic distances in the kernel functions and using a discretelogarithm map to approximate the gradient of these distance functions;

• shifting the result of each iteration along a corresponding geodesic curve via adiscrete exponential map, effectively solving the issue where the sliding windowis constrained to remain fixed.

4.2.3 Continuous and discrete differential geometry elements

We now provide the context for constructing filters on discretized smooth manifoldsby reviewing the essential elements of Riemannian Geometry. Since a full reviewof this field of Differential Geometry is beyond the scope of this work, we refer theinterested reader to the work of [Lee, 1997].

Manifolds

The notion playing the central role in differential geometry is that of a smooth manifold.Intuitively, a smooth manifold of dimension m is a geometric object that locallyresembles the properties of the Rm Euclidean space. For each x ∈U ⊂ M there existsaΦ : U →Rm homeomorphism. The (U ,φ) pair is called a coordinate chart. Any setof coordinate charts that completely covers M is called an atlas. These notions helpexpressing the formal definition of smooth manifold.

Definition 1. A manifold M is called smooth if for any two coordinate charts (U ,φ) and(V ,ψ) such that U ∩V 6= ; the φψ−1 mapping from ψ(U ∩V ) ⊂Rm to φ(U ∩V ) ⊂Rm

is smooth.

Similar to how functions on the Euclidean space are defined, one can define functionsover manifolds having real values. Let f : M → R be such a function and (U ,φ) acoordinate chart. Then f φ−1 maps φ(U ) ⊂Rm to a subset of R. Then f is continu-ous/smooth if f φ−1 is continuous/smooth for all charts (U ,φ).

105

Chapter 4. Combined wavelet and mean shift filtering

Another important element in the geometry of manifolds is the tangent vector at p ∈ Mwhich is a real-valued operator acting on continuous functions. Such an operator isa generalization of the derivative in a certain direction. The set of all tangent vectoroperators at point p is the tangent space, TpM . If X ∈ TpM and f ,h are continuousreal valued functions defined on M and for any a,b ∈R then

X(a f +bh) = aX( f )+bX(h), (4.1)

X( f h) = f X(h)+hX( f ). (4.2)

Alternatively, X ∈ TpM is assimilated to the class of equivalence formed by all curvesc :R→ M such that c(0) = p and c(0) := Xp ∈Rm . Hence, the operator interpretation ofX allows us to write

X( f ) = ⟨∇ f ,Xp⟩ |p, (4.3)

or

X( f ) = d f (c(t ))

d t|t=0. (4.4)

An example of basis for TpM is given by the set of partial derivative operators. Whenconsidering a coordinate chart (U ,φ) that maps a neighborhood of p onto a subsetφ(U ) ⊂Rm and φ(p) = (

u1, . . . ,um)ᵀ ∈Rm the coordinates of φ(p), then ∂i ∈ TpM is a

basis tangent vector and

∂i ( f ) = ∂( f φ−1)

∂ui|φ(p). (4.5)

The basis tangent vectors ∂i map a function f to the directional derivative of f φ−1

along the principal axes of coordinates at φ(p).

By endowing each tangent space TpM with an inner product gp, we can construct aRiemannian metric on this manifold. The gp inner product induces a vector norm, i.e.for any X ∈ TpM the length of X is defined as

√gp(X,X). If we consider a coordinate

chart (U ,φ) such that p ∈ U , then gp can be represented as a symmetric positivedefinite matrix acting as a bilinear form. The choice of coordinate charts leads todifferent representations for the same tangent vectors because different basis vectorsfor TpM correspond to different charts. However, given two different tangent vectorsX and Y, the inner product gp(X,Y) does not change, irrespective to the choice ofcoordinates and basis. Thus, the metric is actually a geometric operator that measuressimilarities between tangent vectors and is a generalization of the Euclidean dotproduct.

106

4.2. Mean shift filtering on curved surfaces

Associating a particular metric g to a manifold M we obtain a pair (M , g ) calleda Riemannian manifold. In this case, the same manifold M leads to a family ofRiemannian manifolds when coupled with different compatible metrics.

Curves on manifolds

Let c : I ⊂ R→ M be a curve on a manifold M . For any t ∈ I the tangent c(t) is bydefinition associated to a unique element in Tc(t )M , therefore mapping a function fto d f c

d t . The length of c(t ) gives the speed of the curve. To compute the length of thecurve over the entire domain, the following equation can be used

L(c I ) =∫

t∈I

√gc(t )(c(t ), c(t ))d t . (4.6)

For the remainder of this work, we treat tangent vectors as algebraic vectors in aEuclidean m-dimensional space, while their operator action is understood in thesense defined by equation (4.3). This dual interpretation is consistent with all previoustangent vector properties since (aX+bY)( f ) = aX( f )+bY( f ) for any a,b ∈ R, X,Y ∈TpM , f : M →R and p ∈ M .

One of the most important concepts in the field of Differential Geometry is that of ageodesic curve. This is the natural analogue of a straight line in the intrinsic geometryof a curved surface. Together with the parallel transport mechanism, geodesics canbe employed to translate vectors from different tangent spaces and thus linking vectorentities that otherwise cannot be operated on using normal algebraic manipulations.Like lines in the Euclidean case, geodesics on smooth surfaces are both the straightestand the locally shortest paths that join points on their support surface.

The importance of geodesics is two-fold, since they can be regarded as solutions tothe following:

• Initial value problem: given a point on a manifold, p ∈ M , and a random directionin v ∈ TpM , there exists a unique geodesic curve, γ, such that γ(0) = p andγ(0) = v. That is, for any point and any direction in its tangent plane, a uniquegeodesic can be traced in the prescribed direction originating from that point.

• Boundary value problem: given any two points on a manifold, there exists ageodesic connecting them. Hence if p,q ∈ M are arbitrary points, there exists(at least) a geodesic curve γ such that p,q ∈ γ. This allows the construction of alocally shortest path that connects any two points.

Throughout the remainder of this chapter, we will discuss algorithms that have theinput in the form of a mesh sampled from a smooth 2-dimensional manifold em-

107

Chapter 4. Combined wavelet and mean shift filtering

bedded in a multidimensional Euclidean space. Let M be such a smooth surfaceand γ : I = [a,b] → M be a curve on this surface. It is said that γ is locally shortestif γ is a critical point of the length functional L(γ [a,b]) with respect to tangentialdisplacements of γ that do not alter the γ(a) and γ(b) endpoints. Formally, for anytangent vector fieldΦ : I → TγM along γ, withΦ(a) =Φ(b) = 0 it holds that

∂εL(γ+εΦ)|ε=0 = 0. (4.7)

γ(s)

γ(s)

γ(s)

n(s)^

b(s)^ γ (s)||

γ (s)⊥

Figure 4.2: The representation of the curve acceleration γ(s) in the local frame defined by thesurface normal, n(s), the curve tangent vector, γ(s) and the binormal vector, b(s).

Another important property that describes how a curve turns is its curvature. For anarc-length parameterized curve, this quantity is κ(s) = ‖γ(s)‖. When γ is a curve on asurface, its acceleration vector can be projected along the normal field of the surfaceand onto the tangent planes along the curve. More explicitly, if n(s) and b = γ(s)× n(s)are the normal and binormal directions at γ(s), then one can write

κ2(s) = ‖γ(s)‖2 = ‖γ(s)∥‖2 +‖γ(s)⊥‖2, (4.8)

where where ‖γ(s)∥‖2 = ‖γ(s)ᵀb(s)‖2 and ‖γ(s)⊥‖2 = ‖γ(s)ᵀn(s)‖2 (as illustrated in fig-ure 4.2). Since ‖γ(s)‖ = 1 for all s, then γ(s)ᵀγ(s) = 0. The magnitude of the tangentialacceleration, γ∥(s), is also called the geodesic curvature, denoted by κg (s), while thenormal component of the acceleration, γ⊥(s), is called the normal curvature and isdenoted by κn(s).

Given these constructs, the following statements are equivalent definitions of geodesicson surfaces

108

4.2. Mean shift filtering on curved surfaces

1. γ is locally a shortest curve

2. γ is parallel to the surface normal

3. γ∥ = 0

4. κg = 0

for any γ : I → M , ‖γ‖ = 1.

If M is a simplicial complex, then defining a geodesic discretization that satisfiesboth conditions of being the straightest and locally shortest is not possible. Anydiscrete adaptation of this concept has to enforce either of the two properties, whilethe other one is not guaranteed to hold true in general. To understand why it is notpossible to ensure both properties simultaneously, we review the straightest geodesicsconstruction proposed by [Polthier and Schmies, 2006].

4.2.4 Exp map: straightest geodesics

The fact that geodesics provide a solution to the initial value problem formulationallows one to define the exponential map. The definition of the exponential map isbased on the following

Lemma 1. For any smooth manifold M and p ∈ M and v ∈ TpM a tangent direction, theinitial value problem γ∥(s) = 0,γ(0) = p, γ(0) = v has a unique solution γ : [0, l ) → M,where l is the length of the maximal interval of existence.

This result allows formulating the corresponding

Definition 2. If γv is the unique geodesic such that γv(0) = p ∈ M and γv(0) = v, thenthe exponential map is defined as expp(v) := γv(1).

The exponential map, by its definition, is a fundamental mechanism for establishingcorrespondences between a neighborhood around the origin of the Euclidean spaceTpM and a surface neighborhood U ⊂ M around p. When thinking in the discretecontext of simplicial complexes, such a mapping allows for the adaptation or imple-mentation of other concepts such as numerical integration over manifolds and texturemapping (see [Polthier and Schmies, 2006]).

Straightest geodesics construction

A discrete analogue of lemma 1 exists for mesh surfaces. In this sense, [Polthierand Schmies, 2006] have introduced the straightest geodesic concept in an attempt

109

Chapter 4. Combined wavelet and mean shift filtering

to define discrete curves on meshes with null geodesic curvature. Further detailsregarding the properties and definition of straightest geodesics can be found in B ofthe Appendix of this thesis, as well as in the original work of [Polthier and Schmies,2006]. The main result that explains how these curves lead to a discrete version of theexponential map is the following

Theorem 1. Let M be a mesh, p ∈ M and v ∈ TpM a unit tangent vector. Then thereexists a unique straightest geodesic γ with γ(0) = p, γ(0) = v and the geodesic extends tothe boundary of M.

θl(uk)

θr(uk)

uk

pk

ak

bk

vk+1

vk

θl(uk)

θr(uk)

pk

vk

uk

vk+1

ak

bk

Figure 4.3: Extending a straightest geodesic as explained in algorithm 8. Left: the extendedcurve intersects a mesh vertex. Right: the extended curve intersects an edge at an interiorpoint.

The proof of theorem 1 is constructive. We detail its steps in the form of algorithm 8.

The principle behind algorithm 8 stems from definitions 2, 7 and 8 (see chapter Bof the Appendix). This algorithm progressively builds such a curve starting from theinitial point p and advancing in the v direction until an edge in the direction of v isencountered. The next step, which is repeated in a loop, is to extend the curve beyondthis edge in a neighboring face such that the left and right angles of the resulting curveare equal. The algorithm stops when the length of the constructed path equals ‖v‖or when the boundary of the mesh is reached. As an observation, when extendinga curve along a direction, the intersection with an edge can be either a mesh vertexor an interior edge point, as illustrated in figure 4.3. If the extended curve passesthrough a vertex, one must search all the one-ring faces of this vertex for a validextension direction such that the left and right angles remain equal. If the extendedcurve intersects an edge in an interior point, then the other triangle sharing this edgemust be searched for a valid extension direction.

For the remainder of this work, we will operate with the following definition of thediscrete exponential map.

Definition 3. Let M be a triangular mesh, p ∈ M and v ∈ TpM. The end point of the

110

4.2. Mean shift filtering on curved surfaces

Algorithm 8 Straightest geodesic construction

Require: p ∈ M , v ∈ TpMEnsure: γ⊂ M such that γ(0) = p and γ(0) = v

p0 = p, l = ‖v‖, v0 = vl

k = 0γ=;while l 6= 0 do

find fk ∈ F and εk > 0 such that pk ∈ fk and pk + tvk ∈ fk for t ∈ [0,εk )if fk =; then

breakend iffind uk ∈ ∂ fk such that uk = pk + tk vk and tk = argmaxt∈(0,l ]pk + tvk ∈ fk let ak , bk ∈ fk ∩V such that uk ∈ ak bk and ((ak −pk )× (vk ))ᵀ((ak −pk )× (bk −pk )) ≥ 0 and((bk −pk )× (vk ))ᵀ((ak −pk )× (bk −pk )) ≤ 0γ← γ∪ pk uk find vk+1, εk+1 and fk+1 such that ‖vk+1‖ = 1 , pk + tvk+1 ∈ f for t ∈ [0,εk+1) and θl (uk ) =θr (uk ) for the γ∪ vk+1 curvel ← l − tk

pk+1 = uk

k ← k +1end while

straightest geodesic obtained as a result of algorithm 8 is called the discrete exponentialmap of origin p and argument v and is denoted by expp(v).

4.2.5 Log map: geodesic polar coordinates

Given the properties of geodesics on a smooth surface, the exponential map cannot,in general, uniquely map tangent vectors to manifold points except for a specificneighborhood around the origin in the tangent plane. This means that one cannotalways define an inverse mapping globally. Nevertheless, a local inverse applicationcan be defined.

Definition 4. Let p ∈ M be an arbitrary point on a smooth surface. If U ⊂ TpM isthe maximal set for which the exponential map expp(·) is one-to-one, then an inversemapping exists and is defined as

logp(·) : expp(U ) ⊂ M → TpM (4.9)

such that logp(q) = vq, where q = expp(vq).

In the discrete setting, the logarithm map can be determined using any algorithmfor estimating solutions of the boundary problem. In general, most algorithms thatsolve this problem share many similarities with Dijkstra’s shortest path algorithm.

111

Chapter 4. Combined wavelet and mean shift filtering

Several notable solutions that extend Dijkstra’s algorithm to polyhedra have beendeveloped. [Mitchell et al., 1987] have designed a continuous extension using theconcepts of expanding wavefronts and discrete events. Since the algorithm of [Mitchellet al., 1987] attains O(n2 log(n)) complexity, a more popular solution, based on thefast marching method [Sethian, 1999], has been proposed by [Kimmel and Sethian,1998] and extended by [Sethian and Vladimirsky, 2000] to compute geodesics byadvancing fronts from a source on a discrete manifold. The fast marching methodis O(n log(n)) efficient, and it could thus be employed to solve the single source,multiple destinations boundary problem. [Surazhsky et al., 2005] used a lower-boundproperty to approximate geodesics and performed several practical improvements tothe original, exact method of [Mitchell et al., 1987]. An iterative approximation methodcombining the fast marching and straightest geodesic constructs was developed by[Martínez et al., 2005]. The resulting solution is a corrected geodesic that resembles anappealing compromise between a shortest and a straightest path between two points.[Schmidt et al., 2006] directly solve the inverse exponential map problem withoutdirectly computing geodesics. Instead, their algorithm directly uses the edges of theDijkstra minimum paths tree and "lifts" these edges iteratively in the tangent plane ofthe source point. This approach produces approximations that do not converge to thetrue log map unless the surface is of constant 0 Gaussian curvature. To understand whythis limitation appears, we briefly review the principle involved in the construction ofthe inverse exp map in section C.1 of the Appendix.

For the purpose of our work, we have selected the geodesic polar coordinates algorithmproposed by [Melvær and Reimers, 2012]. The reason this algorithm is superiorto the inverse exponential map solution of [Schmidt et al., 2006] is because of thelower approximation error (approximately one order of magnitude lower as indicatedin [Melvær and Reimers, 2012]). The time complexity is marginally higher, but, inpractice, the geodesic polar coordinates algorithm achieves a better performance.

Geodesic polar coordinates are (polar) frames of reference than one can construct inany tangent plane TpM .

Definition 5. Let M be a surface (either polyhedral or smooth), p ∈ M and a mappingPp : M →R× [0,2π) such that

Pp(q) = (rp(q),θp(q)) (4.10)

for any q ∈ M, where rp(q) = L(γp,q) for γp,q being a (locally shortest) geodesic joiningp and q and θp(q) is the angle γp,q(0) makes with a fixed direction in the TpM plane.Then Pp is called the geodesic polar map at p.

As a straightforward consequence of the geodesic polar mapping definition, the fol-lowing remark can be derived

112

4.2. Mean shift filtering on curved surfaces

Remark 1. If p,q ∈ M and γp,q a locally shortest geodesic joining p and q then

θp(q) = θp(r), (4.11)

for any y ∈ γp,q.

Geodesic polar coordinates construction

The geodesic polar map computation algorithm of [Melvær and Reimers, 2012] sharesmany similarities with the Fast Marching Method and Dijkstra’s algorithm. Consider-ing a point p as the source of a unit speed propagating front, the initial value problemthat models the rp(·) distance function is represented through the Eikonal equation

‖∇U (x)‖ = 1,U (p) = 0, (4.12)

where U (x) = rp(x). The algorithm used to compute the values of U (·) for the restof the mesh vertices is based on a dynamic programming principle. [Melvær andReimers, 2012] employ a method similar to the one designed by [Reimers, 2004], whichimproves upon the method of [Novotni and Klein, 2002]. [Tang et al., 2007] have alsosuggested a method that uses the same principle and deals with the computationof the U (·) in an identical fashion that we also detail here. Once computed, thesediscrete geodesic polar coordinates are used to formulate the cartesian expression ofthe discrete logarithm map.

Depending on whether the source p is a mesh vertex, an interior edge point or aface point (see figure B.2 for a graphical representation of all three possibilities),the U (·) values for at least two other points can be exactly computed. Given thisguarantee, there exists at least a triangle for which two of the vertices have known U (·)values. The key of the algorithm is to use the computed distance values in order toestimate the distance to those vertices that have not been traversed by the propagatingfront modeled in equation (4.12). In general, the propagating front has a border thatseparates the mesh vertices into three disjoint sets. The first set is that of fixed points,comprised of vertices that have been crossed by the advancing front. The directneighbors of the fixed points that are not marked as fixed form a set of boundary orcomputed points. In general, a distance estimate for boundary points exists but itis not guaranteed to be optimal. Naturally, the remaining points form the third andfinal set and no distance estimate is yet known for these elements. For completeness,we present the details involved in the approximation U (·) distance function and θp(·)angle function in section C.2 of the Appendix.

Although algorithm 9 closely resembles the principle of action behind Dijkstra’s short-est path algorithm for graphs, the distances are computed as a result of a relaxation

113

Chapter 4. Combined wavelet and mean shift filtering

Algorithm 9 Discrete geodesic polar coordinates

Require: p ∈ M , Umax ∈ R+Ensure: U (v) = rp(v) and θp(v) for any v ∈V such that rp(v) ≤Umax

initialization

for v ∈V doU (v) ←∞

end forC =;for f ∈ F such that p ∈ f do

for v ∈ f ∩V and v 6= p doC ←C ∪ vU (v) = ‖p−v‖θp(v) = flat_angle(p,v) according to equations (C.6 -C.14)

end forend formain_loopwhile C 6= ; do

q = argminq∈C U (q)

for pi ∈N 1v (q) do

for ∆(pi ,p j ,pk ) ∈N 1f (pi ) do

Ui =Ui j k according to equation (C.4)if U (pi )/Ui > 1+ε then

U (pi ) = Ui

compute θp(pi ) according to equation (C.5)if Ui <Umax then

C ←C ∪ pi end if

end ifend for

end forend while

114

4.2. Mean shift filtering on curved surfaces

scheme similar to an iterative Gauss-Seidel process. Empirically, [Melvær and Reimers,2012] have found that, on average, a vertex is included in the C set 1.5 times. In con-clusion, this iterative scheme is an efficient solution for computing the discrete logmap, thus serving to provide its definition as follows

Definition 6. Let p ∈ M be an arbitrary point on this mesh. Then for any q ∈ M inverseexponential map exists and is constructed as

logp(q) = rp(q)(cos(θp(q)) sin(θp(q))

), (4.13)

where rp(q) :=U (q) and θp(q) are the results of running algorithm 9 with input p andUmax =∞.

Normal coordinates

We have seen how the inverse of the exponential map can be used to define localcoordinate frames and establish a correspondence between manifold points andtangent vectors. In consequence, for any p ∈ M , there exists a neighborhood U ⊂ Mof p and a corresponding neighborhood containing the origin, V ⊂ TpM such thatexpp : V →U is a diffeomorphism. The inverse (or logarithm) map exp−1

p and U forma coordinate chart near p. If ei ⊂V is the canonical orthonormal basis of TpM , thenthe exponential map provides a corresponding set of coordinate functions xi ⊂U .Then U , x1, . . . , xm is called a normal coordinate system at p. Also, if A ∈ TpM , thenA = Ai ∂

∂xi is the expression of this tangent vector using the normal coordinates.

The linear functions defined on tangent vectors form a space called the cotangentspace, denoted by T ∗

p . An element ω ∈ T ∗p M , is written in the corresponding base as

ω=ωi d xi . A Riemannian metric g on M defines for each point p ∈ M a scalar producton TpM . In a parallel with the 1-form definition, g is a matrix valued smooth functionon M , and, when applied to tangent vectors, it acts as a 2-form. One can express itin coordinate form as g = gi j d xi d x j . In effect, for any A,B ∈ TpM , the induced innerproduct is evaluated as

gp(A,B) = Ai (x)gi j (x)B j (x), (4.14)

where x is the coordinate vector at p.

Given any isomorphism E : Rm → TpM , the resulting chart applications, φ := E−1 exp−1

p : U → Rm , reveal the local properties of the manifold geometry with respect tothe normal Euclidean case. A direct correspondence can then be established betweenthe lines of Rm that pass through the origin and the geodesics that radiate from p.This is what supports the geodesic polar coordinate construction.

115

Chapter 4. Combined wavelet and mean shift filtering

Relevant for the discourse of our work are the following two results.

Remark 2. In a normal coordinate system of p the images under expp of the hyper-surfaces gp(A,A) = constant form a family of hypersurfaces orthogonal to the radialgeodesics from p.

Remark 3. In a normal coordinate system of p, the elements of the metric tensor coin-cide with those of the Euclidean metric, i.e. gi j (p) = δi j .

Proof. In general, gp is a symmetric positive definite matrix, hence diagonalizable. Innormal coordinates, the ∂

∂xi basis vectors are orthonormal, i.e. gp( ∂∂xi , ∂

∂x j ) = δi j . Thisresult can be interpreted simply as that at a point p any manifold is Euclidean, butthis property cannot be, in general, extended beyond a single point.

Normal coordinates, as explained in the previous remarks, allow a point-wise reason-ing that is familiar from the Euclidean case. In an m-dimensional real vector space,computing distances is straightforward. Hence, if tangent vectors are expressed innormal coordinates, the distance computing task is identical. We now try to answer aquestion regarding the gradient of the squared distance function, f (q) = d 2(p,q). Aneffortless exercise reveals that for p,q ∈ Rm the ∇q‖p−q‖2 = 2(p−q). The followingtheorem aims to provide an answer when p,q ∈ M .

Theorem 2. Let p ∈ M be a fixed point and f (q) := d 2(p,q) denote the squared distancefunction from p to q ∈ M. Then the gradient of f is

∇ f (q) =∇qd 2(p,q) = 2logp(q). (4.15)

Proof. Let U ,V ,φ be a normal coordinate chart such that p ∈U ⊂ M , 0 ∈V ⊂ TpMand φ(U ) and V are isomorphic. By definition of the inverse exponential map, it holdsthat

d 2(p,q) = gp

(logp(q), logp(q)

). (4.16)

We now express logp(q) in the normal coordinate base ei i∈1,m of TpM

logp(q) =m∑

i=1ui ei , (4.17)

where ui represent the coordinate functions of logp(q). Then

d 2(p,q) = gp

(m∑

i=1ui ei ,

m∑i=1

ui ei

). (4.18)

116

4.2. Mean shift filtering on curved surfaces

Further, considering remark 3, we obtain

d 2(p,q) =m∑

i=1(ui )2. (4.19)

Finally,

∇qd 2(p,q) = 2m∑

i=1ui ei (4.20)

as expressed in normal coordinates. This last expression represents the identity fromequation (4.15).

Remark 4. For p ∈ M fixed and q ∈U such that p,q ∈U with V = expp (U ) and expp :U →V is a diffeomorphism, then

∇qd 2(p,q) =−2logq(p). (4.21)

Proof. By equation (4.13) rp(q) = rq(p) since there exists a unique shortest geodesicjoining p and q. Without loss of generality, we can assume that θp (q) = 0, i.e. by settingthe reference tangent direction to coincide with the velocity vector of the uniquegeodesic path. Since this velocity vector is parallel translated via this geodesic, itfollows that θq (p) =π, thus logp(q) =− logq(p).

4.2.6 Mean shift algorithms

Euclidean Mean Shift

The mean shift algorithm [Fukunaga and Hostetler, 1975, Comaniciu and Meer, 2002]was conceived as a method of seeking the modes of a density estimate given a set ofsamples. Let xi i∈1,n ⊂ Rd be such a subset in the d-dimensional Eculidean space.Then it can be assumed that these n vectors were sampled from a random variablewhose density can be approximated using kernel estimators. We can write this densityestimate at a point x ∈Rd as

fh,K (x) = cK ,d

nhd

n∑i=1

k

(∥∥∥x−xi

h

∥∥∥2), (4.22)

where h is the bandwidth parameter, k(·) is the profile function of a kernel K and cK ,d

is a normalization constant.

Finding the modes of the density from which the xi samples were drawn has sev-eral applications, two of which are immediate: filtering and clustering. Filtering is

117

Chapter 4. Combined wavelet and mean shift filtering

performed by selecting a bandwidth parameter and substituting the samples withthe closest argument of fh,K for which a local maximum is attained. Clustering iscarried out in a similar fashion, by finding modes and grouping the closest samples toeach mode into a common cluster until all samples are classified. Regardless of thefinal application, mean shift essentially determines the local modes. Consequently,if x ∈Rd corresponds to a mode of the density function, then∇ fh,K (x) = 0. From thegradient equation

∇ fh,K (x) = 2cK ,d

nhd+2

n∑i=1

(x−xi )k ′(∥∥∥x−xi

h

∥∥∥2)

(4.23)

we obtain an equivalent kernel-based expression

∇ fh,K (x) = 2

h2cfh,G (x)mh,G (x), (4.24)

where g (·) =−k ′(·), cG ,d is a normalization constant, c = cG ,dcK ,d

,

fh,G (x) = cG ,d

nhd

n∑i=1

g

(∥∥∥x−xi

h

∥∥∥2), (4.25)

and

mh,G (x) =

n∑i=1

(xi −x)g(∥∥x−xi

h

∥∥2)

n∑i=1

g(∥∥x−xi

h

∥∥2) . (4.26)

The mh,G (x) is called the mean shift vector at x and represents the difference betweenthe distance weighted mean of the xi samples and the center point x. From equation(4.24), we obtain that

mh,G (x) = h2c∇ fh,K

2 fh,G (x), (4.27)

thus the mean shift vector is proportional to the gradient of the density estimate. Toreach a local maximum, a gradient ascent iterative process can be used, i.e.

x(t+1) ← x(t ) +mh,G (x(t )), (4.28)

where an error criterion ensures that an approximate solution is obtained after a finitenumber of iterations.

Several kernel choices are possible, amongst the most popular being the Epanechnikov

118

4.2. Mean shift filtering on curved surfaces

kernel

K (x) =

cK ,d(1−‖ x

h‖2)

,‖x‖ < h

0 ,otherwise(4.29)

and the Gaussian kernel

K (x) = cK ,d1

hp

2πexp

(−‖x‖2

2h2

). (4.30)

[Li et al., 2007] discuss and prove a convergence theorem for the mean shift algorithm.The conclusion stated through this theorem is that for densities with a finite numberof modes and convex kernels the iterative process from equation (4.28) converges.Another issue that has spawned a separate research path is the question regardingthe bandwidth selection criteria. [Comaniciu, 2003] has addressed this issue andproposed a modified mean shift algorithm with adaptive bandwidth parameters.

Mean shift on multi-variate data

If xi i∈1,n ⊂Rd is a set of samples that correspond to a composite signal such as animage, then it becomes useful to exploit the different ranges the individual coordinatesof the samples have. [Comaniciu and Meer, 2002] have proposed using a concatenatedkernel with separate bandwidth parameters

Khs ,hr (x) = cK ,d

hps hq

r

ks

(∥∥∥∥ xs

hs

∥∥∥∥2)kr

(∥∥∥∥ xr

hr

∥∥∥∥2), (4.31)

where x = (xs xr

)is obtained from concatenating a p-dimensional spatial vector and

a q-dimensional range vector that correspond to d = p +q-dimensional image-likesignal sample (i.e. pixel). The hs and hr bandwidths are selected according to therange and variance of the separate components of the pixels (coordinates and colorvalues).

[Comaniciu and Meer, 2002] propose using a concatenated kernel and substitutingthis kernel in equation (4.26), leading to the following expression

mh,G (x) =

n∑i=1

(xi −x)g

(∥∥∥xs−xishs

∥∥∥2)

g

(∥∥∥xr −xirhr

∥∥∥2)

n∑i=1

g

(∥∥∥xs−xishs

∥∥∥2)

g

(∥∥∥xr −xirhr

∥∥∥2) . (4.32)

119

Chapter 4. Combined wavelet and mean shift filtering

Mean shift over Riemannian manifolds

We now consider a set of n samples xi ⊂ M and rewrite equation (4.22)

fh,K (x) = cK ,h

hmn

n∑i=1

k

(d 2(x,xi )

h2

). (4.33)

So far, there is no substantial difference in formulating an adapted mean shift algo-rithm that works on manifold data. By analyzing equation (4.26), we conclude thatthe mean shift vector involves computing a weighted average, which is a trivial task inthe Euclidean setting. However, the addition of points on a manifold does not havea mathematical meaning any longer. [Grove and Karcher, 1973] have first addressedthe goal of finding the Riemannian weighted center of mass of a set of n points. Whilesumming manifold points is not possible, performing algebraic operations in thetangent plane is completely well defined. Their result capitalizes on this minor remarkand is reproduced for completeness in the following

Theorem 3. For xi ⊂ M and ωi ⊂ R+ with i ∈ 1,n the weighted center of mass ofthese points is defined as

m = argminy∈M

n∑i=1

ωi d(y,xi )2. (4.34)

Then m satisfies

n∑i=1

ωi logm(xi ) = 0. (4.35)

A remarkable interpretation of this result is the analogy with the properties of theEuclidean mean. By "lifting" the manifold points onto the tangent plane of theirweighted center of mass, we obtain the equivalent definition of the Euclidean average(see figure 4.4). If vi ∈Rm , i ∈ 1,n is a set of real vectors, then

∑ni=1 (vi −m) is 0 when

m is equal to the average of these n vectors.

The last ingredient we need to compute before sketching the Riemannian mean shiftalgorithm is the gradient of fh,K . The gradient of (4.33) is

∇ fh,K (x) =− cK ,h

hmn

n∑i=1

g

(d 2(x,xi )

h2

)∇d 2(x,xi )

h2, (4.36)

120

4.2. Mean shift filtering on curved surfaces

TpM

x

xi

logxxi expxmm

Figure 4.4: The weighted Riemannian center of mass and tangent plane identity (4.35) .

which, by the result in theorem 4.15, becomes

∇ fh,K (x) = 2cK ,h

hm+2n

n∑i=1

g

(d 2(x,xi )

h2

)logx(xi ). (4.37)

It is possible to use a product of kernels if the xi samples belong to manifolds withadditional attribute data, i.e. xi =

(xis xir

), where xis ∈ M and xir ∈ Rr . In this case,

the gradient equation is approximated as

∇ fhs ,hr ,K (x) ≈ 2cK ,h

hm+2s hr+2

r

n∑i=1

g

(d 2(xs ,xis )

h2s

)g

(∥∥∥∥xr −xir

h2r

∥∥∥∥2)logxs

(xis ) (4.38)

We now write the first order expansion of fh,K (see [Mukherjee et al., 2010] for adiscussion on this subject), i.e.

fh,K (expx(v)) ≈ fh,K (x)+ gx(∇ fh,K (x),v) , (4.39)

where v ∈ TxM . Since the goal is to maximize the objective function, v needs to bechosen in the direction that maximizes the gx(∇ fh,K (x),v) scalar product, which isprecisely along the gradient. We thus obtain the following mean shift vector expression

mh,G (x) =

n∑i=1

g(

d 2(x,xi )h2

)logx(xi )

n∑i=1

g(

d 2(x,xi )h2

) , (4.40)

which corresponds to a gradient ascent procedure with a fixed step of 1, as suggested

121

Chapter 4. Combined wavelet and mean shift filtering

in [Rentmeesters and Absil, 2011]. In consequence, mG ,h ∈ TxM leads to a gradientascent update procedure where the principal iteration is defined as

x(k+1) ← expx(k)

(mh,G (x(k))

). (4.41)

If the manifold has associated attribute information, then equation (4.40) becomes

mhs ,hr ,G (x) =

n∑i=1

g(

d 2(xs ,xis )

h2s

)g

(d 2(xr ,xir )

h2r

)logxs

(xis )

n∑i=1

g(

d 2(xs ,xis )

h2s

)g

(d 2(xr ,xir )

h2r

) . (4.42)

Algorithm 10 Riemannian mean shift

Require: xi ⊂ M , i ∈ 1,n .Ensure: yi ⊂ M , ı ∈ 1,n, the modes of fK ,hs ,hr corresponding to xi .

for i ← 1. . .n doy(0)

i ← xi ,k ← 0repeat

mhs ,hr ,G (x) :=n∑

j=1g

(d2(xs ,x js )

h2s

)g

(d2(xr ,x jr )

h2r

)logxs (x js )

n∑j=1

g

(d2(xs ,x js )

h2s

)g

(d2(xr ,x jr )

h2r

)y(k+1)

i ← expy(k)i

(mhs ,hr ,G (y(k)

i ))

k ← k +1until ‖y(k+1)

i −y(k)i ‖ ≤ ε or k > kmax

yi ← y(k)i

end for

There are some critical issues concerning the convergence of the Riemannian meanshift algorithm. First of all, the density function should be globally convex. Second,the xi samples should be packed together such that the injectivity radius of the ex-ponential map guarantees the existence of the mapping. Overall, the convergenceproblem is still an open research problem and is being actively pursued (see [Afsariet al., 2013]).

For the purposes of our work, we aim to apply algorithm 10 substituting the manifoldM with a simplicial complex (i.e. mesh) M = (V ,E ,F ) and the sample set xi withthe set of vertices, V . Since both the discrete exp and log maps are guaranteed toexist by algorithmic construction, it is possible to establish a one-to-one and ontocorrespondence between the tangent plane of any point and the entire mesh.

122

4.3. Experiments

4.2.7 Blurring mean shift

The non-linear mean shift algorithm in its given form (algorithm 10) may suffer fromreduced convergence rates. One simple alteration of the iterative procedure can im-prove upon this issue, provided a trade-off between feature loss and noise suppressiongain is accepted. The proposed variant, dubbed blurring mean shift (see [Šurkala et al.,2011]), relies on using batched iterations. Each sample is shifted through one or moregradient ascent iterations, depending on the required convergence error. Consideringthe process of shifting all samples to be part of an iteration batch, the key modificationis to alter the attributes and/or positions of the samples by substituting the originalmesh vertex samples by the output of the mean shift batch and repeating the gradientascend iterations using this modified information. The resulting procedure is detailedin algorithm 11.

Algorithm 11 Blurring Riemannian mean shift

Require: xi ⊂ M , i ∈ 1,n .Ensure: yi ⊂ M , ı ∈ 1,n, the modes of fK ,hs ,hr corresponding to xi .

for batch_counter ← 1. . . total_batch_count dofor i ← 1. . .n do

y(0)i ← xi ,k ← 0

repeat

mhs ,hr ,G (x) :=n∑

j=1g

(d2(xs ,x js )

h2s

)g

(d2(xr ,x jr )

h2r

)logxs (x js )

n∑j=1

g

(d2(xs ,x js )

h2s

)g

(d2(xr ,x jr )

h2r

)y(k+1)

i ← expy(k)i

(mhs ,hr ,G (y(k)

i ))

k ← k +1until ‖y(k+1)

i −y(k)i ‖ ≤ ε or k > kmax

yi ← y(k)i

end forfor i ← 1. . .n do

xi ← yi

end forend for

4.3 Experiments

4.3.1 Subjective evaluation

We explore the applicability prospects of the so far described Riemannian mean shiftalgorithm by following the procedure introduced in algorithm 7. Given the goal ofthe procedure, we propose a subjective comparison between the original input andthe filtered results. In the series of experiments to follow, we set the αk factors from

123

Chapter 4. Combined wavelet and mean shift filtering

algorithm 7 to 1 and 0 only, to reflect the difference between adding back the entireset of missing details or suppressing it completely. The first experiment involves theartificial terrain data set that contains 11325 points after 4 wavelet analysis steps(triangulated point cloud - top row of figure 4.5a, and raw point cloud - middle rowof the same figure). Adding back the missing geometry and attribute details (figure4.5b) reveals the vegetation formations and the vegetation layer borders (lighter anddarker shades of green) that resemble interlaced patterns. In figure 4.5a we presentthe effects of both geometry and attribute clustering where the raw point samplesare grouped together semantically and spatially. By using the filtered attribute valuesonly, details are added back and a high density model (middle row of figure 4.5b) issynthesized. The effects of filtering the low resolution data are perceived throughmore defined vegetation regions, while the boundaries still retain most of the originaltransition patterns. If the details are completely suppressed, the boundary contoursbecome much smoother, as can be observed in the bottom row of figure 4.5b.

The second proposed experiment uses the Smoky Mountains fragment set consistingof approximately 270,000 vertices. The set is subjected to a series of 12 analysissteps and a low resolution approximation amounting approximately 5,600 samples isobtained (refer to figure 4.6a for the triangulated and raw point cloud rendering inthe first two rows). The samples are then clustered together using algorithm 10. Thedifference between adding back details to the unfiltered low resolution approximationand to the filtered one is manifested through a smudging effect of the vegetation layers.In this respect, the isolated patches of forest or shrubs are better grouped togethergiven that the attribute information is locally diffused and averaged between similarneighbors (see figure 4.6b top and middle rows). In the bottom row of figure 4.6b, thehighest density filtered data is synthesized without adding back any details. The resultis a smoother set, without any high frequency features, which better allows for theidentification of vegetation classes.

We next consider the Fundata terrain patch, the second largest set, having a samplecount of more than 8.4 million points (top row of figure 4.7b). After a series of 12analysis steps, the set is reduced to a low resolution model of approximately 180,000points (mesh and point cloud representations given in the top two rows of figure4.7a). Due to the initial attribute distribution and more uniform sampling patterns,the mean shift clustering procedure does not alter the attribute intensity as for theprevious input sets (see figure 4.7a for the clustering results). The synthesized results(figure 4.7b) can be used to better reveal isolated but dense patches of vegetation.

The last and largest set, the Iezer Mountains subrange, is also reduced from a totalof approximately 11.4 million points to a rough approximation counting 218,000samples (represented in the top two rows of figure 4.8a). The effects of the mean shiftclustering filter are easier to observe since this terrain scan contains many alternating

124

4.3. Experiments

vegetation and clear ground patches (bottom row of figure 4.8a). The splatting effectsof the filter are manifested in the re-synthesized highest resolution representation(top row of figure 4.8b versus the bottom rows of the same figure). Given that thevegetation classes are already well defined and isolated, not adding back the waveletdetail coefficients does not incur and perceivable information loss.

4.3.2 Performance tests

All four previous experiments were conducted by running algorithm 10 with theparameter values provided in table 4.1.

Algorithm hs hr Umax ε max_iterationsRiemannian mean shift 8AEL 4 4AEL AEL/20 50

Blurring Riemannian mean shift 5AEL 5 4AEL AEL/5 5

Table 4.1: Algorithm parameters

To estimate the overhead of using the proposed mean shift algorithms 10 and 11, wehave measured the execution time for the low resolution approximations of the setsdepicted in figure 4.9. The results are assembled in table 4.2.

Data set Vertex count Riemannian mean shift Blurring Riemannian mean shiftSmoky 40438 40s 120s

Fundata 180183 170s 505sIezer 229095 260s 780s

Table 4.2: Algorithm benchmarks for the sets depicted in figure 4.9

As observed in table 4.2, the execution time of the proposed algorithms is sensiblyreduced compared to the hybrid approach of [Shamir et al., 2006]. In their originalwork, the authors report an execution time of 10 minutes for a mesh amounting 20,000vertices on a 2GHz machine. In our set-up, we have benchmarked single-threadedimplementations of both algorithms having the parameters shown in table 4.1. Themachine used to evaluate the performance on the datasets from table 4.2 was runningat a frequency of 3GHz.

4.3.3 Denoising experiment

Besides the observed feature-based clustering behavior at the lowest scale of reso-lution, both algorithms 10 and 11 have immediate denoising applications and cancomplement a pure wavelet-based strategy. We showcase such an application in

125

Chapter 4. Combined wavelet and mean shift filtering

figure 4.10. In preparation for this experiment, the artificial terrain patch of 40,000vertices was altered by shifting the height above ground of each vertex using Gaussiannoise with σ= 5 (approximately 18% of the entire range), while the point classes wereperturbed with a standard deviation of 3 (again amounting 18% of the entire classrange). The high resolution model was subjected to a series of four analysis steps,yielding a low resolution approximation containing about 11,000 points. In figure4.10, we observe that wavelet-based denoising alone does not succeed in suppressingthe noise. When the Riemannian mean shift filtered low resolution approximationis used to recover the original set, we observe that the fuzzy boundaries betweenfeatures are diminished in intensity, while the neighboring noisy samples are bettergrouped together. In the bottom row of figure 4.10 we present the results of usingthe blurring mean shift algorithm. If the missing details are added back, we can stillobserve the noise component that has been captured together with relevant infor-mation during the analysis stages. When the details are removed, the recovered setbecomes smoother in comparison to the previous outputs, while the individual vege-tation classes are also easier to discriminate. In these experiments, the Riemannianmean shift parameters consisted of a geodesic radius four times the average distancebetween immediate point neighbors, while the hs parameter was set to eight timesthis amount and the hr parameter to a constant value of 4. The maximum number ofiterations in case of slow convergence was limited to 100, while the ε error was set tobe 30 times smaller than the previously computed average neighbor distance. Theblurring mean shift algorithm, on the other hand, was allowed to perform a maximumof 5 individual iterations per step, while its hs parameter was lowered to five times theaverage distance. Only ten blurring passes were executed in total before the outputwas recorded and fed to the wavelet synthesis stage.

Similar to the curvature filtering experiments of [Zhang et al., 2008] and [Shamiret al., 2006], we have examined the effects the potential of mean shifting the discreteabsolute curvature field. We have used MeshLab [Cignoni et al., 2008] to computethe absolute vertex curvatures and transfer these values into RGB color attributes.The models selected for this curvature filtering experiment were acquired from thehttp://visionair.ge.imati.cnr.it/ontologies/shapes/viewmodels.jsp repository. Morespecifically, the frog model was reduced from 9815 points to 5242 points. The algo-rithm parameters were set to hs = 3AEL, hr = 0.25 for the single pass mean shift andhs = 5AEL , hr = 0.1 for the blurring mean shift with 10 passes. The curvature filteringresults for the frog and bust models are shown in figure 4.11. For the bunny model,figure 4.12, we have applied the wavelet filtering strategy by reducing the model from34,000 vertices to approximately 10,000 vertices (setting L = 4 in algorithm 7).

126

4.3. Experiments

(a) Low resolution approximation. (b) High resolution terrain.

Figure 4.5: Artificial terrain patch. The left column represents the high resolution input andthe right column depicts the coarsest approximation.

127

Chapter 4. Combined wavelet and mean shift filtering

(a) Low resolution approximation. (b) High resolution terrain.

Figure 4.6: Smoky Moutains terrain fragment. The left column represents the high resolutioninput and the right column depicts the coarsest approximation.

128

4.3. Experiments

(a) Low resolution approximation. (b) High resolution terrain.

Figure 4.7: Carpathian Moutains (Fundata region) terrain fragment. The left column representsthe high resolution input and the right column depicts the coarsest approximation.

129

Chapter 4. Combined wavelet and mean shift filtering

(a) Low resolution approximation. (b) High resolution terrain.

Figure 4.8: Carpathian Moutains (Iezer subrange) terrain fragment. The left column representsthe high resolution input and the right column depicts the coarsest approximation.

130

4.3. Experiments

Figure 4.9: The original and filtered data sets described in table 4.2. Columns, from left toright: original set, mean shift filtered set and blurring mean shift filtered set. Rows, from top tobottom: Smoky Mountains, Fundata Region and Iezer Mountain Range.

131

Chapter 4. Combined wavelet and mean shift filtering

Figure 4.10: Denoising an artificially altered synthetic terrain patch. Top row, left to right: theinitial noisy dataset, reconstructed set by detail suppression, reconstruction using Riemannianmean shift and suppressed details. Bottom row, left to right: reconstruction using blurringmean shift and no detail suppression, reconstructed set using blurring mean shift and detailsuppression. Reconstruction proceeds as described in algorithm 7.

Figure 4.11: Curvature filtering using algorithm 7 with αk = 0. Left to right: initial, mean shiftand blurring mean shift filtered color-coded absolute curvature values.

132

4.3. Experiments

Figure 4.12: Curvature filtering using algorithm 7. Left column: original curvature colormap. Combined wavelet filtering (algorithm 7) using mean shift (top row) blurring mean shift(bottom row).

133

5 Experiments and discussion

In the previous chapters we have highlighted the importance of both feature measure-ment mechanisms (e.g. descriptors) and prediction and update filters. Choosing thebest prediction and update filter combination was discussed in chapter 2 in terms ofthe root mean square error. In chapter 3, another, local approximation error measurehas been used, i.e. the average plane distance (a simple and efficient metric first usedby [Schroeder et al., 1992]). Through construction, wavelet coefficients or differencevectors are another direct indicator of the approximation quality, especially for recon-struction goals where lossy compression is allowed. In simple terms, the magnitudeof these coefficients is also correlated with data variability and, hence, with featurerelevance. Even further, wavelet coefficients have been shown to behave like curvatureindicators at specific scales (see the works of [Beyer, 2003], [Dong et al., 2009] and[Perraudin et al., 2014]). For these reasons, we choose to track a new error metricwhich is directly based on wavelet coefficients. The details and numerical results aswell as their interpretation follow in the remainder of this chapter.

5.1 Methodology

We are directly interested in examining the influence of the prediction and updatefilter choices (introduced in chapter 2) on the wavelet coefficient magnitude evolution.For brevity, we denote the prediction filters as follows.

• UW : uniform weights - the weights corresponding to the umbrella discreteLaplacian.

• IDW : inverse distance weights - the weights corresponding to the FujiwaraLaplacian.

• NNLS: non-negative least squares weights - the weights constructed by solving alocal constrained bets-fit problem where the goal is to minimize the difference

135

Chapter 5. Experiments and discussion

between the actual position of an odd sample and a convex combination of allits even neighbors.

For the update filter design choices, we will use the following abbreviations:

• S: smoothing weights - the update weights that minimize the aliasing effectsintroduced when removing the odd samples.

• MP: mean-preserving weights - the update weights designed to preserve theaverage of the signal after removing the odd samples.

By combining the different prediction and update filter designs, we obtain six possiblechoices that we further apply to measure the evolution of an approximation errorestimate. For the purpose of numerically comparing the quality of the approximations,we opt to track the per-level average difference vector magnitude. Although such anerror may underestimate the geometrical error, it is an indicator of the reconstructionerror, provided the user wishes to discard the details (which is often the purposein lossy compression applications). Another consequence of working with smallmagnitude detail vectors is that feature augmentation or suppression is also less likelyto produce undesirable artifacts due to folding or exaggerated high-frequency detailloss. Mathematically, the average difference vector magnitude at level l is computedas

adml =1

|Ol |∑

s j ,l∈Ol

‖d j ,l‖. (5.1)

5.2 Visual and numerical experiments

Tracking the evolution of the average difference vector magnitude (figure 5.2, 5.4,5.6, 5.8), we immediately notice that, when using uniform prediction weights (UW),the information loss is the highest, regardless of the update filtered used to counterthe aliasing effects. On average, the uniform prediction weights tend to produce40% higher errors than the second best option, the inverse distance weights (IDW).Nonetheless, the IDW prediction weights are, for most data sets, also almost 40% lessaccurate than the non-negative least squares (NNLS) weights. Naturally, the maintrade-off for choosing the most accurate option stems from the higher computationalcost imposed by the constrained optimization problem resolution.

As highlighted in the previous chapters, the update filter role is perceived through itsanti-aliasing effects. Although less perceivable in the higher density models, somealiasing artifacts are still present in figures 5.1, 5.3, 5.5, 5.7. However, the smoothing

136

5.2. Visual and numerical experiments

Figure 5.1: Artificial terrain patch after 8 consecutive analysis passes. Left-middle image: thehigh resolution model. Top row: the low resolution approximations using smoothing updateweights. Bottom row: the low resolution approximations using mean-preserving updateweights.

0.100.150.200.250.300.350.400.450.500.550.600.650.700.750.800.850.900.951.001.051.101.151.201.251.301.351.401.451.501.551.601.651.70

8 7 6 5 4 3 2 1

UW-S IDW-S NNLSW-S

UW-MP IDW-MP NNLSW-MP

Figure 5.2: Average detail vector magnitude evolution (8 levels) for the artificial terrain patch.

137

Chapter 5. Experiments and discussion

Figure 5.3: Smoky Mountains fragment after 12 consecutive analysis passes. Left-middle image:the high resolution model. Top row: the low resolution approximations using smoothingupdate weights. Bottom row: the low resolution approximations using mean-preservingupdate weights.

0.100.500.901.301.702.102.502.903.303.704.104.504.905.305.706.106.506.907.307.708.108.508.909.30

12 11 10 9 8 7 6 5 4 3 2 1

UW-S IDW-S NNLSW-S

UW-MP IDW-MP NNLSW-MP

Figure 5.4: Average detail vector magnitude evolution (12 levels) for the Smoky Mountainsfragment.

138

5.2. Visual and numerical experiments

Figure 5.5: Fundata region fragment after 12 consecutive analysis passes. Left-middle image:the high resolution model. Top row: the low resolution approximations using smoothingupdate weights. Bottom row: the low resolution approximations using mean-preservingupdate weights.

0.100.200.300.400.500.600.700.800.901.001.101.201.301.401.501.601.701.801.902.002.102.202.302.402.502.602.702.802.90

12 11 10 9 8 7 6 5 4 3 2 1

UW-S IDW-S NNLSW-S

UW-MP IDW-MP NNLSW-MP

Figure 5.6: Average detail vector magnitude evolution (12 levels) for the Fundata regionfragment.

139

Chapter 5. Experiments and discussion

Figure 5.7: Iezer Mountains subrange after 12 consecutive analysis passes. Left-middle image:the high resolution model. Top row: the low resolution approximations using smoothingupdate weights. Bottom row: the low resolution approximations using mean-preservingupdate weights.

0.100.250.400.550.700.851.001.151.301.451.601.751.902.052.202.352.502.652.802.953.103.253.403.553.703.854.00

12 11 10 9 8 7 6 5 4 3 2 1

UW-S IDW-S NNLSW-S

UW-MP IDW-MP NNLSW-MP

Figure 5.8: Average detail vector magnitude evolution (12 levels) for the Iezer Mountainssubrange.

140

5.2. Visual and numerical experiments

update weights tend to produce rougher lower resolution approximations. In terms ofthe average detail vector magnitude, the difference between the smoothing and meanpreserving update weights also favors the latter.

The conclusion of our experiments validates the hypotheses and observations madein the previous chapters of our work. If the goal of the wavelet analysis is to reduce theapproximation error, it is crucial to use prediction filter weights adapted to the localdata variability such that the average detail magnitude is reduced. Consequently, thestability increases and fewer aliasing artifacts are introduced. An all-round predictionfilter with no computational overhead is obtained using inverse distance weights(IDW). The alternative for scenarios where even better approximation quality is de-sired is to use constrained least squares fitting of the prediction weights (NNLS). Eitherprediction filter can be coupled with one of the two update filters we have presented(smoothing or mean-preserving weights). There is a subtle trade-off between usingeach update filter. On the one had, the smoothing update filter seems to be more ag-gressive in compensating for the detail loss. On the other hand, the mean-preservingfilter design leads to lower difference vector magnitude values and performs better interms of smoothing the coarse signal when coupled with either IDW or NNLS predic-tion filters. We thus recommend using the IDW prediction and MP update filter pairsfor general multiresolution analysis goals, while increased accuracy can be attainedusing the NNLS prediction and MP update filter pair.

The final conclusion concerning an importance-driven odd-even node classificationis that the use-case scenario should dictate whether or not the added complexity isjustified for preserving more salient features. Given the constraints the node classi-fication is subjected to in local node neighborhoods, a certain amount of probablyredundant vertices will not be immediately removed after a single analysis stage. Thisbehavior is opposite to that of incremental decimation methods, which are not forcedto remove nodes almost uniformly across the entire mesh. Thus, if the input modelis very dense and having a negligible high frequency feature footprint, sorting thevertices according to any importance value is not likely to have any positive impacton the final results.

141

6 Works and contribution

In this chapter, we review the publications in connection with this thesis and list aseries of original contributions and the results of our research activity.

6.1 Publications

We now enumerate the published materials, which also contain the majority of ideaspresented throughout this thesis.

Journal articles:

• T. Cioaca, B. Dumitrescu, M.S. Stupariu Heuristic-driven Graph Wavelet Modelingof Complex Terrain [Cioaca et al., 2016b] published in Computer Graphics Forum(ISI journal with 2015 impact factor 1.642)

• T. Cioaca, B. Dumitrescu, M.S. Stupariu Combined Quadric Error Metric andLifting Scheme Multivariate Model Simplification [Cioaca et al., 2016a] submittedto the U.P.B. Scientific Bulletin, series C

Conference articles:

• T. Cioaca, B. Dumitrescu, M.S. Stupariu, I. Patru-Stupariu, M. Naparus, I. Stoic-escu, A. Peringer, A. Buttler, F. Golay Heuristic-driven Graph Wavelet Modeling ofComplex Terrain [Cioaca et al., 2015] published in the proceedings of the Sixth In-ternational Conference on Graphic and Image Processing (ICGIP 2014) (includedin the SPIE Digital Library, and indexed by Ei Compendex and Thomson ISI)

Under review

143

Chapter 6. Works and contribution

• T. Cioaca, B. Dumitrescu, M.S. Stupariu Lazy Wavelet Simplification using Scale-dependent Dense Geometric Variability Descriptors[Cioaca et al., 2016c] submit-ted to the Journal of Control Engineering and Applied Informatics (ISI journalwith 2015 impact factor 0.537)

6.2 Detailed Contributions

My research activity was guided by professor Bogdan Dumitrescu (B.D.), also my thesisadvisor, and by professor Mihai-Sorin Stupariu (M.S.S.), from the Computer ScienceDepartment, University of Bucharest. In this section, I will enumerate my personalcontributions to each publication.

Heuristic-driven Graph Wavelet Modeling of Complex Terrain [Cioaca et al., 2016b].Following a discussion with professors B.D. and M.S.S., I adapted and implemented alifting scheme design for graph signals to the context of multivarite mesh data. Theresearch team led by M.S.S. provided a series of terrain LiDAR scans that I preparedinto mesh surfaces with geometric and attribute channels. The idea of driving the lazywavelet partitioning of data by a feature preserving heuristic based on a hybrid, thinplate energy and quadric error metric was mine. The prediction filter design based ondiscrete Laplacian operators is also my idea, but using the umbrella operator weightsis encountered in several other works. The final, NNLS prediction weights is myanswer to a numerical stability problem, also accompanied by geometrical artifactssuch as face folding. The numerical experiments were performed by me, while thearticle was written by me and reviewed in several sessions by both B.D. and M.S.S.who provided feedback concerning the quality of results, mathematical soundnessand technical writing aspects.

Heuristic-driven Graph Wavelet Modeling of Complex Terrain [Cioaca et al., 2015].In this conference paper, I pursued the idea of further incorporating the quadric errormetric computation within the lifting scheme stages. I implemented three variationsof the algorithm included in [Cioaca et al., 2016b], while numerical experiments wereperformed on terrain data provided by M.S.S., Ileana Patru-Stupariu, MagdalenaNaparus and Ioana Stoicescu. B. D., M.S.S., Magdalena Naparus, Alexander Perringerprovided feedback and reviewed the presentation material and results. All authorsreviewed the final paper at least once.

Combined Quadric Error Metric and Lifting Scheme Multivariate Model Simplifi-cation [Cioaca et al., 2016a]. This paper is our first successful attempt at designing ageometrically correct mechanism of quadric error matrix redistribution during thedownsampling stage using either the prediction or update filter weights. The solutionwas conceived by me and I also implemented and produced the numerical results.

144

6.3. Original End Results

Both B.D. and M.S.S. offered writing assistance and feedback.

Lazy Wavelet Simplification using Scale-dependent Dense Geometric VariabilityDescriptors [Cioaca et al., 2016c]. In this paper, I explored the possibility of using ascale-dependent feature extraction mechanism. This resulted in a particular densedescriptor function design operating on vertex-centered window regions. I introducedtwo new descriptor designs, the S-QEM and PCA-QEM, and I also extended the NFVdescriptor to work on variable scale regions. I also corrected the implementation ofthe Harris 3D corner detector since the original one provided by the author containeda mathematical error and I also improved its selectivity. All numerical experimentsand benchmarks resulted from my implementation. B.D. and M.S.S. reviewed thewritten material in several passes.

6.3 Original End Results

The elements of novelty and the achievements of our research are listed below.

6.3.1 Theory

• the combined bending energy and quadric error metric heuristic driving the odd-even partitioning of vertices presented in chapter 2 is an extension of the originalQEM algorithm to the context of graph data where the downsampling processplaces direct constraints on the edge collapse selection. To our knowledge, noother works have treated this subject

• the Laplacian prediction weights design also presented in chapter 2 is the firsttheoretical and practical illustration of the role such operators play in spatialdomain wavelet mesh analysis. The NNLS weights achieve the best approxi-mation error reduction (approximately 40% lower than the uniform weights),while the Fujiwara Laplacian definition offers the best compromise betweencomputational complexity and approximation error magnitude for multivariatemesh analysis

• the scale-dependent feature descriptor function concept introduced in 3 is anoriginal contribution that provides a theoretical classification of several, well-known surface feature detection methods. Moreover, we illustrate how ourdescriptor concept can accommodate other, one-ring methods to take intoaccount features beyond this topological distance

• non-linear mean shift framework for multivariate mesh data is the first one, toour best knowledge, utilizing Differential Geometry concepts (exponential andlogarithmic map) to rigorously compute weighted averages directly on curved

145

Chapter 6. Works and contribution

domains. The theoretical fundaments of this construction can be found inchapter 4

6.3.2 Algorithms

• the heuristic feature preservation mechanism incorporated in the lazy waveletsplitting and sorting algorithm presented in chapter 2 is a greedy strategy whichexploits the local redundancy to eliminate the less salient features first andleaving the prominent ones to persist over several resolutions. The quadric errormetric matrix redistribution exploits the additivity property of these matricesand is integrated in the lifting scheme at the one-ring scale of each odd vertex,complementing the prediction stage

• the descriptor evaluation and one-ring downsampling algorithm described inchapter 3 is similar to the heuristic feature preservation mechanism used inchapter 2, but omits the effects of applying the update filters from the liftingscheme design. We proposed this algorithm for scenarios where thinning thehigh density point cloud or mesh is the main goal. Our custom descriptors, NFVand Harris 3D are experimentally proven to be the best choices for geometricmeshes, while our S-QEM and PCA-QEM variations are the go-to choice formultivariate models

• the multiresolution filtering algorithm introduced in chapter 4 is another originalcontribution with two major implications. It first confirms that our multireso-lution modeling framework can be used for filtering applications. Second, andmost important, we demonstrate that even computationally intensive filters canbe applied to the coarsest resolution, while the wavelet synthesis is responsiblefor the filtered model reconstruction. The result is an accelerated, hybrid filter-ing technique that reduces the size of the input without having to sacrifice thequality of the results

• the non-linear mean shift algorithm in its variations (Riemannian and blurringmean shift) presented in 4 are experimentally shown to exhibit significantly lowerexecution times compared to other established implementations. In addition,these algorithms can be used to identify features at lower scales or to denoisecorrupted models

6.3.3 Software products

• Graph-wavelet invertible lifting scheme implementation for processing terraindata (requires a proprietary input format containing the multivariate pointcloud and the face indices). The implementation can also perform filtering tasks

146

6.3. Original End Results

using our non-linear mean shift algorithms presented in chapter 4. The code ispublicly available at https://bitbucket.org/tcioaca/klydonion

• Matlab, Python and C# scripts for processing raw LiDAr (.las) data (classifica-tion, denoising, height above ground estimation, duplicate removal and surfacetriangulation)

147

7 Conclusions

In this final chapter, we recapitulate the main achievements and results presentedthroughout this thesis. We then proceed to underlining the advantages and disad-vantages the proposed solutions have. We also suggest potential applications for ourmethod and discuss future work possibilities.

7.1 Concluding remarks

In chapter 2 we have provided the steps for building a spatial-domain graph-basedwavelet transform. The lifting scheme lying at the heart of this construction consistsof three stages specifically conceived for analyzing multi-variate graph data. Thefirst stages, proven to be an important factor in reducing the approximation error, isan even-odd sample partitioning scheme driven by a heuristic cost function. Thisfunction weighs the salient features of the input model treating it is a mesh whosevertices have both geometric and attribute coordinates. For this purpose, we haveproposed a combined generalized quadric error metric and a discrete curvature energyfunction that measures the one-ring data variability and assigns importance valuesto all vertices. Sorting the vertices according to their importance leads to a greedypartitioning strategy where the least important vertex is tagged as odd, while its directneighbors are automatically marked as even, the entire process being repeated untilall samples are marked. The second step of the lifting algorithm requires estimatingthe odd samples, that naturally are concentrated in regions of high redundancy, fromtheir even neighbors. This operation is implemented using a prediction filter. Theaction of this filter resembles that of a Laplacian operator, while the filter weightsmust be chosen to minimize the norm of the resulting difference vector. The third andfinal step of the lifting scheme is updating the even sample subset after the detailscorresponding to the removed odd samples is lost. Through the use of an updatefilter, the aliasing effects are reduced. For the update weights, we have compared two

149

Chapter 7. Conclusions

design choices. The first choice involved simply redistributing the lost informationamong the even neighbors of a vertex proportionally to the value of the predictionweight that neighbor contributed to estimating the position of the removed sample.The second option is to use the update filter design developed by [Jansen et al., 2001,Jansen, 2013] where the information is redistributed in such a way that the signalaverage is preserved across levels. Our experimental findings have revealed thatit is possible to achieve a higher approximation quality in comparison to similarstate of the art approaches. More specifically, we have found that by combininguniform prediction weights and smoothing update weights, as suggested by Ortega,is, on average, producing approximation error 30% higher than when using inversedistance prediction weights (also known as [Fujiwara, 1995] Laplacian weights) andJansen’s mean-preserving update weights. We have also accounted for the situationwhen achieving a lower approximation error is critical. To achieve this goal, we haveexpanded upon the work of [Wagner et al., 2005, Wagner et al., 2006] and proposed anew filter design where the weights are required to minimize the norm of the detailvector and also satisfy a convex combination constraint. Opposed to the solutionpresented by Wagner et al., where the weights are found through direct least squaresfitting, our design is more numerically stable and does not cause folding artifacts.

In chapter 3 the concept of scale-dependendant feature descriptor functions is de-veloped and used to downsample different mesh models. Our descriptor definitionincorporates both topological and geometrical properties of the mesh. The featureimportance measurement is performed in a local window centered at each vertex.The size of the window depends on both the scale of resolution where the feature is re-garded as relevant. According to our definition, we have examined the discriminatingproperties of several descriptor functions. One of our main contributions consistedin extending a normal field variability estimator introduced by [Hussain, 2010] andthe quadric error metric cost, both of which methods operate only on the one-ringneighborhood of vertices. Another contribution we have made was to use principalcomponent analysis for encoding Mahalanobis distance functions as quadric errormatrices. The evaluation of all descriptor functions was performed experimentally. Intotal, we have compared six descriptor functions: the surface variability introducedby [Pauly et al., 2002], our extended normal field variation concept, a shape index, adiscrete Casorati curvature, a 3D Harris corner detector, our extended quadric errormetrics (one obtained via Gaussian smoothing of one-ring matrices, the other en-coding the Mahalanobis distance of a window neighborhood). The robustness of alldescriptors was also examined. Overall, the best descriptor choice for meshes with novertex attributes proved to be the modified version of the Harris 3D corner detector of[Sipiran and Bustos, 2011], with our normal field variation algorithm achieving secondbest results. For multivariate data, only the quadric error metric descriptors can beused. Using the encoded Mahalanobis distance quadric error matrices proved to be

150

7.2. Future work

the option less sensitive to noise.

In chapter 4 we have introduced a hybrid filtering algorithm that combines the de-noising properties of wavelet-based filters with the semantic clustering effects of theclassic mean shift algorithm. Although other works have previously discussed andproposed potential implementations of a manifold, non-linear mean shift algorithm,our approach does not require directly working with discrete Riemannian metric oranalytical expressions for the exponential and logarithmic maps. We instead relyon well-established discrete approximations for these two maps: the exponentialmap is computed via the straightest geodesics algorithm of [Polthier and Schmies,2006], while its inverse uses the O(n log(n)) geodesic polar coordinates construction of[Melvær and Reimers, 2012]. We also note significant performance gain with respectto the geodesic mean shift algorithm of [Shamir et al., 2006]. The principal differencebetween the geodesic mean shift algorithm and our filtering algorithm is that oursdoes not rely on rendering local vertex neighborhoods into a texture image via 3D to2D parametrization. Furthermore, the original implementation did not reconstructthe images after each iteration. The benefit of recomputing the logarithmic map aftereach iteration is that all samples involved in the tangent space averaging process aremapped keeping the distortion rate constant, while the time complexity is influencedby the choice of the local geodesic window size. From a mathematical point of view,the algorithm we have proposed is a discrete implementation of the manifold aver-aging solution examined by [Grove and Karcher, 1973], thus during all steps of theiterative process, the curved space of the support manifold dictates how the samplemean approximation is transported towards a locally optimal position on the samemanifold.

Given the multiple parameters that a user can tune to control both scale, cluster den-sity and convergence rate, we envision our approach to be well suited for multivariatemesh smoothing applications where one-ring methods based on discrete Laplacianformulations filter only the high-frequency bands of the spectrum.

7.2 Future work

The lifting-based wavelet constructions used throughout our work are recommendedfor filtering applications, but, due to the requirement of having to store predictionand update filter weights, it is not possible to efficiently compress the input models.One option is to encode the prediction weights using a topology-based stencil (e.g.using a subdivision scheme such as the modified butterfly scheme [Zorin et al., 1996]).Additionally, given that high density scans often require eliminating redundant data, itcan be beneficial to simplify and resample the set, incrementally adding back detailssimilar to the solution Wu and Amaratunga elaborated in [Wu and Amaratunga, 2003].

151

Chapter 7. Conclusions

It is necessary to assess the impact of potentially increased approximation errors. Also,since resampling must be performed from the lower to the higher levels of detail,automatically generating a multiresolution representation, the aliasing artifacts thatare produced if the update filter is not applied will be drastically reduced. Thus, onlythe detail vectors and enough connectivity information (provided a stencil-basedpredictor is used) need to be stored.

The feature-preserving mechanisms we have used to drive the lazy wavelet partition-ing can also be used independently to reduce data redundancy by clustering togetherneighboring samples with similar importance score. We hypothesize adaptive cluster-ing to produce non-uniformly sampled, low-redundancy point clouds if the constraintof having odd samples connected to even ones exclusively is removed. Moreover, thedata partitioning stage will no longer be required if the multiresolution hierarchy isbuilt by incrementally resampling the coarser levels.

We summarize the possible future research paths below

• feature preserving coarsening: the inherent redundancy can be removed in apreprocessing pass by incrementally grouping neighboring samples into clusterbased upon a similarity measure such as feature descriptor values.

• subdivision-based refinement: after triangulating the low resolution point set,generate intermediate resolution levels through subdivision and retain the dif-ference between the newly introduced samples and the nearest original samplein the high resolution input.

• sample re-ordering: sort the samples to reflect the order in which the subdivisionoperations are performed. This allows for efficient encoding of the topologicaloperations required for generating the fine resolution.

• parallel implementation: some of the operations involved in building the mul-tiresolution representation and in computing the mean shifted values are in-dependent and involve only local sample neighborhoods. The potential ofperforming such operations in parallel has yet to be addressed.

152

A Method selection based on input dataand processing goals

In figure A.1 we summarize a flowchart helping the interested user understand the ap-plicability domain of each class and which one to select depending on their processingneeds.

153

Appendix A. Method selection based on input data and processing goals

INPUT:/high/resolution/data/set

Point/cloud/input?

Require/

compression?

YES NO

Require/

compression?NO

USE:/point/cloud/

simplification

NO

Require/

editing/filtering?

YES

NO

YES

USE:/mesh/

simplification

USE:/mesh/lifting/

schemes

USE:/graph/lifting/schemes

Require/

editing/or

filtering?

NO

YES

YES

Figure A.1: Flowchart for selecting the appropriate downsampling method based on the inputset and its processing requirements.

154

B Discrete exponential map

We discuss here the discrete exponential map construction based on the straightestgeodesics proposed by [Polthier and Schmies, 2006]. In the case of simplicial com-plexes, a curve γ ∈ M is a piecewise linear C 0 continuous curve. The length of γ isthen computed as

L(γ) = ∑f ∈F

L(γ f ), (B.1)

where L(γ f ) denotes the length of the line segment describing the intersectionbetween γ and a triangular face f of M . The curvature concept is defined using vertexangles, as discussed in [Meyer et al., 2003]. For any vertex p ∈V , the one-ring face setN 1

f (p) = f1, . . . , fm is central in defining a discrete Gaussian curvature counterpart,i.e.

κ(p) = 2π−θ(p), (B.2)

where

θ(p) =m∑

i=1θi (p), (B.3)

and θi (p) is the angle of the incident edges of fi at p.

As in the continuous context, this Gaussian curvature definition allows classifying themesh vertices as

1. planar or Euclidean if κ(p) = 0,

2. spherical if κ(p) > 0,

3. hyperbolic if κ(p) < 0.

155

Appendix B. Discrete exponential map

With this classification in mind, it becomes possible to examine how shortest geodesicsadaptations in a discrete set-up can be made possible. The first issue that such anadaption has is that it is no longer possible to define curves that are locally shortestand straightest and that are the solutions to the boundary value problem. Given twoarbitrary points p and q on a mesh, it is trivial to extend the shortest geodesic path ifthe surface is flat. However, if one desires to construct a shortest path that contains aspherical point r, one finds that by shifting the path in one of the two perpendiculartangential direction to γ at r a shorter path that joins p and q is obtained. Thismeans that no matter how a pair of vertices is selected, unless one of them is actuallyspherical, the shortest path connecting them does not pass through a spherical vertex.Thus, let us consider a simple situation where r ∈ N 1

v (p)∩N 1v (q) is the center of a

flat p,s,q,t square. If r is shifted along the perpendicular line to the support plane ofthis square, then all angles incident at r remain congruent. This fact assures that thepiecewise linear path p−r−q is as straight as possible since the tangent vector fieldof this path does not change its orientation. However, the paths obtained by joiningthe altitude lines of the triangle pairs sharing the common edge rt, for example, isa shorter path. Similarly, the altitudes of the triangles sharing the rs edge provide ashorter alternative than p− r−q (see figure B.1 for a depiction of this situation).

pq

r

s

t

pq

r

s

tFigure B.1: The shortest and straightest path joining the p,q vertices of the p,s,q,t squarepasses through its center, r (left). Shifting r along the perpendicular line to this support planeproduces a spherical vertex for which p− r−q is not locally a shortest path, but is straight.

To better understand the properties and limitations of shortest geodesics, we refer tothe concept of left and right curve angles that a curve γ makes at a point p ∈ γ.

Definition 7. Given a mesh M and a curve γ ⊂ M that joins two arbitrary pointsp,q ∈ M and an arbitrary point r ∈ γ, we define the left and right curve angles at r,denoted by θl (r) and θr (r), respectively, as follows

1. θl (r) is the clockwise angle spanned by segment of the curve that starts from rand continues towards the p point until an edge of a face that contains r is met

156

and the other segment that starts at r and continues towards q, stopping whenanother edge of a face that contains r is intersected.

2. θr (r) is measured similarly to θl (r), but the angle measurement is performed in acounter-clockwise manner.

θl(r)

θr(r)

θl(r)

θr(r)

θl(r)

θr(r)

r rr

p

q

p

q

p

q

Figure B.2: Left and right angle measurement at a point r of a curve γ joining points p and q.Left: r is a vertex. Middle: r is an edge interior point. Right: r is a face interior point.

Regardless whether the r vertex where the θl (r) and θr (r) angles are measured isa mesh vertex, or an interior edge point, or an interior face point, definition 7 isapplicable (as illustrated in figure B.2). [Polthier and Schmies, 2006] formulate thefollowing straightest geodesic

Definition 8. Let M be a mesh (simplicial complex) and γ ⊂ M a curve. Then γ is astraightest geodesic on M if for each p ∈ γ it holds that θl (p) = θr (p).

[Polthier and Schmies, 2006] further discuss the straightest geodesic properties andpresent an algorithm for implementing parallel transport of vectors along such curves,as well as providing a numerical integration over discrete surfaces for particle simula-tion purposes. The interested reader can also find a discrete formulation of geodesiccurvature and a discrete equivalent of the Gauss-Bonnet theorem.

157

C Discrete logarithm map

C.1 Discrete inverse exponential map

We review here the key principle behind the log map construction of [Schmidt et al.,2006].

p

q

rup,r

ur,q

up,q

TrM

TpM

Rrur,qp

Figure C.1: Approximating logp(q) = up,q when logp(r) = up,r and logr(q) = ur,q are known.

Let p,r,q ∈ M be three points such that the geodesics from p to r and from r to qare known. The goal is not to describe the geodesic from p to q, but to approximatelogp(q) := up,q ∈ TpM . Then for any v ∈ TpM , up,q = v + (up,q − v). Choosing v =logp(r) = up,r yields up,q = up,r + (up,q −up,r). The (up,q −up,r) vector correspondsto a curve joining r and q that is not necessarily a geodesic unless the surface isdevelopable, i.e. with zero Gaussian curvature. Nevertheless, one can choose toapproximate (up,q −up,r) with such a geodesic for which ur,q = logr(q) ∈ TrM is known.

159

Appendix C. Discrete logarithm map

This allows one to rewrite

up,q = up,r +Rpr ur,q, (C.1)

where Rpr is a rotation matrix aligning the TrM and TpM tangent spaces, as depicted

in figure C.1. Another source of approximation errors arises from the fact that using anisometric mapping such as Rp

r ur,q to relate TrM to TpM does not incur any distortiononly if the surface has constant Gaussian curvature.

Using the tangent plane transformations from equation (C.1), [Schmidt et al., 2006]approximate logp(q) by running the Dijkstra shortest path algorithm and producing aset of intermediate mesh vertices that comprise the path, i.e. p := p0,p1, . . . ,pk =: q.Then

logp(q) ≈ logp0(p1)+

k−1∑i=1

Rp0pi

logpi(pi+1), (C.2)

where Rp0pi

is the rotation matrix aligning Tpi M and TpM .

C.2 Discrete geodesic polar coordinates

The dynamic programming principle that drives the front propagation (equation(4.12)) can be formulated as

U (q) = minr∈N 1

f (q)U (r)+‖q− r‖, (C.3)

where q is a boundary vertex. In practice, the distance to the unmarked vertices isassumed to be infinite, thus equation (C.3) is guaranteed to produce finite numericalestimates for any vertex. The process required to estimate the U (·) value of a boundaryvertex relies on the computed information from the fixed and other boundary vertices.If ∆(qi ,q j ,qk ) is a face for which the q j and qk vertices are elements of the computedor fixed set, then U (qi ) can be approximated with a value Ui j k using the informationfrom the ∆(qi ,q j ,qk ) according to the following procedure

1. verify that |U j −Uk | ≤ ‖q j −qk‖ ≤U j +Uk , otherwise stop.

2. in the plane of ∆(qi ,q j ,qk ) compute a point p′ such that ‖q j −p′‖ =U (q j ) and‖qk −p′‖ =U (qk ).

3. compute Ui j k = minr∈q j qk

‖r−p′‖+‖qi − r‖.

160

C.2. Discrete geodesic polar coordinates

qi

qk

qj

p'

Uk

Uj

r

Φkj

Φij

Uijk

Figure C.2: The estimation process of U (qi ) :=Ui from two computed or fixed neighbors inthe ∆(qi ,q j ,qk ) triangle. The qi q j p′qk quadrilater is convex, hence U (qi ) = ‖p′−qi‖.

For brevity reasons, we refer to U (qi ) as Ui . Figure C .2 illustrates the situation in whichthe p′qk qi q j quadrilater is convex. In this case, Ui j k = ‖qi −p′‖. If this quadrilater isconcave, then Ui j k is computed as min

r∈q j ,qk U (r)+‖r−qi‖.

Referring to figure C.2, the computation of p′ is performed in the plane of ∆(qi ,q j ,qk ).Assuming U j ,Uk and ‖q j −qk satisfy the triangle inequality. Let e1 := qk −q j ande2 := qi −q j . We can now construct a 2D coordinate frame in the (qi ,q j ,qk ) plane withthe origin at q j and the x axis aligned with q j qk . We obtain the following coordinates

q j =(0 0

),

qk = (‖e1‖ 0)

,

qi =(

e1‖e1‖ ·e2

√e2 ·e2 − (e1·e2)2

‖e1‖2

).

Additionally, p′ = (x y

)satisfies the following equations

‖p′−q j‖ =U j

‖p′−qk‖ =Uk.

Solving for x and y we obtainx = 12

(‖e1‖−

U 2k−U 2

j

‖e1‖

)y =−

√U 2

j −x2.

161

Appendix C. Discrete logarithm map

The p′qk qi q j is convex if the following two inequalities hold

[(qi −q j )× (p′−q j )] · [(qi −q j )× (qk −q j )] > 0,

[(qi −qk )× (p′−qk )] · [(qi −qk )× (q j −qk )] > 0.

According to figure C.2 Φi j :=]qi p′q j and Φk j :=]qk p′q j can be used to derive a

linear interpolation factor α= Φi j

Φk j. Since both U (q j ) and U (qk ) had to be computed

before U (qi ) was estimated, so were the polar angles θp(q j ) and θp(qk ). Let q j =(cos(θp(q j ) sin(θp(q j )

)and qk = (

cos(θp(qk ) sin(θp(qk ))

and qi = (1−α)q j +αqk .Then

Ui j k =‖qi −p′‖, if p′qk qi q j is convex

U (r)+‖r−qi‖, otherwise(C.4)

and

θp(qi ) =

atan2(qi ), if p′qk qi q j is convex

θp(r), otherwise, (C.5)

where r = argminr∈

q j ,qkU (r)+‖r−qi‖

.

Depending on whether the seed point p is a mesh vertex, an interior edge point or aninterior face point, the polar angles θp(v) of any vertex of a face that contains p can becomputed directly, according to the following discussion

• if p ∈ f =∆(vi ,v j ,vk ) is an interior face point then

θp(vi ) = 0, (C.6)

θp(v j ) =]vi pv j , (C.7)

θp(vk ) =]vi pv j +]v j pvk . (C.8)

• if p ∈ e = vi v j and vi v j ∈∆(vi ,v j ,vk ) and vi v j ∈∆(v j ,vi ,vl ) (if e is a non-boundaryedge) then

θp(vi ) = 0 (C.9)

θp(v j ) =π (C.10)

θp(vk ) =]vi pvk (C.11)

θp(vl ) = 2π−]vi pvl (C.12)

(C.13)

162

C.2. Discrete geodesic polar coordinates

• if p ∈ V then let α = θ(p)/kπ computed as described in equation (B.3), wherek = 2 if p ∉ ∂M and k = 1 if p is a boundary vertex. By traversing the N 1

v (p) set incounterclockwise order starting from a vertex w we can write N1

v (p) = v0 = w ≺v1 . . . ≺ vm and compute

θp(v0) = 0, (C.14)

θp(vi ) = 1

α

i−1∑k=0]vk+1pvk , (C.15)

for i ∈ 1,m.

We group the angle computation explained through equations (C.6 -C.14) in a separateroutine called flat_angle that we incorporate in algorithm 9.

163

Bibliography

[Abdul-Rahman et al., 2013] Abdul-Rahman, H. S., Jiang, X. J., and Scott, P. J. (2013).Freeform surface filtering using the lifting wavelet transform. Precision Engineering,37(1):187 – 202.

[Afsari et al., 2013] Afsari, B., Tron, R., and Vidal, R. (2013). On the convergence ofgradient descent for finding the riemannian center of mass. SIAM Journal onControl and Optimization, 51(3):2230–2260.

[Aftab et al., 2015] Aftab, K., Hartley, R., and Trumpf, J. (2015). Generalized Weiszfeldalgorithms for Lq optimization. IEEE Transactions on Pattern Analysis and MachineIntelligence, 37:728–745.

[Alexa et al., 2001] Alexa, M., Behr, J., Cohen-Or, D., Fleishman, S., Levin, D., and Silva,C. T. (2001). Point set surfaces. In Proceedings of the Conference on Visualization’01, VIS ’01, pages 21–28, Washington, DC, USA. IEEE Computer Society.

[Alliez and Desbrun, 2001] Alliez, P. and Desbrun, M. (2001). Progressive compressionfor lossless transmission of triangle meshes. In Proceedings of the 28th AnnualConference on Computer Graphics and Interactive Techniques, SIGGRAPH ’01, pages195–202, New York, NY, USA. ACM.

[Anis et al., 2016] Anis, A., Chou, P. A., and Ortega, A. (2016). Compression of dynamic3d point clouds using subdivisional meshes and graph wavelet transforms. InInt’l Conf. on Acoustics, Speech, and Signal Processing (ICASSP). IEEE – Institute ofElectrical and Electronics Engineers.

[Atlan and Garland, 2006] Atlan, S. and Garland, M. (2006). Interactive multiresolu-tion editing and display of large terrains. Computer Graphics Forum, 25(2):211–223.

[Ben-Chen and Gotsman, 2008] Ben-Chen, M. and Gotsman, C. (2008). Characteriz-ing shape using conformal factors. In Proceedings of the 1st Eurographics Conferenceon 3D Object Retrieval, EG 3DOR’08, pages 1–8, Aire-la-Ville, Switzerland, Switzer-land. Eurographics Association.

165

Bibliography

[Bertram, 2007] Bertram, M. (2007). Wavelet analysis for progressive meshes. InProceedings of the 23rd Spring Conference on Computer Graphics, SCCG ’07, pages161–167, New York, NY, USA. ACM.

[Beyer, 2003] Beyer, G. (2003). Terrain inclination and curvature from wavelet coeffi-cients. Journal of Geodesy, 76(9):557–568.

[Botsch et al., 2010] Botsch, M., Kobbelt, L., Pauly, M., Alliez, P., and uno Levy, B.(2010). Polygon Mesh Processing. AK Peters.

[Brentzen et al., 2012] Brentzen, J. A., Gravesen, J., Anton, F., and Aans, H. (2012).Guide to Computational Geometry Processing: Foundations, Algorithms, and Meth-ods. Springer Publishing Company, Incorporated.

[Bronstein et al., 2011] Bronstein, A. M., Bronstein, M. M., Guibas, L. J., and Ovs-janikov, M. (2011). Shape google: Geometric words and expressions for invariantshape retrieval. ACM Trans. Graph., 30(1):1:1–1:20.

[Cerveri et al., 2012] Cerveri, P., Manzotti, A., Marchente, M., Confalonieri, N., and Ba-roni, G. (2012). Mean-shifted surface curvature algorithm for automatic bone shapesegmentation in orthopedic surgery planning: a sensitivity analysis. ComputerAided Surgery, 17(3):128–141. PMID: 22462564.

[Chen and Maggioni, 2010] Chen, G. and Maggioni, M. (2010). Multiscale geometricwavelets for the analysis of point clouds. In Information Sciences and Systems (CISS),2010 44th Annual Conference on, pages 1–6.

[Cheng et al., 2006] Cheng, Z.-Q., Jin, S.-Y., and Liu, H.-F. (2006). Anchors-basedlossless compression of progressive triangle meshes. In Proceedings of PacificGraphics, pages 45–50.

[Choi and Baraniuk, 2005] Choi, H. and Baraniuk, R. (2005). Multiscale manifoldrepresentation and modeling. In Acoustics, Speech, and Signal Processing, 2005.Proceedings. (ICASSP ’05). IEEE International Conference on, volume 4, pages iv/569–iv/572 Vol. 4.

[Cignoni et al., 2008] Cignoni, P., Corsini, M., and Ranzuglia, G. (2008). MeshLab: anOpen-Source 3D Mesh Processing System. Ercim News, 2008.

[Cioaca et al., 2016a] Cioaca, T., Dumitrescu, B., and Stupariu, M.-S. (2016a). Com-bined quadric error metric and lifting scheme multivariate model simplification.U.P.B. Scientific Bulletin, series C.

[Cioaca et al., 2016b] Cioaca, T., Dumitrescu, B., and Stupariu, M.-S. (2016b). Graph-based wavelet representation of multi-variate terrain data. Computer GraphicsForum, 35(1):44–58.

166

Bibliography

[Cioaca et al., 2016c] Cioaca, T., Dumitrescu, B., and Stupariu, M.-S. (2016c). Lazywavelet simplification using scale-dependent dense geometric variability descrip-tors. Journal of Control Engineering and Applied Informatics.

[Cioaca et al., 2015] Cioaca, T., Dumitrescu, B., Stupariu, M.-S., and et al. (2015).Heuristic-driven graph wavelet modeling of complex terrain. In Zhang, Y. W. X.J. D., editor, Sixth International Conference on Graphic and Image Processing (ICGIP2014), volume 9443. SPIE Proceedings.

[Clark, 1976] Clark, J. H. (1976). Hierarchical geometric models for visible surfacealgorithms. Commun. ACM, 19(10):547–554.

[Cohen-Or et al., 1999] Cohen-Or, D., Levin, D., and Remez, O. (1999). Progressivecompression of arbitrary triangular meshes. In Proceedings of the Conference onVisualization ’99: Celebrating Ten Years, VIS ’99, pages 67–72, Los Alamitos, CA,USA. IEEE Computer Society Press.

[Coifman and Maggioni, 2006] Coifman, R. R. and Maggioni, M. (2006). Diffusionwavelets. Applied and Computational Harmonic Analysis, 21(1):53 – 94. SpecialIssue: Diffusion Maps and Wavelets.

[Comaniciu, 2003] Comaniciu, D. (2003). An algorithm for data-driven bandwidthselection. IEEE Trans. Pattern Anal. Mach. Intell., 25(2):281–288.

[Comaniciu and Meer, 2002] Comaniciu, D. and Meer, P. (2002). Mean shift: A robustapproach toward feature space analysis. IEEE Trans. Pattern Anal. Mach. Intell.,24(5):603–619.

[Crovella and Kolaczyk, 2003] Crovella, M. and Kolaczyk, E. (2003). Graph wavelets forspatial traffic analysis. In INFOCOM 2003. Twenty-Second Annual Joint Conferenceof the IEEE Computer and Communications. IEEE Societies, volume 3, pages 1848–1857 vol.3.

[de Jesus Gomes Leandro et al., 2013] de Jesus Gomes Leandro, J., Marcondes Ce-sar Junior, R., and Schmidt Feris, R. (2013). Shape analysis using the spectral graphwavelet transform. In eScience (eScience), 2013 IEEE 9th International Conferenceon, pages 307–316.

[Desbrun et al., 1999] Desbrun, M., Meyer, M., Schröder, P., and Barr, A. H. (1999). Im-plicit fairing of irregular meshes using diffusion and curvature flow. In Proceedingsof the 26th Annual Conference on Computer Graphics and Interactive Techniques,SIGGRAPH ’99, pages 317–324, New York, NY, USA. ACM Press/Addison-WesleyPublishing Co.

167

Bibliography

[Dong et al., 2009] Dong, B., Mao, Y., Dinov, I. D., Tu, Z., Shi, Y., Wang, Y., and Toga,A. W. (2009). Wavelet-Based Representation of Biological Shapes, pages 955–964.Springer Berlin Heidelberg, Berlin, Heidelberg.

[Eck et al., 1995] Eck, M., DeRose, T., Duchamp, T., Hoppe, H., Lounsbery, M., andStuetzle, W. (1995). Multiresolution analysis of arbitrary meshes. In Proceedingsof the 22Nd Annual Conference on Computer Graphics and Interactive Techniques,SIGGRAPH ’95, pages 173–182, New York, NY, USA. ACM.

[Erikson and Manocha, 1999] Erikson, C. and Manocha, D. (1999). Gaps: Generaland automatic polygonal simplification. In Proceedings of the 1999 Symposium onInteractive 3D Graphics, I3D ’99, pages 79–88, New York, NY, USA. ACM.

[Farin, 2003] Farin, G. E. (2003). Hierarchical and Geometrical Methods in ScientificVisualization. Springer-Verlag New York, Inc., Secaucus, NJ, USA.

[Ferraz et al., 2010] Ferraz, A., Bretar, F., Jacquemoud, S., Gonçalves, G., and Pereira,L. (2010). 3d segmentation of forest structure using a mean-shift based algorithm.In Image Processing (ICIP), 2010 17th IEEE International Conference on, pages 1413–1416.

[Fletcher et al., 2009] Fletcher, P. T., Venkatasubramanian, S., and Joshi, S. (2009).The geometric median on riemannian manifolds with application to robust atlasestimation. NeuroImage, 45(1, Supplement 1):S143 – S152. Mathematics in BrainImaging.

[Fujiwara, 1995] Fujiwara, K. (1995). Eigenvalues of laplacians on a closed riemannianmanifold and its nets. In Proceedings of AMS 123.

[Fukunaga and Hostetler, 1975] Fukunaga, K. and Hostetler, L. (1975). The estimationof the gradient of a density function, with applications in pattern recognition. IEEETrans. Inf. Theor., 21(1):32–40.

[Garland and Heckbert, 1997] Garland, M. and Heckbert, P. S. (1997). Surface simpli-fication using quadric error metrics. In Proceedings of the 24th Annual Conferenceon Computer Graphics and Interactive Techniques, SIGGRAPH ’97, pages 209–216,New York, NY, USA. ACM Press/Addison-Wesley Publishing Co.

[Garland and Heckbert, 1998] Garland, M. and Heckbert, P. S. (1998). Simplifyingsurfaces with color and texture using quadric error metrics. In Proceedings of theConference on Visualization ’98, VIS ’98, pages 263–269, Los Alamitos, CA, USA.IEEE Computer Society Press.

[Goswami et al., 2013] Goswami, P., Erol, F., Mukhi, R., Pajarola, R., and Gobbetti,E. (2013). An efficient multi-resolution framework for high quality interactive

168

Bibliography

rendering of massive point clouds using multi-way kd-trees. The Visual Computer,29(1):69–83.

[Grove and Karcher, 1973] Grove, K. and Karcher, H. (1973). How to conjugate c1-close group actions. Mathematische Zeitschrift, 132(1):11–20.

[Guskov et al., 1999] Guskov, I., Sweldens, W., and Schröder, P. (1999). Multiresolutionsignal processing for meshes. In Proceedings of the 26th Annual Conference onComputer Graphics and Interactive Techniques, SIGGRAPH ’99, pages 325–334, NewYork, NY, USA. ACM Press/Addison-Wesley Publishing Co.

[Hammond et al., 2011] Hammond, D. K., Vandergheynst, P., and Gribonval, R. (2011).Wavelets on graphs via spectral graph theory. Applied and Computational HarmonicAnalysis, 30(2):129 – 150.

[Harris and Stephens, 1988] Harris, C. and Stephens, M. (1988). A combined cornerand edge detector. In Proceedings of the 4th Alvey Vision Conference, pages 147–151.

[Ho and Gibbins, 2009] Ho, H. and Gibbins, D. (2009). Curvature-based approachfor multi-scale feature extraction from 3d meshes and unstructured point clouds.Computer Vision, IET, 3(4):201–212.

[Hoppe, 1996] Hoppe, H. (1996). Progressive meshes. In Proceedings of the 23rdAnnual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH’96, pages 99–108, New York, NY, USA. ACM.

[Hoppe, 1999] Hoppe, H. (1999). New quadric metric for simplifying meshes withappearance attributes. In Proceedings of the 10th IEEE Visualization 1999 Conference(VIS ’99), VISUALIZATION ’99, pages –, Washington, DC, USA. IEEE ComputerSociety.

[Hou and Qin, 2012] Hou, T. and Qin, H. (2012). Continuous and discrete mexicanhat wavelet transforms on manifolds. Graph. Models, 74(4):221–232.

[Hussain, 2010] Hussain, M. (2010). Fast and reliable decimation of polygonal modelsbased on volume and normal field. In Bebis, G., Boyle, R., Parvin, B., Koracin, D.,Chung, R., Hammoud, R., Hussain, M., Kar-Han, T., Crawfis, R., Thalmann, D., Kao,D., and Avila, L., editors, Advances in Visual Computing, volume 6453 of LectureNotes in Computer Science, pages 64–73. Springer Berlin Heidelberg.

[Jansen, 2013] Jansen, M. (2013). Multiscale local polynomial smoothing in a liftedpyramid for non-equispaced data. Signal Processing, IEEE Transactions on,61(3):545–555.

[Jansen et al., 2001] Jansen, M., Nason, G., and Silverman, B. (2001). Scattered datasmoothing by empirical Bayesian shrinkage of second generation wavelet coefficients,volume 4478. Other: M Unser and A Aldroubi, (eds).

169

Bibliography

[Kang et al., 2011] Kang, M., Gao, J., and Tang, L. (2011). Nonlinear ransac optimiza-tion for parameter estimation with applications to phagocyte transmigration. InProceedings of the 2011 10th International Conference on Machine Learning andApplications and Workshops - Volume 01, ICMLA ’11, pages 501–504, Washington,DC, USA. IEEE Computer Society.

[Kimmel and Sethian, 1998] Kimmel, R. and Sethian, J. (1998). Computing geodesicpaths on manifolds. Proceedings of the National Academy of Sciences, USA,95(15):8431–8435.

[Kobbelt et al., 1998] Kobbelt, L., Campagna, S., Vorsatz, J., and Seidel, H.-P. (1998). In-teractive multi-resolution modeling on arbitrary meshes. In Proceedings of the 25thAnnual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH’98, pages 105–114, New York, NY, USA. ACM.

[Koenderink and van Doorn, 1992] Koenderink, J. J. and van Doorn, A. J. (1992). Sur-face shape and curvature scales. Image Vision Comput., 10(8):557–565.

[Koibuch and Yamada, 2000] Koibuch, H. and Yamada, M. (2000). Phase transitionof a model of crystalline membrane. International Journal of Modern Physics C,11(08):1509–1518.

[Lashermes et al., 2007] Lashermes, B., Foufoula-Georgiou, E., and Dietrich, W. E.(2007). Channel network extraction from high resolution topography using wavelets.Geophysical Research Letters, 34(23):n/a–n/a. L23S04.

[Lee et al., 2011] Lee, D.-Y., Ahn, J.-K., Ahn, M., Kim, J., Kim, J., and Kim, C.-S. (2011).3d mesh compression based on dual-ring prediction and mmse prediction. InImage Processing (ICIP), 2011 18th IEEE International Conference on, pages 905–908.

[Lee, 1997] Lee, J. M. (1997). Riemannian Manifolds: An Introduction to Curvature.176. Springer-Verlag New York, 1 edition.

[Lee et al., 2004] Lee, S.-M., Abbott, A., and Schmoldt, D. (2004). Wavelet-based hier-archical surface approximation from height fields. In Computer Vision and PatternRecognition, 2004. CVPR 2004. Proceedings of the 2004 IEEE Computer Society Con-ference on, volume 1, pages I–299–I–305 Vol.1.

[Lézoray and Grady., 2012] Lézoray, O. and Grady., L. (2012.). Image processing andanalysis with graphs theory and practice. CRC Press.

[Li and Kuo, 1998] Li, J. and Kuo, C.-C. (1998). Progressive coding of 3-d graphicmodels. Proceedings of the IEEE, 86(6):1052–1063.

170

Bibliography

[Li et al., 2007] Li, X., Hu, Z., and Wu, F. (2007). A note on the convergence of the meanshift. Pattern Recognition, 40(6):1756 – 1762.

[Lindstrom and Turk, 1998] Lindstrom, P. and Turk, G. (1998). Fast and memory effi-cient polygonal simplification. In Proceedings of the Conference on Visualization’98, VIS ’98, pages 279–286, Los Alamitos, CA, USA. IEEE Computer Society Press.

[Linsen, 2001] Linsen, L. (2001). Point-cloud representation. Technical Report 2001-3,Faculty for Computer Science, Universität Karlsruhe.

[Lounsbery, 1994] Lounsbery, M. (1994). Multiresolution Analysis for Surfaces of Arbi-trary Topological Type. PhD thesis, Dept. of Computer Science and Engineering, U.of Washington.

[Lounsbery et al., 1997] Lounsbery, M., DeRose, T. D., and Warren, J. (1997). Mul-tiresolution analysis for surfaces of arbitrary topological type. ACM Trans. Graph.,16(1):34–73.

[Low and Tan, 1997] Low, K.-L. and Tan, T.-S. (1997). Model simplification usingvertex-clustering. In Proceedings of the 1997 Symposium on Interactive 3D Graphics,I3D ’97, pages 75–ff., New York, NY, USA. ACM.

[Mallat, 1989] Mallat, S. G. (1989). A theory for multiresolution signal decomposition:the wavelet representation. IEEE Transactions on Pattern Analysis and MachineIntelligence, 11(7):674–693.

[Manson et al., 2008] Manson, J., Petrova, G., and Schaefer, S. (2008). Streaming sur-face reconstruction using wavelets. In Proceedings of the Symposium on GeometryProcessing, SGP ’08, pages 1411–1420, Aire-la-Ville, Switzerland, Switzerland. Euro-graphics Association.

[Martinez-Enriquez and Ortega, 2011] Martinez-Enriquez, E. and Ortega, A. (2011).Lifting transforms on graphs for video coding. In Data Compression Conference(DCC), 2011, pages 73–82.

[Martínez et al., 2005] Martínez, D., Velho, L., and Carvalho, P. C. (2005). Computinggeodesics on triangular meshes. Computers & Graphics, 29(5):667 – 675.

[Mehlhorn and Schäfer, 2002] Mehlhorn, K. and Schäfer, G. (2002). Implementationof o(nmlogn) weighted matchings in general graphs: The power of data structures.J. Exp. Algorithmics, 7:4–.

[Melvær and Reimers, 2012] Melvær, E. L. and Reimers, M. (2012). Geodesic polarcoordinates on polygonal meshes. Computer Graphics Forum, 31(8):2423–2435.

[Melzer, 2007] Melzer, T. (2007). Non-parametric segmentation of als point cloudsusing mean shift. Journal of Applied Geodesy, 1(3).

171

Bibliography

[Meyer et al., 2003] Meyer, M., Desbrun, M., Schröder, P., and Barr, A. (2003). Discretedifferential-geometry operators for triangulated 2-manifolds. In Hege, H.-C. andPolthier, K., editors, Visualization and Mathematics III, Mathematics and Visualiza-tion, pages 35–57. Springer Berlin Heidelberg.

[Mitchell et al., 1987] Mitchell, J. S. B., Mount, D. M., and Papadimitriou, C. H. (1987).The discrete geodesic problem. SIAM J. Comput., 16(4):647–668.

[Mitra et al., 2006] Mitra, N. J., Guibas, L., Giesen, J., and Pauly, M. (2006). Probabilis-tic fingerprints for shapes. In Proceedings of the Fourth Eurographics Symposium onGeometry Processing, SGP ’06, pages 121–130, Aire-la-Ville, Switzerland, Switzerland.Eurographics Association.

[Moenning and Dodgson, 2004] Moenning, C. and Dodgson, N. A. (2004). Intrinsicpoint cloud simplification. In international conference on Computer Graphics andVision.

[Mohan and Jaillet., 2014] Mohan, Dhanya Menoth, M. T. A. N. M. J. D. and Jaillet., P.(2014). Wavelets on graphs with application to transportation networks. In IEEE17th International Conference on Intelligent Transportation Systems (ITSC), pages1707–1712.

[Mukherjee et al., 2010] Mukherjee, S., Wu, Q., and Zhou, D.-X. (2010). Learninggradients on manifolds. Bernoulli, 16(1):181–207.

[Narang and Ortega, 2009] Narang, S. K. and Ortega, A. (2009). Lifting based wavelettransforms on graphs. APSIPA Annual Summit and Conference (APSIPA ASC 2009)Sapporo, Japan.

[Nguyen et al., 2014] Nguyen, H. Q., Chou, P. A., and Chen, Y. (2014). Compression ofhuman body sequences using graph wavelet filter banks. In Int’l Conf. on Acous-tics, Speech, and Signal Processing. IEEE – Institute of Electrical and ElectronicsEngineers.

[Novotni and Klein, 2002] Novotni, M. and Klein, R. (2002). Computing geodesic dis-tances on triangular meshes. In The 10-th International Conference in Central Eu-rope on Computer Graphics, Visualization and Computer Vision’2002 (WSCG’2002).

[Ovreiu, 2012] Ovreiu, E. (2012). Accurate 3D mesh simplification. Theses, INSA deLyon.

[Page et al., 2002] Page, D. L., Sun, Y., Koschan, A. F., Paik, J., and Abidi, M. A. (2002).Normal vector voting: Crease detection and curvature estimation on large, noisymeshes. Graph. Models, 64(3-4):199–229.

172

Bibliography

[Pai and Reissell, 1995] Pai, D. and Reissell, L.-M. (1995). Multiresolution rough ter-rain motion planning. In Intelligent Robots and Systems 95. ’Human Robot Interac-tion and Cooperative Robots’, Proceedings. 1995 IEEE/RSJ International Conferenceon, volume 2, pages 39–44 vol.2.

[Pauly et al., 2002] Pauly, M., Gross, M., and Kobbelt, L. P. (2002). Efficient simplifica-tion of point-sampled surfaces. In Proceedings of the Conference on Visualization’02, VIS ’02, pages 163–170, Washington, DC, USA. IEEE Computer Society.

[Payan and Antonini, 2006] Payan, F. and Antonini, M. (2006). Mean square error ap-proximation for wavelet-based semiregular mesh compression. IEEE Transactionson Visualization and Computer Graphics, 12(4):649–657.

[Pennec et al., 2006] Pennec, X., Fillard, P., and Ayache, N. (2006). A riemannian frame-work for tensor computing. International Journal of Computer Vision, 66(1):41–66.

[Perraudin et al., 2014] Perraudin, N., Paratte, J., Shuman, D. I., Kalofolias, V., Van-dergheynst, P., and Hammond, D. K. (2014). GSPBOX: A toolbox for signal processingon graphs. CoRR, abs/1408.5781.

[Pham et al., 2014] Pham, M.-T., Mercier, G., and Michel, J. (2014). Wavelets on graphsfor very high resolution multispectral image texture segmentation. In Geoscienceand Remote Sensing Symposium (IGARSS), 2014 IEEE International, pages 2273–2276.

[Polthier and Schmies, 2006] Polthier, K. and Schmies, M. (2006). Straightestgeodesics on polyhedral surfaces. In ACM SIGGRAPH 2006 Courses, SIGGRAPH ’06,pages 30–38, New York, NY, USA. ACM.

[Puppo and Scopigno, 1997] Puppo, E. and Scopigno, R. (1997). Simplification, lodand multiresolution - principles and applications.

[Rahman et al., 2005] Rahman, I. U., Drori, I., Stodden, V. C., Donoho, D. L., andSchröder, P. (2005). Multiscale representations for manifold-valued data. MultiscaleModeling & Simulation, 4(4):1201–1232.

[Reimers, 2004] Reimers, M. (2004). Topics in mesh based modelin.

[Rentmeesters and Absil, 2011] Rentmeesters, Q. and Absil, P.-A. (2011). Algorithmcomparison for karcher mean computation of rotation matrices and diffusiontensors. In Signal Processing Conference, 2011 19th European, pages 2229–2233.

[Rocca et al., 2011] Rocca, L., Giorgis, N. D., Panozzo, D., and Puppo, E. (2011). FastNeighborhood Search on Polygonal Meshes. In Abate, A. F., Nappi, M., and Tor-tora, G., editors, Eurographics Italian Chapter Conference 2011. The EurographicsAssociation.

173

Bibliography

[Ronfard and Rossignac, 1996] Ronfard, R. and Rossignac, J. (1996). Full-range ap-proximation of triangulated polyhedra. Computer Graphics Forum, 15(3):67–76.

[Rong et al., 2008] Rong, G., Cao, Y., and Guo, X. (2008). Spectral mesh deformation.The Visual Computer, 24(7):787–796.

[Rossignac and Borrel, 1993] Rossignac, J. and Borrel, P. (1993). Multi-resolution 3dapproximations for rendering complex scenes. In Falcidieno, B. and Kunii, T. L.,editors, Modeling in Computer Graphics, IFIP Series on Computer Graphics, pages455–465. Springer.

[Roy et al., 2005] Roy, M., Foufou, S., Koschan, A., Truchetet, F., and Abidi, M. (2005).Multiresolution analysis for meshes with appearance attributes. In Image Processing,2005. ICIP 2005. IEEE International Conference on, volume 3, pages III–816–19.

[Rustamov and Guibas, 2013] Rustamov, R. and Guibas, L. (2013). Wavelets on graphsvia deep learning. In Burges, C., Bottou, L., Welling, M., Ghahramani, Z., andWeinberger, K., editors, Advances in Neural Information Processing Systems 26,pages 998–1006.

[Saracco et al., 2010] Saracco, G., Arneodo, A., Beylkin, G., Antoine, J.-P., Rosca, D.,and Vandergheynst, P. (2010). Special issue on continuous wavelet transformin memory of jean morlet, part i wavelet transform on manifolds: Old and newapproaches. Applied and Computational Harmonic Analysis, 28(2):189 – 202.

[Sareen et al., 2009] Sareen, K. K., Knopf, G. K., and Canas, R. (2009). Contour-based3d point data simplification for freeform surface reconstruction. InternationalJournal of Shape Modeling, 15(1-2):19–43.

[Schmidt et al., 2006] Schmidt, R., Grimm, C., and Wyvill, B. (2006). Interactive decalcompositing with discrete exponential maps. ACM Trans. Graph., 25(3):605–613.

[Schroeder et al., 1992] Schroeder, W. J., Zarge, J. A., and Lorensen, W. E. (1992). Deci-mation of triangle meshes. SIGGRAPH Comput. Graph., 26(2):65–70.

[Sethian, 1999] Sethian, J. A. (1999). Level set methods and fast marching methods :evolving interfaces in computational geometry, fluid mechanics, computer vision,and materials science. Cambridge monographs on applied and computationalmathematics. Cambridge University Press, Cambridge, GB.

[Sethian and Vladimirsky, 2000] Sethian, J. A. and Vladimirsky, A. (2000). Fast meth-ods for the Eikonal and related Hamilton– Jacobi equations on unstructured meshes.Proceedings of the National Academy of Sciences, 97(11):5699–5703.

[Shamir et al., 2006] Shamir, A., Shapira, L., and Cohen-Or, D. (2006). Mesh analysisusing geodesic mean-shift. Vis. Comput., 22(2):99–108.

174

Bibliography

[Sipiran and Bustos, 2011] Sipiran, I. and Bustos, B. (2011). Harris 3d: A robust exten-sion of the harris operator for interest point detection on 3d meshes. Vis. Comput.,27(11):963–976.

[Solomon et al., 2014] Solomon, J., Crane, K., Butscher, A., and Wojtan, C. (2014). Ageneral framework for bilateral and mean shift filtering. ArXiv e-prints, 32.

[Subbarao and Meer, 2009] Subbarao, R. and Meer, P. (2009). Nonlinear mean shiftover riemannian manifolds. Int. J. Comput. Vision, 84(1):1–20.

[Surazhsky et al., 2005] Surazhsky, V., Surazhsky, T., Kirsanov, D., Gortler, S. J., andHoppe, H. (2005). Fast exact and approximate geodesics on meshes. ACM Trans.Graph., 24(3):553–560.

[Šurkala et al., 2011] Šurkala, M., Mozdren, K., Fusek, R., and Sojka, E. (2011). Ad-vanced Concepts for Intelligent Vision Systems: 13th International Conference, ACIVS2011, Ghent, Belgium, August 22-25, 2011. Proceedings, chapter Hierarchical Blur-ring Mean-Shift, pages 228–238. Springer Berlin Heidelberg, Berlin, Heidelberg.

[Sweldens, 1996] Sweldens, W. (1996). The lifting scheme: A custom-design construc-tion of biorthogonal wavelets. Applied and Computational Harmonic Analysis,3(2):186 – 200.

[Tang et al., 2007] Tang, J., Wu, G.-S., Zhang, F.-Y., and Zhang, M.-M. (2007). Fastapproximate geodesic paths on triangle mesh. International Journal of Automationand Computing, 4(1):8–13.

[Taubin, 1995] Taubin, G. (1995). Curve and surface smoothing without shrinkage.In Proceedings of the Fifth International Conference on Computer Vision, ICCV ’95,pages 852–, Washington, DC, USA. IEEE Computer Society.

[Taubin, 2000] Taubin, G. (2000). Geometric Signal Processing on Polygonal Meshes.In Eurographics 2000 - STARs. Eurographics Association.

[Turk, 1992] Turk, G. (1992). Re-tiling polygonal surfaces. SIGGRAPH Comput. Graph.,26(2):55–64.

[Valette and Chassery, 2004] Valette, S. and Chassery, J.-M. (2004). Approximatedcentroidal voronoi diagrams for uniform polygonal mesh coarsening. ComputerGraphics Forum, 23(3):381–389.

[Valette and Prost, 2004] Valette, S. and Prost, R. (2004). Wavelet-based multiresolu-tion analysis of irregular surface meshes. Visualization and Computer Graphics,IEEE Transactions on, 10(2):113–122.

175

Bibliography

[Wagner et al., 2005] Wagner, R., Choi, H., Baraniuk, R., and Delouille, V. (2005). Dis-tributed wavelet transform for irregular sensor network grids. In Statistical SignalProcessing, 2005 IEEE/SP 13th Workshop on, pages 1196–1201.

[Wagner et al., 2006] Wagner, R., Cohen, A., Baraniuk, R. G., Du, S., and Johnson, D. B.(2006). An architecture for distributed wavelet analysis and processing in sensornetworks. In Information Processing in Sensor Networks, pages 243–250, Nashville.

[Wardetzky et al., 2007] Wardetzky, M., Mathur, S., Kälberer, F., and Grinspun, E.(2007). Discrete laplace operators: No free lunch. In Proceedings of the Fifth Euro-graphics Symposium on Geometry Processing, SGP ’07, pages 33–37, Aire-la-Ville,Switzerland, Switzerland. Eurographics Association.

[Wu and Amaratunga, 2003] Wu, J. and Amaratunga, K. (2003). Wavelet triangulatedirregular networks. International Journal of Geographical Information Science,17(3):273–289.

[Wu and Kobbelt, 2004] Wu, J. and Kobbelt, L. (2004). Optimized sub-sampling ofpoint sets for surface splatting. Computer Graphics Forum, 23(3):643–652.

[Yamauchi et al., 2005] Yamauchi, H., Lee, S., Lee, Y., Ohtake, Y., Belyaev, A., andSeidel, H.-P. (2005). Feature sensitive mesh segmentation with mean shift. In ShapeModeling and Applications, 2005 International Conference, pages 236–243.

[Yang et al., 2005] Yang, B., Shi, W., and Li, Q. (2005). An integrated tin and gridmethod for constructing multiresolution digital terrain models. InternationalJournal of Geographical Information Science, 19(10):1019–1038.

[Yang and Shen, 2012] Yang, Y.-L. and Shen, C.-H. (2012). Multi-scale salient featureextraction on mesh models. In Hu, S.-M. and Martin, R., editors, ComputationalVisual Media, volume 7633 of Lecture Notes in Computer Science, pages 122–129.Springer Berlin Heidelberg.

[Yu and Ra, 1999] Yu, J. H. and Ra, B. J. (1999). Fast triangular mesh approximation ofsurface data using wavelet coefficients. The Visual Computer, 15(1):9–20.

[Zhang et al., 2012] Zhang, L., Ma, Z., Zhou, Z., and Wu, W. (2012). Laplacian-basedfeature preserving mesh simplification. In Proceedings of the 13th Pacific-RimConference on Advances in Multimedia Information Processing, PCM’12, pages378–389, Berlin, Heidelberg. Springer-Verlag.

[Zhang et al., 2008] Zhang, X., Li, G., Xiong, Y., and He, F. (2008). 3d mesh segmen-tation using mean-shifted curvature. In Chen, F. and Jüttler, B., editors, Advancesin Geometric Modeling and Processing, volume 4975 of Lecture Notes in ComputerScience, pages 465–474. Springer Berlin Heidelberg.

176

Bibliography

[Zorin et al., 1996] Zorin, D., Schröder, P., and Sweldens, W. (1996). Interpolatingsubdivision for meshes with arbitrary topology. In Proceedings of the 23rd AnnualConference on Computer Graphics and Interactive Techniques, SIGGRAPH ’96, pages189–192, New York, NY, USA. ACM.

[Zorin et al., 1997] Zorin, D., Schröder, P., and Sweldens, W. (1997). Interactive mul-tiresolution mesh editing. In Proceedings of the 24th Annual Conference on Com-puter Graphics and Interactive Techniques, SIGGRAPH ’97, pages 259–268, NewYork, NY, USA. ACM Press/Addison-Wesley Publishing Co.

177