Noise-resistant Deep Learning for Object Classification in 3D Point Clouds Using a Point Pair Descriptor

04/05/2018 ∙ by Dmytro Bobkov, et al. ∙ Technische Universität München 0

Object retrieval and classification in point cloud data is challenged by noise, irregular sampling density and occlusion. To address this issue, we propose a point pair descriptor that is robust to noise and occlusion and achieves high retrieval accuracy. We further show how the proposed descriptor can be used in a 4D convolutional neural network for the task of object classification. We propose a novel 4D convolutional layer that is able to learn class-specific clusters in the descriptor histograms. Finally, we provide experimental validation on 3 benchmark datasets, which confirms the superiority of the proposed approach.



There are no comments yet.


page 1

page 2

page 3

page 4

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

I Introduction

Object retrieval and classification are important tasks in robotics. Of all 3D data representations, point clouds are closest to the output from LiDAR and depth sensors. Unfortunately, this representation is very challenging due to its irregular data structure and large data size. Because of this, many works first convert this representation into 3D voxel grids or multi-view rendered images. While convenient for processing, this pre-processing step introduces additional computational complexity and makes the resulting data representation unnecessarily voluminous. For this reason, we focus on approaches that work directly on point clouds. There are a number of handcrafted descriptor algorithms ([1], [2], to name a few) designed for point cloud data that are able to produce a fixed size descriptor. Unfortunately, their description performance is limited for realistic data that suffer from high levels of noise and occlusion. These disturbances often occur in robotic applications, where an object cannot be scanned from all viewpoints due to time, energy and accessibility constraints.

Point pair-based global descriptors [1], [2], [3], [4] achieve high performance for object matching and classification as they do not describe the geometry explicitly and instead use point pair functions (PPF). The descriptor values describing shape statistics are computed using PPFs on the point pairs. In this paper, similarly to [3], we quantize PPF values using a 4D histogram.

Fig. 1: Overview of the proposed object classification pipeline that is a combination of a novel handcrafted descriptor and a 4D convolutional neural network (CNN). For details on the network architecture and layer dimensions, see Fig. 6 and Table I. Here, FC denotes a fully connected layer.

Deep learning-based approaches have experienced significant interest over the last years for the task of 3D object classification. While a number of approaches convert the 3D data to a regular representation for the ease of processing, we argue that it introduces an unnecessary computational step. However, due to the irregular data structure of point clouds, it is not straightforward how to feed this representation into a neural network. In particular, a point cloud is an unstructured set of points, which is invariant to permutations of its members. Different permutations of the set members result in different input data for the network, which makes training of the neural network complex (also known as symmetrization problem). PointNet [5]

addresses this problem by using max-pooling. However, the classification performance remains relatively low for realistic datasets that are subject to noise and occlusion. We argue that this is because the network is not able to learn sufficiently invariant representations based solely on point sets. To address these limitations, we instead feed the 4D descriptor into the neural network (see Fig. 

1). For this, we employ a novel network architecture with 4D convolutional layers, which outperforms state-of-the-art deep learning-based approaches on benchmark datasets.

Contributions of this paper are as follows:

  1. We present a novel 4D convolutional neural network architecture that takes a 4D descriptor as input and outperforms existing deep learning approaches on realistic point cloud datasets.

  2. We design a handcrafted point pair function-based 4D descriptor that offers high robustness for realistic noisy point cloud data. The source code of the descriptor will be made publicly available111

Ii Related Work

Handcrafted point cloud descriptors. Point cloud descriptors are typically divided into global and local descriptors. Local descriptors usually offer superior performance, but they come with high complexity as typically thousands of keypoints need to be computed and matched per object [6]. Instead, global descriptors compute one descriptor per object, thus reducing the matching complexity. Some of the global descriptors use projection techniques [7], [8]. The descriptor proposed by Kasaei et al[7] exhibits state-of-the-art accuracy and achieves low computational complexity. Sanchez et al[8] combine local and global descriptors into a mixed representation. Others employ PPFs, which are based on sampled point pairs [1], [2], [3], [4], [9], [10]. Such descriptors are more robust to noise and occlusion that often occur in real point cloud datasets. Unfortunately, their recognition performance is still not sufficient for many applications.

Deep learning on point clouds. Deep learning-based approaches have shown significant success over the last few years. However, due to the irregular structure of point cloud data and issues with symmetry, many approaches convert the raw point clouds into 3D voxel grids ([11] and [12], to name a few). Volumetric representations, however, are constrained by their resolution due to data sparsity and unnecessary convolutions over empty voxels. Some other approaches solve the problem using field probing neural networks [13], but it still remains unclear how to apply such approach on a general problem. Multi-view CNNs achieve a good performance [14], but yet require an additional step of view rendering. There are also a number of feature-based CNNs that first compute features based on 3D data and then feed these into a neural network. While they achieve good results [15], the presented features are only suitable for mesh structures and it is unclear how to extend them to point sets. Finally, there are a number of end-to-end deep learning methods working directly on point sets, such as [16], [17], [5]. However, these are sensitive to noise and occlusion in real point cloud datasets.

Due to limitations of related work, we review existing PPFs and propose the new ones. The quantized PPFs of the descriptor are then input into a 4D convolutional neural network for the task of object classification.

Iii Methodology

Iii-a Handcrafted Descriptors

Sampling-based PPFs were previously used for the construction of robust 3D descriptors by [1], [2], [4], [18]. Typically, point pairs and point triplets are randomly sampled from the point set. Based on the sampled pairs and triplets, the functions map them to the scalar values, which are then quantized into a histogram that describes the statistics of the shape. Such point sampling leads to certain randomness in the result, but also enhances robustness to noise and occlusion. A further advantage of this approach is its rotation-invariance.

We define a point pair function as the mapping of a point pair to a scalar value as follows:


with being a Euclidean space and denoting a manifold of surface normal orientations in 3D space. We employ the following functions to for our point pair-based descriptor:

  1. Euclidean distance between the points [4].

  2. The maximum angle between the corresponding surface patches of the points and direction vector

    connecting the points .

  3. Normal distance between the points .

  4. Occupancy ratio along the line connecting the points .

Fig. 2: Illustration of the points , , their normal vectors , and the Euclidean distance .

Euclidean distance. The function value is the Euclidean distance between two points and :


The statistics of the distances between point pairs can represent both the geometry and the size of the object (see in Fig. 2).

The maximum surface angle. Function value describes the underlying patch orientation with respect to the line connecting both points . It is defined as follows:


with and being the angles between vector and the tangent patches of points and , respectively (see Fig. 2). The direction vector is computed as follows: . Function is important in the cases, when the Euclidean distance and normal distance are not descriptive enough. Refer to Fig. 3 for illustration. Here, the point pairs in the left and right have the same Euclidean distance and the same normal distance. In contrast, function has significantly different values for both pairs, hence it provides descriptive information on the geometry. Although and may take on different values and, hence, provide an informative surface description, we choose only one value. Thus, we strike a trade-off between compactness and accuracy. We use the maximum operation as compared to minimum or average because we have observed that it is much more descriptive for noisy datasets.

Fig. 3: Illustration of the case with point pairs (left) and (right) that have similar Euclidean () and normal distances (), but still describe significantly different shapes. The maximum angle between patches and direction is an important feature for such case.

Normal distance. Function value describes the similarity of surface orientations of the point neighborhoods, which is defined as follows:


which lies in the range from to . We take the absolute value of the dot product, because we want to eliminate the influence of the viewpoint, which can be unreliable in multi-view point clouds [19].

Occupancy ratio. The value describes the object geometry. In particular, we perform voxelization of the object volume using a voxel grid of dimensions to enable fast lookup and occupancy check computations [2]. We set . The value of is defined as follows:


with being the set of points in the considered point cloud, is the number of occupied voxels intersected by the 3D line connecting two points and , and is the total number of voxels intersected by the line (see Fig. 4

). We classify the voxel as occupied if at least one point is contained inside. This is because the point density can vary significantly in indoor point clouds, therefore such conservative value provides higher robustness. This function describes the global object geometry, because the voxel grid occupancy is computed based on all points. For the example with

and in Fig. 4, , , leading to . In contrast, for point pair , as all intersected voxels are occupied.

Fig. 4: 2D illustration of the grid used for performing voxel occupancy checks for the voxels lying along the line (dashed line) connecting a given point pair and and another point pair and .

Iii-B Feature Statistics

We draw point pairs at random from the point set as we observe that this is sufficient to describe complex shapes. After the PPF values are computed for these pairs, they need to be aggregated into a descriptor histogram. Many approaches (among others [2] and [9]) assume that the different function values are uncorrelated with each other. Therefore, these function values have been discretized into bins and concatenated into a 1D histogram. We have observed that aggregation into a 1D histogram leads to significant loss of performance because information on co-occurrences of different function values is neglected. To avoid loss of information on 4D co-occurrences, similar to [4], we instead build a 4D histogram of function value occurrences (shown in Fig. 5). It can be expressed as:


We denote the descriptor as Enhanced Point Pair Functions (EPPF). Clearly, a straightforward extension into a 4D histogram would result in an exponential increase of computational complexity [3, 4]. We observe that not all function values are equally informative for the description of the object geometry, hence a different number of bins has to be chosen for different dimensions. In the later section IV-B we provide an experimental study of the feature contribution to the overall performance.

Fig. 5: 4D histogram that is used to discretize the aggregated counts of sampled PPF values into a descriptor. Blue color denotes the bins with low number of counts, whereas red corresponds to high.

In particular, function helps to distinguish objects of different sizes, therefore we choose a relatively large number of bins . Contrary to scale-variant approaches, we do not scale every object to fit into a unit sphere, as we observe that in indoor environments the size of the object provides quite important information. For example, monitor and whiteboard can have similar geometric shape, but different dimensions. To preserve this information, we make our descriptor scale-variant and scale all objects so that the largest one fits into a unit cube. For , we observe that its descriptive ability is relatively low for noisy and occluded data, therefore we choose a relatively small number of bins . Furthermore, for we set it to a slightly larger number . Finally, for , we observe that is sufficient. We have experimented with larger numbers of bins and have noticed no significant performance improvement. Thus, we strike a trade-off between complexity and accuracy of the descriptor.

According to our observation, point pairs with larger Euclidean distances usually have higher discriminative power as compared to those with smaller Euclidean distances. This is because every object has point pairs with small distance, but only certain objects have point pairs with larger distances. Furthermore, to suppress the influence of noise in low distance regions and enhance the difference in high distance regions for a better discrimination, we use the following bin weighting factor for the bin located at index :


where is the index of the Euclidean bin, and is used to compute the bin weight as follows: (see in Fig. 5). is a constant greater than 1, which is used to guarantee that weights are positive and mitigate noise for point pairs with smaller Euclidean distances. Based on the experimental validation, we set . Finally, every weighted descriptor histogram is normalized. The total number of bins of the resulting 4D histogram is . For matching, we employ the symmetrized form of Kullback-Leibler (KL) divergence as a distance metric between two histograms:


where and are histogram counts for object 1 and 2, respectively. Similarly to [4], we set all zero bins of a histogram to a common minimum value that is twice smaller than the smallest observed bin value in this dataset. We observed that KL outperforms L1 and L2-distance metrics.

Iii-C 4D Deep Learning Architecture

Fig. 6: Architecture of the proposed 4D neural network. See Table I for more details on the dimensions.

The previously computed 4D descriptor is rotation-invariant, which resolves the issue of symmetry of point sets in neural networks. Hence, it is possible to feed this representation into a neural network for the task of object classification. To preserve information about 4D co-occurrences of the function values, we use 4D convolution for the first two layers of the neural network (see Fig. 6). 4D convolution has already been successfully applied for the task of material recognition by Wang et al[20], where it outperformed other architectures. In particular, we use 4D convolutional blocks in the first and second layers, respectively. Details on the dimensions are given in Table I. Afterwards, the resulting responses are reshaped into a 2D structure and fed into a 2D layer block. Furthermore, 2D max-pooling is performed. This is followed by reshaping from 2D to 1D representation, which is input into a fully connected layer. Afterwards, to achieve regularization and enhance the generalization property of the network, we employ a dropout layer, which is followed by a fully connected layer. At the output of the network the class prediction for the object is provided.

Layer 2D network 3D network 4D network
Input -
1 (conv.) 2D: 3D: 4D: 32
2 (conv.) 2D: 3D: 4D: 64
3 (conv.) 2D: 3D: 2D: 48
4 max-pool: (2,2) 1
5 fully connected (192,1024) 1
6 dropout 0.5 1
7 fully connected: (1024,) 1
TABLE I: Layer dimensions for 2D, 3D and 4D-variants of the network. denotes the number of filters.

For comparison, we also design 2D- and 3D-convolution-based networks for object classification. For fair evaluation, we choose the dimensions so that the number of parameters of all three networks is comparable to each other. The dimensions of the single layers are given in Table I. Thus, for the 2D-variant of the network, the input 4D descriptor is first reshaped into 2D with dimensions and then processed with three 2D convolution layers. For a 3D-variant of the network, the input 4D descriptor is reshaped into 3D with dimensions

and then processed with three 3D convolutional layers. The number of filters remains the same for all three networks. We use stride value of 1.

Iv Experimental Results

For experimental comparison with state-of-the-art approaches, we choose OUR-CVFH [9], ESF [2] and Wahl et al[4], as the ones that constantly perform well across various benchmarks. For the first two, we use the implementations provided in the Point Cloud Library 1.8 [21]. For Wahl et al, we use our own implementation in C++. We further perform fine-tuning of the descriptor parameters to obtain optimal performance. For comparison with deep learning approaches, we use PointNet [5], as it is the only approach up-to-date that is able to directly work on 3D point sets without additional operations of multi-view projection [14] or voxelization [22]. We use its implementation provided by the authors.

The proposed descriptor EPPF has a larger number of bins as compared to OUR-CVFH and ESF, which raises the question, whether a larger number of bins has an impact on performance. To answer this question, we additionally evaluate the version of the EPPF descriptor with fewer bins. We choose its number so that it is comparable to the other descriptors. In particular, we set , , , . This results in a total number of bins of : compare to in ESF and in OUR-CVFH. We refer to this descriptor as ”EPPF short” in the following. As metrics for evaluation, we choose total accuracy that is accuracy value divided by the total number of objects, whereas mean accuracy and recall are averaged over the classes.

Iv-a Datasets

For evaluation, we use the Stanford point cloud dataset [23], ScanNet CAD dataset [24] and ModelNet40 CAD dataset [22]. These are the most recent and largest datasets of indoor objects that can be used for evaluation.

Stanford dataset. The Stanford dataset in [23] contains RGB and depth images and has been captured in 6 office areas within 3 different buildings, using structured-light sensors during a rotation at each scanning location. Due to sensor noise and limited scanning time, point density significantly varies throughout the scene. Furthermore, there is a high level of occlusion. The authors [23] propose a training/testing split according to buildings. We cannot use this split, because in this case some objects never occur in the testing or training sets. This would make the evaluation of object classification less meaningful, therefore we derive our own split. Here, of object instances per category make the training set and the remaining represent the testing set. We omit the category clutter, as it contains different categories. Furthermore, we also skip architectural elements with a high level of planarity, such as floor, ceiling and wall, as they can easily be classified using normal direction. The presence of these objects would make the object classification task unnecessarily complex. Thus, we have 10 classes in total with objects.

ScanNet dataset. The ScanNet dataset [24] is a large-scale CAD dataset containing semantic annotation of indoor scenes. It contains high level of occlusion and noise, as it is collected using a commodity RGB-D sensor in a low-cost sensor setup. For classification we employ the training/testing split specified by the authors [24]. We use the list of categories that are compatible with ShapeNet 55 dataset and mentioned in [24]. To avoid an unbalanced training set, we remove category laptop, as it contains only instances (as compared to the others with at least instances). Thus, the used dataset contains categories: basket, bathtub, bed, cabinet, chair, keyboard, lamp, microwave, pillow, printer, shelf, stove, table and tv. This results in objects in the training set and objects in the testing set.

ModelNet40 dataset. The ModelNet40 dataset [22] is a large-scale CAD model dataset. The CAD models have been manually cleaned, thus containing practically no noise or occlusion. There are CAD models from categories, split into for training and for testing.

ModelNet40 and ScanNet datasets contain mesh models, which need to be converted into a point cloud representation. For this, we use the mesh sampling approach from the Point Cloud Library [21] with a resolution of 1 cm. Because EPPF, Wahl et al

. and OUR-CVFH require normal information, we further perform normal estimation using the method of Boulch and Marlet 


Iv-B Object Retrieval using Handcrafted Descriptors

We perform leave-one-out cross-validation by querying every object in the dataset against the other objects to find the closest match. When the closest match is of the same category as the query object, we consider it as a correct retrieval, and incorrect otherwise. Because the ESF, Wahl et al

. and EPPF descriptors contain the step of random sampling of point pairs from the point set, there are variations in performance as each time different pairs are chosen. To mitigate this, we repeat experiments ten times and record the mean and the standard deviation. The retrieval performance is given in Table 


Dataset Metric Descriptor
OUR-CVFH [9] ESF [2] Wahl [4] EPPF Short EPPF
308 640 625 540 1200
Stanford [23] Total accuracy (%) 62.79 71.34 (0.82) 75.13 (0.35) 77.26 (0.40) 80.18 (0.40)
Mean accuracy (%) 42.91 54.54 (1.10) 57.00 (1.26) 60.53 (1.21) 64.01 (0.66)
Mean recall (%) 49.90 52.28 (1.01) 57.45 (2.57) 60.16 (2.61) 64.58 (0.59)
F1-score 0.437 0.530 (0.011) 0.567(0.017) 0.601 (0.017) 0.640 (0.006)
ScanNet [24] Total accuracy (%) 56.23 53.41 (0.60) 63.72 (0.32) 63.49 (0.20) 65.29 (0.39)
Mean accuracy (%) 39.83 33.69 (0.82) 45.40 (0.65) 42.02(0.49) 44.95 (0.69)
Mean recall (%) 38.21 32.72 (0.98) 45.94 (0.46) 45.17 (0.80) 47.54 (1.00)
F1-score 0.382 0.327 (0.008) 0.444(0.005) 0.430 (0.006) 0.457 (0.008)
M40 [22] Total accuracy (%) 53.22 65.87 (0.37) 74.41 (0.24) 73.00 (0.21) 73.68 (0.21)
Mean accuracy (%) 46.43 58.91 (0.51) 67.50 (0.31) 65.79 (0.26) 66.43 (0.31)
Mean recall (%) 49.26 59.96 (0.68) 70.33 (0.33) 69.12 (0.36) 69.79 (0.30)
F1-score 0.465 0.588 (0.005) 0.680 (0.003) 0.666 (0.003) 0.671 (0.003)
TABLE II: Retrieval performance of the handcrafted descriptors. The mean value is given in the corresponding column, while the standard deviation is given in brackets. Best performance is shown in bold.

One can observe in Table II that the proposed EPPF descriptor (in full and short versions) outperforms ESF and OUR-CVFH on all datasets. Furthermore, the EPPF descriptor outperforms the Wahl descriptor on the Stanford and ScanNet datasets, but shows comparable performance on the M40 dataset. This is because of the low level of noise in this dataset. The PPFs employed in the Wahl descriptor are less robust to high levels of noise, but with lower noise levels can provide higher descriptive ability, as compared to the EPPF descriptor. Notably, there is a big difference in total and mean accuracy values for all descriptors. This is because the datasets are unbalanced, i.e., some categories happen more often than others, therefore matching to a larger category is more likely. Thus, the approaches perform correct retrieval for larger categories, which increases the total accuracy, but results in smaller mean accuracy.

Fig. 7: Illustration of the influence of function removal on the retrieval performance (F1-score) for the proposed descriptor. One function is removed at a time. Averaged over 10 runs.

To gain further insights on the influence of various functions on the resulting performance, we disabled one PPF at a time and repeated retrieval experiments. The results for EPPF are given in Fig. 7. Here one can see that the largest drop in retrieval performance () is observed when the Euclidean distance feature is removed. The drop when removing the surface angle function is lower (). Interestingly, the normal distance function performs differently on various datasets. In particular, on the Stanford dataset, which exhibits high levels of noise in normal orientation, removal of normal distance function leads to performance improvement by . In contrast, on the other datasets, this does not happen and there is a significant drop by up to . Finally, the visibility ratio function contributes the least to the overall performance on all datasets and results in a drop of . This justifies the chosen number of bins for every dimension.

Iv-C Comparison of Deep Learning Approaches

We further evaluate deep learning approaches on the task of object classification. We again use the Stanford, ScanNet and M40 datasets. We use the proposed 4D CNN network in combination with the handcrafted feature descriptor. For comparison, we also include 2D- and 3D-convolution-based networks (denotes as 2D and 3D, respectively). For optimization, we employ the Adam optimizer with a learning rate of and

dropout probability. We perform training for

epochs. Training on ScanNet takes 1-3 hours to converge with Tensorflow [26] and Nvidia Titan XP. For comparison, we also evaluate the method able to learn on point sets PointNet [5]. We train the PointNet network on the given objects taking into account normalization into unit cube as advised by authors [5]. We use standard parameters and feed the network with points. We perform training for epochs.

In Table III we provide object classification results for both approaches (EPPF 4D denotes 4D convolutional network). One can observe that 4D convolution-based network performs better than the 2D- and 3D-variants. This is thanks to the fact that 4D co-occurrences between various dimensions are preserved. In contrast, by reshaping into 2D and 3D, such information is lost. On the Stanford and ScanNet datasets, 3D network performs better than the 2D-based one. One can further observe that our approach outperforms PointNet on the first two datasets. This can be explained by the fact that the proposed network can easily learn noise-resistant class-specific patterns based on handcrafted descriptors as compared to feeding the point sets directly. Notably, PointNet outperforms our approach on M40 dataset. Here, we obtain the PointNet result different from the one reported by authors in [5] ( vs. ), which is due to the fact that network training has random behaviour. With the lower level of noise in M40 dataset, PointNet is able to learn more descriptive representation for object classification. The lower performance of our network is due to the loss of information when operating on features instead of point sets.

To investigate the influence of noise on the total accuracy, we add zero-mean Gaussian random noise with various standard deviation values onto 3D coordinates of point sets. Then, we re-train the network using the noisy examples. The results for our 4D approach and PointNet are given in Fig. 8. Even though PointNet outperforms our approach on lower levels of noise, with increasing noise levels our approach suffers no significant decrease in accuracy. In contrast, PointNet performance starts to drastically deteriorate already at standard deviation values of (e.g., 6% of the unit cube size). This can be explained by the fact that the proposed point pair functions are more robust to noise as compared to the network trained on point sets directly.

Dataset Metric PointNet [5] EPPF 2D EPPF 3D EPPF 4D
Stanford Total accuracy (%) 64.30 82.01 81.94 83.22
Mean accuracy (%) 42.48 64.26 66.37 65.11
Mean recall (%) 40.47 70.88 60.94 72.13
F1-score 0.395 0.652 0.665 0.672
ScanNet Total accuracy (%) 63.04 70.39 70.57 72.10
Mean accuracy (%) 37.50 38.98 44.35 45.70
Mean recall (%) 19.53 63.52 54.53 56.58
F1-score 0.209 0.433 0.472 0.488
M40 Total accuracy (%) 87.01 81.64 81.15 82.13
Mean accuracy (%) 82.08 76.37 75.87 77.05
Mean recall (%) 83.48 77.30 77.51 76.99
F1-score 0.824 0.765 0.762 0.769
TABLE III: Classification performance of deep learning approaches using 2D, 3D and 4D convolutional layers.

Fig. 8: Illustration of the influence of zero-mean Gaussian random noise on the classification accuracy for the M40 dataset using 1024 points. The noise is added to each point independently. PointNet results from [5].

V Discussion

Network response visualization on different layers. To gain further insights about the transformation learned by the network, we show its responses for an exemplary object. We choose the object table in ScanNet and visualize the descriptor values and responses of the first filter in the first two layers in Fig. 9

. Observe that the descriptor is very sparse, e.g., most part of the quantized space takes zero values. Curse of dimensionality is not a big issue here, as dimensionality of our function space is low (4D) and it is strongly quantized. We aggregate 20,000 4D function values into

histogram bins. Hence, we get counts per bin on average, which further confirms that our space is sufficiently sampled. Furthermore, when feeding this descriptor into the first 4D convolutional layer, one can observe that the network has smeared this signal in the space. Finally, in the second layer the signal is even further spread across different dimensions. This is followed by a max-pooling layer that achieves invariance to spatial shift. The transformation learned by the network does not only perform simple Gaussian smoothing, but, more importantly, it amplifies the signal in certain regions and suppresses the signal in the other regions. This special perturbation benefits the generalization of our network, as the first 4D convolution layer can learn the fine features, which are characteristic for certain object categories, while suppressing occlusion and noise.

Fig. 9: Descriptor and 4D neural network responses for the object table in the ScanNet dataset. Left: descriptor values. Middle: response of the first filter in the first layer. Right: filter response in the second layer. The rows show slices of the fourth dimension. Transparent bins correspond to constant offset values for the response (or 0 for the descriptor values), colored bins - to varying values. The bins are colored so that low values are shown in blue color, while high in red.

Runtime analysis. We review the runtime performance of the proposed descriptor. We implement the descriptor in C++ with OpenMP parallelization. We use Desktop PC Intel i7 with 24 GB RAM. The descriptor computation takes 8ms per object on average. This is comparable to runtime performance of the ESF, Wahl et al. and OUR-CVFH descriptors. This still allows us to use such descriptor in real-time operation in robotics for perception tasks. As our descriptor provides fixed feature size irrespective of the object dimensions, we expect relatively constant runtime when using the neural network for object classification.

Further insights. We have experimented with a number of network architectures for object classification. Nonetheless, we have not observed a significant improvement when using larger architectures, which can be explained by the limited size of the training data. Intuitively, reshaping operations performed in the proposed neural network removes information about the structure and feature co-occurrences. However, we have observed that 2D reshaping gives higher classification performance than using 4D blocks directly. This could be explained by the fact that the category-specific clusters learned by the network are spatially separated in all dimensions. We have alternatively considered a number of other strategies such as stacking the dimensions into a 2D representation, global max-pooling and did not observe any performance improvement.

PointNet generally took much longer to converge as compared to our approach on all datasets. For PointNet we also evaluated the voting scheme that applies multiple perturbations and uses majority vote of the representations as a prediction, but have observed no significant performance improvement. Furthermore, we have performed experiments with feeding point pairs directly to PointNet. This approach indeed slightly improved performance on noisy datasets, however, only by a small margin. To make sure no local optima influenced the evaluation, we trained several times and reported the best test accuracy. Most of the considered datasets have unbalanced categories, e.g., some categories (such as chair in ScanNet) occur much more often than others (lamp). This leads to the effect that the network is able to learn very complex patterns for often occurring objects, while it can only learn simple patterns for rarely occurring objects.

Limitations. Tuning of the hyper-parameters of the network could bring further improvements. In particular, one could expect that Res-Net structure could improve the result [27]. Another important aspect is the point sampling strategy: we use a straightforward random sampling for this work. We expect that by performing non-random point sampling, one could improve the classification performance. For this, the techniques similar to the ones explained by Birdal and Ilic [28] can be applied. Finally, end-to-end learning with the goal of identifying more descriptive point pair and point triplet functions could bring further improvements in classification performance.

Vi Conclusions

We have proposed to feed the values of the global descriptor into the novel 4D neural network for object classification, which outperforms existing deep learning approaches on realistic data. We further verified that 4D convolutional layers outperform 2D and 3D convolutional layers. We have also illustrated that by carefully selecting the PPFs and the number of bins over different dimensions, one can enhance performance of the point pair-based global descriptor. Experimental results on 3 benchmark datasets confirm the superiority of such design in high noise and occlusion scenario. By providing a compact description as input data into a neural network one can make the learning problem easier and achieve faster convergence.


  • [1] T. Birdal and S. Ilic, “Point pair features based object detection and pose estimation revisited,” in Proceedings of the International Conference on 3D Vision, 2015, pp. 527–535.
  • [2] W. Wohlkinger and M. Vincze, “Ensemble of shape functions for 3d object classification,” in Proceedings of the IEEE International Conference on Robotics and Biomimetics, Dec 2011, pp. 2987–2992.
  • [3] B. Drost, M. Ulrich, N. Navab, and S. Ilic, “Model globally, match locally: Efficient and robust 3d object recognition,” in

    Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR)

    , June 2010, pp. 998–1005.
  • [4] E. Wahl, U. Hillenbrand, and G. Hirzinger, “Surflet-pair-relation histograms: a statistical 3d-shape representation for rapid classification,” in Proceedings of IEEE International Conference on 3-D Digital Imaging and Modeling (3DIM), 2003, pp. 474–481.
  • [5] C. R. Qi, H. Su, K. Mo, and L. J. Guibas, “Pointnet: Deep learning on point sets for 3d classification and segmentation,” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017.
  • [6] R. B. Rusu, N. Blodow, and M. Beetz, “Fast point feature histograms (fpfh) for 3d registration,” in Proceedings of the IEEE International Conference on Robotics and Automation, 2009, pp. 3212–3217.
  • [7] S. H. Kasaei, L. S. Lopes, A. M. Tomé, and M. Oliveira, “An orthographic descriptor for 3d object learning and recognition,” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Oct 2016, pp. 4158–4163.
  • [8] A. J. Rodríguez-Sánchez, S. Szedmak, and J. Piater, “Scurv: A 3d descriptor for object classification,” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Sept 2015, pp. 1320–1327.
  • [9] A. Aldoma, F. Tombari, R. B. Rusu, and M. Vincze, “Our-cvfh – oriented, unique and repeatable clustered viewpoint feature histogram for object recognition and 6dof pose estimation,” Proceedings of the Joint 34th DAGM and 36th OAGM Symposium on Pattern Recognition, pp. 113–122, 2012.
  • [10] T. Furuya and R. Ohbuchi, “Diffusion-on-manifold aggregation of local features for shape-based 3d model retrieval,” in Proceedings of the 5th ACM International Conference on Multimedia Retrieval, 2015, pp. 171–178.
  • [11] N. Sedaghat, M. Zolfaghari, E. Amiri, and T. Brox, “Orientation-boosted voxel nets for 3d object recognition,” in Proceedings of the British Machine Vision Conference (BMVC), 2017.
  • [12] M. Engelcke, D. Rao, D. Z. Wang, C. H. Tong, and I. Posner, “Vote3deep: Fast object detection in 3d point clouds using efficient convolutional neural networks,” Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), pp. 1355–1361, 2017.
  • [13] Y. Li, S. Pirk, H. Su, C. R. Qi, and L. J. Guibas, “Fpnn: Field probing neural networks for 3d data,” in Advances in Neural Information Processing Systems (NIPS), 2016, pp. 307–315.
  • [14] H. Su, S. Maji, E. Kalogerakis, and E. G. Learned-Miller, “Multi-view convolutional neural networks for 3d shape recognition,” in Proceedings of the IEEE International Conference on Computer Vision (ICCV), 2015.
  • [15] J. Xie, G. Dai, F. Zhu, E. K. Wong, and Y. Fang, “Deepshape: Deep-learned shape descriptor for 3d shape retrieval,” IEEE Transactions on Pattern Analysis and Machine Intelligence (PAMI), vol. 39, no. 7, pp. 1335–1345, July 2016.
  • [16] S. Ravanbakhsh, J. Schneider, and B. Poczos, “Deep learning with sets and point clouds,” in Proceedings of the International Conference on Learning Representations (ICLR) – workshop track, 2017.
  • [17] C. R. Qi, L. Yi, H. Su, and L. J. Guibas, “Pointnet++: Deep hierarchical feature learning on point sets in a metric space,” arXiv preprint arXiv:1706.02413, 2017.
  • [18] S. Hinterstoisser, V. Lepetit, N. Rajkumar, and K. Konolige, Going Further with Point Pair Features.   Springer International Publishing, 2016, pp. 834–848.
  • [19] D. Bobkov, S. Chen, M. Kiechle, S. Hilsenbeck, and E. Steinbach, “Noise-resistant unsupervised object segmentation in multi-view indoor point clouds,” in Proceedings of the International Joint Conference on Computer Vision, Imaging and Computer Graphics Theory and Applications (VISIGRAPP), February 2017, pp. 149–156.
  • [20] T.-C. Wang, J.-Y. Zhu, E. Hiroaki, M. Chandraker, A. A. Efros, and R. Ramamoorthi, “A 4d light-field dataset and cnn architectures for material recognition,” in Proceedings of the European Conference on Computer Vision.   Springer, 2016, pp. 121–138.
  • [21] A. Aldoma, Z.-C. Marton, F. Tombari, W. Wohlkinger, C. Potthast, B. Zeisl, R. B. Rusu, S. Gedikli, and M. Vincze, “Tutorial: Point cloud library: Three-dimensional object recognition and 6 dof pose estimation,” IEEE Robotics and Automation Magazine, vol. 19, pp. 80–91, 2012.
  • [22] Z. Wu, S. Song, A. Khosla, F. Yu, L. Zhang, X. Tang, and J. Xiao, “3d shapenets: A deep representation for volumetric shapes,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015, pp. 1912–1920.
  • [23] I. Armeni, O. Sener, A. R. Zamir, H. Jiang, I. Brilakis, M. Fischer, and S. Savarese, “3d semantic parsing of large-scale indoor spaces,” in Proceedings of the IEEE Conference in Computer Vision and Pattern Recognition (CVPR), 2016.
  • [24] A. Dai, A. X. Chang, M. Savva, M. Halber, T. Funkhouser, and M. Nießner, “Scannet: Richly-annotated 3d reconstructions of indoor scenes,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2017.
  • [25] A. Boulch and R. Marlet, “Fast and robust normal estimation for point clouds with sharp features,” Computer Graphics Forum, vol. 31, no. 5, pp. 1765–1774, Aug. 2012.
  • [26] M. Abadi, A. Agarwal, P. Barham, E. Brevdo, Z. Chen, C. Citro, G. S. Corrado, A. Davis, J. Dean, and M. D. et al., “Tensorflow: Large-scale machine learning on heterogeneous distributed systems,” arXiv preprint arXiv:1603.04467, 2016.
  • [27] K. He, X. Zhang, S. Ren, and J. Sun, “Deep residual learning for image recognition,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 2016, pp. 770–778.
  • [28] T. Birdal and S. Ilic, “A point sampling algorithm for 3d matching of irregular geometries,” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2017.