Bilateral Mesh Denoisingsheffa/dgp/student_ppts/BilateralMeshDenoising.pdf2d Gaussian Filter...

5
1 Bilateral Mesh Bilateral Mesh Denoising Denoising S. Fleishman, I. S. Fleishman, I. Drori Drori , D. Cohen , D. Cohen- Or Or Tel Aviv University Tel Aviv University Presented by Derek Bradley Presented by Derek Bradley 2 Derek Bradley 2006 Outline Outline Motivation Motivation Previous Work Previous Work Bilateral Mesh Bilateral Mesh Denoising Denoising Image Processing Background Image Processing Background Bilateral Image Filtering Bilateral Image Filtering Transforming from Images to Meshes Transforming from Images to Meshes Mesh Mesh Denoising Denoising Results Results Discussion Discussion (Unless otherwise noted, all images are from Fleishman et al.) (Unless otherwise noted, all images are from Fleishman et al.) 3 Derek Bradley 2006 Motivation Motivation 3D scanning creates noisy meshes 3D scanning creates noisy meshes Smoothing can reduce high frequency noise Smoothing can reduce high frequency noise Challenge: how do you know Challenge: how do you know what is noise and what are what is noise and what are features? features? 4 Derek Bradley 2006 Previous Work Previous Work Laplacian Laplacian Smoothing Smoothing i i i v v v + = λ ( ) = ) , ( ) , ( 1 j i i j i v v j i v 5 Derek Bradley 2006 Previous Work Previous Work Weighted Weighted Laplacian Laplacian ( ) = ) , ( ) , ( 1 j i i j ij j i ij i v v w w v i i i v v v + = λ 6 Derek Bradley 2006 Previous Work Previous Work Laplacian Laplacian + Expansion + Expansion 2 ) ( i i i v v v v + = µλ λ µ ( ) = ) , ( 2 ) , ( 1 j i i j i v v j i v

Transcript of Bilateral Mesh Denoisingsheffa/dgp/student_ppts/BilateralMeshDenoising.pdf2d Gaussian Filter...

Page 1: Bilateral Mesh Denoisingsheffa/dgp/student_ppts/BilateralMeshDenoising.pdf2d Gaussian Filter Closeness Smoothing Filter 2 2 2 c x Wc x e ... Simple, effective and fast algorithm for

1

Bilateral Mesh Bilateral Mesh DenoisingDenoising

S. Fleishman, I. S. Fleishman, I. DroriDrori, D. Cohen, D. Cohen--OrOrTel Aviv UniversityTel Aviv University

Presented by Derek BradleyPresented by Derek Bradley

2Derek Bradley 2006

OutlineOutline

MotivationMotivationPrevious WorkPrevious WorkBilateral Mesh Bilateral Mesh DenoisingDenoising

Image Processing BackgroundImage Processing BackgroundBilateral Image FilteringBilateral Image FilteringTransforming from Images to MeshesTransforming from Images to MeshesMesh Mesh DenoisingDenoising

ResultsResultsDiscussionDiscussion

(Unless otherwise noted, all images are from Fleishman et al.)(Unless otherwise noted, all images are from Fleishman et al.)

3Derek Bradley 2006

MotivationMotivation

3D scanning creates noisy meshes3D scanning creates noisy meshesSmoothing can reduce high frequency noiseSmoothing can reduce high frequency noiseChallenge: how do you know Challenge: how do you know what is noise and what are what is noise and what are features?features?

4Derek Bradley 2006

Previous WorkPrevious Work

LaplacianLaplacian SmoothingSmoothing

iii vvv ∆⋅+= λ

( )∑ −=∆),(),(

1ji

iji vvji

v

5Derek Bradley 2006

Previous WorkPrevious Work

Weighted Weighted LaplacianLaplacian

( )∑∑−=∆

),(),(

1ji

ijij

jiij

i vvww

v

iii vvv ∆⋅+= λ

6Derek Bradley 2006

Previous WorkPrevious Work

LaplacianLaplacian + Expansion+ Expansion

2)( iii vvvv ∆−∆−+= µλλµ

( )∑ ∆−∆=∆),(

2

),(1

jiiji vv

jiv

Page 2: Bilateral Mesh Denoisingsheffa/dgp/student_ppts/BilateralMeshDenoising.pdf2d Gaussian Filter Closeness Smoothing Filter 2 2 2 c x Wc x e ... Simple, effective and fast algorithm for

2

7Derek Bradley 2006

Previous WorkPrevious Work

Implicit Fairing (IF) Implicit Fairing (IF) [[DesbrunDesbrun 1999]1999]

Implicit integration of the diffusion equationImplicit integration of the diffusion equation

Anisotropic FeatureAnisotropic Feature--Preserving Preserving DenoisingDenoising (AFP) (AFP) [[DesbrunDesbrun 2000]2000]

Features detected using local curvatureFeatures detected using local curvatureDenoiseDenoise using weighted mean curvature smoothingusing weighted mean curvature smoothing

Penalize vertices with large ratio between principle curvaturesPenalize vertices with large ratio between principle curvatures

nn XdtLIX )(1 λ+=+ nn XXdtLI =+ +1)( λExplicit Implicit

8Derek Bradley 2006

Bilateral Mesh Bilateral Mesh DenoisingDenoising

Application of an image smoothing techniqueApplication of an image smoothing techniqueVertices are moved along their normal directionVertices are moved along their normal direction

Scalar value Scalar value dd to be computed for each vertexto be computed for each vertexFeature preservingFeature preservingCan be iterative or singleCan be iterative or single--passpass

But first … some image processing basicsBut first … some image processing basics

iii ndvv ⋅+=

9Derek Bradley 2006

Image Processing BackgroundImage Processing Background

An image is an array of integers (0An image is an array of integers (0--255)255)

[Tomasi and Manduchi]

10Derek Bradley 2006

Image Processing BackgroundImage Processing Background

v v is the current pixelis the current pixelN(v) is the set of neighbouring pixels of vN(v) is the set of neighbouring pixels of vI(v) is the intensity of vI(v) is the intensity of v

11Derek Bradley 2006

Bilateral Image FilteringBilateral Image Filtering

Goal: Smooth the image intensities, but preserve Goal: Smooth the image intensities, but preserve strong edges (features)strong edges (features)New intensity = weighted average of New intensity = weighted average of neighboursneighboursTwo weights:Two weights:

GeometricGeometric: Closer pixels weighted higher : Closer pixels weighted higher (closeness smoothing filter)(closeness smoothing filter)PhotometricPhotometric: Strong changes in intensity penalized : Strong changes in intensity penalized (similarity weight function)(similarity weight function)

12Derek Bradley 2006

Bilateral Image FilteringBilateral Image Filtering

1d Gaussian Function1d Gaussian Function

[wikipedia.org]

Closeness Smoothing Filter

Page 3: Bilateral Mesh Denoisingsheffa/dgp/student_ppts/BilateralMeshDenoising.pdf2d Gaussian Filter Closeness Smoothing Filter 2 2 2 c x Wc x e ... Simple, effective and fast algorithm for

3

13Derek Bradley 2006

Bilateral Image FilteringBilateral Image Filtering

2d Gaussian Filter2d Gaussian FilterCloseness Smoothing Filter

22

2)( c

x

c exW σ−

=

14Derek Bradley 2006

Bilateral Image FilteringBilateral Image Filtering

Another Gaussian functionAnother Gaussian function

x x = absolute difference in intensity values= absolute difference in intensity valuesResult: pixels with large changes in intensity are Result: pixels with large changes in intensity are weighted lowerweighted lower

Similarity Weight Function

22

2)( s

x

s exW σ−

=

15Derek Bradley 2006

Bilateral Image FilteringBilateral Image Filtering

Combining the weights and normalizing:Combining the weights and normalizing:

In practice, In practice, N(v)N(v) is defined by the set of points: is defined by the set of points:

( ) ( )( ) ( )∑

−⋅−

⋅−⋅−=

)(

)(

)()(

)()()()(ˆ

vNpsc

vNpsc

pIvIWvpW

pIpIvIWvpWvI

{ } cii qvq σ2 where, <−

16Derek Bradley 2006

Bilateral Image FilteringBilateral Image Filtering

Results:Results:

[Tomasi and Manduchi]

17Derek Bradley 2006

Transforming from Images to Transforming from Images to MeshesMeshes

Vertices instead of pixelsVertices instead of pixelsNeighbourhoodNeighbourhood N(v)N(v), defined the same, defined the sameCloseness smoothing filter:Closeness smoothing filter:

3D Euclidean distance instead of 2D 3D Euclidean distance instead of 2D

Similarity weight function:Similarity weight function:Heights of neighbouring vertices = pixel intensitiesHeights of neighbouring vertices = pixel intensities

18Derek Bradley 2006

Transforming from Images to Transforming from Images to MeshesMeshes

Dot product between normal and (Dot product between normal and (vv--qqii) used ) used instead of computing the height at instead of computing the height at qqii

Page 4: Bilateral Mesh Denoisingsheffa/dgp/student_ppts/BilateralMeshDenoising.pdf2d Gaussian Filter Closeness Smoothing Filter 2 2 2 c x Wc x e ... Simple, effective and fast algorithm for

4

19Derek Bradley 2006

Mesh Mesh DenoisingDenoisingDenoisePointDenoisePoint(Vertex(Vertex v, Normal n)v, Normal n)

{{qqii} = } = neighbourhood(vneighbourhood(v))K = |{K = |{qqii}|}|sum = 0, sum = 0, normalizernormalizer = 0= 0forfor i := 1 i := 1 toto KK

t = ||v t = ||v -- qqii||||h = <n, v h = <n, v -- qqii>>WWcc = exp(= exp(--tt22/(2σ/(2σcc

22))))WWss = exp(= exp(--hh22/(2σ/(2σss

22))))sum += (sum += (WWcc * W* Wss) * h) * hnormalizernormalizer += += WWcc * W* Wss

endendreturnreturn Vertex v = v + n * (sum/Vertex v = v + n * (sum/normalizernormalizer))

20Derek Bradley 2006

ResultsResults

Input ImplicitFairing

BilateralDenoising

MeanCurvature

21Derek Bradley 2006

ResultsResults

Input Anisotropic Denoisingof Height Fields (AFP)

BilateralDenoising

22Derek Bradley 2006

DiscussionDiscussion

Issues when using an imageIssues when using an image--based technique on based technique on a mesh:a mesh:

Only applies to manifold meshesOnly applies to manifold meshesIrregularity of meshesIrregularity of meshesShrinkageShrinkageVertex driftVertex drift

Handling boundariesHandling boundariesMirror Mirror neighboursneighbours at boundary vertices at boundary vertices Virtual vertices at infinity (used in this algorithm)Virtual vertices at infinity (used in this algorithm)

23Derek Bradley 2006

DiscussionDiscussion

Setting the parameters (Setting the parameters (σσcc, , σσss, # iterations), # iterations)UserUser--assisted methodassisted methodσσcc and and σσss ::

User selects smooth point and radius on the meshUser selects smooth point and radius on the meshLarge Large σσcc = few iterations, small = few iterations, small σσcc = more iterations= more iterationsSmall Small σσcc makes sense makes sense

large values can cross features large values can cross features smaller smaller neighbourhoodneighbourhood leads to faster iterationsleads to faster iterations

< 6 iterations for all results in the paper< 6 iterations for all results in the paper

24Derek Bradley 2006

DiscussionDiscussion

Independently, Jones et al. present the same Independently, Jones et al. present the same algorithm with minor differences:algorithm with minor differences:

Surface predictorSurface predictorSingle passSingle pass

Input Jones et al. BilateralDenoising

Page 5: Bilateral Mesh Denoisingsheffa/dgp/student_ppts/BilateralMeshDenoising.pdf2d Gaussian Filter Closeness Smoothing Filter 2 2 2 c x Wc x e ... Simple, effective and fast algorithm for

5

25Derek Bradley 2006

DiscussionDiscussion

DisadvantagesDisadvantagesAssumes wellAssumes well--behaved meshesbehaved meshesCan result in selfCan result in self--intersectionintersection

26Derek Bradley 2006

ConclusionConclusion

Simple, effective and fast algorithm for Simple, effective and fast algorithm for denoisingdenoising meshesmeshesEasy to implementEasy to implementTakes advantage of the success of an image Takes advantage of the success of an image processing techniqueprocessing technique

Would I implement this algorithm?Would I implement this algorithm?

27Derek Bradley 2006

ReferencesReferences

S. Fleishman, I. S. Fleishman, I. DroriDrori, D. Cohen, D. Cohen--Or. Bilateral mesh Or. Bilateral mesh denoisingdenoising. . SIGGRAPH 2003.SIGGRAPH 2003.C. C. TomasiTomasi, R. , R. ManduchiManduchi. Bilateral filtering for gray and color . Bilateral filtering for gray and color images. ICCV 1998.images. ICCV 1998.T. Jones, F. Durand, M. T. Jones, F. Durand, M. DesbrunDesbrun. Non. Non--iterative featureiterative feature--preserving mesh smoothing. SIGGRAPH 2003.preserving mesh smoothing. SIGGRAPH 2003.M. M. DesbrunDesbrun, M. Meyer, P. , M. Meyer, P. SchroderSchroder, A.H. Barr. Implicit fairing , A.H. Barr. Implicit fairing of irregular meshes using diffusion and curvature flow. of irregular meshes using diffusion and curvature flow. SIGGRAPH 1999.SIGGRAPH 1999.M. M. DesbrunDesbrun, M. Meyer, P. , M. Meyer, P. SchroderSchroder, A.H. Barr. Anisotropic , A.H. Barr. Anisotropic featurefeature--preserving preserving denoisingdenoising of height fields and of height fields and bivariatebivariate data. data. Graphics Interface 2000.Graphics Interface 2000.www.wikipedia.orgwww.wikipedia.org