Top Banner
Normal Improvement for Point Rendering Published by the IEEE Computer Society 0272-1716/04/$20.00 © 2004 IEEE IEEE Computer Graphics and Applications 53 Point-Based Computer Graphics M odels created from 3D scanners are becoming more prevalent as the demand for realistic geometry grows and scanners become more common. Unfortunately, scanned models are invariably noisy. This noise corrupts both samples’ positions and normals. Many methods have been pro- posed for denoising models’ geometry, whether repre- sented as triangle meshes or as points. Less effort has been spent on improving normals, except as a step toward or by-product of smoothing geometry, and even though noise in normals affects rendering quality more than noise in positions. We believe there are benefits to considering normal improvement on its own. Our proposed method for improving normals is derived from a feature-preserving geometry filter. Many such filters are available, most operating on models rep- resented as triangle meshes. We argue that for point rendering, removing noise from normals is more important than removing noise from geometry, because normals have a greater impact on the model’s perceived quality. Nonlinearity in light- ing calculations causes even low levels of noise in nor- mal directions to be quite noticeable, while the level of positional noise in scanned models is seldom enough to cause visible occlusion errors. Normal filtering has been explored by others, but generally as a step toward smoothing of geometry 1,2 and not as an end in itself. Our filter does not modify sample positions during smoothing. We could attempt to simultaneously smooth normals and positions, but similarly to lighting calcula- tions, noise in normals has a nonlinear effect on the esti- mates of smooth positions. This leads to poor smoothing in flat areas and oversmoothing near features. 3 We avoid these difficulties by concentrating on normals alone. Two approaches for smoothing point models have been proposed. Point set surfaces estimate smoothed normals and geometry by least-squares fitting to locally weighted neighborhoods. 4 The spectral processing method creates a local height field, which is then filtered and resampled. 5 The former method is not feature preserving, while the latter requires resampling to a regular grid, which can degrade features. Our method is novel in that it preserves features and doesn’t require resampling. 3D bilateral filter The bilateral filter was originally proposed in image processing, 6,7 but there have been three recent exten- sions to 3D shapes. 2,3,8 We use the 3D bilateral filter proposed by Jones, Durand, and Desbrun 3 because of its straightforward extension to mod- els represented as points with nor- mals, such as surfel models. 9 The 3D bilateral filter applied to a model predicts a new position for every point as a weighted combina- tion of predictions from nearby points in the model, based on their positions and nor- mals. It is of the form (1) where S is the set of all points in the model, k is a nor- malizing factor (sum of the weights), and Πp(s) is the linear prediction for s given the infor- mation at point p, Πp(s) = s + (p s) np np, where np is the normal at p. This is simply the projection of s onto the plane through p with normal np. We refer to the two functions f and g as the spatial weight and influence weight functions, respectively. They are both positive, monotonic, decreasing functions. The first controls how large a neighborhood of points is used to estimate s. The second causes predictions Πp(s) that are far from the original position s to have less effect on the estimate for s. In other words, g rejects outliers and gives the 3D bilateral filter its feature-preserving behavior. We use Gaussians of width σf and σg in our work. The feature-preserving nature of the bilateral fil- ter and its relation to the choice for f and g is discussed in depth elsewhere for both images 10 and 3D shapes. 3 ks f s p g s s p pS () () = ( ) ( ) Π ′= ( ) ( ) s ks sf s p g s s p p pS 1 () () () Π Π A bilateral filter-based method for denoising normals for point models treats the filter as a spatial deformation and updates normals iteratively. Thouis R. Jones, Frédo Durand, and Matthias Zwicker Massachusetts Institute of Technology
4

Normal Improvement for Point Rendering

Feb 17, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Normal Improvement for Point Rendering

NormalImprovement forPoint Rendering

Published by the IEEE Computer Society 0272-1716/04/$20.00 © 2004 IEEE IEEE Computer Graphics and Applications 53

Point-Based Computer Graphics

Models created from 3D scanners arebecoming more prevalent as the

demand for realistic geometry grows and scannersbecome more common. Unfortunately, scanned modelsare invariably noisy. This noise corrupts both samples’positions and normals. Many methods have been pro-posed for denoising models’ geometry, whether repre-sented as triangle meshes or as points. Less effort hasbeen spent on improving normals, except as a steptoward or by-product of smoothing geometry, and eventhough noise in normals affects rendering quality morethan noise in positions. We believe there are benefits toconsidering normal improvement on its own.

Our proposed method for improving normals isderived from a feature-preserving geometry filter. Manysuch filters are available, most operating on models rep-resented as triangle meshes.

We argue that for point rendering, removing noisefrom normals is more important than removing noisefrom geometry, because normals have a greater impacton the model’s perceived quality. Nonlinearity in light-ing calculations causes even low levels of noise in nor-mal directions to be quite noticeable, while the level ofpositional noise in scanned models is seldom enough tocause visible occlusion errors. Normal filtering has beenexplored by others, but generally as a step towardsmoothing of geometry1,2 and not as an end in itself.

Our filter does not modify sample positions duringsmoothing. We could attempt to simultaneously smoothnormals and positions, but similarly to lighting calcula-tions, noise in normals has a nonlinear effect on the esti-mates of smooth positions. This leads to poor smoothingin flat areas and oversmoothing near features.3 We avoidthese difficulties by concentrating on normals alone.

Two approaches for smoothing point models have beenproposed. Point set surfaces estimate smoothed normalsand geometry by least-squares fitting to locally weightedneighborhoods.4 The spectral processing method createsa local height field, which is then filtered and resampled.5

The former method is not feature preserving, while thelatter requires resampling to a regular grid, which candegrade features. Our method is novel in that it preservesfeatures and doesn’t require resampling.

3D bilateral filterThe bilateral filter was originally

proposed in image processing,6,7 butthere have been three recent exten-sions to 3D shapes.2,3,8 We use the3D bilateral filter proposed by Jones,Durand, and Desbrun3 because of itsstraightforward extension to mod-els represented as points with nor-mals, such as surfel models.9

The 3D bilateral filter applied to amodel predicts a new position forevery point as a weighted combina-tion of predictions from nearbypoints in the model, based on their positions and nor-mals. It is of the form

(1)

where S is the set of all points in the model, k is a nor-malizing factor (sum of the weights),

and Πp(s) is the linear prediction for s given the infor-mation at point p, Πp(s) = s + (p − s) ⋅ np np, where np isthe normal at p. This is simply the projection of s ontothe plane through p with normal np.

We refer to the two functions f and g as the spatialweight and influence weight functions, respectively.They are both positive, monotonic, decreasing functions.The first controls how large a neighborhood of points isused to estimate s′. The second causes predictions Πp(s)that are far from the original position s to have less effecton the estimate for s′. In other words, g rejects outliersand gives the 3D bilateral filter its feature-preservingbehavior. We use Gaussians of width σf and σg in ourwork. The feature-preserving nature of the bilateral fil-ter and its relation to the choice for f and g is discussed indepth elsewhere for both images10 and 3D shapes.3

k s f s p g s sp

p S

( ) ( )= −( ) −( )∈

∑ Π

′ = −( ) −( )∈

∑sk s

s f s p g s sp p

p S

1

( )( ) ( )Π Π

A bilateral filter-based

method for denoising

normals for point models

treats the filter as a spatial

deformation and updates

normals iteratively.

Thouis R. Jones, Frédo Durand, and Matthias ZwickerMassachusetts Institute of Technology

Page 2: Normal Improvement for Point Rendering

Normal filteringRather than using the bilateral filter to modify points’

positions, we can instead treat Equation 1 as a spatialdeformation, and update the normal ns according to thisdeformation.11 In other words, we look at how an infin-itesimal patch at s with normal ns would be modified bythe filter. Since the filter removes noise from point posi-tions, it should also align normals, as shown in Figure 1.

In a sense, the filter compresses space perpendicu-larly to the surface defined by the points. Points movecloser to the surface, and normals align with one anoth-er. With near features, we see similar behavior, but nor-mals align with the surface normal on one side or theother, depending on their location (see Figure 2).

Our method relies on the feature-preserving behaviorof the filter with regards to geometry to preserve fea-tures in the normal field as well. This is the only require-ment for feature preservation in the normals. Ournormal filter inherits the feature-preserving behavior ofthe geometric filter it is based on.

If we write the 3D bilateral filter in Equation 1 for apoint s in space as a deformation, that is, s′ = F(s), thenthe transformation of the normal can be computed fromthe transposed inverse of the Jacobian J(s) of F(s),11

where Ji(s) is the ith column of J(s), and si is the ith com-ponent of s. We have assumed that n′s will be renormal-ized after smoothing, and thus use the adjoint ratherthan full inverse of J(s). We do not give the full deriva-tion of J(s). It’s straightforward to derive from Equation1 by hand, or to use an implementation of automatic dif-ferentiation to compute it. We further explore the useof the transposed adjoint in the “Analysis of the Trans-posed Adjoint to the Filter” sidebar.

We demonstrate the results of our filter on a noisy 3Dscan of a face, stored as a surfel model in Pointshop 3D(see Figure 3, next page).12 After four iterations of the fil-ter, nearly all noise in the normals is removed. The fea-tures, particularly around the eyes and mouth, are wellpreserved by the filter. The artifacts (for example, on theside of the nose) are caused by surfels with very largeradii, and are present in the original data. There are about75,000 surfels in this model. For this example, we usedσf = 4 and σg = 0.5 of the mean surfel radius. In general,we must adjust the filter parameters based on samplingrate and the amount of noise in the model. The spatial fil-ter is truncated to zero at twice σf. The filter runs in ≈ 30seconds per pass on a 1.4-GHz Athlon processor. Thespeed could be improved through optimization. Forinstance, kd-trees are used to locate nearby points. Jones,Durand, and Desbrun have found it much more efficientto use spatial binning with bins of size σf for this purpose.3

We demonstrate more aggressive smoothing with σf = 8 on a scan of a dog (400,000 surfels.) Each passrequires ≈ 500 seconds, due to a larger model and widerfilter. Figure 4 shows the initial model and two passesof the smoother.

ConclusionWe have presented a feature-preserving filter for the

normals of point models. For rendering applications, thisis generally sufficient, as the normals are much moreimportant to rendering quality than the actual point posi-tions. In simple terms, our method is a synthesis of spa-tial deformations11 and feature-preserving geometryfiltering.3

Our filter does not modify sample positions, which webelieve is beneficial in an iterative smoothing process.When noisy positions and normals are filtered, somesmoothing of features is unavoidable. By not modifyingsample positions, we preserve as much informationabout the original features as possible, giving normalsthat better reflect these features.

One possibility for future work is to use our normal

′ = = ∂∂

−n J s n J sF s

ssT

s ii

( ) , ( )( )

Point-Based Computer Graphics

54 July/August 2004

Analysis of the Transposed Adjoint of the Filter

The effectiveness of our method can be understood by analysisof an ideal case in 2D. Suppose we have an infinite planar surfacedefined by y = 0 with constant normal [0 1]T, and are adjusting thenormal for a point s = [s1 s2]T near the surface. As anapproximation, and since we are near the surface, we can neglectthe influence of s itself on the prediction for its smoothed positions′. In this case, it’s not difficult to see that s′ will always be theperpendicular projection of s onto y = 0, that is, s′ = F(s) = [s1 0]T.Thus, the Jacobian of F will be

, with transposed adjoint

.In the more realistic case, in which the surface’s sample positions

and normals are noisy, the s′ might not move completely to the y = 0 plane, or it could drift tangentially relative to s. However, if s′ = F(s) ≈ [s1 εs2]T with ε < 1 (as will be true for reasonable levels ofnoise), then the transpose adjoint will be near

, and after sufficient iterations, ns will be close to [0 1]T.

ε 0

0 1

0 0

0 1

1 0

0 0

1 How the filter affects normals near a flat region of the surface.

2 How the filter affects normals near a corner.

Page 3: Normal Improvement for Point Rendering

improvement algorithm as a presmoothing pass, thenapply a filter to sample positions. We have concentratedon normals rather than positions because normals aremuch more important than positions in rendering qual-ity. For other applications, such as haptics and surfacereconstruction, it might be necessary to improve pointpositions as well.

Many scanners produce normals for samples from thepositions of neighboring samples. We have not yetexplored how this affects our normal smoothing methodwhen compared to data from scanners that estimate nor-mals from, for example, lighting variation. The modelswe have used to demonstrate our method were gener-ated from triangle meshes, effectively estimating nor-mals from neighboring positions. �

References1. T. Tasdizen et al., “Geometric Surface Smoothing via

Anisotropic Diffusion of Normals,” Proc. IEEE Visualiza-tion, IEEE CS Press, 2002, pp. 125-132.

2. P. Choudhury and J. Tumblin, “The Trilateral Filter for HighContrast Images and Meshes,” Proc. Eurographics Symp.on Rendering, Eurographics Assoc., 2003, pp. 186-196.

3. T.R. Jones, F. Durand, and M. Desbrun, “Noniterative, Fea-ture-Preserving Mesh Smoothing,” ACM Trans. Graphics(Proc. ACM Siggraph 03), vol. 22, no. 3, 2003, pp. 943-949.

4. M. Alexa et al., “Point Set Surfaces,” Proc. IEEE Visualiza-tion, IEEE CS Press, 2001, pp. 21-28.

5. M. Pauly and M. Gross, “Spectral Processing of Point Sam-pled Geometry,” Proc. ACM Siggraph, ACM Press, 2001, pp.

379-386.6. S.M. Smith and J.M. Brady, “Susan: A New Approach to

Low-Level Image Processing,” Proc. Int’l J. Computer Vision23, Kluwer Academic Pub., 1997, pp. 45-78.

7. C. Tomasi and R. Manduchi, “Bilateral Filtering for Grayand Color Images,” Proc. IEEE Int’l. Conf. Computer Vision,IEEE CS Press, 1998, pp. 836-846.

8. S. Fleishman, I. Drori, and D. Cohen-Or, “Bilateral MeshDenoising,” ACM Trans. Graphics (Proc. ACM Siggraph 03),vol. 22, no. 3, 2003, pp. 950-953.

9. H. Pfister et al., “Surfels: Surface Elements as RenderingPrimitives,” Proc. ACM Siggraph, ACM Press, 2000, pp. 335-342.

10. F. Durand and J. Dorsey, “Fast Bilateral Filtering for theDisplay of High-Dynamic-Range Images,” ACM Trans.Graphics (Proc. ACM Siggraph 02), vol. 21, no. 3, 2002, pp.257-266.

11. A.H. Barr, “Global and Local Deformations of Solid Prim-itives,” Proc. Siggraph, ACM Press, 1984, pp. 21-30.

12. M. Zwicker et al., “Pointshop 3D: An Interactive System forPoint-Based Surface Editing,” ACM Trans. Graphics (Proc.ACM Siggraph 02), vol. 21, no. 3, 2002, pp. 322-329.

Thouis R. Jones is a graduate stu-dent in the MIT Computer Scienceand Artificial Intelligence Laborato-ry. His research interests includeantialiasing, shape representation,and machine vision. Jones has a BSin computer science from the Univer-

sity of Utah.

IEEE Computer Graphics and Applications 55

4 Two iterations of our filter are applied to a scan of a dog statue. (Model courtesy of Jianbo Peng.)

3 Four iterations of our filter applied to the normals of a noisy 3D scan.

Page 4: Normal Improvement for Point Rendering

Frédo Durand is an assistant pro-fessor in the Computer Science andArtificial Intelligence Laboratory atMIT. His research interests includerealistic rendering, real-time display,computational photography, non-photorealistic rendering, and per-

ceptually based graphics. Durand has a PhD from theUniversity of Grenoble, France, in computer science. He isa member of Eurographics and ACM Siggraph.

Matthias Zwicker is a postdoc-toral associate with the ComputerGraphics Group at MIT. His researchinterests include rendering algo-rithms and data structures for point-based surface representations,high-quality volume rendering, pro-

cessing and compression of point-based data structures,acquisition of real-world objects, and texturing and paint-ing of point-sampled surfaces. Zwicker has a PhD in com-puter science from the Swiss Federal Institute of Technology(ETH), Zurich. He is a member of Eurographics.

56 July/August 2004

Point-Based Computer Graphics

EXECUTIVE COMMITTEEPresident:CARL K. CHANG* Computer Science Dept.Iowa State UniversityAmes, IA 50011-1040Phone: +1 515 294 4377Fax: +1 515 294 [email protected]: GERALD L. ENGEL*Past President: STEPHEN L. DIAMOND*VP, Educational Activities: MURALI VARANASI*VP, Electronic Products and Services: LOWELL G. JOHNSON (1ST VP)*VP, Conferences and Tutorials: CHRISTINA SCHOBER*VP, Chapters Activities: RICHARD A. KEMMERER (2ND VP)†VP, Publications: MICHAEL R. WILLIAMS†VP, Standards Activities: JAMES W. MOORE†VP, Technical Activities: YERVANT ZORIAN†Secretary: OSCAR N. GARCIA*Treasurer:RANGACHAR KASTURI†2003–2004 IEEE Division V Director: GENE H. HOFFNAGLE†2003–2004 IEEE Division VIII Director: JAMES D. ISAAK†2004 IEEE Division VIII Director-Elect: STEPHEN L. DIAMOND*Computer Editor in Chief:DORIS L. CARVER†Executive Director: DAVID W. HENNAGE†* voting member of the Board of Governors† nonvoting member of the Board of Governors

E X E C U T I V E S T A F FExecutive Director: DAVID W.HENNAGEAssoc. Executive Director: ANNE MARIE KELLYPublisher: ANGELA BURGESSAssistant Publisher: DICK PRICEDirector, Finance & Administration:VIOLET S. DOANDirector, Information Technology & Services: ROBERT CAREManager, Research & Planning: JOHN C.KEATON

PURPOSE The IEEE Computer Society is theworld’s largest association of computing profes-sionals, and is the leading provider of technicalinformation in the field.

MEMBERSHIP Members receive the month-ly magazine Computer, discounts, and opportu-nities to serve (all activities are led by volunteermembers). Membership is open to all IEEEmembers, affiliate society members, and othersinterested in the computer field.

COMPUTER SOCIETY WEB SITEThe IEEE Computer Society’s Web site, atwww.computer.org, offers information andsamples from the society’s publications and con-ferences, as well as a broad range of informationabout technical committees, standards, studentactivities, and more.

BOARD OF GOVERNORSTerm Expiring 2004: Jean M. Bacon, RicardoBaeza-Yates, Deborah M. Cooper, George V. Cybenko,Haruhisha Ichikawa, Thomas W. Williams, YervantZorianTerm Expiring 2005: Oscar N. Garcia, Mark A.Grant, Michel Israel, Stephen B. Seidman, Kathleen M.Swigger, Makoto Takizawa, Michael R. WilliamsTerm Expiring 2006: Mark Christensen, AlanClements, Annie Combelles, Ann Gates, Susan Men-gel, James W. Moore, Bill SchilitNext Board Meeting: 5 Nov. 2004, New Orleans

IEEE OFFICERSPresident: ARTHUR W. WINSTONPresident-Elect: W. CLEON ANDERSONPast President: MICHAEL S. ADLERExecutive Director: DANIEL J. SENESESecretary: MOHAMED EL-HAWARYTreasurer: PEDRO A. RAYVP, Educational Activities: JAMES M. TIENVP, Pub. Services & Products: MICHAEL R.LIGHTNERVP, Regional Activities: MARC T. APTERVP, Standards Association: JAMES T. CARLOVP, Technical Activities: RALPH W.WYNDRUM JR.IEEE Division V Director: GENE H. HOFFNAGLEIEEE Division VIII Director: JAMES D. ISAAKPresident, IEEE-USA: JOHN W. STEADMAN

COMPUTER SOCIETY OFFICESHeadquarters Office

1730 Massachusetts Ave. NW Washington, DC 20036-1992Phone: +1 202 371 0101 Fax: +1 202 728 9614E-mail: [email protected]

Publications Office10662 Los Vaqueros Cir., PO Box 3014Los Alamitos, CA 90720-1314Phone:+1 714 8218380E-mail: [email protected] and Publication Orders:Phone: +1 800 272 6657 Fax: +1 714 821 4641E-mail: [email protected]

Asia/Pacific OfficeWatanabe Building1-4-2 Minami-Aoyama,Minato-kuTokyo107-0062, JapanPhone: +81 3 3408 3118 Fax: +81 3 3408 3553E-mail: [email protected]

Readers may contact Thouis R. Jones at the Computer Science and Artificial Intelligence Laboratory, Massachu-setts Institute of Technology, 32-D474, MIT, Cambridge, MA 02139; [email protected].