denoise-layer

Remove isolated lethal cells from Nav2 costmaps using configurable group sizes.

18|2|Updated Apr 20, 2026
One-click install
npx skills add https://github.com/wimblerobotics/ros2-copilot-skills --skill denoise-layer
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: denoise-layer
Source: https://github.com/wimblerobotics/ros2-copilot-skills/tree/main/denoise-layer
Command: npx skills add https://github.com/wimblerobotics/ros2-copilot-skills --skill denoise-layer

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

DenoiseLayer removes salt-and-pepper noise from the costmap — isolated single-pixel or small-cluster lethal marks that aren't real obstacles. These appear from sensor noise, multipath reflections, or transient electrical interference, and cause unnecessary path deviations and replanning.

Core Features & Use Cases

  • Denoise: eliminates small noisy obstacle clusters from the costmap to reduce false positives.
  • Configurable: minimal_group_size parameter to control denoising aggressiveness.
  • Use Case: improve path reliability in noisy lidar environments, reducing unnecessary replanning.

Quick Start

Enable denoise_layer in your local_costmap and set minimal_group_size to 2 to begin removing single-pixel noise.

Frequently Asked Questions about denoise-layer

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I remove salt-and-pepper noise from Nav2 costmaps in ROS 2?

Apply a denoising layer in your ROS 2 navigation pipeline to remove isolated lethal cells from the costmap, preventing false obstacle detection from sensor noise.

Why does my Nav2 robot replan paths unnecessarily in noisy lidar environments?

Unnecessary replanning in Nav2 occurs when sensor noise creates spurious single-pixel lethal marks in the costmap, which the planner interprets as real obstacles requiring path deviations.

How do I configure costmap denoising aggressiveness for isolated obstacle clusters?

Configure denoising aggressiveness by setting the minimal_group_size parameter, which controls the threshold for removing small noisy obstacle clusters while maintaining real obstacles in the costmap.

Does the denoise layer maintain real obstacles while removing costmap noise?

Yes, the denoise layer maintains real obstacles while removing costmap noise through a deterministic updateCosts workflow that evaluates spatial groupings, ensuring only isolated lethal cells are remediated.

Can I use a denoise layer with my existing ROS 2 navigation costmap plugins?

Yes, you can use a denoise layer with existing ROS 2 navigation costmap plugins by configuring it within your plugin order sequence, applying the deterministic updateCosts workflow alongside standard Nav2 components.

What causes isolated single-pixel lethal marks in ROS 2 navigation costmaps?

Isolated single-pixel lethal marks in ROS 2 costmaps are caused by sensor noise, multipath reflections, or transient electrical interference, generating false obstacle positives that disrupt navigation planning.