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.txtand.binformats. - 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 (defaultNone). Suggested0.2or approx 95% of your vehicle's physical limit.--loopback_threshold: Distance threshold to close the loop in meters (default3.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 ofpath.txteven 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)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| whl_logmap-0.2.0.tar.gz | 28.1 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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 logRelease 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 logSecurity 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.
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 logA 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.