Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. LIDAR
  3. GitHub repository

GitHub repository

MITPython

A PyTorch framework for semantic segmentation of large 3D point clouds using superpoint graphs.

GitHubGitHub
804 stars215 forks0 contributors

What is GitHub repository?

Superpoint Graphs (SPG) is a PyTorch-based framework for semantic segmentation of large 3D point clouds. It solves the problem of efficiently labeling each point in massive point clouds (e.g., from LiDAR scans) by first grouping points into superpoints based on geometric features, then using graph neural networks to classify these superpoints. This approach reduces computational complexity while capturing contextual relationships between regions.

Target Audience

Researchers and developers working on 3D computer vision, autonomous driving, robotics, or geospatial analysis who need to segment large-scale point cloud data like urban scenes or indoor environments.

Value Proposition

SPG offers a structured graph-based approach that combines efficient geometric partitioning with deep learning, enabling accurate segmentation of massive point clouds where raw point-wise methods are computationally prohibitive. Its flexibility with datasets and optional PyTorch Geometric integration makes it adaptable for various applications.

Overview

Large-scale Point Cloud Semantic Segmentation with Superpoint Graphs

Use Cases

Best For

  • Semantic segmentation of urban LiDAR point clouds for autonomous driving
  • Indoor scene understanding from 3D scans like S3DIS or ScanNet
  • Research on graph-based deep learning for 3D point clouds
  • Processing large-scale geospatial point cloud datasets
  • Extending segmentation methods to custom point cloud formats
  • Comparing handcrafted vs. learned geometric feature extraction

Not Ideal For

  • Real-time applications requiring low-latency point cloud processing, as SPG involves computationally intensive partitioning and graph construction
  • Production environments needing actively maintained and supported code, given the repo is deprecated in favor of SuperPoint Transformer
  • Teams without expertise in C++ compilation and complex dependency management, due to manual setup of Boost, Eigen, and custom libraries
  • Projects requiring out-of-the-box support for all modern datasets like ScanNet, as support is incomplete or pending

Pros & Cons

Pros

Efficient Large-Scale Processing

Groups points into geometrically homogeneous superpoints to reduce complexity, enabling segmentation of massive urban LiDAR scans as demonstrated in the CVPR2018 paper.

Flexible Partitioning Methods

Supports both handcrafted geometric features and deep metric learning for superpoint generation, allowing users to choose based on data characteristics and research goals.

PyTorch Geometric Integration

Optional use provides stable and fast graph convolutions, enhancing reliability and performance in graph-based learning, as noted in the README.

Comprehensive Visualization Tools

Includes utilities to visualize input, ground truth, partitions, results, and superedge structures with configurable output types, aiding in debugging and analysis.

Cons

Deprecated and Unmaintained

The repository is explicitly marked as no longer maintained, with authors recommending SuperPoint Transformer for better performance, reducing long-term viability.

Complex and Fragile Setup

Installation requires compiling C++ libraries, managing specific versions of Boost and Eigen, and handling submodules, leading to a error-prone and time-consuming process.

Incomplete Dataset Support

Features for datasets like Semantic3D and ScanNet are listed as 'to come soon' or unavailable, limiting immediate use without custom adaptations.

Stochastic Performance Variability

The partition method is inherently stochastic, causing slight variations in results even with trained weights, as admitted in the disclaimer.

Frequently Asked Questions

Quick Stats

Stars804
Forks215
Contributors0
Open Issues15
Last commit2 years ago
CreatedSince 2017

Tags

#lidar#graph-neural-networks#3d-computer-vision#point-cloud-segmentation#deep-learning#large-scale#semantic-segmentation#semantic#lidar-processing#point-cloud#pytorch#clustering#segmentation

Built With

P
PyTorch Geometric
C
CMake
E
Eigen3
P
Python
P
PyTorch
B
Boost
C
C++

Included in

Robotic Tooling3.8kLIDAR1.2k
Auto-fetched 1 day ago

Related Projects

GitHub repositoryGitHub repository

Open3D: A Modern Library for 3D Data Processing

Stars13,710
Forks2,581
Last commit1 day ago
DracoDraco

Draco is a library for compressing and decompressing 3D geometric meshes and point clouds. It is intended to improve the storage and transmission of 3D graphics.

Stars7,361
Forks1,059
Last commit1 month ago
mmdetection3dmmdetection3d

OpenMMLab's next-generation platform for general 3D object detection.

Stars6,452
Forks1,778
Last commit1 year ago
PCDetPCDet

OpenPCDet Toolbox for LiDAR-based 3D Object Detection.

Stars5,626
Forks1,453
Last commit8 months ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub