3 min readfrom Machine Learning

Automotive Radar Object Classification [P]

Our take

This project demonstrates a focused exploration of automotive radar object classification, achieving a significant macro F1 score improvement – from 0.381 to 0.764 – with increasing radar detections per instance. A 3-layer MLP, trained on per-scan histograms of radar point clouds, effectively distinguishes between cars, large vehicles, two-wheelers, pedestrians, and pedestrian groups. Key findings highlight the impact of data imbalance and sequence bias, alongside the challenges in accurately classifying stationary two-wheelers.
Automotive Radar Object Classification [P]

The recent work from Bruno Pinto on automotive radar object classification, detailed in his RadarScenes project, offers a fascinating glimpse into the practical challenges and surprising nuances of applying machine learning to this critical domain. Pinto’s use of a simple 3-layer MLP to classify radar point clouds into five categories – car, large vehicle, two-wheeler, pedestrian, and pedestrian group – demonstrates the potential of even relatively straightforward architectures when tackling specific problems. This echoes the findings in "Swiggy Uses 350+ Features and Multi-Task MLP to Predict Customer Lifetime Value," where a complex model utilizing numerous features also yielded valuable insights, highlighting the importance of feature engineering alongside model complexity. It's a reminder that impactful solutions aren't always the most elaborate; often, a focused approach, as Pinto’s demonstrates, can yield surprisingly robust results. The project’s focus on a single scan provides a valuable baseline, and his acknowledgement of the next step – accumulating multiple scans – is a crucial one, reflecting a pragmatic understanding of real-world radar data.

Pinto’s ablation studies, revealing that split sensitivity outweighed the impact of architectural or feature engineering changes, are particularly insightful. This underscores the importance of robust data splitting and validation strategies, especially in scenarios where data imbalance and sequence bias are present. The observed macro F1 improvement with increasing radar detections per instance – rising from 0.381 to 0.764 as detections increase from 1 to 5 – is a key takeaway. It suggests that simply gathering more data, within reason, can significantly improve classification accuracy. This also aligns with the broader theme of iterative improvement discussed in "Rigorous Yet Sustainable Human Reviews in the AI Era," where consistent evaluation and refinement are essential for achieving high-quality results. The detailed analysis of classification errors, particularly the confusion between two-wheelers and pedestrians due to overlapping velocity distributions, is a valuable contribution. It highlights the need for more sophisticated feature engineering, perhaps incorporating micro-doppler analysis as Pinto suggests, to better differentiate these classes.

The limitations exposed by this work are as valuable as the successes. The challenge of distinguishing stationary or idling two-wheelers from pedestrians, solely based on radar data, is a fundamental one. It points to the inherent difficulty of relying solely on velocity as a differentiating factor, especially in dense urban environments. The tendency to misclassify cars as large vehicles when encountering wider-than-usual vehicles or unusual radar cross-sections (RCS) further emphasizes the need for models that are robust to variations in object appearance and environmental conditions. Pinto’s decision to forgo per-instance statistics in favor of histograms, while initially appearing counterintuitive, ultimately reinforced the value of the histogram approach, demonstrating the importance of careful experimentation and validation. The project’s open-source nature and detailed writeup on GitHub further contribute to its value, providing a clear and reproducible foundation for future research in this area.

Looking ahead, the integration of more advanced spatial encoding schemas, such as PointNet, and the exploration of micro-doppler effects hold significant promise for improving the accuracy and robustness of automotive radar object classification. The challenge lies in effectively incorporating these techniques while maintaining computational efficiency, a crucial requirement for real-time autonomous driving applications. Will the development of more nuanced radar signal processing techniques, combined with sophisticated machine learning models, eventually allow for the reliable differentiation of even the most subtle object characteristics, enabling truly autonomous navigation in complex environments? The progress demonstrated by Pinto’s work suggests that we are moving steadily closer to that goal.

Automotive Radar Object Classification [P]

Hello all,

I'm a radar signal processing engineer and i trained a 5-class classifier (car, large_vehicle, two_wheeler, pedestrian, pedestrian_group) on RadarScenes radar point clouds.

The input vector is a per-scan histogram (16 bins) and the network is a 3-layer MLP. The loss function is a class-weighted cross-entropy loss. This work is based on "Histogram-based Deep Learning for Automotive Radar" paper.

I scoped the project to be one scan only. Accumulation of multiple scans is the next step.

Data

Class Imbalance: two-wheelers and large_vehicles has a low number of occurences.

Aggregated Classes: two_wheeler mixes bicycles and motorized variants; large_vehicle merges trucks, buses, and trains together due to data scarcity.

Sequence Bias: Long tracks of slow-moving objects can skew a particular data split velocity distribution, causing high F1 score variance across folds.

Ablation studies

I tried with bigger MLPs, alternative feature encodings, and different histogram binning, all moved performance less than the variation caused by changing the train/validation/test split. I measured that split sensitivity across 6 folds, keeping the same proportions.

Changing the histogram to per-instance statistics (mean/median/std) slightly degraded performance.

Main findings

Macro F1 rises from 0.381 to 0.764 as the naturally occurring number of radar detections per instance increases from 1 to 5. I trained the model normally using all available detections, then bucketed its existing validation predictions by each instance's detection count and computed macro F1 per bucket.

The classes car and pedestrian has the best performance and two_wheeler has the worst.

A car is often confused as large vehicle when the car was wider than usual or had a unusually high rcs (which can happen due to multipath for example).

The two_wheeler is often confused as pedestrian because their vr_compensated distributions overlap, which is the the model's single most important feature for these two classes. A stationary or idling two_wheeler is indistinguishable from a pedestrian.

I uploaded an image with ground truth vs predictions: A nearly stationary two-wheeler which contains a single point was predicted as pedestrian, because its velocity is near zero, indistinguishable from a pedestrian. A car in the same scene, also with just one point, is classified correctly, since RCS and Doppler are enough for that class.

Full writeup here: https://github.com/brunopinto900/radar-ml-autonomous-driving/blob/main/MLP_Report.md

Future work

Implement other spatial encoding schemas (point net for example) and accumulate multiple scans to tackle the challenge of sparsity and explore the concept of micro-doppler.

submitted by /u/bruno_pinto90
[link] [comments]

Read on the original site

Open the publisher's page for the full experience

View original article