A Linear Method to Consistently Orient Normals of a 3D Point Cloud

Craig Gotsman, Kai Hormann

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Correctly and consistently orienting a set of normal vectors associated with a point cloud sampled from a surface in 3D is a difficult procedure necessary for further downstream processing of sampled 3D geometry, such as surface reconstruction and registration. It is difficult because correct orientation cannot be achieved without global considerations of the entire point cloud. We present an algorithm to orient a given set of normals of a 3D point cloud of size N, whose main computational component is the least-squares solution of an O(N) linear system, mostly sparse, derived from the classical Stokes' theorem. We show experimentally that our method can successfully orient sets of normals computed locally from point clouds containing a moderate amount of noise, representing also 3D surfaces with non-smooth features (such as corners and edges), in a fraction of the time required by state-of-the-art methods.

Original languageEnglish (US)
Title of host publicationProceedings - SIGGRAPH 2024 Conference Papers
EditorsStephen N. Spencer
PublisherAssociation for Computing Machinery, Inc
ISBN (Electronic)9798400705250
DOIs
StatePublished - Jul 13 2024
EventSIGGRAPH 2024 Conference Papers - Denver, United States
Duration: Jul 28 2024Aug 1 2024

Publication series

NameProceedings - SIGGRAPH 2024 Conference Papers

Conference

ConferenceSIGGRAPH 2024 Conference Papers
Country/TerritoryUnited States
CityDenver
Period7/28/248/1/24

All Science Journal Classification (ASJC) codes

  • Computer Vision and Pattern Recognition
  • Visual Arts and Performing Arts
  • Computer Graphics and Computer-Aided Design

Keywords

  • normal orientation
  • point cloud
  • Stokes' theorem

Fingerprint

Dive into the research topics of 'A Linear Method to Consistently Orient Normals of a 3D Point Cloud'. Together they form a unique fingerprint.

Cite this