| language: en | |
| tags: | |
| - point-cloud | |
| - 3d-classification | |
| - pytorch | |
| - pointnet | |
| - modelnet10 | |
| license: mit | |
| # Vanilla PointNet — ModelNet10 Classifier | |
| Simplified PointNet (no T-Nets) for 3D object classification on ModelNet10. | |
| ## Architecture | |
| | Stage | Layers | | |
| |-------|--------| | |
| | Feature Extraction | Conv1d(3→64→128→1024) + BN + ReLU | | |
| | Global Aggregation | Global max-pool → 1024-d vector | | |
| | Classification | FC(1024→512→256→10) + BN + Dropout | | |
| ## Classes | |
| `bathtub · bed · chair · desk · dresser · monitor · night_stand · sofa · table · toilet` | |
| ## Usage | |
| ```python | |
| import torch | |
| from model import VanillaPointNet | |
| model = VanillaPointNet(num_classes=10) | |
| model.load_state_dict(torch.load("pytorch_model.bin", map_location="cpu")) | |
| model.eval() | |
| pts = torch.randn(1, 3, 1024) # (B, 3, N) | |
| print(model(pts).argmax(1)) | |
| ``` | |