1 / 36

Estimating Surface Normals in Noisy Point Cloud Data

Estimating Surface Normals in Noisy Point Cloud Data. Niloy J. Mitra, An Nguyen. Stanford University. The Normal Estimation Problem. Given Noisy PCD sampled from a curve/surface. The Normal Estimation Problem. Given Noisy PCD sampled from a curve/surface

lan
Download Presentation

Estimating Surface Normals in Noisy Point Cloud Data

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Estimating Surface Normals in Noisy Point Cloud Data Niloy J. Mitra, An Nguyen Stanford University

  2. The Normal Estimation Problem • GivenNoisy PCD sampled from a curve/surface

  3. The Normal Estimation Problem • GivenNoisy PCD sampled from a curve/surface • GoalCompute surface normals at each point p Error bound the normal estimates

  4. A Standard Solution Use least square fit to a neighborhood of radius r around point p

  5. A Standard Solution Use least square fit to a neighborhood of radius r around point p PROBLEM !!what neighborhood size to choose?

  6. Contributions of this paper • Study the effects of curvature, noise, sampling density on the choice of neighborhood size. • Use this insight to choose an optimal neighborhood size. • Compute bound on the estimation error.

  7. Outline • Problem statement • Related work • Neighborhood Size Estimation • Analysis in 2D and 3D • Applications • Future Work

  8. Related Work • Surface reconstruction • crust, cocone, etc • Guarantees about the surface normals • Mostly works in absence of noise • Curve/Surface fitting • pointShop3D, point-set • Works in presence of noise • Performance guarantees?

  9. aTp=c Least Square Fit • Assume best fit hyperplane: aTp=c • Minimize • Reduces to the eigen-analysis ofthe covariance matrix • Smallest eigenvector of M is the estimate of the normal

  10. Collusive noise Deceptive Case

  11. Collusive noise Curvature effect Deceptive Cases

  12. Outline • Problem statement • Related work • Neighborhood Size Estimation • Analysis in 2D and 3D • Applications • Future Work

  13. Assumptions • Noise • Independent of measurement • Zero mean • Variance is known (noise need not be bounded) • Data • Sampling criterion satisfied • Evenly distributed data • To prevent biased estimates • Curvature is bounded

  14. Sampling Criteria (2D) • Sampling density • lower bound (like Nyquist rate) • upper bound (to prevent biased fits) Evenly distributed Number of points in a disc of radius r bounded above and below by (1)r (,) sampling condition [Dey et. al.] implies evenly distributed.

  15. O y x 2r Modeling (2D) • At a point O • Points of PCD inside a disc of radius r comes from a segment of the curve • y = g(x) define the curve for all x[-r,r] • Bounded curvature: |g’’(x)|< for all x • Additive Noise(n) in y-direction (x,g(x)+n) • r, n/r assumed to be small

  16. Proof Idea • Eigen-analysis of covariance matrix

  17. Proof Idea • covariance matrix • let, =(|m12|+m22)/m11

  18. Proof Idea • covariance matrix • let, =(|m12|+m22)/m11 • error angle bounded by, • to bound estimation error, need to bound 

  19. Bounding Terms of M • For evenly distributed samples it follows,

  20. Bounding m12 • Evenly sampled distribution • Noise and measurement are uncorrelated • E(xn)= E(x)E(n)= 0 • Var(xn)= (1)r2n2 • Chebyshev Inequality • bound with probability (1-) • Finally,

  21. Bounding Estimation Error =(|m12|+m22)/m11

  22. Final Result in 2D •  = 0, • take as large a neighborhood as possible

  23. Final Result in 2D •  = 0, take as large a neighborhood as possible • n= 0 • take as small a neighborhood as possible

  24. Experiments in 2D

  25. Result for 3D A similar but involved analysis results in, A good choice of r is,

  26. How can we use this result? • Need to • know • estimate suitable values for • estimate locally

  27. Estimating c1, c2 Exact normals known at almost all points • c1=1, c2=4 • same constants used for • following results

  28. Algorithm • For each point, start with k =15 • Iterate and refine (maximum of 10 steps) • Compute r, ,  [Gumhold et al.] locally • Use them to compute rnew • knew = rnew2 old • Stop if • k>threshold • ksaturates

  29. Effect of Curvature on Neighborhood Size 1x noise

  30. Effect of Noise on Neighborhood Size 2x noise 1x noise

  31. Estimation Error > 5 o 2x noise 1x noise

  32. Increasing Noise Can still get good estimates in flat areas 1x noise 2x noise 4x noise

  33. Future Work • How to find a suitable neighborhood size for good curvature estimation • Find a better way for estimating c1, c2 • Design of a sparse query data structure for quick extraction of normal, curvature, etc from PCDs

  34. Different Noise Distribution (same variance) gaussian uniform

  35. Result: phone 1x noise

  36. Varying neighborhood size Neighborhood size at all points being shown using color-coding. Purple denotes the smallest neighborhood and turns blue as the neighborhood size increases

More Related