Raw LiDAR Point Cloud
Input points with XYZ plus intensity or reflectivity, usually converted into ego-vehicle or BEV coordinates.
A non-learning reflectance-intensity pipeline for extracting road-marking evidence from point clouds, framed as an interpretable baseline before stronger learned BEV methods are considered.
Sequential, non-trained baseline. The final geometric fitting stage can be disabled if the first implementation only needs a BEV road-marking mask.
Input points with XYZ plus intensity or reflectivity, usually converted into ego-vehicle or BEV coordinates.
Crop to near-ground, drivable, front or ego-lane regions and remove obviously irrelevant high or distant points.
Keep road-surface points and suppress vehicles, curbs, sidewalks, vegetation, and vertical clutter.
Reduce sensor, range, incidence-angle, and ring-dependent variation before thresholding lane paint.
Separate bright, high-reflectance road-marking points from darker asphalt using adaptive thresholding.
Remove isolated bright artifacts, group marking candidates, and optionally rasterize into a BEV mask.
Fit line, polynomial, spline, or clothoid-like geometry with hand-designed lane-width, continuity, and parallelism constraints.
Return a BEV road-marking mask, lane boundaries, centerlines, confidence, and optional temporal or map-stabilized tracks.
These variants are knobs inside the same rule-based pipeline, not separate end-to-end methods.
Sane first baseline: reflectivity or range-normalized intensity -> ground extraction -> adaptive Otsu thresholding -> DBSCAN / connected components cleanup -> RANSAC or polynomial fitting -> BEV output
| Reflectance channel | Ground extraction | Candidate extraction | Cleanup | Representation | Geometry and time |
|---|---|---|---|---|---|
| Raw intensity Direct LiDAR return intensity. Simple and usually available, but changes with range, incidence angle, sensor model, and calibration. |
Height filter Keep points below a simple height threshold. Fastest baseline, but brittle on slopes, ramps, banked roads, and uneven surfaces. |
Fixed threshold Mark points above one intensity or reflectivity threshold. Useful as a naive baseline, but brittle across road material, distance, sensor settings, and weather. |
Connected components Group neighboring candidate pixels or cells after BEV rasterization. Good for removing tiny isolated detections. |
Raw point candidates Keep lane evidence as 3D or ground-plane points. Preserves geometry, but is harder to clean, visualize, and benchmark. |
Hough or RANSAC lines Good for straight lane markings. RANSAC is robust to outliers, but straight-line models are weak for curves, merges, and splits. |
| Range-normalized intensity Intensity corrected by distance or range bins. Better than raw intensity because far lane markings should not automatically look less lane-like. |
RANSAC plane Fit a dominant ground plane and remove non-ground points. Reasonable on mostly flat roads, weak for complex road geometry. |
Per-ring Otsu Run Otsu thresholding separately for each LiDAR ring. Useful when lane markings are bright relative to local ring statistics. |
DBSCAN / Euclidean clustering Group nearby candidate points in point space. Useful before or alongside rasterization, but radius and minimum-point parameters matter. |
BEV raster mask Convert candidate points into a top-down image/grid. Most practical for thresholding, morphology, connected components, and benchmark-style comparison. |
Polynomial curves Better for curved lane boundaries. Yu 2020 is the useful source here because it uses cubic polynomial lane-line approximation. |
| Reflectivity A more calibrated estimate of surface reflectance, if the sensor provides it. This is closest to the mentor's requested signal. |
Region growing Start from likely road points and expand to nearby points with similar surface properties. More flexible, but parameter-sensitive. |
BEV-tile Otsu Divide the BEV grid into local tiles and threshold each tile separately. Helps with changing road background, but small tiles can be noisy. |
Morphology Image-style cleanup on a BEV mask: remove specks, close gaps, thin blobs, or smooth noisy detections. |
Skeletonized marking mask Thin the BEV mask to centerlines before geometry fitting. Can create branches around arrows, crosswalks, or broken markings. |
Splines / clothoids More flexible road-geometry models. Better for realistic road curvature in principle, but more complex to tune and easier to overfit. |
| Per-ring calibration Normalize intensity or reflectivity separately for each LiDAR laser ring because different vertical channels can respond differently. |
Patchwork++ / GroundGrid Stronger non-learning ground segmentation modules. They are preprocessing options, not full lane detectors. |
Multi-region Otsu Split the scene into larger regions and compute adaptive thresholds. Useful when one global threshold fails but full local tiling is too noisy. |
Shape filtering Reject clusters that do not look like lane markings: too large, too square, wrong orientation, inconsistent width, or not elongated enough. |
Accumulated local map Combine multiple frames using ego-motion. Helps sparse LiDAR, but bad odometry can smear lane markings. |
Scan accumulation / local map Use several frames instead of one. Improves density and stability, but adds ego-motion dependence, latency, and complexity. |
| Method | Benchmark / setting | Reported result |
|---|---|---|
| K-Lane heuristic | K-Lane result table image in local note | 26.4 total score shown for the heuristic row; attach full table caption in slides |
| K-Lane LLDN-GFC-T3 | K-Lane | 82.1 F1 score reported for learned LiDAR baseline, not allowed here |
| Certad / Yu style rules | Own test settings | No direct standardized K-Lane comparison found in current notes. |
| Use in flowchart | Main source or resource | How to treat it |
|---|---|---|
| Road plane, region growing, reflectivity Otsu, line fitting | Certad et al. 2022 | Closest skeleton for the rule-based reflectance baseline. |
| Multi-region Otsu, raster projection, clustering, polynomial fitting | Yu et al. 2020 | Useful for turning extracted markings into lane-level map geometry. |
| Public LiDAR lane benchmark and heuristic caution | K-Lane and K-Lane repo | Benchmark/devkit. Does not provide code for heuristic baseline. |
| Stronger non-learning ground segmentation | Patchwork++, GroundGrid | Preprocessing options, not full lane detectors. |
| Point-cloud filters, clustering, RANSAC, visualization | PCL, Open3D | Implementation primitives if building the baseline ourselves. |
| Full Certad/Yu-style lane detector implementation | No public implementation | Planning to implement the baseline from paper blocks and point-cloud libraries (unless a closer repo is found). |
Road-plane extraction, intensity thresholding, Otsu-style segmentation, curb geometry, clustering, and RANSAC/Hough line fitting. Core assumption: lane paint is brighter or more reflective than asphalt.
Road markings become useful not only for immediate lane detection, but also for HD-map generation and vehicle localization against stable reflective landmarks.
The field shifts from hand thresholds toward BEV tensors and neural networks. The motivation is that planners need accurate 3D or BEV lane geometry, not just image-space lane pixels.
K-Lane makes LiDAR lane detection easier to compare: 15k+ frames, urban/highway scenes, day/night, occlusion, merging/diverging lanes, and curved lanes.
Learned methods start exploiting the fact that lane evidence is sparse, thin, and long. Row-wise and correlation-based designs try to connect distant BEV evidence better than generic CNN segmentation.
Rule-based reflectivity pipelines remain relevant as cheap, interpretable baselines: road plane, region growing, adaptive Otsu thresholding, and line fitting.
Recent work pushes beyond front-view or simple BEV labels toward 360-degree LiDAR and 3D lane representations, closer to full autonomous-driving stack needs.
Practical systems increasingly combine road-marking detection with scan accumulation and HD-map registration. This is closer to autonomy use than lane detection as an isolated benchmark task.
| Company / stack type | Publicly visible direction | Implication for this baseline |
|---|---|---|
| Waymo-like L4 robotaxi stacks | Multi-sensor perception with LiDAR, cameras, radar, detailed maps, and learned perception/planning. | Rule-based LiDAR lanes are better framed as a diagnostic or redundancy baseline, not the whole lane stack. |
| Mobileye | Camera-first ADAS plus explicit redundancy framing with separate camera and radar/LiDAR subsystems. | LiDAR-only can be justified as an independent redundancy channel, but not as the only production signal. |
| Tesla | Mostly camera-only for consumer driving assistance; this is the major public outlier. | Not a good reason to ignore LiDAR for this task, but useful as evidence that sensor choices differ by product strategy. |
| Baidu / Zoox / Aurora style stacks | Generally multi-sensor, map-aware, and ODD-specific rather than pure LiDAR-only lane detection. | Use the baseline to understand LiDAR road-marking signal quality, then compare with fusion or learned BEV approaches if needed. |