Xu Ma, Can Qin, Haoxuan You, Haoxi Ran, Yun Fu
Point cloud analysis is challenging due to irregularity and unordered data structure. To capture the 3D geometries, prior works mainly rely on exploring sophisticated local geometric extractors using convolution, graph, or attention mechanisms. These methods, however, incur unfavorable latency during inference, and the performance saturates over the past few years. In this paper, we present a novel perspective on this task. We notice that detailed local geometrical information probably is not the key to point cloud analysis -- we introduce a pure residual MLP network, called PointMLP, which integrates no sophisticated local geometrical extractors but still performs very competitively. Equipped with a proposed lightweight geometric affine module, PointMLP delivers the new state-of-the-art on multiple datasets. On the real-world ScanObjectNN dataset, our method even surpasses the prior best method by 3.3% accuracy. We emphasize that PointMLP achieves this strong performance without any sophisticated operations, hence leading to a superior inference speed. Compared to most recent CurveNet, PointMLP trains 2x faster, tests 7x faster, and is more accurate on ModelNet40 benchmark. We hope our PointMLP may help the community towards a better understanding of point cloud analysis. The code is available at https://github.com/ma-xu/pointMLP-pytorch.
| Task | Dataset | Metric | Value | Model |
|---|---|---|---|---|
| Shape Representation Of 3D Point Clouds | ScanObjectNN | Mean Accuracy | 84.4 | PointMLP |
| Shape Representation Of 3D Point Clouds | ScanObjectNN | Overall Accuracy | 85.7 | PointMLP |
| Shape Representation Of 3D Point Clouds | ScanObjectNN | Mean Accuracy | 81.8 | PointMLP-elite |
| Shape Representation Of 3D Point Clouds | ScanObjectNN | Overall Accuracy | 83.8 | PointMLP-elite |
| Shape Representation Of 3D Point Clouds | ModelNet40 | Mean Accuracy | 91.4 | PointMLP |
| Shape Representation Of 3D Point Clouds | ModelNet40 | Overall Accuracy | 94.5 | PointMLP |
| Shape Representation Of 3D Point Clouds | ScanObjectNN | GFLOPs | 31.4 | PointMLP |
| Shape Representation Of 3D Point Clouds | ScanObjectNN | Number of params (M) | 12.6 | PointMLP |
| Shape Representation Of 3D Point Clouds | ScanObjectNN | Overall Accuracy (PB_T50_RS) | 85.4 | PointMLP |
| 3D Point Cloud Classification | ScanObjectNN | Mean Accuracy | 84.4 | PointMLP |
| 3D Point Cloud Classification | ScanObjectNN | Overall Accuracy | 85.7 | PointMLP |
| 3D Point Cloud Classification | ScanObjectNN | Mean Accuracy | 81.8 | PointMLP-elite |
| 3D Point Cloud Classification | ScanObjectNN | Overall Accuracy | 83.8 | PointMLP-elite |
| 3D Point Cloud Classification | ModelNet40 | Mean Accuracy | 91.4 | PointMLP |
| 3D Point Cloud Classification | ModelNet40 | Overall Accuracy | 94.5 | PointMLP |
| 3D Point Cloud Classification | ScanObjectNN | GFLOPs | 31.4 | PointMLP |
| 3D Point Cloud Classification | ScanObjectNN | Number of params (M) | 12.6 | PointMLP |
| 3D Point Cloud Classification | ScanObjectNN | Overall Accuracy (PB_T50_RS) | 85.4 | PointMLP |
| Point Cloud Segmentation | PointCloud-C | mean Corruption Error (mCE) | 0.977 | PointMLP |
| 3D Point Cloud Reconstruction | ScanObjectNN | Mean Accuracy | 84.4 | PointMLP |
| 3D Point Cloud Reconstruction | ScanObjectNN | Overall Accuracy | 85.7 | PointMLP |
| 3D Point Cloud Reconstruction | ScanObjectNN | Mean Accuracy | 81.8 | PointMLP-elite |
| 3D Point Cloud Reconstruction | ScanObjectNN | Overall Accuracy | 83.8 | PointMLP-elite |
| 3D Point Cloud Reconstruction | ModelNet40 | Mean Accuracy | 91.4 | PointMLP |
| 3D Point Cloud Reconstruction | ModelNet40 | Overall Accuracy | 94.5 | PointMLP |
| 3D Point Cloud Reconstruction | ScanObjectNN | GFLOPs | 31.4 | PointMLP |
| 3D Point Cloud Reconstruction | ScanObjectNN | Number of params (M) | 12.6 | PointMLP |
| 3D Point Cloud Reconstruction | ScanObjectNN | Overall Accuracy (PB_T50_RS) | 85.4 | PointMLP |