Skip to main content

whl-logmap

The whl-logmap tool enables the automated and interactive creation of Apollo-format HD maps from raw recorded trajectories. A single pass along a path is enough to generate a fully optimized, spatially smooth map. The tool features an industry-leading Interactive Pipeline Editor, empowering developers to visually tune smoothing parameters, resolve high-curvature anomalies, and perfectly close loopbacks.

Key Features

  • Trajectory Extraction & Map Generation: Extract your trajectory (position and heading) from standard Cyber records and compile it directly into Apollo map_pb .txt and .bin formats.
  • Parametric Generation: Generate perfectly straight lanes parametrically utilizing standard start positions (x, y), heading, and lengths.
  • Interactive UI Editor (Enabled by default): Review your map dynamically. You can use sliders to tune resampling logic via the Ramer-Douglas-Peucker (RDP) algorithm, smoothing windows, and max curvatures.
  • High-Curvature Highlighting & Point Editing: If point curvatures exceed a maximum tolerable limit (indicating erratic vehicle tracking or sharp GPS jumps), they are flagged on the visualization with small yellow dots. You can directly drag-and-drop red map nodes to smooth the anomalies seamlessly.
  • Automatic Loop closure (Loopback): Identify and smoothly weld cyclic trajectories that begin and end near the same spot.

Install

pip3 install whl_logmap

(Note: We recommend running this inside an activated virtual environment or your Apollo workspace).

Quick Start

1. Generate from a Recorded Trajectory

If you have recorded your vehicle's trajectory using tools like cyber_recorder record -c /apollo/localization/pose, you can feed the directory directly:

# Will launch interactive editor by default
whl-logmap --input_path=your_record_dir/
# OR
whl-logmap -i your_record_file.record.00000

2. Generate from raw x,y,heading params

Useful for creating baseline testing scenarios without vehicle recordings.

# x,y,heading(radians)[,forward,backward,spacing]
whl-logmap --path_params="221247.67,2517672.17,1.0,10,50,0.5"

Interactive Editor Guide

By default, executing the tool processes your points and pops up an interactive Matplotlib Viewer.

  • Stage 1 (Structure): Tune Outlier Threshold, RDP Epsilon (simplifies raw points before interpolation), and Resample Space (uniform spacing for the nodes). Changing these will rebuild your initial scaffolding.
  • Stage 2 (Smoothing & Edit):
    • Enable Loopback to close loop tracks.
    • Tune the Smooth Window for overall trajectory smoothness.
    • Set a Max Curvature. Any points on the smoothed path that violate your vehicle's turning limits will light up as yellow elements.
    • Using your mouse, simply drag the red resampled layout points near those yellow alerts outward/inward to relax the curvature securely.

Options & Flags

  • -i, --input_path: Path to the records (directory or single file) (CSV format internally managed: x,y).
  • --path_params: Comma-separated parameters for dynamic straight path generation.
  • -o, --output_path: Path to the output maps directory (default: map).
  • --max_curvature: Maximum allowed baseline curvature (default None). Suggested 0.2 or approx 95% of your vehicle's physical limit.
  • --loopback_threshold: Distance threshold to close the loop in meters (default 3.0).
  • --interactive: Enable the Matplotlib tuning UI (Enabled by default).
  • --no_interactive: Disables the GUI, allowing pure headless execution in CI loops based on default or passed params.
  • --force: Force regeneration of path.txt even if it already exists.

Metadata

Release files for whl-logmap 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for whl-logmap 0.2.0
File Size Uploaded Provenance
whl_logmap-0.2.0.tar.gz 28.1 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for whl-logmap 0.2.0
File Interpreter ABI Platform
whl_logmap-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 61.1 kB

Release files / whl_logmap-0.2.0.tar.gz

Download URL whl_logmap-0.2.0.tar.gz
Size 28.1 kB
Tags Source
SHA-256 checksum
How to use checksums
602ed48ffbeb19a12a42d985d9caa54a351dd816e353bda25823e35310c23529
BLAKE2b-256 checksum
How to use checksums
f7f22ba76ae4bf8ae44273db1953693bc1267716a657b16630560860792452f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 12, 2026.

Transparency log

Release files / whl_logmap-0.2.0-py3-none-any.whl

Download URL whl_logmap-0.2.0-py3-none-any.whl
Size 33.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5660944e01788cc28ce823d4f72e8742f95a4cb5462372e78fe23ff42f0c8c15
BLAKE2b-256 checksum
How to use checksums
d6e4afedc1a68596eca47fd5d837909a3f5d57a95d642e25ee3945fdd8021641
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 12, 2026.

Transparency log

Security for whl-logmap 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for whl_logmap-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 12, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page