{'fraction_non_alphanumeric': 0.03706806282722513, 'fraction_numerical': 0.0086282722513089, 'mean_word_length': 4.805008509603695, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
GeoNet: Deep Geodesic Networks for Point Cloud Analysis

Surface-based geodesic topology provides strong cues for object semantic analysis and geometric modeling. However, such connectivity information is lost in point clouds. Thus we introduce GeoNet, the first deep learning architecture trained to model the intrinsic structure of surfaces represented as point clouds. To demonstrate the applicability of learned geodesic-aware representations, we propose fusion schemes which use GeoNet in conjunction with other baseline or backbone networks, such as PU-Net and PointNet++, for down-stream point cloud analysis. Our method improves the state-of-the-art on multiple representative tasks that can benefit from understandings of the underlying surface topology, including point upsampling, normal estimation, mesh reconstruction and non-rigid shape classification.


Introduction
Determining neighborhood relationship among points in a point cloud, known as topology estimation, is an important problem since it indicates the underlying point cloud structure, which could further reveal the point cloud semantics and functionality. Consider the red inset in Fig. 1: the two clusters of points, though seemingly disconnected, should indeed be connected to form a chair leg, which supports the whole chair. On the other hand, the points on opposite sides of a chair seat, though spatially very close to each other, should not be connected to avoid confusing the sittable upper surface with the unsittable lower side. Determining such topology appears to be a very low-level endeavor but in reality it requires global, high-level knowledge, making it a very challenging task. Still, from the red inset in Fig. 1, we could draw the conclusion that the two stumps are connected only after we learn statistical regularities from a large number of point clouds and observe many objects of this type with connected elongated vertical elements extending from the body to the ground. This motivates us to adopt a learning approach to capture the topological structure within point clouds.
Our primary goals in this paper are to develop representations of point cloud data that are informed by the under- lying surface topology as well as object geometry, and propose methods that leverage the learned topological features for geodesic-aware point cloud analysis. The representation should capture various topological patterns of a point cloud and the method of leveraging these geodesic features should not alter the data stream, so our representation can be learned jointly and used in conjunction with the state-ofthe-art baseline or backbone models (e.g. PU-Net, Point-Net++ [37,27,28]) that feed the raw data through, with no information loss to further stages of processing.
For the first goal, we propose a geodesic neighborhood estimation network (GeoNet) to learn deep geodesic representations using the ground truth geodesic distance as supervision signals. As illustrated in Fig. 2, GeoNet consists of two modules: an autoencoder that extracts a feature vector for each point and a geodesic matching (GM) layer that acts as a learned kernel function for estimating geodesic neighborhoods using the latent features. Due to the supervised geodesic training process, intermediates features of the GM layer contain rich information of the point cloud topology and intrinsic surface attributes. We note that the representation, while trained on geodesic distances, does not by construction produce geodesics (e.g. symmetry, triangle inequality, etc.). The goal of the representation is to inform subsequent stages of processing of the global geometry and topology, and is not to conduct metric computations directly.
For the second task, as shown in Fig. 3, we propose geodesic fusion schemes to integrate GeoNet into the stateof-the-art network architectures designed for different tasks. Specifically, we present PU-Net fusion (PUF) for point cloud upsampling, and PointNet++ fusion (POF) for normal estimation, mesh reconstruction as well as non-rigid shape classification. Through experiments, we demonstrate that the learned geodesic representations from GeoNet are beneficial for both geometric and semantic point cloud analyses. In summary, in this paper we propose an approach for learning deep geodesic-aware representations from point clouds and leverage the results for various point set analyses. Our contributions are: • We present, to the best of our knowledge, the first deep learning method, GeoNet, that ingests point clouds and learns representations which are informed by the intrinsic structure of the underlying point set surfaces.
• To demonstrate the applicability of learned geodesic representations, we develop network fusion architectures that incorporate GeoNet with baseline or backbone networks for geodesic-aware point set analysis.
• Our geodesic fusion methods are benchmarked on multiple geometric and semantic point set tasks using standard datasets and outperform the state-of-the-art methods.

Related work
We mainly review traditional graph-based methods for geodesic distance computation, as well as general works on point cloud upsampling, normal estimation, and non-rigid shape classification, as we are unaware of other prior works on point cloud-based deep geodesic representation learning.
Geodesic distance computation. There are two types of methods: some allow the path to traverse mesh faces [30,26,6,12,32,35,7] for accurate geodesic distance computation, while others find approximate solutions via shortest path algorithms constrained on graph edges [10,11,19]. For the first type, an early method [30] suggests a polynomial algorithm of time O(n 3 logn) where n is the number of edges, but their method is restricted to a convex polytope. Based on Dijkstra's algorithm [10], [26] improves the time complexity to O(n 2 logn) and extends the method to an arbitrary polyhedral surface. Later, [6] proposes an O(n 2 ) approach using a set of windows on the polyhedron edges to encode the structure of the shortest path set. By filtering out useless windows, [35] further speeds up the algorithm. Then [7] introduces a heat method via solving a pair of standard linear elliptic problems. As for graph edgebased methods, typical solutions include Dijkstra's [10], Floyd-Warshall [11] and Johnson's algorithms [19], which have much lower time complexity than the surface traversing methods. For a 20000-vertex mesh, computing its allpair geodesic distances can take several days using [35] while [19] only uses about 1 minute on CPU. When a mesh is dense, the edge-constrained shortest path methods generate low-error geodesic estimates. Thus in our work, we apply [19] to compute the ground truth geodesic distance.
Point upsampling. Previous methods can be summarized into two categories. i) Optimization based methods [1,23,18], championed by [1], which interpolates a dense point set from vertices of a Voronoi diagram in the local tangent space. Then [23] proposes a locally optimal projection (LOP) operator for point cloud resampling and mesh reconstruction leveraging an L 1 median. For improving robustness to point cloud density variations, [18] presents a weighted LOP. These methods all make strong assumptions, such as surface smoothness, and are not datadriven, and therefore have limited applications in practice. ii) Deep learning based methods. To apply the (graph) convolution operation, many of those methods first voxelize a point cloud into regular volumetric grids [34,33,16,8] or instead use a mesh [9,36]. While voxelization introduces discretization artifacts and generates low resolution voxels for computational efficiency, mesh data can not be trivially reconstructed from a sparse and noisy point cloud. To directly upsample a point cloud, PU-Net [37] learns multilevel features for each point and expands the point set via a multibranch convolution unit implicitly in feature space. But PU-Net is based on Euclidean space and thus does not leverage the underlying point cloud surface attributes in geodesic space, which we show in this paper are important for upsampling.
Normal estimation. A widely used method for point cloud normal estimation is to analyze the variance in a tangential plane of a point and find the minimal variance direction by Principal Component Analysis (PCA) [17,20]. But this method is sensitive to the choice of the neighborhood size, namely, large regions can cause over-smoothed surfaces and small ones are sensitive to noises. To improve robustness, methods based on fitting higher-order shapes have been proposed [13,4,2]. However, these methods require careful parameter tuning at the inference time and only estimate normal orientation up to sign. Thus, so far robust estimation for oriented normal vectors using traditional methods is still challenging, especially across different noise levels and shape structures. There are only few data-driven methods that are able to integrate normal estimation and orientation alignment into a unified pipeline [14,28]. They take a point cloud as input and directly regress oriented normal vectors, but these methods are not designed to learn geodesic topology-based representations that capture the intrinsic surface features for better normal estimation.
Non-rigid shape classification. Classifying the point cloud of non-rigid objects often consists of two steps: extracting intrinsic features in geodesic space and applying a classifier (e.g. SVM, MLP, etc.). Some commonly used features include wave kernel signatures [3], heat kernel signatures [31], spectral graph wavelet signatures [25], Shape-DNA [29], etc. For example [24] uses geodesic moments and stacked sparse autoencoders to classify non-rigid shapes, such as cat, horse, spider, etc. The geodesic moments are feature vectors derived from the integral of the geodesic distance on a shape, while stacked sparse autoencoders are deep neural networks consisting of multiple layers of sparse autoencoders. However, the above methods all require knowing graph-based data, which is not available from widely used sensors (e.g. depth camera, Lidar, etc.) for 3D data acquisition. Though PointNet++ [28] is able to directly ingest a point cloud and conduct classification, it is not designed to model the geodesic topology of non-rigid shapes and thus its performance is inferior to traditional two-step methods which heavily reply on the offline computed intrinsic surface features.

Problem Statement
Although the problem and the method developed are general, we focus on the case d = 3 using only Euclidean coordinates as input. A neighborhood subset within radius r from a point

Method
We introduce GeoNet, a network trained to learn the function f defined above. It consists of an autoencoder with skip connections, followed by a multi-scale Geodesic Matching (GM) layer, leveraging latent space features {ψ(x i )} ⊆ R 3+C of the point set. GeoNet is trained in a supervised manner using ground truth geodesic dis-tances between points in the set χ. To demonstrate the applicability of learned deep geodesic-aware representations from GeoNet, we test our approach on typical tasks that require understandings of the underlying surface topology, including point cloud upsampling, surface normal estimation, mesh reconstruction, and non-rigid shape classification. To this end, we leverage the existing state-of-theart network architectures designed for the aforementioned problems. Specifically, we choose PU-Net as the baseline network for point upsampling and PointNet++ for other tasks. The proposed geodesic fusion methods, called PU-Net fusion (PUF) and PointNet++ fusion (POF), integrate GeoNet with the baseline or backbone models to conduct geodesic-aware point set analysis.

Geodesic Neighborhood Estimation
As illustrated in Fig. 2, GeoNet consists of two modules: an autoencoder that extracts a feature vector ψ(x i ) for each point x i ∈ χ and a GM layer that acts as a learned geodesic kernel function for estimating G r (x i ) using the latent features.
Feature Extraction. We use a variant of PointNet++, which is a point set based hierarchical and multi-scale function, for feature extraction. It maps an input point set χ to a feature set {ϕ(x i )|x i ∈ χ} where ϕ(x i ) ∈ R 3+ C is a concatenation of the xyz coordinates and the C dimensional embedding of x i , and χ is a sampled subset of χ by farthest-point sampling. To recover features {ψ(x i )} for the point cloud χ, we use a decoder with skip connections. The decoder consists of recursively applied tri-linear feature interpolators, shared fully connected (FC) layers, ReLU and Batch Normalization. The resulting (N, 3 + C) tensor is then fed into the GM layer for geodesic neighborhood estimation.
Geodesic Matching. We group the latent features ψ(x i ) into neighborhood feature sets F r l (x i ) = {ψ(x j )|x j ∈ B r l (x i )}, under multiple radius scales r l . At each scale r l we set a maximum number of neighborhood points K l , and thus produce a tensor of dimension (N, K l , 3+C). The grouped features, together with the latent features, are sent to a geodesic matching module, where ψ(x i ) is concatenated with ψ(x j ) for every x j ∈ B r l (x i ). The resulting feature ξ ij ∈ R 3+2C becomes the input to a set of shared FC layers with ReLU, Batch Normalization and Dropout. As demonstrated in [15], the multilayer perceptron (MLP) acts as a kernel function that maps ξ ij to an approximation of the geodesic distance,ĝ ij . Finally, the GM layer yields G r l (x i ) for each point of the input point cloud χ. We use a multi-scale L 1 loss L geo = l L geo l to compare the ground truth geodesic distances to their estimates:

Geodesic Fusion
To demonstrate how the learned geodesic representations can be used for point set analysis, we propose fusion methods based on the state-of-the-art (SOTA) network architectures for different tasks. For example, PU-Net is the SOTA upsampling method and thus we propose PUF that uses PU-Net as the baseline network to conduct geodesic fusion for point cloud upsampling. With connectivity information provided by the estimated geodesic neighborhoods, our geodesic-fused upsampling network can better recover topological details, such as curves and sharp structures, than PU-Net. We also present POF leveraging PointNet++ as the fusion backbone, and demonstrate its effectiveness on both geometric and semantic tasks where PointNet++ shows the state-of-the-art performance.
PU-Net Geodesic Fusion. A PUF layer, as illustrated in Fig. 3 (top), takes a (N, d) point set as input and sends it into two branches: one is a multi-scale Euclidean grouping layer, and the other is GeoNet. At each neighborhood scale r l , the grouped point set B r l (x i ) is fused with the estimated geodesic neighborhood G r l (x i ) to yield S r l (x i ) = {(x j , g ij )|x j ∈ B r l (x i )} with (x j , g ij ) ∈ R d+1 . Then the (N, K l , d + 1) fused tensor is fed to a PointNet to generate a (N, C l ) feature tensor which will be stacked with features from other neighborhood scales. The remaining layers are from PU-Net. As indicated by the red rectangles in Fig. 3, the total loss has two weighted terms: where L geo is for GeoNet training (1), λ is a weight and L task , in general, is the loss for the current task that we are targeting. In this case, the goal is point cloud upsampling: L task = L up (θ) where θ indicates network parameters. PUF upsampling takes a randomly distributed sparse point set χ as input and generates a uniformly distributed dense point cloudP ⊆ R 3 . The upsampling factor is α = |P | |χ| : in which the first term is the Earth Mover Distance (EMD) between the upsampled point setP and the ground truth dense point cloud P : where φ :P → P indicates a bijection mapping. The second term in (3) is a repulsion loss which promotes a uniform spatial distribution forP by penalizing close point pairs:  where P i is a set of k-nearest neighbors of p i , η(r) = −r penalizes close pairs (p i , p j ), and ω(r) = e −r 2 /h 2 is a fastdecaying weight function with some constant h [18,23]. Fig. 3 (bottom) illustrates the PointNet++ based fusion pipeline. Due to task as well as architecture differences between PU-Net and PointNet++, we make following changes to PUF to design a suitable fusion strategy that leverages PointNet++. First, for multi-scale grouping, we use the learned geodesic neighborhoodsĜ r (x i ) instead of Euclidean ones. Geodesic grouping brings attention to the underlying surfaces as well as structures of the point cloud. Second, while the PUF layer fuses estimatedĜ r (x i ) = {ĝ ij =d G (x i , x j )|x j ∈ B r (x i )}, whereĝ ij ∈ R, of each neighborhood point set B r (x i ) into the backbone network, the POF layer uses the latent geodesic-aware features ξ ij ∈ R C extracted from the second-to-last FC layer in GeoNet. Namely, ξ ij is an intermediate high-dimensional feature vector from ξ ij toĝ ij via FC layers, and therefore it is better informed of the intrinsic point cloud topology. Third, in PointNet++ fusion we apply the POF layer in a hierarchical manner, leveraging farthest-point sampling. Thus, the learned features encode both local and global structural information of the point set. The total loss for POF also has two parts: One is for GeoNet training and the other is for the task-at-hand. We experiment on representative tasks that can benefit from understandings of the topological surface attributes. We use the L 1 error for point cloud normal estimation: in which n i ∈ R 3 is the ground truth unit normal vector of x i , andn(x i ) ∈ R 3 is the estimated normal. We then use the normal estimation to generate mesh via Poisson surface reconstruction [21]. To classify point clouds of non-rigid objects, we use cross-entropy loss: where S is the number of non-rigid object categories, and c is class label; y c ∈ {0, 1} is a binary indicator, which takes value 1 if class label c is ground truth for the input point set. p c (χ) ∈ R is the predicted probability w.r.t. class c of the input point set.

Implementation
For GeoNet training, the multiscale loss L geo l is enforced at three radius ranges: 0.1, 0.2 and 0.4. We use Adam [22] with learning rate 0.001 and batchsize 3 for 8 epochs. To train the geodesic fusion networks, we set the task term weight λ as 1, and use Adam with learning rate 0.0001 and batchsize 2 for around 300 to 1500 epochs depending on the task and the dataset. Source code in Tensorflow will be made available upon completion of the anonymous review process.

Experiments
We put GeoNet to the test by estimating point cloud geodesic neighborhoods. To demonstrate the applicability of learned deep geodesic-aware representations, we also conduct experiments on down-stream point cloud tasks such as point upsampling, normal estimation, mesh reconstruction and non-rigid shape classification.

Geodesic Neighborhood Estimation
In Tab. 1 (v1) we show geodesic distance set, G r (x i ), estimation results on the ShapeNet dataset [5] using point clouds with 512 uniformly distributed points. Meansquared errors (MSE) are reported under multiple radius

Point Cloud Upsampling
We test PUF on point cloud upsampling and present results in Tab. 3. We compare against the state-of-the-art point set upsampling method PU-Net on three metrics: MSE, EMD as well as the Chamfer Distance (CD). Our method outperforms the baseline under all metrics by 9.25% average improvement on the heldout training-category samples. Since geodesic neighborhoods are better informed of the underlying point set topology than Euclidean ones, PUF upsampling produces less outliers and recovers more details in Fig. 5, such as curves and sharp structures.
Generality. To analyze outlier robustness (i.e. points with large reconstruction errors), we plot top-k MSE in Fig. 6. Our method generates fewer outliers on both the heldout training-category samples and the unseen categories. We also report quantitative results on the leftout categories in Tab. 3. Again, PUF significantly surpasses the state-of-the-art upsampling method PU-Net under three different evaluation metrics.

Normal Estimation and Mesh Reconstruction
For normal estimation we apply PointNet++ geodesic fusion, POF, then we conduct Poisson mesh reconstruction leveraging the estimated normals. Quantitative results for normal estimation on the Shrec15 dataset and the ShapeNet dataset are given in Tab. 4 and Tab. 5, respectively. We compare our method with the traditional PCA algorithm as well as the state-of-the-art deep learning method PointNet++. Our results outperform the baselines by around 10% relative improvement. In Fig. 8, we visualize typical normal estimation errors, showing that PointNet++ usually fails at high-curvature and complex-surface regions. For further evidence, we visualize Poisson mesh reconstruction in Fig. 7 using the estimated normals.
Generality. In Tab. 5 we evaluate normal estimation performance on the leftout ShapeNet categories. Our method  has higher accuracy over competing methods under multiple angle thresholds. Though trained with point clouds of 2048 points, POF is also tested on denser input. In Fig. 9 we take point clouds with 8192 points as input, and visualize the normal estimation and mesh reconstruction results, which shows that our method generalizes to dense point clouds without re-training and produces fine-scaled mesh.

Non-rigid Shape Classification
Results of non-rigid shape classification are reported in Tab. 6. While POF and PointNet++ only take point cloudbased xyz Euclidean coordinates as input, DeepGM requires offline computed intrinsic features from mesh data in the ground truth geodesic metric space. Though using less informative data, our method has higher classification accuracy than other methods, which further demonstrates that the proposed geodesic fusion architecture, POF, is suitable for solving tasks that require understandings of the underlying point cloud surface attributes.
Generality. We add Gaussian noise of different levels to the input and conduct noisy point clouds classification. Comparisons are shown in Tab. 7. POF outperforms PointNet++ under several noise levels. Our method also demonstrates better noise robustness. It shows a 10.24% decrease in relative accuracy at the maximum noise level,

Failure Modes
Failure cases of geodesic neighborhood estimation are shown in Fig. 10. Due to large ratios between length and width/height, after normalizing a stick-shaped object (e.g. rocket, knife, etc.) into a unit ball we need high precision small values to represent its point-pair geodesic distance along the width/height sides. Since stick-shaped objects like rocket and knife only take up a small portion of the training data, GeoNet tends to make mistakes for heldout samples from these categories at inference time. We have not found additional failure cases, and quantitative improvements continue to take effect due to rich surface-based topological information learned during the geodesic-supervised training process.

Conclusion
We have presented GeoNet, a novel deep learning architecture to learn the geodesic space-based topological structure within point clouds. The training process is supervised by the ground truth geodesic distance and therefore the learned representations reflect the intrinsic structure of the underlying point set surfaces. To demonstrate the applicability of such a topology estimation network, we also propose fusion methods to incorporate GeoNet into computational schemes that involve the standard backbone architectures for point cloud analysis. Our method is tested on both geometric and semantic tasks and outperforms the state-of-the-art methods, including point upsampling, normal estimation, mesh reconstruction and non-rigid shape classification.