Skip to content

Patchwork++

  • Software
  • Navigation and mapping
  • Library

Patchwork++ is a fast, robust, self-adaptive algorithm that segments the ground from 3D point clouds, available as C++, Python, and ROS2 packages.

Made by Urban Robotics Lab. @ KAIST, South Korea (checked on github.com/url-kaist (opens in a new tab)).

Source on GitHub: github.com/url-kaist/patchwork-plusplus (opens in a new tab). Facts read at commit 3e6903a (opens in a new tab).

Licenses

Code
BSD-2-Clause (opens in a new tab)

Read by Robotheca from LICENSE (opens in a new tab) (BSD-2-Clause) at commit 3e6903a (opens in a new tab), on 16 Oct 2026.

Commercial use
Yes

What it does

  • Separates ground points from 3D point cloud data using adaptive elevation and flatness thresholds.
  • Extends the earlier Patchwork method with reflected noise removal, vertical structure suppression, and probability-based ground revert.
  • Ships a C++ library, a Python binding installable from PyPI as pypatchworkpp, and a ROS2 node.
  • Also includes the classic Patchwork algorithm, selectable in the Python API and the ROS2 launch file.
  • Provides a SemanticKITTI evaluation script for reproducible comparison of Patchwork and Patchwork++.

Written by Robotheca from the project's README (opens in a new tab) at commit 3e6903a.

Getting started

Difficulty
Intermediate

Maintenance

Status
Maintained: a commit in the last 12 months
Newest commit
23 May 2026 on master
Latest release
v1.4.1 — Kill per-patch heap traffic in Patchwork++ (+14.8% Hz) (23 May 2026)

Checked on GitHub on 16 Oct 2026.

Robots that can run it

No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.

Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.