ISSN: 2689-7636

Annals of Mathematics and Physics

Review Article       Open Access      Peer-Reviewed

Implicit Function-based 3D Reconstruction for Point Cloud Data

Yusen Li1,2, Houman Borouchaki1,2*, Hanlin Miao1 and Jie Zhang2

1GAMMA3, University of Technology of Troyes, 12 rue Marie Curie - CS 42060, Troyes, 10004, France
2CTAM, University of Technology of Troyes, 12 rue Marie Curie - CS 42060, Troyes, 10004, France

Author and article information

*Corresponding author: Houman Borouchaki, GAMMA3, CTAM, University of Technology of Troyes, 12 rue Marie Curie - CS 42060, Troyes, 10004, France, E-mail: [email protected]
Received: 03 October, 2025 | Accepted: 10 October, 2025 | Published: 11 October, 2025

Cite this as

Li Y, Borouchaki H, Miao H, Zhang J. Implicit Function-based 3D Reconstruction for Point Cloud Data. Ann Math Phys. 2025;8(5):202-208. Available from: 10.17352/amp.000164

Copyright License

© 2025 Li Y, et al. This is an open-access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.

Abstract

3D reconstruction from point cloud data has become a key component in various domains such as computer graphics, medical imaging, industrial design, and virtual reality. Among the many available approaches, implicit function methods have attracted significant attention due to their robustness and their ability to generate high-quality surface meshes from sparse and noisy data. This paper investigates the fundamental principles of 3D reconstruction, with a particular focus on the application of space-partitioned local fitting methods in implicit surface reconstruction from point clouds. Furthermore, we introduce a hybrid normal estimation and orientation technique to enhance global surface consistency. Experimental results on LiDAR point clouds demonstrate the accuracy and efficiency of the proposed reconstruction pipeline, validating its effectiveness.

Introduction

With the rapid advancement of 3D scanning technologies, point cloud data [1,2] has emerged as a crucial medium for representing three-dimensional spatial information. They are widely used in various domains, including computer graphics, medical imaging, industrial design, and virtual reality [3,4]. Due to their high precision, density, and rich geometric details, point clouds constitute a fundamental resource for 3D reconstruction research [5-8]. Nevertheless, the efficient and accurate reconstruction of surfaces from point cloud data remains a central challenge [9-11]. Over the years, a variety of reconstruction techniques have been developed to address the difficulties associated with structured, unstructured, noisy, or incomplete point clouds. These techniques are commonly classified according to their underlying representations and reconstruction strategies. The principal categories include mesh-based, explicit surface-based, volumetric, and point-based approaches, each characterized by distinct advantages and trade-offs, depending on the properties of the input data and the specific application requirements.

Mesh-based reconstruction methods

Mesh-based approaches reconstruct 3D surfaces by connecting discrete points into polygonal meshes. Among the most widely adopted techniques are the Delaunay triangulation and the marching cubes algorithm. The Delaunay triangulation method generates a triangulated surface by maximizing the minimum angle of triangles, thereby reducing numerical instability. It is particularly well-suited for structured and dense point clouds and ensures the production of manifold surfaces. However, it performs poorly with noisy, sparse, or incomplete data and is highly sensitive to outliers. The marching cubes algorithm is a voxel-based method that extracts isosurfaces from volumetric data. It is computationally efficient for structured datasets, such as CT or MRI scans, and produces smooth surfaces. Nevertheless, it requires the construction of a volumetric grid, which substantially increases memory consumption and limits scalability.

Explicit surface-based methods

These approaches represent surfaces directly through parametric functions or piecewise polynomial approximations [12,13]. Two widely used methods are Non-Uniform Rational B-Splines (NURBS) and the Bézier method. NURBS construct smooth, continuous surfaces using control points and basis functions, offering precise shape control. NURBS are widely applied in computer-aided design and industrial design; however, they require a predefined topology and involve complex fitting procedures, particularly for large-scale or noisy datasets. Bézier and B-Spline Surfaces provide mathematical representations for smooth surface modeling, yielding high-quality results in computer-aided design. However, their adaptability is limited when applied to unstructured point clouds or datasets with missing information.

Volumetric methods

These approaches define surfaces within a volumetric domain, typically employing implicit functions or level-set formulations. Two widely used methods are Poisson Surface Reconstruction and Level Set Methods. Poisson Surface Reconstruction formulates surface reconstruction as the solution to a Poisson equation, generating an implicit function that approximates the input point cloud. It is robust to noise and incomplete data and produces smooth, watertight surfaces; however, it is computationally intensive and requires accurately defined point normals. Level Set Methods represent evolving surfaces using a signed distance function, naturally accommodating topological changes. Despite this flexibility, these methods are computationally intensive and sensitive to initialization.

Point-based methods

Unlike explicit surface construction, point-based methods represent and render 3D models directly from point clouds. This method defines a smooth surface by computing a locally weighted polynomial approximation. It is robust to noise and well-suited for scattered data; however, it becomes computationally expensive when applied to large datasets.

Traditional surface reconstruction [14] methods face limitations in managing complex topologies, noisy data, and large-scale point clouds [15-17]. Therefore, the development of approaches that can effectively capture intricate geometric structures while remaining robust to noise is of considerable importance.

In recent years, implicit function-based 3D reconstruction methods have gained increasing attention [3,18,19]. These methods represent 3D surfaces implicitly through mathematical functions (such as signed distance functions and radial basis functions), eliminating the need for explicit mesh topology [5]. This allows them to naturally handle complex topological structures and partially missing point cloud data. Additionally, implicit representations can inherently smooth out noise effects, improving reconstruction quality and making them well-suited for various application scenarios, such as computer graphics, medical imaging, industrial design, virtual reality, and augmented reality [3,20].

In this study, we propose a novel approach for geometric reconstruction based on implicit functions. The methodology consists of two main components. First, surface normals are estimated at each point to ensure consistent surface orientation. Subsequently, a smooth implicit function is constructed in the local neighborhood of each point using the estimated normals. By combining these local implicit functions, voxel data at multiple levels can be utilized to reconstruct the overall geometry. Compared with existing methods, the proposed approach produces smoother geometries across varying levels of detail and demonstrates strong robustness to noise.

Section 2 presents the methodology for normal estimation, while Section 3 details the formulation of local implicit functions. Section 4 provides illustrative examples demonstrating the efficiency of the proposed method. Finally, Section 5 concludes the study and discusses potential directions for future research.

Normal estimation of point clouds and normal orientation consistency

Normal estimation of point clouds based on covariance matrix

Normal estimation is a critical component of point cloud processing, playing a fundamental role in 3D reconstruction, surface fitting, feature extraction, and classification. Normal information describes the local geometric properties of point clouds and is essential for applications such as surface rendering, mesh reconstruction, and point cloud registration.

The covariance matrix-based method is a classical and efficient approach to normal estimation, relying on the statistical distribution of local neighborhoods. By applying Principal Component Analysis (PCA) to the covariance matrix, the normal direction is identified as the eigenvector associated with the smallest eigenvalue. Owing to its mathematical simplicity and computational efficiency, this method has been widely adopted in point cloud processing.

(1) Local Neighborhood Search: To estimate the normal at a point pi, its local neighborhood N(pi) must be identified. Common strategies for neighborhood selection include:

k-Nearest Neighbors (k-NN): Identifies the k closest points to pi, based on Euclidean distance.

Fixed Radius Search: Selects all points within a given radius r centered at pi.

Let the neighborhood of pi contain n points, denoted as N( p i )={ p 1 , p 2 ,..., p n } MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOtaiaaiIcacaWGWbWaaSbaaSqaaiaadMgaaeqaaOGaaGykaiaai2dacaaI7bGaamiCamaaBaaaleaacaaIXaaabeaakiaaiYcacaWGWbWaaSbaaSqaaiaaikdaaeqaaOGaaGilaiaai6cacaaIUaGaaGOlaiaaiYcacaWGWbWaaSbaaSqaaiaad6gaaeqaaOGaaGyFaaaa@495E@ .

(2) Covariance Matrix Computation: In point cloud normal estimation, the covariance matrix is typically constructed with respect to a reference point. This reference can be either the current point under consideration or the centroid (mean) of its neighborhood, computed as :

q ¯ = 1 n i n q i =( 1 n i n q xi , 1 n i n q yi , 1 n i n q zi )      (1) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGabmyCayaaraGaaGypamaalaaabaGaaGymaaqaaiaad6gaaaWaaabmaeaacaWGXbWaaSbaaSqaaiaadMgaaeqaaaqaaiaadMgaaeaacaWGUbaaniabggHiLdGccaaI9aWaaeWaaeaadaWcaaqaaiaaigdaaeaacaWGUbaaamaaqadabaGaamyCamaaBaaaleaacaWG4bGaamyAaaqabaaabaGaamyAaaqaaiaad6gaa0GaeyyeIuoakiaaiYcacaaMi8+aaSaaaeaacaaIXaaabaGaamOBaaaadaaeWaqaaiaadghadaWgaaWcbaGaamyEaiaadMgaaeqaaaqaaiaadMgaaeaacaWGUbaaniabggHiLdGccaGGSaWaaSaaaeaacaaIXaaabaGaamOBaaaadaaeWaqaaiaadghadaWgaaWcbaGaamOEaiaadMgaaeqaaaqaaiaadMgaaeaacaWGUbaaniabggHiLdaakiaawIcacaGLPaaacaqGGaGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGOaGaaeymaiaabMcaaaa@66B8@

The covariance matrix is then computed as:

C= 1 n i n q i =( q i q ¯ ) ( q i q ¯ ) T      (3) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaC4qaiaai2dadaWcaaqaaiaaigdaaeaacaWGUbaaamaaqadabaGaamyCamaaBaaaleaacaWGPbaabeaaaeaacaWGPbaabaGaamOBaaqdcqGHris5aOGaaGypamaabmaabaGaamyCamaaBaaaleaacaWGPbaabeaakiabgkHiTiqadghagaqeaaGaayjkaiaawMcaamaabmaabaGaamyCamaaBaaaleaacaWGPbaabeaakiabgkHiTiqadghagaqeaaGaayjkaiaawMcaamaaCaaaleqabaGaamivaaaakiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeikaiaabodacaqGPaaaaa@5397@

Where pi represents the coordinates of the neighboring points. The covariance matrix C is a 3 × 3 symmetric matrix:

C=[ C xx C xy C xz C yx C yy C yz C zx C zy C zz ]      (3) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaC4qaiaai2dadaWadaqaauaabeqadmaaaeaacaWGdbWaaSbaaSqaaiaadIhacaWG4baabeaaaOqaaiaadoeadaWgaaWcbaGaamiEaiaadMhaaeqaaaGcbaGaam4qamaaBaaaleaacaWG4bGaamOEaaqabaaakeaacaWGdbWaaSbaaSqaaiaadMhacaWG4baabeaaaOqaaiaadoeadaWgaaWcbaGaamyEaiaadMhaaeqaaaGcbaGaam4qamaaBaaaleaacaWG5bGaamOEaaqabaaakeaacaWGdbWaaSbaaSqaaiaadQhacaWG4baabeaaaOqaaiaadoeadaWgaaWcbaGaamOEaiaadMhaaeqaaaGcbaGaam4qamaaBaaaleaacaWG6bGaamOEaaqabaaaaaGccaGLBbGaayzxaaGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeikaiaabodacaqGPaaaaa@5C4A@

Each element Cuv is calculated as:

C uv = 1 n i n ( u i u ¯ )( v i v ¯ )     (4) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaam4qamaaBaaaleaacaWG1bGaamODaaqabaGccaaI9aWaaSaaaeaacaaIXaaabaGaamOBaaaadaaeWaqaaiaaiIcacaWG1bWaaSbaaSqaaiaadMgaaeqaaOGaeyOeI0IabmyDayaaraGaaGykaiaaiIcacaWG2bWaaSbaaSqaaiaadMgaaeqaaOGaeyOeI0IabmODayaaraGaaGykaaWcbaGaamyAaaqaaiaad6gaa0GaeyyeIuoakiaabccacaqGGaGaaeiiaiaabccacaqGOaGaaeinaiaabMcaaaa@510A@

where u,v represents the x,y,z coordinates.

(3) Eigenvector computation: Perform Eigen Decomposition on the covariance matrix C, obtaining eigenvalues λ 1 , λ 2 , λ 3 MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeq4UdW2aaSbaaSqaaiaaigdaaeqaaOGaaGilaiabeU7aSnaaBaaaleaacaaIYaaabeaakiaaiYcacqaH7oaBdaWgaaWcbaGaaG4maaqabaaaaa@4159@ and their corresponding eigenvectors v1, v2,v3 , where:

λ 1 λ 2 λ 3       (5) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeq4UdW2aaSbaaSqaaiaaigdaaeqaaOGaeyyzImRaeq4UdW2aaSbaaSqaaiaaikdaaeqaaOGaeyyzImRaeq4UdW2aaSbaaSqaaiaaiodaaeqaaOGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeikaiaabwdacaqGPaaaaa@4964@

The smallest eigenvalue l3 corresponds to the eigenvector v3, which represents the least variance direction in the local neighborhood. This vector is chosen as the estimated normal:

ni = v3 (6)

Normal orientation consistency

In point cloud normal estimation, particularly with covariance matrix-based methods, the computed normals inherently exhibit directional ambiguity, both ni and -ni are valid normal at a point pi . Without resolving this ambiguity, inconsistent normal directions can cause significant errors in surface reconstruction, rendering, or registration. Therefore, enforcing consistent normal orientation across the point cloud is essential.

This paper adopts a hybrid strategy that combines local consistency with neighborhood-based propagation. Specifically, a set of seed points is selected from the point cloud, these are typically representative points. The normal directions of these seed points serve as the initial references for propagation. From each seed point, normal directions are locally propagated to neighboring points based on a directional consistency criterion.

To ensure the initial consistency of normal orientations at the seed points, which serve as the starting nodes for orientation propagation, this paper adopts a method based on quadratic surface fitting to refine and correct their normal directions.

Local quadratic surface fitting method: To accurately capture the local geometric characteristics of a point cloud, we adopt a local coordinate-based quadratic surface fitting approach centered at a given point. This method involves establishing a local frame aligned with the surface normal and fitting a second-order surface to the nearest neighboring points in that frame, as shown in Figure 1. The procedure is detailed as follows:

1) Selection of Neighboring Points

Given a query point P MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaCiuaiabgIGioprr1ngBPrwtHrhAYaqeguuDJXwAKbstHrhAGq1DVbacfaGae8xhHi1aaWbaaSqabeaacqWFaC=maaaaaa@46F6@ with a corresponding unit surface normal vector N MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaCOtaiabgIGioprr1ngBPrwtHrhAYaqeguuDJXwAKbstHrhAGq1DVbacfaGae8xhHi1aaWbaaSqabeaacqWFaC=maaaaaa@46F4@ , we identify its k nearest neighbors from a global point set Q= { q i } i=1 n 3 MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyuaiaai2dadaGadaqaaiaadghadaWgaaWcbaGaamyAaaqabaaakiaawUhacaGL9baadaqhaaWcbaGaamyAaiaai2dacaaIXaaabaGaamOBaaaakiabgIGioprr1ngBPrwtHrhAYaqeguuDJXwAKbstHrhAGq1DVbacfaGae8xhHi1aaWbaaSqabeaacaaIZaaaaaaa@4EAD@ , using Euclidean distance as the metric. In this paper, we set k = 6.

2) Construction of Local Coordinate System

A local right-handed orthonormal coordinate system (u,v,w) is established at P , where:

w = N defines the local z-axis direction;

u is obtained by normalizing the cross product of N with an arbitrary non-collinear vector t , u= t×N t×N MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaCyDaiaai2dadaWcaaqaaiaahshacqGHxdaTcaWHobaabaWaauWaaeaacaWH0bGaey41aqRaaCOtaaGaayzcSlaawQa7aaaaaaa@44D7@ , v = u × w . The resulting rotation matrix R= [ u T v T w T ] T 3×3 MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaCOuaiaai2dadaWadaqaaiaahwhadaahaaWcbeqaaiaabsfaaaGccaaMf8UaaCODamaaCaaaleqabaGaaeivaaaakiaaywW7caWH3bWaaWbaaSqabeaacaqGubaaaaGccaGLBbGaayzxaaWaaWbaaSqabeaacaqGubaaaOGaeyicI48efv3ySLgznfgDOjdaryqr1ngBPrginfgDObcv39gaiuaacqWFDeIudaahaaWcbeqaaiaaiodacqGHxdaTcaaIZaaaaaaa@55E4@ transforms global coordinates into the local frame. For each neighboring point qj, the local coordinate q j L MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaqcLbsacaWGXbqcfa4aa0baaSqaaKqzGeGaamOAaaWcbaqcLbsacaWGmbaaaaaa@3B1B@ is computed as:

q j L =R( q j p)     (7) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyCamaaDaaaleaacaWGQbaabaGaamitaaaakiaai2dacaWHsbGaaGikaiaadghadaWgaaWcbaGaamOAaaqabaGccqGHsislcaWGWbGaaGykaiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeikaiaabEdacaqGPaaaaa@4736@

3) Quadratic Surface Fitting in the Local Fram

After transformation, the neighboring points are represented in the local frame as q j L =( x j , y j , z j ) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyCamaaDaaaleaacaWGQbaabaGaamitaaaakiaai2dacaaIOaGaamiEamaaBaaaleaacaWGQbaabeaakiaaiYcacaWG5bWaaSbaaSqaaiaadQgaaeqaaOGaaGilaiaadQhadaWgaaWcbaGaamOAaaqabaGccaaIPaaaaa@44F3@ . We assume the local surface (as shown in Figure 1) near P can be approximated by a second-order polynomial of the form:

z=a x 2 +2bxy+c y 2      (8) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOEaiaai2dacaWGHbGaamiEamaaCaaaleqabaGaaGOmaaaakiabgUcaRiaaikdacaWGIbGaamiEaiaadMhacqGHRaWkcaWGJbGaamyEamaaCaaaleqabaGaaGOmaaaakiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeikaiaabIdacaqGPaaaaa@4A1D@

To estimate the coefficients a, b, c we construct a linear system using the transformed coordinates:

Z = AX (9)

where:

Z=( z 1 z 2 z 6 ),A=( x 1 2 2 x 1 y 1 y 1 2 x 2 2 2 x 2 y 2 y 2 2 x 6 2 2 x 6 y 6 y 6 2 ),X=( a b c )      (10) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaCOwaiaai2dadaqadaqaauaabeqaeeaaaaqaaiaadQhadaWgaaWcbaGaaGymaaqabaaakeaacaWG6bWaaSbaaSqaaiaaikdaaeqaaaGcbaGaeSO7I0eabaGaamOEamaaBaaaleaacaaI2aaabeaaaaaakiaawIcacaGLPaaacaaISaGaaGzbVlaahgeacaaI9aWaaeWaaeaafaqabeabdaaaaeaacaWG4bWaa0baaSqaaiaaigdaaeaacaaIYaaaaaGcbaGaaGOmaiaadIhadaWgaaWcbaGaaGymaaqabaGccaWG5bWaaSbaaSqaaiaaigdaaeqaaaGcbaGaamyEamaaDaaaleaacaaIXaaabaGaaGOmaaaaaOqaaiaadIhadaqhaaWcbaGaaGOmaaqaaiaaikdaaaaakeaacaaIYaGaamiEamaaBaaaleaacaaIYaaabeaakiaadMhadaWgaaWcbaGaaGOmaaqabaaakeaacaWG5bWaa0baaSqaaiaaikdaaeaacaaIYaaaaaGcbaGaeSO7I0eabaGaeSO7I0eabaGaeSO7I0eabaGaamiEamaaDaaaleaacaaI2aaabaGaaGOmaaaaaOqaaiaaikdacaWG4bWaaSbaaSqaaiaaiAdaaeqaaOGaamyEamaaBaaaleaacaaI2aaabeaaaOqaaiaadMhadaqhaaWcbaGaaGOnaaqaaiaaikdaaaaaaaGccaGLOaGaayzkaaGaaGilaiaaywW7caWHybGaaGypamaabmaabaqbaeqabmqaaaqaaiaadggaaeaacaWGIbaabaGaam4yaaaaaiaawIcacaGLPaaacaqGGaGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGOaGaaeymaiaabcdacaqGPaaaaa@7B01@

The coefficients are then estimated via the least-squares solution:

X=( A T A ) 1 A T Z      (11) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaCiwaiaai2dacaaIOaGaaCyqamaaCaaaleqabaGaaeivaaaakiaahgeacaaIPaWaaWbaaSqabeaacqGHsislcaaIXaaaaOGaaCyqamaaCaaaleqabaGaaeivaaaakiaahQfacaqGGaGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGOaGaaeymaiaabgdacaqGPaaaaa@48DF@

Normal consistency by local quadratic surface: To ensure the initial consistency of the normal orientations at the seed points, the entire point cloud is first enclosed within a uniform volumetric grid of resolution 50 × 50 × 50 . Each grid vertex is then classified as lying either outside or inside the surface: vertices outside are assigned a positive sign (“+”), while those inside are assigned with a negative sign (“–”), as shown in Figure 2a). This initial classification provides a coarse signed distance field used for orientation refinement in subsequent steps.

For each grid vertex P located near the surface boundary, the closest point Q on the input point cloud is identified, as illustrated in Figure 2b). A local coordinate system is constructed at Q, with the local z-axis is aligned to the normal vector N at that point. Within this local frame, the quadratic surface defined in Equation 8, is fitted to the neighboring points. This fitted surface serves as a smooth approximation of the local geometry near Q. Using the fitted coefficients a, b, c , the function is evaluated at the offset points P+ and P-, which are positioned slightly along the positive and negative directions of the normal vector, respectively:

ψ(P)=a x P 2 +2b x p y P +c y P 2      (12) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqiYdKNaaGikaiaadcfacaaIPaGaaGypaiaadggacaWG4bWaa0baaSqaaiaadcfaaeaacaaIYaaaaOGaey4kaSIaaGOmaiaadkgacaWG4bWaaSbaaSqaaiaadchaaeqaaOGaamyEamaaBaaaleaacaWGqbaabeaakiabgUcaRiaadogacaWG5bWaa0baaSqaaiaadcfaaeaacaaIYaaaaOGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGOaGaaeymaiaabkdacaqGPaaaaa@51B4@

If the evaluated function Ψ at either offset point yields a sign inconsistent with the expected orientation ψ( P + )<0 MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqiYdKNaaGikaiaadcfadaahaaWcbeqaaiabgUcaRaaakiaaiMcacaaI8aGaaGimaaaa@3EA6@ or ψ( P )>0 MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqiYdKNaaGikaiaadcfadaahaaWcbeqaaiabgkHiTaaakiaaiMcacaaI+aGaaGimaaaa@3EB3@ , then the normal vector is flipped as N = -N , and the coefficients are adjusted accordingly a=a,b=b,c=c MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamyyaiaai2dacqGHsislcaWGHbGaaGilaiaadkgacaaI9aGaamOyaiaaiYcacaWGJbGaaGypaiabgkHiTiaadogaaaa@430A@ .

This correction ensures that the fitted surface's normal direction points consistently outward from the shape, resolving ambiguities in surface orientation near thin or concave regions. After obtaining a reliable and consistently oriented normal at the selected seed points using quadratic surface fitting, the method proceeds to propagate the corrected normal directions to the rest of the point cloud using a neighborhood-based orientation propagation algorithm.

In this process, each seed point acts as a local root, and its normal direction is propagated to neighboring points in a breadth-first manner. At each propagation step, if the dot product between the current point's normal and that of its neighbor is negative, the neighbor's normal is flipped to align with the propagation direction.

By employing multiple seed points and performing propagation in parallel across the dataset, this method ensures global orientation consistency while avoiding issues such as direction drift or error accumulation that may arise from using a single-root traversal.

The results of the normal orientation correction are shown in Figure 3. As shown in Figure 3a), the initial normal vectors are inconsistent, with some pointing inward and others outward. After applying the proposed method, a globally consistent normal field is obtained. In Figure 3b), the red vectors represent the normal that were already correctly oriented, while the green vectors denote those that were originally inverted but have been successfully corrected to point outward. Figure 3c), shows the result obtained using a traditional method. It can be observed that in regions with complex geometric structures, such as corners and edges, the normal vectors remain noticeably disordered and lack global consistency. Specifically, the normals in the upper part of the model tend to point inward, while those in the lower part point outward, further highlighting the limitations of traditional methods in achieving globally consistent normal orientation. This demonstrates the effectiveness of the proposed strategy in producing coherent and meaningful normal directions across the entire point cloud.

Implicit function-based 3D reconstruction techniques

The space-partitioned local fitting approach provides an effective compromise between efficiency and accuracy in implicit surface reconstruction from point clouds. By dividing the domain into local regions and fitting implicit functions independently, it reduces computational complexity, supports parallelization, and adapts well to non-uniform and noisy data. This enables the method to capture fine geometric details while maintaining global surface consistency. Consequently, we adopt this approach to achieve robust and efficient reconstruction in large-scale point cloud scenarios.

An implicit surface is defined by an analytical equation F(x,y,z)=C MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOraiaaiIcacaWG4bGaaGilaiaadMhacaaISaGaamOEaiaaiMcacaaI9aGaam4qaaaa@402A@ where (x,y,z) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaGikaiaadIhacaaISaGaamyEaiaaiYcacaWG6bGaaGykaaaa@3BBD@ belongs to a volume domain and C is a constant called “level” and the corresponding surface is a level set. A discrete representation of this surface is the data values of the underlying function, F( x i , y j , z k ) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOraiaaiIcacaWG4bWaaSbaaSqaaiaadMgaaeqaaOGaaGilaiaadMhadaWgaaWcbaGaamOAaaqabaGccaaISaGaamOEamaaBaaaleaacaWGRbaabeaakiaaiMcaaaa@420A@ , at the vertices ( x i , y j , z k ) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaGikaiaadIhadaWgaaWcbaGaamyAaaqabaGccaaISaGaamyEamaaBaaaleaacaWGQbaabeaakiaaiYcacaWG6bWaaSbaaSqaaiaadUgaaeqaaOGaaGykaaaa@413F@ of a 3D (Cartesian) grid, 1i n i MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaGymaiabgsMiJkaadMgacqGHKjYOcaWGUbWaaSbaaSqaaiaadMgaaeqaaaaa@3F25@ , 1j n j MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaGymaiabgsMiJkaadQgacqGHKjYOcaWGUbWaaSbaaSqaaiaadQgaaeqaaaaa@3F27@ and 1k n k MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaGymaiabgsMiJkaadUgacqGHKjYOcaWGUbWaaSbaaSqaaiaadUgaaeqaaaaa@3F29@ where ( n i , n j , n k ) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaGikaiaad6gadaWgaaWcbaGaamyAaaqabaGccaaISaGaamOBamaaBaaaleaacaWGQbaabeaakiaaiYcacaWGUbWaaSbaaSqaaiaadUgaaeqaaOGaaGykaaaa@411E@ are three integers defining the resolution of the grid, also implicitly representing the boundaries and so the (discrete) definition volume of the surface. Such a grid is often called a "voxel" grid, as shown in Figure 4.

To compute function values F( x i , y j , z k ) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOraiaaiIcacaWG4bWaaSbaaSqaaiaadMgaaeqaaOGaaGilaiaadMhadaWgaaWcbaGaamOAaaqabaGccaaISaGaamOEamaaBaaaleaacaWGRbaabeaakiaaiMcaaaa@420A@  at each grid vertex P, we adopt a local approximation strategy based on point cloud data. For each vertex P, the m nearest neighbors { Q i } i=1 m MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaaG4EaiaadgfadaWgaaWcbaGaamyAaaqabaGccaaI9bWaa0baaSqaaiaadMgacaaI9aGaaGymaaqaaiaad2gaaaaaaa@3F9A@  in the point cloud are identified (in this paper m = 3 ) . Around each Qi, a local quadratic surface is fitted:

φ i (x,y)= a i x 2 + b i xy+ c i y 2      (13) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqOXdO2aaSbaaSqaaiaadMgaaeqaaOGaaGikaiaadIhacaaISaGaamyEaiaaiMcacaaI9aGaamyyamaaBaaaleaacaWGPbaabeaakiaadIhadaahaaWcbeqaaiaaikdaaaGccqGHRaWkcaWGIbWaaSbaaSqaaiaadMgaaeqaaOGaamiEaiaadMhacqGHRaWkcaWGJbWaaSbaaSqaaiaadMgaaeqaaOGaamyEamaaCaaaleqabaGaaGOmaaaakiaabccacaqGGaGaaeiiaiaabccacaqGGaGaaeikaiaabgdacaqGZaGaaeykaaaa@5374@

where x and y are coordinates of P in a local coordinate system centered at Qi. The distance from vertex P=(x,y,z) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamiuaiaai2dacaaIOaGaamiEaiaaiYcacaWG5bGaaGilaiaadQhacaaIPaaaaa@3F6C@ to the surface Qi is computed as:

d(P, φ i )=z a i x 2 b i xy c i y 2       (14) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamizaiaaiIcacaWGqbGaaGilaiabeA8aQnaaBaaaleaacaWGPbaabeaakiaaiMcacaaI9aGaamOEaiabgkHiTiaadggadaWgaaWcbaGaamyAaaqabaGccaWG4bWaaWbaaSqabeaacaaIYaaaaOGaeyOeI0IaamOyamaaBaaaleaacaWGPbaabeaakiaadIhacaWG5bGaeyOeI0Iaam4yamaaBaaaleaacaWGPbaabeaakiaadMhadaahaaWcbeqaaiaaikdaaaGccaqGGaGaaeiiaiaabccacaqGGaGaaeiiaiaabccacaqGOaGaaeymaiaabsdacaqGPaaaaa@55DD@

The function value at P is then obtained through a weighted combination of these distances:

F( x i , y j , z k )= i=1 m ω i d(P, φ i )     (15) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOraiaaiIcacaWG4bWaaSbaaSqaaiaadMgaaeqaaOGaaGilaiaadMhadaWgaaWcbaGaamOAaaqabaGccaaISaGaamOEamaaBaaaleaacaWGRbaabeaakiaaiMcacaaI9aWaaabmaeaacqaHjpWDdaWgaaWcbaGaamyAaaqabaaabaGaamyAaiaai2dacaaIXaaabaGaamyBaaqdcqGHris5aOGaeyyXICTaamizaiaaiIcacaWGqbGaaGilaiabeA8aQnaaBaaaleaacaWGPbaabeaakiaaiMcacaqGGaGaaeiiaiaabccacaqGGaGaaeiiaiaabIcacaqGXaGaaeynaiaabMcaaaa@5A11@

The weight wi for each surface is determined by the inverse distance magnitude, normalized by a harmonic normalization factor H:

ω i = 1 |d(P, φ i )|H ,H= i=1 m 1 |d(P, φ i )|      (16) MathType@MTEF@5@5@+=feaaguart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqk0Jf9crFfpeea0xh9v8qiW7rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqyYdC3aaSbaaSqaaiaadMgaaeqaaOGaaGypamaalaaabaGaaGymaaqaaiaaiYhacaWGKbGaaGikaiaadcfacaaISaGaeqOXdO2aaSbaaSqaaiaadMgaaeqaaOGaaGykaiaaiYhacqGHflY1caWGibaaaiaaiYcacaaMf8Uaamisaiaai2dadaaeWaqaamaalaaabaGaaGymaaqaaiaaiYhacaWGKbGaaGikaiaadcfacaaISaGaeqOXdO2aaSbaaSqaaiaadMgaaeqaaOGaaGykaiaaiYhaaaaaleaacaWGPbGaaGypaiaaigdaaeaacaWGTbaaniabggHiLdGccaqGGaGaaeiiaiaabccacaqGGaGaaeiiaiaabIcacaqGXaGaaeOnaiaabMcaaaa@612F@

This formulation gives greater influence to surfaces closer to the point P, and ensures smooth interpolation across the grid.

Figures 5,6 illustrate this process. Figure 5 shows the topological relation between a grid vertex P and its neighboring point samples { Qi }, while Figure 6 visualizes the local quadratic surface ϕI constructed at a point Qi along with the projection of P onto the surface.

Applications

In this section, the proposed 3D reconstruction algorithm is applied to several point cloud datasets. For each case, we present the point cloud, the estimated normals, and the 3D reconstructed model. In certain examples, fine-resolution grids are employed to better capture geometric details during reconstruction.

The implicit surfaces are converted into 3D meshes using the PLOUGH3D software. The PLOUGH3D software generates the triangulation of a given level set of the implicit surface from a voxel grid. In addition, the software also generates the corresponding level curves in each plane z = zk. Several features are also available for optimization of the shape quality, simplification, and smoothing (roughness removal) of the resulting triangulation. The software also produces a closed surface of a given thickness around the imposed level. This kind of triangulation is particularly useful for surface 3D printing. The software includes several processing p hases:

  • Analysis of the grid (minimum and maximum values and initialization of the parameter thresholds deduced from these values).
  • Generation of the vertices of the triangulation on the edges of a 3D grid triangulation.
  • Generation of the triangles of the triangulation.
  • Extraction of the topology of the triangulation.
  • Optimization of the shape quality of the triangulation.
  • Simplification of the triangulation.
  • Extraction of the connected components of the triangulation.
  • Low frequency smoothing.
  • Loading into memory and writing the resulting triangulation.

Figure 7 shows the point cloud data (from 18,667 points to 1,198,896 points), Figure 8 shows the corresponding normal estimation, and Figure 9 shows the reconstructed models.

Using fine grids allows us to capture details on the surface (Figures 10-12).

As demonstrated by the examples above, the proposed approach produces smoother geometric reconstructions across different levels of detail compared to existing methodologies. For illustration, Figure 13 presents a comparison between a reconstructions obtained using the Poisson method and one generated by our proposed approach.

Conclusion

In this paper, we propose a novel methodology for constructing discrete 3D models from point cloud data, based on implicit surface reconstruction. The approach addresses two key challenges: normal estimation and implicit surface definition. Several examples were presented to demonstrate the effectiveness and efficiency of the method.

Future extensions of this work include the incorporation of sharp edge features, where multiple normals must be considered, and the use of adaptive 3D grids for model construction. The latter would enable the capture of fine geometric details independently of dataset size, further enhancing the scalability and accuracy of the reconstruction process.

References

  1. Huang X, Mei G, Zhang J, Abbas R. A comprehensive survey on point cloud registration. arXiv [Preprint]. 2021; arXiv:2103.02690. Available from: https://doi.org/10.48550/arXiv.2103.02690
  2. Zhang T, Yuan H, Qi L, Zhang J, Zhou Q, Ji S. Point cloud Mamba: Point cloud learning via state space model. In: Proceedings of the AAAI Conference on Artificial Intelligence. 2025;39:10121–10130. Available from: https://doi.org/10.1609/aaai.v39i10.33098
  3. Chibane J, Alldieck T, Pons-Moll G. Implicit functions in feature space for 3D shape reconstruction and completion. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020;6970–6981. Available from: https://doi.org/10.1109/CVPR42600.2020.00700
  4. Choy CB, Xu D, Gwak J, Chen K, Savarese S. 3D-R2N2: A unified approach for single and multi-view 3D object reconstruction. In: Computer Vision – ECCV 2016: 14th European Conference on Computer Vision; 2016 Nov 11–14; Amsterdam, The Netherlands. Proceedings, Part VIII. Springer; 2016;628–644. Available from: https://arxiv.org/abs/1604.00449
  5. Carr JC, Beatson RK, Cherrie JB, Mitchell TJ, Fright WR, McCallum BC, et al. Reconstruction and representation of 3D objects with radial basis functions. In: Proceedings of the 28th Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH). 2001; p. 67–76. Available from: https://doi.org/10.1145/383259.383266
  6. Nguyen TT, Nguyen QM, Liu XG, Ziggah YY. 3D object model reconstruction based on laser scanning point cloud data. In: International Symposium on Geoinformatics for Spatial Infrastructure Development in Earth and Allied Sciences. 2012. Available from: https://www.researchgate.net/publication/306278163_3D_OBJECT_MODEL_RECONSTRUCTION_BASED_ON_LASER_SC…
  7. Li X, Wang Y, Liu Y, Gao X, Song B. Qiyun Pagoda 3D model reconstruction based on laser cloud data. Surv Mapp. 2011;9:11–14.
  8. Boulch A. ConvPoint: Continuous convolutions for point cloud processing. Comput Graph. 2020;88:24–34. Available from: https://doi.org/10.48550/arXiv.1904.02375
  9. Brunetaud X, De Luca L, Janvier-Badosa S, Beck K, Al-Mukhtar M. Application of digital techniques in monument preservation. Eur J Environ Civ Eng. 2012;16(5):543–556. Available from: https://doi.org/10.1080/19648189.2012.676365
  10. Kwak E, Detchev I, Habib A, El-Badry M, Hughes C. Precise photogrammetric reconstruction using model-based image fitting for 3D beam deformation monitoring. J Surv Eng. 2013;139(3):143–155. Available from: https://doi.org/10.1061/(ASCE)SU.1943-5428.0000105
  11. Ren P, Wang W, Bai X. Reconstruction of Imperial University of Shanxi based on virtual reality technology. Comput Simul. 2012;29(11):20–23.
  12. Wang P, Wang Z, Xin S, Gao X, Wang W, Tu C. Restricted Delaunay triangulation for explicit surface reconstruction. ACM Trans Graph. 2022;41(5):1–20. Available from: https://doi.org/10.1145/3533768
  13. Lei H. OffsetOPT: Explicit surface reconstruction without normals. arXiv [Preprint]. 2025; arXiv:2503.15763. Available from: https://doi.org/10.48550/arXiv.2503.15763
  14. Berger M, Tagliasacchi A, Seversky LM, Alliez P, Guennebaud G, Levine JA, et al. A survey of surface reconstruction from point clouds. Comput Graph Forum. 2017;36(1):301–329. Available from: https://doi.org/10.1111/cgf.12802
  15. Ham H, Wesley J, Hendra H. Computer vision-based 3D reconstruction: A review. Int J Electr Comput Eng. 2019;9(4):2394–2402. Available from: https://doi.org/10.11591/ijece.v9i4.pp2394-2402
  16. Huang Z, Wen Y, Wang Z, Ren J, Jia K. Surface reconstruction from point clouds: A survey and a benchmark. IEEE Trans Pattern Anal Mach Intell. 2024. Available from: https://doi.org/10.1109/tpami.2024.3429209
  17. Lim SP, Haron H. Surface reconstruction techniques: A review. Artif Intell Rev. 2014;42(1):59–78. Available from: https://link.springer.com/article/10.1007/s10462-012-9329-z
  18. Zhao HK, Osher S, Fedkiw R. Fast surface reconstruction using the level set method. In: Proceedings of the IEEE Workshop on Variational and Level Set Methods in Computer Vision. 2001; p. 194–201. Available from: https://doi.org/10.1109/VLSM.2001.938900
  19. Kazhdan M, Hoppe H. Screened Poisson surface reconstruction. ACM Trans Graph. 2013;32(3):1–13. Available from: https://doi.org/10.1145/2487228.2487237
  20. Liu P, Zeng Z, Wang Q, Chen M, Zhang G. Geometry-enhanced implicit function for detailed clothed human reconstruction with RGB-D. arXiv [Preprint]. 2025; arXiv:2503.17921. Available from: https://doi.org/10.1049/cit2.70009
 

Help ?