Classical LiDAR lane detection

From raw points to lane families.

A compact record of the implementation checkpoints with visual artifacts in docs/. Click any image to bring it forward.

CheckpointMilestoneState
01, 03–05Input, road surface, reflectivity, candidatesComplete
5.1–09Candidate audit, road audit, BEV cleanupComplete
11Adaptive lane geometryComplete
13–14.1Better RANSAC and lane-family geometryComplete
CHECKPOINT 01

Input & coordinate gate

Complete
Does
  • Reads K-Lane point clouds and labels.
  • Matches each point cloud to its label and metadata.
  • Verifies the LiDAR-to-BEV coordinate convention without using the ML detector.
Outcome
  • The input contract and top-forward, left-positive orientation were approved, establishing a deterministic CPU-only foundation. Source report
CHECKPOINT 03

Dominant road plane

Complete
Does
  • Samples only points inside the fixed ROI.
  • Fits one deterministic near-horizontal RANSAC plane.
  • Retains complete point rows within a 0.12 m distance band.
Outcome
  • Road points, aligned masks, plane parameters, and support statistics were produced for every inspected frame. Source report
CHECKPOINT 04

Raw reflectivity signal

Complete
Does
  • Selects reflectivity from the Stage-3 road-point rows.
  • Preserves one-to-one alignment with those rows.
  • Applies no threshold, normalization, clipping, or smoothing.
Outcome
  • A finite raw marking signal plus spatial and histogram diagnostics was exposed for each frame. Source report
CHECKPOINT 05

Global Otsu candidates

Complete
Does
  • Computes one exact-value Otsu threshold per frame.
  • Marks road returns above that threshold as candidates.
  • Uses labels only for evaluation and visualization.
Outcome
  • The candidate mask is deterministic and label-independent, but still contains scan structures and clutter. Source report
STAGE 5.1 · EXPLORATORY

Candidate quality audit

Complete
Does
  • Expands the candidate audit to 39 readable frames.
  • Measures strict and one-cell-tolerant candidate quality.
  • Tests a top-decile, row-budget proposal against raw Otsu.
Outcome
  • Tolerant F1 rose from 17.16% to 21.02%, but the proposal remained an ablation and was not adopted for Stage 6. Source report
Raw Otsu vs Stage 5.1
Raw OtsuStage 5.1
What it is: Otsu is an automatic thresholding method. For each frame, it chooses the reflectivity cutoff that best separates the points into a darker group and a brighter group; the brighter group becomes the lane-candidate set.What it is: Stage 5.1 replaces that adaptive split with a fixed percentile rule: only the brightest 10% of road-point returns are eligible.
BEV selection: Every above-threshold road point remains a candidate, with no per-row limit.BEV selection: Keeps at most the six strongest occupied cells in each BEV row.
Behavior: Can select too few points or broad transverse scan arcs.Behavior: Raises recall while limiting how much of one row a scan arc can fill.
Candidate ablation · 39 development frames
Output & metricPrecisionRecallF1
Raw Otsu · strict6.36%3.60%4.60%
Stage 5.1 · strict7.25%4.72%5.72%
Raw Otsu · tolerant22.59%13.84%17.16%
Stage 5.1 · tolerant25.24%18.01%21.02%
CHECKPOINT 08

Road-plane coverage audit

Complete
Does
  • Keeps the existing Stage-3 fit unchanged.
  • Measures retention across eight near-to-far bands.
  • Checks whether available lane-label cells keep road-point support.
Outcome
  • Median spatial retention was 72.25%, but three frames had near-total far-field collapse; Stage 3.1 was deferred. Source report
Spatial coverage audit by sequence
ScopeFramesOverall retentionFar retentionLabel retention
Overall3972.25%50.19%77.17%
Sequence 011078.37%66.16%84.35%
Sequence 021083.18%68.65%82.24%
Sequence 031072.54%51.79%78.00%
Sequence 04957.24%44.69%46.68%
CHECKPOINT 09 · STAGE 6

BEV candidate cleanup

Complete
Does
  • Rasterizes raw Otsu candidates at 288 × 288.
  • Closes short forward gaps and measures connected components.
  • Conservatively removes weak, long, or wide clutter.
Outcome
  • Precision rose from 22.59% to 25.75% and F1 from 17.16% to 17.83%, retaining 98.48% of baseline true positives. Source report
Operation-by-operation ablation · tolerant metric
OutputPrecisionRecallF1
Raw Stage 522.59%13.84%17.16%
Short forward gap close22.45%13.84%17.12%
Direct component filter25.78%13.63%17.83%
Final + dash chains25.75%13.63%17.83%
CHECKPOINT 11 · STAGE 7

Adaptive lane geometry

Complete
Does
  • Groups cleaned lane-like dots with RANSAC.
  • Fits straight, quadratic, cubic, and adaptive curves.
  • Applies spacing, crossing, slope, bend, and support limits.
Outcome
  • Adaptive fitting reached 19.44% held-out tolerant F1 and raised exact-cell F1 from 5.01% to 12.22%. Source report
Held-out model comparison · tolerant metric
OutputPrecisionRecallF1
Stage-6 input26.34%15.14%19.23%
Straight26.84%14.30%18.66%
Quadratic27.94%14.82%19.37%
Cubic28.77%14.86%19.60%
Adaptive · recommended27.93%14.91%19.44%

Cubic has the highest mask F1; adaptive remains recommended because its stability evidence is stronger.

CHECKPOINT 13

Better RANSAC evidence

Complete
Does
  • Compares four explicit RANSAC input routes.
  • Aggregates raw returns into equal-vote BEV cells.
  • Tests bounded reflectivity and road-height guidance.
Outcome
  • The Stage-6 baseline stayed best at 19.44% held-out tolerant F1; guided Stage 4 reached 13.62%. Source report
Frozen held-out input ablation · tolerant metric
Input modePrecisionRecallF1
Stage-6 mask27.93%14.91%19.44%
Stage-5 points24.53%13.34%17.28%
Stage-4 uniform8.64%11.51%9.87%
Stage-4 guided12.66%14.73%13.62%
CHECKPOINT 14 · HISTORICAL

Guarded lane-family geometry

Superseded
Does
  • Preserves independent Stage-7 fitting as a baseline.
  • Tests translated anchor copies and a shared road shape.
  • Applies ordering, support, and physical safeguards.
Outcome
  • Independent fitting scored 17.43% held-out tolerant F1 versus 17.31% for guarded exact copies; raw claims were corrected in 14.1. Source report
Frozen geometry comparison · tolerant metric
Geometry modePrecisionRecallF1
Independent24.73%13.46%17.43%
Exact copies · guarded22.86%13.92%17.31%
Shared shape · guarded23.19%13.62%17.16%
Exact-copy input sweep · held-out tolerant F1
InputPrecisionRecallF1
Stage-6 mask22.86%13.92%17.31%
Stage-5 points24.84%14.63%18.42%
Stage-4 uniform8.78%11.94%10.12%
Stage-4 guided10.24%12.63%11.31%

The Stage-5 held-out reversal was reported but not adopted because it did not appear during development.

CHECKPOINT 14.1 · FINAL

Corrected exact-copy family

Complete
Does
  • Selects one accepted Stage-7 lane as the anchor.
  • Renders six literal lateral copies of its shape and gaps.
  • Measures raw family masks without independent-fit fallback.
Outcome
  • Held-out tolerant F1 improved from 17.43% to 21.21%; exact copying won, while independent Stage 7 stayed the safer default. Source report
Corrected raw-family comparison · tolerant metric
ModePrecisionRecallF1
Independent Stage 724.73%13.46%17.43%
Raw exact copies20.40%22.09%21.21%
Raw shared shape27.72%13.28%17.96%
Guarded family policy25.08%13.25%17.34%
Raw-exact input-route ablation
InputDevelopment F1Held-out F1Held-out strict F1
Stage-6 mask23.37%21.21%11.91%
Stage-5 points20.41%21.03%12.07%
Stage-4 uniform13.13%12.03%6.13%
Stage-4 guided15.11%13.61%6.60%