Skip to main content

wheelos map tool

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

whl_logmap-0.2.0.tar.gz (28.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

whl_logmap-0.2.0-py3-none-any.whl (33.0 kB view details)

Uploaded Python 3

File details

Details for the file whl_logmap-0.2.0.tar.gz.

File metadata

  • Download URL: whl_logmap-0.2.0.tar.gz
  • Upload date:
  • Size: 28.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for whl_logmap-0.2.0.tar.gz
Algorithm Hash digest
SHA256 602ed48ffbeb19a12a42d985d9caa54a351dd816e353bda25823e35310c23529
MD5 7eaaeb81d8763feb72c9e5e3dea63c76
BLAKE2b-256 f7f22ba76ae4bf8ae44273db1953693bc1267716a657b16630560860792452f8

See more details on using hashes here.

Provenance

The following attestation bundles were made for whl_logmap-0.2.0.tar.gz:

Publisher: python-publish.yml on wheelos-tools/whl-logmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file whl_logmap-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: whl_logmap-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 33.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for whl_logmap-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5660944e01788cc28ce823d4f72e8742f95a4cb5462372e78fe23ff42f0c8c15
MD5 d3e7af4f010e89140d82dd6295c426c2
BLAKE2b-256 d6e4afedc1a68596eca47fd5d837909a3f5d57a95d642e25ee3945fdd8021641

See more details on using hashes here.

Provenance

The following attestation bundles were made for whl_logmap-0.2.0-py3-none-any.whl:

Publisher: python-publish.yml on wheelos-tools/whl-logmap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page