Defining Point-Set Surfaces



Similar documents
8.5 UNITARY AND HERMITIAN MATRICES. The conjugate transpose of a complex matrix A, denoted by A*, is given by

What is Candidate Sampling

BERNSTEIN POLYNOMIALS

Face Verification Problem. Face Recognition Problem. Application: Access Control. Biometric Authentication. Face Verification (1:1 matching)

This circuit than can be reduced to a planar circuit

Support Vector Machines

benefit is 2, paid if the policyholder dies within the year, and probability of death within the year is ).

Recurrence. 1 Definitions and main statements

The Development of Web Log Mining Based on Improve-K-Means Clustering Analysis

Module 2 LOSSLESS IMAGE COMPRESSION SYSTEMS. Version 2 ECE IIT, Kharagpur

An Alternative Way to Measure Private Equity Performance

Ring structure of splines on triangulations

The OC Curve of Attribute Acceptance Plans

) of the Cell class is created containing information about events associated with the cell. Events are added to the Cell instance

v a 1 b 1 i, a 2 b 2 i,..., a n b n i.

Luby s Alg. for Maximal Independent Sets using Pairwise Independence

Algebraic Point Set Surfaces

Lecture 2: Single Layer Perceptrons Kevin Swingler

Forecasting the Demand of Emergency Supplies: Based on the CBR Theory and BP Neural Network

A Probabilistic Theory of Coherence

L10: Linear discriminants analysis

IMPACT ANALYSIS OF A CELLULAR PHONE

where the coordinates are related to those in the old frame as follows.

CHAPTER 5 RELATIONSHIPS BETWEEN QUANTITATIVE VARIABLES

Calculation of Sampling Weights

DEFINING %COMPLETE IN MICROSOFT PROJECT

Project Networks With Mixed-Time Constraints

8 Algorithm for Binary Searching in Trees

"Research Note" APPLICATION OF CHARGE SIMULATION METHOD TO ELECTRIC FIELD CALCULATION IN THE POWER CABLES *

Realistic Image Synthesis

1. Fundamentals of probability theory 2. Emergence of communication traffic 3. Stochastic & Markovian Processes (SP & MP)

Least Squares Fitting of Data

1. Measuring association using correlation and regression

Institute of Informatics, Faculty of Business and Management, Brno University of Technology,Czech Republic

ANALYZING THE RELATIONSHIPS BETWEEN QUALITY, TIME, AND COST IN PROJECT MANAGEMENT DECISION MAKING

An interactive system for structure-based ASCII art creation

On the Optimal Control of a Cascade of Hydro-Electric Power Stations

Conversion between the vector and raster data structures using Fuzzy Geographical Entities

HÜCKEL MOLECULAR ORBITAL THEORY

Causal, Explanatory Forecasting. Analysis. Regression Analysis. Simple Linear Regression. Which is Independent? Forecasting

Implementation of Deutsch's Algorithm Using Mathcad

Mean Value Coordinates for Closed Triangular Meshes

Feature selection for intrusion detection. Slobodan Petrović NISlab, Gjøvik University College

Logistic Regression. Lecture 4: More classifiers and classes. Logistic regression. Adaboost. Optimization. Multiple class classification

Optimal resource capacity management for stochastic networks

Traffic State Estimation in the Traffic Management Center of Berlin

Forecasting the Direction and Strength of Stock Market Movement

Number of Levels Cumulative Annual operating Income per year construction costs costs ($) ($) ($) 1 600,000 35, , ,200,000 60, ,000

1 Example 1: Axis-aligned rectangles

Single and multiple stage classifiers implementing logistic discrimination

Descriptive Models. Cluster Analysis. Example. General Applications of Clustering. Examples of Clustering Applications

J. Parallel Distrib. Comput.

Loop Parallelization

An Enhanced Super-Resolution System with Improved Image Registration, Automatic Image Selection, and Image Enhancement

Logical Development Of Vogel s Approximation Method (LD-VAM): An Approach To Find Basic Feasible Solution Of Transportation Problem

Examensarbete. Rotating Workforce Scheduling. Caroline Granfeldt

Power-of-Two Policies for Single- Warehouse Multi-Retailer Inventory Systems with Order Frequency Discounts

GRAVITY DATA VALIDATION AND OUTLIER DETECTION USING L 1 -NORM

The Mathematical Derivation of Least Squares

Snake-Based Segmentation of Teeth from Virtual Dental Casts

Section 5.4 Annuities, Present Value, and Amortization

An Empirical Study of Search Engine Advertising Effectiveness

A Fast Incremental Spectral Clustering for Large Data Sets

Out-of-Sample Extensions for LLE, Isomap, MDS, Eigenmaps, and Spectral Clustering

Efficient Project Portfolio as a tool for Enterprise Risk Management

An MILP model for planning of batch plants operating in a campaign-mode

How Sets of Coherent Probabilities May Serve as Models for Degrees of Incoherence

CHAPTER 14 MORE ABOUT REGRESSION

The Greedy Method. Introduction. 0/1 Knapsack Problem

Linear Circuits Analysis. Superposition, Thevenin /Norton Equivalent circuits

Activity Scheduling for Cost-Time Investment Optimization in Project Management

A Simple Approach to Clustering in Excel

Actuator forces in CFD: RANS and LES modeling in OpenFOAM

PSYCHOLOGICAL RESEARCH (PYC 304-C) Lecture 12

Formulating & Solving Integer Problems Chapter

Vision Mouse. Saurabh Sarkar a* University of Cincinnati, Cincinnati, USA ABSTRACT 1. INTRODUCTION

Brigid Mullany, Ph.D University of North Carolina, Charlotte

Logistic Regression. Steve Kroon

A DYNAMIC CRASHING METHOD FOR PROJECT MANAGEMENT USING SIMULATION-BASED OPTIMIZATION. Michael E. Kuhl Radhamés A. Tolentino-Peña

Can Auto Liability Insurance Purchases Signal Risk Attitude?

Product-Form Stationary Distributions for Deficiency Zero Chemical Reaction Networks

Section C2: BJT Structure and Operational Modes

A Novel Methodology of Working Capital Management for Large. Public Constructions by Using Fuzzy S-curve Regression

To Fill or not to Fill: The Gas Station Problem

Minimal Coding Network With Combinatorial Structure For Instantaneous Recovery From Edge Failures

How To Understand The Results Of The German Meris Cloud And Water Vapour Product

PERRON FROBENIUS THEOREM

Fisher Markets and Convex Programs

Joe Pimbley, unpublished, Yield Curve Calculations

Sngle Snk Buy at Bulk Problem and the Access Network

PRACTICE 1: MUTUAL FUNDS EVALUATION USING MATLAB.

Extending Probabilistic Dynamic Epistemic Logic

NMT EE 589 & UNM ME 482/582 ROBOT ENGINEERING. Dr. Stephen Bruder NMT EE 589 & UNM ME 482/582

A hybrid global optimization algorithm based on parallel chaos optimization and outlook algorithm

A Multi-mode Image Tracking System Based on Distributed Fusion

SPEE Recommended Evaluation Practice #6 Definition of Decline Curve Parameters Background:

Transcription:

Defnng Pont-Set Surfaces Nna Amenta Unversty of Calforna at Davs Yong Joo Kl Unversty of Calforna at Davs Abstract The MLS surface [Levn 2003], used for modelng and renderng wth pont clouds, was orgnally defned algorthmcally as the output of a partcular meshless constructon. We gve a new explct defnton n terms of the crtcal ponts of an energy functon on lnes determned by a vector feld. Ths defnton reveals connectons to research n computer vson and computatonal topology. Varants of the MLS surface can be created by varyng the vector feld and the energy functon. As an example, we defne a smlar surface determned by a cloud of surfels (ponts equpped wth normals), rather than ponts. We also observe that some procedures descrbed n the lterature to take ponts n space onto the MLS surface fal to do so, and we descrbe a smple teratve procedure whch does. the relatonshp of extremal surfaces and mplct surfaces. As we dscuss n Secton 5, there s an mplct surface contanng every extremal surface, ncludng the MLS surface. Ths can be qute useful, partcularly for defnng normals precsely. 1 Introducton Because of mproved technologes for capturng ponts from the surfaces of real objects and because mprovements n graphcs hardware now allow us to handle large numbers of prmtves, modelng surfaces wth clouds of ponts s becomng feasble. Ths s nterestng, snce constructng meshes and mantanng them through deformatons requres a lot of computaton. It s useful to be able to defne a two-dmensonal surface mpled by a pont cloud. Such pont-set surfaces are used for nterpolaton, shadng, meshng and so on. Davd Levn s MLS surface [Levn 2003] has proved to be a very useful example of a pont-set surface. Levn defned the MLS surface as the statonary ponts of a map f, so that x belongs to the MLS surface exactly when f (x) = x. Ths defnton s useful but t does not gve much nsght nto the propertes of the surface. In Secton 2 we gve a more explct defnton of the MLS surface, based on an energy functon e and an vector feld n. Changng e and n produce other smlar surfaces; we call them all, ncludng the MLS surface, extremal surfaces. As we dscuss n Secton 4, extremal surfaces are not new. The name s adopted from Medon and co-authors [2000], who used them for surface extracton from very nosy pont clouds, among other applcatons n computer vson. Ther defnton has to be extended slghtly n order to nclude the MLS surface, but the dea s essentally the same. Edelsbrunner and Harer [to appear] have recently descrbed Jacob surfaces, whch are also closely related and whch have stronger mathematcal propertes. Adamson and Alexa [2003a] descrbe an mplct surface whch s a useful relatve of the MLS surface. Ths rases the queston of Supported by NSF ACI-0325934, CCR-0098169, and CCR-0093378. e-mal: amenta@cs.ucdavs.edu Supported by NSF CCR-0093378. e-mal:kl@cs.ucdavs.edu Fgure 1: An example of an extremal pont-set surface whch takes surfels, rather than ponts as nput. The sparse and non-unformly dstrbuted set of weghted surfels on the left mples the surface on the rght. As an example of another extremal surface constructon, we descrbe n Secton 7 a pont-set surface for surfels, nput ponts equpped wth normals. Normals are avalable when convertng a model from a mesh or mplct surface to a pont cloud, and they are generally computed as part of the process of cleanng up pont clouds produced by laser range scanners or other 3D capture technologes. Fgure 1 shows an example of our pont-set surface for surfels. MLS surfaces have been used wdely n the last few years. The semnal graphcs paper [Alexa et al. 2003] usng the MLS surface for pont-set modelng and renderng was followed by work on progressve MLS surfaces [Fleshman et al. 2003], ray-tracng [Adamson and Alexa 2003b], and surface reconstructon [Xe et al. 2003; Mederos et al. 2003]. The MLS surface s used n several features of PontShop 3D, an excellent open-source pont-cloud manpulaton tool [Zwcker et al. 2002; Pauly et al. 2003]. We have used PontShop as our mplementaton platform. These papers descrbe two slghtly dfferent procedures for takng a pont x n the neghborhood of the pont cloud onto the MLS surface, one whch frst appeared n an earler, wdely crculated manuscrpt verson of Levn s paper, and a more effcent lnear verson used n PontShop. Nether procedure actually produces a pont of the MLS surface. We gve a smple procedure whch does, together wth a short proof, n Secton 6, and we dscuss the theoretcal problems wth the earler procedures n Appendx A. The fnal verson of Levn s paper on the MLS surface [Levn 2003] (currently avalable on hs Web ste) contans a new projecton procedure, dfferent from ours, whch also produces ponts on the sur-

face. 2 Surface defnton We begn wth the now-standard defnton of the MLS surface, gven n the early manuscrpt of Levn s paper and used n a varety of contexts as mentoned above. The MLS surface for a pont cloud P IR 3 s defned as the set of statonary ponts of a certan functon f : IR 3 IR 3. An optonal polynomal fttng step, whch we omt here, can be appled after the map f. H a r t x = r + ta Fgure 2: The MLS energy functon e MLS ( a,t) sums up the weghted dstances from the fxed nput ponts n P to the plane wth normal a through the pont x = r + at. The weght on an nput pont p P, denoted here by ts shade of grey, s a functon of the dstance from p to x. Gven an nput pont cloud P and a pont r n a neghborhood of P, the energy of the plane wth normal a passng through the pont x = r +t a, where t s the dstance from r to the plane, s defned to be: e MLS ( a,t) = ( a, p a,r +t a ) 2 θ(p +t a, p ) p P where the weghtng functon θ s any monotonc functon, usually a Gaussan: θ(x, p ) = e d2 (x p ) h 2 Here h s a constant scale factor, and d() s the usual Eucldean dstance between ponts. See Fgure 2. The energy measures the qualty of the ft of the plane to P, where p P s weghted by ts dstance from x = r +t a. The local mnma of ths energy functon, over S 2 IR (S 2 s the space of drectons, the ordnary two-sphere), occur at a dscrete set of nputs ( a,t), each correspondng to a pont x = r +t a. Of these, f (r) s defned to be the x nearest to r. The statonary ponts of ths map f form the MLS surface. We can get some addtonal nsght nto ths energy functon by restatng t usng dfferent notaton. Frst, we wrte t as a functon of a and the pont x = r + t a, rather than as a functon of a and t. Second, we notce that the plane and the weghts determned by the parameters (x, a) are the same as those determned by the parameters (x, a), so we can wrte e MLS as a functon of x and an unorented drecton vector a. Ths gves us: e MLS (x,a) = ( a, p a,x ) 2 θ(x, p ) p P (although the nner product s not defned for unorented drecton vectors, we use ths notaton snce we can evaluate the functon usng ether a or a and get the same result). In ths new form, the doman of the functon s now IR 3 IP 2, where IP 2 (the projectve two-sphere) s the space of unorented drectons. The new notaton makes t clear that e MLS (x,a) s ndependent of r, whch wll help us fnd a non-algorthmc characterzaton of the ponts of the MLS surface n the followng secton. The procedure for computng f (r), descrbed above, mnmzes e MLS ( a,t) over the three-dmensonal doman S 2 IR. Therefore usng the new notaton we do not mnmze over all of the fvedmensonal doman IR 3 IP 2, but over a three-dmensonal subset: the set J r of values (x,a) such that x = r + t a for some t IR and orentaton a of a. Ths means that n J r, every pont x IR 3 other than r s pared wth the drecton a of the lne through x and r; the sngular pont r s pared wth all drectons a. Dfferent values of r produce dfferent values of f (r) because each choce of r mples a dfferent doman J r over whch e MLS s mnmzed. 3 Explct defnton and generalzaton Now we want to gve an explct verson of the MLS surface defnton. We begn by defnng an (unorented) vector feld: n(x) = argmn a e MLS (x,a) (1) Ths s the normal to the plane through x IR 3 whch s a local best-ft to the pont cloud P. Snce fxng x fxes the weghts, the energy functon s a quadratc functon of a and the mnmal drecton s usually unque. It can be found effcently as the smallest egenvalue of a three-by-three matrx [Alexa et al. 2003]. Where there are two or three smallest egenvalues, n s not well-defned. The sets of ponts wth multple smallest egenvalues form surfaces whch dvde space nto regons, wthn each of whch n s a smooth functon of x. S x n(x) Fgure 3: To see f a pont x belongs to the MLS surface, we consder e MLS on the lne l x,n(x). Keepng n(x) fxed, we vary y along the lne. If y = x s a local mnmum of e MLS (y,n(x)), then x belongs to the MLS surface. Usng dfferent functons for n(x) and e(x,a) gves varants of the constructon, whch we call extremal surfaces. Now we gve an explct characterzaton of the MLS surface; n effect, we descrbe how to recognze whether a pont x IR 3 belongs to the MLS surface. Ths characterzaton s llustrated n Fgure 3. Let l x,n(x) be the lne through x wth drecton n(x). We adopt the notaton arglocalmn y to refer to the set of nputs y producng local mnma of a functon of varable y. Clam 1 The MLS surface conssts of the ponts x for whch n(x) s well-defned, and for whch x arglocalmn y lx,n(x) e MLS (y,n(x)) Proof : Frst we argue that every x on the MLS surface has ths property. Such a pont corresponds to a par (x,a) whch s a local mnmum n ts own set J x. The set A = {(x,a)}, where x s fxed and a ranges over all possble drectons, s a subset of J x, so (x,n(x)) s a local mnmum n A. Snce n(x) s well defned, n(x) s the unque global mnmum n A and we have a = n(x). The set of pars L = {(y,n(x)) y l x,n(x) } s also a subset of J x, so (x,n(x)) s also a local mnmum n L. Now we want to show that any x whch has the property n the Clam belongs to the MLS surface. We need therefore to show that (x,n(x)) s a local mnmum of e MLS n the set J x. x

Consder any drecton m n(x). Snce n(x) s defned as the drecton producng the unque mnmum over all pars (x, a), we have e MLS (x,m) > e MLS (x,n(x)). The functon e MLS s contnuous, so there s some dstance ε(m) such that for all y l x,m wth d(x,y) < ε(m), we have e MLS (y,m) > e MLS (x,n(x)). Also there s some ε(n(x)) such that for all y l x,n(x) wth d(x,y) < ε(n(x)), e MLS (y,n(x)) > e MLS (x,n(x)). Let ε be the mnmum of ε(a) over all drectons n a IP 2. Then (x,n(x)) s a local mnmum n the subset of J x consstng of pars (y,a) wth d(x,y) < ε. We can generalze the MLS constructon by consderng alternatves for the two functons n and e MLS. We can use any functon n(x) to assgn drectons to ponts n space, and any functon e(x, a) to specfy the energy of elements of IR 3 IP 2. There s no reason why the defnton of n has to be related to the defnton of e, as t s for the MLS surface. We defne an extremal surface as follows. manfold. Ths does not extend to hgher dmensons; for nstance a Jacob 3-surface n IR 4 can be genercally non-manfold, ndeed at the sngular ponts at whch n would be undefned. They prove that Jacob k-surfaces n IR d, for d > 2k 2, are manfolds, and they gve a robust algorthm for extractng Jacob surfaces from functons gven on a tetrahedral mesh. 5 Implct and extremal surfaces Adamson and Alexa [2003a] defned an mplct surface whch they used for ray-tracng nstead of the MLS surface. Ther surface has the form g(x) = n(x) (a(x) x) = 0 where n(x) s an orented vector feld and a(x) s the center of mass of the nput pont cloud P as weghted by x. Defnton 1 For any functons n : IR 3 IP 2 and e : IR 3 IP 2 IR, let S = {x x arglocalmn y lx,n(x) e(y,n(x))} be the extremal surface of n and e. 4 Extremal surface lterature Not surprsngly, the dea of extremal surfaces s not new. Guy and Medon [1997] and Medon, Lee and Tang [2000] defned extremal surfaces, usng functons n : IR 3 IP 2 and s : IR 3 IR, to defne the set {x x arglocalmn y lx,n(x) s(y)}. Our defnton s a a lttle more general than thers n that ther functon s(x) = e(x,a) does not requre the parameter a. In a seres of papers, they used extremal surfaces for (among other thngs) surface reconstructon from very nosy pont clouds. Ther functons n and s are dfferent from the MLS energy functon, and requre completely dfferent computatonal technques. They represent n and s smultaneously wth a tensor, and use tensor operatons to smooth them. Ths tensor votng s performed on a voxel grd. The extremal surface s then extracted from the grd wth the marchng cubes algorthm. Most of ther work focuses on the dffcult problem of desgnng of good tensor functons. Edelsbrunner and Harer [to appear] defne Jacob surfaces n IR d. To keep ths dscusson smple, we gve ther defnton for the specal case of two-surfaces n IR 3. The nput s three Morse functons f 1 (x), f 2 (x), f 3 (x) (ntutvely, a Morse functon s one whose sosurfaces are generc; t s everywhere twce-dfferentable, ts Hessan matrx s everywhere non-sngular, and no two crtcal ponts have the same functon value). Jacob surfaces are symmetrc wth respect to the order of the nput functons, so that for nstance f we exchange f 1 and f 3, we get the same Jacob surface. The ntersectons of the level sets of f 1 and f 2 dvde IR 3 nto a famly of curves. The Jacob surface S s defned as the set of crtcal ponts of f 3 over each of these curves. Every pont x IR 3 belongs to one such curve, and we let n(x) be the tangent drecton. Every crtcal pont q of f 3 on the curve contanng x s a crtcal pont of f 3 on the tangent lne l x,n(x) as well, so ths s smlar to an extremal surface wth f 3 (x) = s(x). The man dfference s that all crtcal ponts, rather than just mnma, are taken. Another dfference s that ponts at whch n s undefned (because the ntersecton of the level sets conssts of a sngle pont nstead of a curve) are ncluded n the Jacob surface (ths s related to the symmetry of the defnton). Wth these ponts ncluded as part of the surface, t seems lkely that these sngulartes n the vector feld n mght cause nonmanfold sngulartes n the surface S, for nstance ponts at whch multple sheets of surface come together. Edelsbrunner and Harer show, however, that a Jacob two-surface n IR 3 s genercally a Fgure 4: Streamlnes (red) of a vector feld n(x), and so-contours (blue) of an energy functon s(x). The heavy blue lne s the extremal surface determned by n and s, runnng neatly along the valley n the energy landscape and passng through the mnma of s. The streamlnes of n and the so-contours of s are tangent at the surface ponts. Here n and s were computed usng the pont-set surface for surfels ntroduced n Secton 7; the nput surfels are shown as black damonds, wth the long dagonal ponted n the drecton of the surfel normal. Fgure 5: The red streamlnes ndcate a constant vector feld n. The blue socontours show an energy functon s agan determned by the set of nput surfels (black damonds), here meetng at a sharp corner. There are two valleys n the energy landscape meetng to form a thrd valley. The mplct surface g(x) = n(x) s(x) = 0 ncludes both mnma n the extremal surface defnton (heavy blue curve) and also maxma (green curve). The extremal surface (heavy blue curves) appears to have a juncton but s actually composed of two manfold components. Usng the best-fttng plane to determne the vector feld n, as defned for the MLS surface n Equaton 1, produces a smlar structure near the sharp corner, but the somewhat larger pcture s complcated by sngulartes n the vector feld. They prove that g(x) s a smooth functon on any doman on whch n s well-defned everywhere, and therefore that the surface

juncture one of the sheets ends at a boundary where the crtcal ponts on `x,n(x) swtch from mnma to maxma. Descrbng an extremal surface as a subset of an so-surface gves an analytc expresson for ts normal. In the case of the MLS surface ths formula ncludes the dervatves of the weghts and s rather complcated. Note that n general the surface normal at a pont x s dfferent from the drecton n(x); see Fgure 6. 6 Fgure 6: Surfels dstrbuted on a part of the extremal surface of Fgure 8 where the optmal drecton n(x) at a surface pont x s very dfferent from the surface normal at x. On the left, the surfels are orented by n(x), and on the rght by the surface normal. g(x) = 0 s a manfold on the doman, assumng t avods crtcal ponts of g. They argue that t does, genercally (meanng that f g(x) = 0 does contan a crtcal pont of g, a small perturbaton of the nput fxes the problem). Just consderng a doman wthn whch the vector feld~n s welldefned neatly avods the sngulartes found n hgher dmensons wth Jacob surfaces. Medon et al. ponted out [2000] that n a smlar context there s an mplct surface assocated wth any extremal surface. We consder a doman U IR3 wthn whch not only s n always defned, but t also allows a consstent orentaton, meanng that adoptng ths orentaton produces a smooth orented vector feld~n. Snce a pont of the extremal surface s a crtcal pont of s on the lne `x,n(x), the drectonal dervatve of s n drecton n(x) has to be zero at x, and we can defne the mplct surface Fndng surface ponts At least two dfferent procedures for takng arbtrary ponts n IR3 to the MLS surface have been proposed. The projecton procedure gven by Levn [Levn 2003], based on the defnton above, was used n the semnal paper [Alexa et al. 2003]. A somewhat dfferent procedure, desgned so as to avod numercal optmzaton, s used n PontShop [Zwcker et al. 2002]. In ths secton we gve another smple procedure for generatng surface ponts. We also gve a smple proof of correctness. Nether of the earler procedures were rgorously proved correct, and nterestngly upon very close examnaton nether of them actually produces a pont on the MLS surface, although n practce the error s neglgble. We dscuss the techncal dffcultes wth these procedures n Appendx A. ) 1 n(x x1 S x2 xn g(x) =~n(x) s(x) = 0 That s, at a pont x of the extremal surface, n(x) s perpendcular to the gradent of s, and tangent to the so-surface s(y) = s(x), for y IR3. Ths s llustrated n Fgure 4. Although t s temptng to assume that the orentaton of n s unnecessary snce the zero-set of g2 (x) would be the same wth ether orentaton, the zero-set of g2 (x) conssts entrely of crtcal ponts and so may not be a manfold, partcularly where n does not admt a consstent orentaton. Usng our more general formulaton of extremal surfaces, whch ncludes the MLS surface, we can defne the surface g(x) =~n(x) y e(y,~n(x)) x ) = 0 where y e(y,~n(x)) x s the gradent of e as a functon of y, keepng n(x) fxed, and then evaluated at x. Any of these so-surface are manfolds over the doman U, so long as they avod crtcal ponts of g, whch they do genercally. Notce that a pont x on one of the so-surfaces mght be a maxmum on `x,n(x) rather than a mnmum. Takng only the mnma, as n the MLS surface defnton, mght further elmnate parts of each surface, as n Fgure 5, where the part whch s elmnated ndeed should not be ncluded n the pont-set surface. We summarze as follows. Observaton 2 The MLS surface, wthn a doman where n s welldefned and admts a consstent orentaton, s, genercally, a subset of a manfold. Ths seems to contradct our experence, for nstance when the nput ponts come from surfaces wth sharp corners, n the vcnty of whch two sheets of the MLS surface seem to collapse nto one. Lookng Fgure 5, however, we see that that just before the apparent Fgure 7: Dagram of the process for takng a pont to an extremal surface. Pont x 1 moves to a local mnmum on the lne `x1,n(x1 ), represented by the pont at whch the dashed lnes meet. Ths becomes x2. When the process converges, xn les on S. Our process for takng a pont onto the extremal surface S mpled by n and e s llustrated n Fgure 7. At each teraton, we fnd n(x ) and consder the lne `x,n(x ). We search for a nearby local mnmum of e(y, n(x )) over the set y `x,n(x ). The nearest local mnmum becomes x+1. Notce that as long as resettng n(x+1 ) at each new pont does not ncrease e, the energy decreases at every step so that ths process s lkely to converge. The energy does ndeed decrease for the MLS functon and also for any functon e(x, a) = s(x) whch does not depend on the drecton parameter. Clam 3 If the procedure above converges, t produces a pont of S. Proof: At convergence, repeatng the procedure for xn produces the same pont xn. Snce xn s a local mnmum of e(y, n(xn )) wthn y `xn,n(xn ), ths means that xn S accordng to Defnton 1. 2 7 Pont-set surface for surfels Now we defne a pont-set surface whch takes as nput a set of surfels rather than a pont cloud. Normals are often avalable, and usng surfels rather than ponts makes the surface more robust n the face of both undersamplng and of rregulartes n the dstrbuton of samples; see Fgure 8. Our nput surfels are represented as pont-drecton pars (p, a ). Followng the ntuton that n(x)

Fgure 8: From left to rght, a sparse set of surfels defnng a chess-pece. Next, we take a 3D grd of ponts onto the surface usng our pont-set surface (wth c = 0). In the center, we fnd that the ponts do ndeed go to a two-dmensonal surface. The MLS surface, as mplemented n PontShop, has trouble on ths example. Wthout usng the normal nformaton, the very sparse, non-unform dstrbuton of ponts makes the MLS energy functon gve very good scores to the planes through the vertcal rows of ponts; we show the grd ponts as projected by MLS. Fnally, at the far rght, the complete surface produced by our pont-set surface. should follow the surface normal at the nearest surface pont to x, we compute n as a weghted combnaton of the nearby surfel normals. If we have orented normals, we can take a vector average. n(x) = a θn (x, p ) where θn (x, p ) = e d 2 (x,p )/h2 j e d 2 (x,p j )/h 2 s a normalzed Gaussan weghtng functon. If the surfels have unorented normals, we nstead use the prncpal component of the normal vectors, agan weghted by θ ; ths s the drecton of the lne through x whch s the weghted leastsquares best ft to the vectors, and t can be computed as the egenvector of largest egenvalue of the 3 3 covarance matrx B where b jk = θn (x, p ) a, j a,k j, k = {1, 2, 3} and the (x, y, z) coordnates of vector a are (a,1, a,2, a,3 ). Ths s not qute as effcent as the vector average, but n ether case computng n(x) s faster than mnmzng e. Our ntuton s that e s an estmate of unsgned squared dstance functon, based on surfel poston and normal. We defne the dstance of x from a surfel as a Mahalanobs dstance (lke Eucldean dstance but wth ellptcal rather than sphercal unt ball), where dstance n drecton a s emphaszed over drectons perpendcular to a. dm (p, a, x) = h(x p ), a 2 + c (x p ) h(x p ), a a 2 Wth the scalng factor c = 1 we have the Eucldean dstance from x to p, and wth c = 0 we have the squared dstance from x to the plane through p normal to a. Fgure 9 shows the effect of dfferent choces of the parameter c. Fnally we defne e(x, a) = e(x) = dm (p, a, x)θn (x, p ) Fgure 9: The pont-set surface produced by sx surfels. The constant c n the energy functon s one at the upper center, then halved for each successve mage, and fnally zero at the lower rght. mnmum of e on the lne `x,n(x), we defne q = x + τ n(x), and mnmze e(q) as a functon of τ. We used an mplementaton of Brent s method for ths one-dmensonal non-lnear optmzaton from Numercal Recpes n C [1992], smlar to Alexa et.al. [2003]. For effcency, we used PontShop s kd-tree to fnd nearby surfels, and used contrbutons only from the nearest 30. Usng θn nstead of θ s mportant snce wth the smple Gaussan the energy would be effectvely zero far from the surface. When the Gaussan weght on every pont s numercally zero we cannot compute θn. In that case we let θn be one for the nearest surfel and zero for all others, whch s nearly correct. Our mplementaton allows nput surfels to have varable weghts, so that we can vary ther dstrbuton on the surface, as n Fgure 1. Ths s mplemented by storng a separate weght h wth each surfel. We mplemented the procedure for takng ponts n space to ths extremal surface as part of a plug-n for PontShop. To fnd the θn (x, p ) = e d j e 2 (x,p )/h2 d 2 (x,p j )/h2j

defnton, but there may be smpler or more robust approaches. There are many ssues to be resolved wth respect to procedures for takng ponts n space to an extremal surface. Despte the theoretcal problems wth both Levn s orgnal procedure and wth the heurstc used n PontShop, both methods have advantages that ours does not: the projecton dea s very elegant, whle the heurstc s effcent. The new projecton procedure n the fnal verson of Levn s paper [Levn 2003] could be appled wth any extremal surface, and may be useful n practce. Whle the so-surface defnton of an extremal surface gves an expresson for the normal, t s often complcated, snce t ncludes the dervatves of the weght functons. Are there extremal surfaces for whch the normals have a partcularly smple form? Or s there some way to use a smpler mplct functon, such as that proposed by Adamson and Alexa, wthout ncludng parts such as the green curve n Fgure 5? Fnally, t would be good to prove connectons between some extremal surface and the real surfaces from whch pont samples are taken. Under what samplng condtons can we guarantee that the extremal surface defned by a sample pont cloud s everywhere close to the orgnal surface? Under what condtons can we guarantee that there s an sotropy between them? 9 Fgure 10: Usng our surfel pont-set surface defnton to fll n a set of samples for renderng. The nput data s the vertex set of a polygonal model. We produced more surfels by generatng a cloud of new ponts and takng the new (blue) ponts onto the surface mpled by the nput (whte) surfel cloud. Below, PontShop s renderngs of the orgnal and the flled-n set of surfels. A dense, unform pont sample from a natural surface nherently contans good normal nformaton, so usng surfels s not really helpful wth such data. To check the effcency of our mplementaton, however, we used t to fll n the surface of a densely sampled model, a typcal applcaton for pont-set surfaces. The results are shown n Fgure 10. We found that even though we use a non-lnear optmzaton, we are less than twce as slow as the MLS projecton heurstc mplemented n the ScanTools plugn n PontShop. We took a cloud of 77,428 surfels onto the extremal surface mpled by an nput cloud, also consstng of of 77,428 surfels, n 16 seconds, whle PontShop s procedure (also wthout usng the second polynomal approxmaton step) requred 9 seconds. 8 Dscusson Many questons about the MLS surface and other extremal surfaces reman. In practce, the man queston s whch extremal surfaces, f any, are good choces for solvng specfc modelng problems. For nstance, surface reconstructon from nosy laser range data seems to requre a surface defnton whch ncorporates nformaton such as normals, scan drecton, and a good error model, wth less emphass on performance. Is there a good extremal surface soluton, and what computatonal methods are approprate n ths case? There does not yet seem to be an deal way to fnd the vector feld n nduced by an nput pont cloud. The vector feld n produced by the MLS energy functon has sngulartes qute close to the pont cloud, whch makes t dffcult to work wth. One possblty mght be to assgn approxmate normals at the nput ponts usng MLS, and then use the resultng surfels as nput to our pont-set surface Acknowledgments We thank Davd Levn for correspondng wth us on these questons. We thank an anonymous referee for suggestng the second half of the proof of Clam 1, and Peter Schro der and an anonymous referee for suggestons on the presentaton. We are grateful to the team at ETH Zurch who developed and publshed PontShop 3D. We thank Holly Rushmeer and the IBM TJ Watson Research Center for the use of the ram model. References A DAMSON, A., AND A LEXA, M. 2003. Approxmatng and ntersectng surfaces from ponts. In Proceedngs of EG Symposum on Geometry Processng 2003, 245 254. A DAMSON, A., AND A LEXA, M. 2003. Ray tracng pont set surfaces. In Proceedngs of Shape Modelng Internatonal 2003, 272 279. A LEXA, M., B EHR, J., C OHEN -O R, D., F LEISHMAN, S., L EVIN, D., AND S ILVA, C. T. 2003. Computng and renderng pont set surfaces. IEEE Transactons on Vsualzaton and Computer Graphcs 9, 1, 3 15. An earler verson appeared n IEEE Vsualzaton 2001. C ARR, J., B EATSON, R., C HERRIE, J., M ITCHELL, T., F RIGHT, W., M C C ALLUM, B., AND E VANS, T. 2001. Reconstructon and representaton of 3d objects wth radal bass functons. ACM SIGGRAPH 01, 67 76. C URLESS, B., AND L EVOY, M. 1996. A volumetrc method for buldng complex models from range mages. ACM SIGGRAPH 96, 303 312. E DELSBRUNNER, H., AND H ARER, J. to appear. Jacob sets of multple morse functons. In Foundatons of Computatonal Mathematcs, F. Cucker, Ed. Cambrdge Unversty Press. F LEISHMAN, S., C OHEN -O R, D., A LEXA, M., AND S ILVA, C. T. 2003. Progressve pont set surfaces. ACM Transactons on Graphcs 22, 4, 997 1011.

GUO, X., AND QUIN, H. 2003. Dynamc sculptng and deformaton of pont set surfaces. In 11th Pacfc Conference on Computer Graphcs and Applcatons (PG 03), 123 130. GUY, G., AND MEDIONI, G. 1997. Inference of surfaces, 3d curves and junctons from sparse, nosy, 3d data. IEEE Trans. on Pattern Analyss and Machne Intellgence 19, 11, 1265 1277. S f(r) f(y) y r LEVIN, D. 2003. Mesh-ndependent surface nterpolaton. In Geometrc Modelng for Scentfc Vsualzaton, G. Brunnett, B. Hamann, K. Mueller, and L. Lnsen, Eds. Sprnger-Verlag. MEDEROS, B., VELHO, L., AND DE FIGUEIREDO, L. H. 2003. Movng least squares multresoluton surface approxmaton. In Proceedngs of SIBGRAPI 2003 - XVI Brazlan Symposum on Computer Graphcs and Image Processng. MEDIONI, G., LEE, M.-S., AND TANG, C.-K. 2000. A Computatonal Framework for Segmentaton and Groupng. Elsever. PAULY, M., KEISER, R., KOBBELT, L., AND GROSS, M. 2003. Shape modelng wth pont-sampled geometry. ACM SIG- GRAPH 2003, 641 650. PAULY, M. 2003. Pont Prmtves for Interactve Modelng and Processng of 3D Geometry. PhD thess, ETH Zurch. PRESS, W., FLANNERY, B., TEUKOLSKY, S., AND VETTERLING, W. 1992. Numercal Recpes n C, 2nd ed. Cambrdge Unversty Press. XIE, H., WANG, J., HUA, J., QUIN, H., AND KAUFMAN, A. 2003. Pecewse c 1 contnuous surface reconstructon of nosy pont clouds va local mplct quadrc regresson. IEEE Vsualzaton 2003, 91 98. ZWICKER, M., PAULY, M., KNOLL, O., AND GROSS, M. 2002. Pontshop 3d: An nteractve system for pont-based surface edtng. ACM SIGGRAPH 2002, 322 329. A Appendx - Projecton procedures Interestngly, two procedures descrbed n the lterature for producng ponts on the MLS surface both output ponts very near, but not actually on, the surface, for almost all nputs. Whle these procedures obvously work well n practce, t seems mportant to recognze these subtletes n the effort to develop a good theory of MLS and other extremal surfaces. In ths appendx we dscuss the techncal problems wth these procedures. As a concrete way of showng what goes wrong, we nclude a Mathematca fle as supplementary materal wth ths paper, gvng an example of applyng both procedures to a generc pont r n space and observng that ndeed the resultng pont x does not meet the defnton of a pont on the MLS surface. Snce the statonary ponts of Levn s projecton functon f, descrbed n Secton 2 are defned to be the ponts of the MLS surface, we know that f we terate the procedure and fnd that t converges to a pont x, then x S. An early argument of Levn s (n the manuscrpt verson of hs paper) suggested that one teraton suffces, that s that f (r) S for any r. Whle ths seems very plausble, n fact there s a subtle problem, specfcally n the followng proposton, whch turns out to be false: that for any y on the lne segment connectng r and x = f (r), we also have f (y) = x. The actual stuaton s shown n Fgure 11. Recall that n the projecton procedure we fnd x by fndng a par (x,a) whch s a local mnmum of e over the set J r. The statement that f (r) = x seems plausble because f we want to compute f (y) we consder the set J y, and (x,a) certanly belongs to J y and of Fgure 11: Functon f s descrbed n Secton 2. We note here that t s generally the case that f (y) f (r) for a pont y on the lne segment connectng r wth f (r). course the energy value e(x,a) s the same n both J y and J r. The problem s that e(x,a) s not necessarly a mnmum n J y ; the neghborhood of (x,a) n J y s dfferent from the neghborhood of (x,a) n J r, and elements (x,a ) n the neghborhood of (x,a) n J y, not belongng to J r, may (and generally do) have a lower values of the energy functon e. We cannot clam, e(x,a) s a mnmum n J r, (x,a) belongs to J y, therefore e(x,a) s a mnmum n J y. In PontShop, Pauly [Pauly 2003] descrbes dfferent teratve procedure, llustrated n Fgure 12. In ths procedure, we begn wth r x 1 x 2 c 1 Fgure 12: Pauly s procedure: the ponts of P are weghted by a guess x, and the total-least-squares best-fttng plane H x, passng through the weghted centrod c, s computed. The new guess x +1 s the projecton of r onto H x. an estmated projecton pont x 1 for r. We use x 1 to assgn weghts θ(x, p ) to the ponts p of the nput pont cloud P. We then fnd the total-least-squares best-ft plane H x1 to the weghted set P; notce that although H x1 passes through the centrod c of the weghted pont cloud P, n general t does not pass through x 1. We project r onto H x1, gvng a new estmate of the projecton x 2, and we terate. If ths procedure converges (whch t does very relably), we output the resultng pont x. Ths procedure has the dstnct advantage of requrng no non-lnear optmzaton. For most r, however, the output pont x s not a pont of the MLS surface S. Agan, t s temptng to thnk so: at convergence x H x, and the normal to H x s ndeed n(x) as defned by the MLS energy functon. And snce H x s the total-least-squares best-ft plane, x s a local mnmum, along the lne l x,n(x), of the energy functon H x1 e (y,a) = ( a, p a,y ) 2 θ(x, p ) Notce that the weghts on the ponts are fxed n e, whle for e MLS they vary wth y; so e s not precsely the same functon as e MLS. It s certanly true that at the pont of convergence x, e (x,a) = e MLS (x,a). But we cannot clam that, Snce (x,a) s a local mnmum of e (y,n(x)) on l x,n(x), and e (x,a) = e MLS (x,a), therefore (x,a) s a local mnmum of e MLS (y,n(x)) on l x,a. The two dfferent functons generally have very slghtly dfferent mnma.