LiDAR-Based Steering Angle Prediction

A deep learning project utilizing PyTorch to predict autonomous vehicle steering angles by processing raw LiDAR sensor data from the MIT-Intel dataset.

Robotics
Python
LiDAR
Autonomous Driving
Data Science & Analytics
Deep Learning
PyTorch
ONNX

Overview

This project focuses on a fundamental task in autonomous navigation: predicting vehicle control commands based on environmental perception. By utilizing the MIT-Intel dataset, which contains synchronized odometry and laser scan information from a mobile robot, I built a deep neural network capable of predicting the steering angle solely from raw 2D LiDAR scans.

Technical Highlights

  • Sensor Data Synchronization: Developed a custom parser to handle the raw intel.log file, successfully aligning asynchronous time-series data streams (Odometry and LiDAR) to match sensor inputs with correct steering labels.
  • Data Preprocessing: Implemented a pipeline to normalize distances to a [0, 1] range and downsample LiDAR scans from 180 to 90 points, creating a computationally efficient input vector.
  • Deep Learning Architecture: Designed a RegularizedLiDARNet using PyTorch. The architecture features multiple linear layers with ReLU activation and Dropouts to prevent overfitting on the noisy sensor data.
  • Hyperparameter Optimization: Conducted a systematic grid search to determine the optimal learning rate, batch size, and dropout probability, achieving a final test loss of 2.9374.
  • Interoperability: The trained model was exported to ONNX format, ensuring cross-platform compatibility and optimized inference capabilities.

Tech Stack

  • Core: Python, NumPy
  • ML Framework: PyTorch (Training), ONNX (Inference/Export)
  • Data Science: Scikit-learn, Matplotlib
  • Dataset: MIT-Intel Mobile Robot dataset