Open Source Robotics

A curated collection of high-quality open source robotics projects, tools, and software to propel the robotics community forward.

Patchwork++

Fast and robust ground segmentation for 3D LiDAR point clouds from KAIST

License

BSD-2-Clause

Overview

Patchwork++ is a fast, robust, and self-adaptive ground segmentation algorithm for 3D LiDAR point clouds from KAIST's Urban Robotics Lab. It extends the original Patchwork method with improved handling of partial under-segmentation, providing reliable ground plane extraction essential for autonomous navigation and obstacle detection. Available as C++ library, Python package via pybind11, and ROS2 node.

Patchwork++ is a fast ground segmentation algorithm for 3D LiDAR point clouds that uses a self-adaptive concentric zone model. Published at IROS 2022, it provides reliable ground plane extraction as a preprocessing step for SLAM, object detection, and navigation.

Why it matters

Ground segmentation is a fundamental preprocessing step for virtually all LiDAR-based perception pipelines. Patchwork++ provides a fast, reliable solution validated at IROS 2022 that handles challenging real-world scenarios including uneven terrain and partial occlusions.

Problem it solves

LiDAR-based perception systems need to separate ground points from obstacles before performing object detection or mapping. Patchwork++ provides fast, accurate ground segmentation that handles partial under-segmentation scenarios common in real-world environments.

Key takeaways

  • Fast real-time ground segmentation for 3D LiDAR scans
  • Self-adaptive concentric zone model handles uneven terrain
  • C++, Python (pybind11), and ROS2 interfaces
  • Minimal dependencies — only requires Eigen3

Who it is for

  • Autonomous vehicle perception engineers
  • Mobile robotics developers working with LiDAR
  • SLAM and mapping researchers needing ground plane preprocessing

Limitations

  • Designed for ground segmentation only, not general point cloud segmentation
  • Performance may degrade on extremely steep terrain
  • Parameters may need tuning for different LiDAR configs and mounting heights

This website requires JavaScript to function properly. Please enable JavaScript to explore our collection of open source robotics projects.