informatik mesh smoothing by adaptive and anisotropic gaussian filter applied to mesh normals...
TRANSCRIPT
INFORMATIKINFORMATIK
Mesh Smoothing by Adaptive and Mesh Smoothing by Adaptive and Anisotropic Gaussian Filter Anisotropic Gaussian Filter
Applied to Mesh NormalsApplied to Mesh Normals
Max-Planck-Institut fMax-Planck-Institut füür Informatik Saarbrr Informatik Saarbrücken, ücken, GermanyGermany
Max-Planck-Institut fMax-Planck-Institut füür Informatik Saarbrr Informatik Saarbrücken, ücken, GermanyGermany
Yutaka Yutaka OhtakeOhtakeYutaka Yutaka OhtakeOhtake
Alexander Alexander BelyaevBelyaev
Alexander Alexander BelyaevBelyaev
Hans-PeterHans-PeterSeidelSeidel
Hans-PeterHans-PeterSeidelSeidel
INFORMATIKINFORMATIKNoise on MeshesNoise on Meshes
Meshes obtained from digitalizing real world Meshes obtained from digitalizing real world objects often contain undesirable noise.objects often contain undesirable noise.Meshes obtained from digitalizing real world Meshes obtained from digitalizing real world objects often contain undesirable noise.objects often contain undesirable noise.
From range image From range image of Stanford Bunnyof Stanford Bunny
Angel modelAngel modelfrom shadow scanningfrom shadow scanning
INFORMATIKINFORMATIKMesh SmoothingMesh Smoothing
Mesh smoothing is required Mesh smoothing is required for removing the noise. for removing the noise.Mesh smoothing is required Mesh smoothing is required for removing the noise. for removing the noise.
MeshMeshSmoothingSmoothing
INFORMATIKINFORMATIKMesh Smoothing MethodsMesh Smoothing Methods•Laplacian, Bilaplacian smoothing flowsLaplacian, Bilaplacian smoothing flows
•Taubin’s signal processing (Taubin’s signal processing (| | approachapproach
•Mean curvature flowMean curvature flow
•Anisotropic diffusionAnisotropic diffusion
•Laplacian, Bilaplacian smoothing flowsLaplacian, Bilaplacian smoothing flows
•Taubin’s signal processing (Taubin’s signal processing (| | approachapproach
•Mean curvature flowMean curvature flow
•Anisotropic diffusionAnisotropic diffusion
Iteration
D oldnew PP
PoldPnew
INFORMATIKINFORMATIK
Conventional Conventional Smoothing Approaches Smoothing Approaches
We have to specify several parameters.We have to specify several parameters.• Number of iterationsNumber of iterations• A threshold deciding geometric featuresA threshold deciding geometric features
We have to specify several parameters.We have to specify several parameters.• Number of iterationsNumber of iterations• A threshold deciding geometric featuresA threshold deciding geometric features
Iterations Iterations
Best Best Over-smoothingOver-smoothingNoisyNoisy
INFORMATIKINFORMATIKOur ObjectiveOur Objective
Developing fully automatic smoothing methodDeveloping fully automatic smoothing method no parameter is requiredno parameter is requiredDeveloping fully automatic smoothing methodDeveloping fully automatic smoothing method no parameter is requiredno parameter is required
Taubin’s Taubin’s smoothingsmoothing
Developed Developed methodmethod
INFORMATIKINFORMATIKKey TechniqueKey Technique
Amount of smoothing is decided adaptively.Amount of smoothing is decided adaptively.Amount of smoothing is decided adaptively.Amount of smoothing is decided adaptively.
Noisy meshNoisy meshWhite: large smoothing is neededWhite: large smoothing is neededBlack: small smoothing is neededBlack: small smoothing is needed
INFORMATIKINFORMATIKContentsContents
•Adaptive Gaussian Filter on 2D ImageAdaptive Gaussian Filter on 2D Image
•Mesh Smoothing via Diffusion of NormalsMesh Smoothing via Diffusion of Normals •Adaptive and Anisotropic Adaptive and Anisotropic Gaussian Filter on Normal field Gaussian Filter on Normal field
•Adaptive Gaussian Filter on 2D ImageAdaptive Gaussian Filter on 2D Image
•Mesh Smoothing via Diffusion of NormalsMesh Smoothing via Diffusion of Normals •Adaptive and Anisotropic Adaptive and Anisotropic Gaussian Filter on Normal field Gaussian Filter on Normal field
INFORMATIKINFORMATIKAdaptive Gaussian FilterAdaptive Gaussian Filter
Proposed by G.GProposed by G.Góómez, 2000mez, 2000Proposed by G.GProposed by G.Góómez, 2000mez, 2000
fully automaticfully automatic
Noisy imageNoisy image
Local scale map (Size of Gaussian kernel)Local scale map (Size of Gaussian kernel)
Smoothed imageSmoothed image
INFORMATIKINFORMATIKScale SpaceScale Space
The best smoothing amount The best smoothing amount is adaptively found in scale space. is adaptively found in scale space.The best smoothing amount The best smoothing amount is adaptively found in scale space. is adaptively found in scale space.
0
INFORMATIKINFORMATIK
How to Choose How to Choose Optimal Local Scale Optimal Local Scale
2best )(minarg
II
c
Minimum is found Minimum is found in scale space.in scale space.
Homogeneous Homogeneous regionregion Near edge regionNear edge region
ConstantConstant independent of inputindependent of input
kernel sizekernel size originaloriginal smoothedsmoothed
Only one iteration is required.Only one iteration is required.
INFORMATIKINFORMATIKContentsContents
•Adaptive Gaussian Filter on 2D ImageAdaptive Gaussian Filter on 2D Image •Mesh Smoothing via Diffusion of NormalsMesh Smoothing via Diffusion of Normals •Adaptive and Anisotropic Adaptive and Anisotropic Gaussian Filter on Normal field Gaussian Filter on Normal field
•Adaptive Gaussian Filter on 2D ImageAdaptive Gaussian Filter on 2D Image •Mesh Smoothing via Diffusion of NormalsMesh Smoothing via Diffusion of Normals •Adaptive and Anisotropic Adaptive and Anisotropic Gaussian Filter on Normal field Gaussian Filter on Normal field
INFORMATIKINFORMATIKExtension to Triangle MeshesExtension to Triangle Meshes
Instead of the intensity of 2D images, Instead of the intensity of 2D images, the field of normals on meshes is smoothed. the field of normals on meshes is smoothed.Instead of the intensity of 2D images, Instead of the intensity of 2D images, the field of normals on meshes is smoothed. the field of normals on meshes is smoothed.
2D Image Triangle mesh
),( yxI )(Tn
INFORMATIKINFORMATIKWorks Exploring Similar Idea Works Exploring Similar Idea
•Karbacher and HKarbacher and Häusleräusler, 1998 , 1998 • Smoothing vertex normals Smoothing vertex normals
•Ohtake, Belyaev, and Bogaevski, CAD2000Ohtake, Belyaev, and Bogaevski, CAD2000• Diffusion of face normals for crease enhancementDiffusion of face normals for crease enhancement
•Taubin, 2001Taubin, 2001• Analysis of integrability of smoothed face normalsAnalysis of integrability of smoothed face normals
•Tasdizen, Whitaker, Burchard, Tasdizen, Whitaker, Burchard, and Osher, Vis’02 and Osher, Vis’02• Anisotropic diffusion of normals for smoothing implicitAnisotropic diffusion of normals for smoothing implicit
s (level set approach)s (level set approach)
•Karbacher and HKarbacher and Häusleräusler, 1998 , 1998 • Smoothing vertex normals Smoothing vertex normals
•Ohtake, Belyaev, and Bogaevski, CAD2000Ohtake, Belyaev, and Bogaevski, CAD2000• Diffusion of face normals for crease enhancementDiffusion of face normals for crease enhancement
•Taubin, 2001Taubin, 2001• Analysis of integrability of smoothed face normalsAnalysis of integrability of smoothed face normals
•Tasdizen, Whitaker, Burchard, Tasdizen, Whitaker, Burchard, and Osher, Vis’02 and Osher, Vis’02• Anisotropic diffusion of normals for smoothing implicitAnisotropic diffusion of normals for smoothing implicit
s (level set approach)s (level set approach)
INFORMATIKINFORMATIK
Mesh Smoothing viaMesh Smoothing via Diffusion of Normal Field Diffusion of Normal Field
Our mesh smoothing = Our mesh smoothing = smoothing normals + integration of normals smoothing normals + integration of normals (in a least-square sense)(in a least-square sense)
Our mesh smoothing = Our mesh smoothing = smoothing normals + integration of normals smoothing normals + integration of normals (in a least-square sense)(in a least-square sense)
Smoothing normals
Integration of normals
Adaptive Gaussian filterAdaptive Gaussian filter I will explain first.I will explain first.
INFORMATIKINFORMATIK
Integration of Integration of Face Normal Filed Face Normal Filed
Minimizing squared differences Minimizing squared differences of triangle normals and smoothed normals of triangle normals and smoothed normalsMinimizing squared differences Minimizing squared differences of triangle normals and smoothed normals of triangle normals and smoothed normals
2
trianglesallfit )()()(area)(
T
TTTME mn
Conjugate gradient descent method is used.Conjugate gradient descent method is used.
INFORMATIKINFORMATIK
Result of Result of Integration of Normals Integration of Normals
100K triangle, takes about 10 sec.100K triangle, takes about 10 sec.100K triangle, takes about 10 sec.100K triangle, takes about 10 sec.
Original meshOriginal mesh Flat shaded by Flat shaded by smoothed normalssmoothed normals
(100 times averaged)(100 times averaged)
Result of integrating Result of integrating smoothed normalssmoothed normals
INFORMATIKINFORMATIKContentsContents
•Adaptive Gaussian Filter on 2D ImageAdaptive Gaussian Filter on 2D Image •Mesh Smoothing via Diffusion of NormalsMesh Smoothing via Diffusion of Normals •Adaptive and Anisotropic Adaptive and Anisotropic Gaussian Filter on Normal field Gaussian Filter on Normal field
•Adaptive Gaussian Filter on 2D ImageAdaptive Gaussian Filter on 2D Image •Mesh Smoothing via Diffusion of NormalsMesh Smoothing via Diffusion of Normals •Adaptive and Anisotropic Adaptive and Anisotropic Gaussian Filter on Normal field Gaussian Filter on Normal field
INFORMATIKINFORMATIK
Gaussian Filter Gaussian Filter on Mesh Normals on Mesh Normals
jj
jj
w
w
n
nm
Dual meshDual meshPrimal meshPrimal mesh
)()(area dKTw jj
Smoothed normal :Smoothed normal :
Geodesic distanceGeodesic distancefound via found via
Dijkstra’s algorithmDijkstra’s algorithm
Weight :Weight :
(weighted average)(weighted average)
4
INFORMATIKINFORMATIKScale SpaceScale Space
10 scales10 scales)length edge of average(2.0
0
INFORMATIKINFORMATIK
Adaptive Gaussian Filter Adaptive Gaussian Filter on Mesh Normals on Mesh Normals
22
best minarg
ec
Constant Constant (independent to noise size)(independent to noise size)
22 )(1
jjj
ww
nm variancevariance
Flat Flat regionregion
High curvatureHigh curvatureregionregion
Average Average of edge lengthof edge length
410K triangles410K triangles5 min.5 min.
Golf clubGolf club(Cyberware)(Cyberware)
INFORMATIKINFORMATIKProblem near Sharp FeaturesProblem near Sharp Features
SmoothedSmoothed
Scale mapScale map
MinimumMinimumsupport sizesupport size
Under-smoothingUnder-smoothing
INFORMATIKINFORMATIKAnisotropyAnisotropy
Averaging regions should be Averaging regions should be adjusted to geometric features. adjusted to geometric features.Averaging regions should be Averaging regions should be adjusted to geometric features. adjusted to geometric features.
DesiredDesiredAveraging Averaging
regionregion
INFORMATIKINFORMATIKAnisotoropic NeighborhoodAnisotoropic Neighborhood
2
|)()(|
2
|)()(|
6
|)()(|1),(
222 QOPOQPkQPd
nnnnnn
Penalty of Penalty of changing normalschanging normals
),( QPd
point)(start O
P
Q
AnisotropicAnisotropicAdaptive Gaussian FilterAdaptive Gaussian Filter
Isotropic Isotropic Adaptive Gaussian FilterAdaptive Gaussian Filter
Large smoothing is achieved Large smoothing is achieved near sharp edgesnear sharp edges
Noisy meshNoisy mesh(50K triangles)(50K triangles)
Taubin’s Taubin’s smoothingsmoothing
Proposed methodProposed method(small features are (small features are
well preserved)well preserved)
Error AnalysisError Analysis
0.0036
0.0037
0.0038
0.0039
0.004
0.0041
0.0042
0.0043
0.0044
0.0045
0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30
Our methodHntaubintaubin 1/ dtaubin cot
0.063
0.065
0.067
0.069
0.071
0.073
0.075
0.077
0.079
0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30
CompareCompare
IdealIdeal Smoothed after Smoothed after adding noiseadding noise
L2 vertex-based errorL2 vertex-based error L2 normal-based errorL2 normal-based error
Our method, Desbrun’s mean curvature flow, Our method, Desbrun’s mean curvature flow, Taubin’s smoothing with various weightsTaubin’s smoothing with various weights
INFORMATIKINFORMATIKConclusionConclusion
•Fully automatic smoothing method;Fully automatic smoothing method;• produces good results produces good results
if noise is not so large (natural noise). if noise is not so large (natural noise).• preserves sharp features.preserves sharp features.
•It is time-consuming in comparison with coIt is time-consuming in comparison with conventional mesh smoothing methods.nventional mesh smoothing methods.• Fast averaging normals Fast averaging normals
on large ring neighorhoods is required. on large ring neighorhoods is required.
•It is not capable to remove large noise.It is not capable to remove large noise.• Noise size is close to sampling interval.Noise size is close to sampling interval.
•Fully automatic smoothing method;Fully automatic smoothing method;• produces good results produces good results
if noise is not so large (natural noise). if noise is not so large (natural noise).• preserves sharp features.preserves sharp features.
•It is time-consuming in comparison with coIt is time-consuming in comparison with conventional mesh smoothing methods.nventional mesh smoothing methods.• Fast averaging normals Fast averaging normals
on large ring neighorhoods is required. on large ring neighorhoods is required.
•It is not capable to remove large noise.It is not capable to remove large noise.• Noise size is close to sampling interval.Noise size is close to sampling interval.