MSc Mechatronic Systems Dissertation - End-to-end deep learning perception pipeline with multi-sensor fusion, deployed on Quanser QCar hardware.
End-to-end autonomous vehicle perception system developed for MSc Mechatronic Systems dissertation at Kingston University, London. The system progresses from simulation (QLabs) to real hardware deployment (Quanser QCar), demonstrating sim-to-real transfer of deep learning models.
| Metric | Simulation | Real Hardware |
|---|---|---|
| YOLOv8 Traffic Detection (mAP@0.5) | 99.50% | 92.87% |
| ENet Lane Segmentation (mIoU) | - | 93.73% |
| End-to-End Performance | 25 FPS | 18-22 FPS |
| TCP/IP Latency | — | <50ms |
| Sensor Fusion False Positives | 0 | 0 |
Sim-to-Real Gap: Quantified at 6.57% performance degradation.
Development journey: Simulation → Real Hardware → Multi-Sensor Fusion
![]() 🎬 Lane Following with YOLO Detection QLabs simulation with stop sign detection |
![]() 🎬 ⭐ Complete QLabs Track Navigation Top-down aerial view of full test environment |
![]() 🎬 Autonomous Lane Following - Lab Demo Real QCar driving in lab environment |
![]() 🎬 ⭐ ENet Lane Segmentation (QCar View) First-person view with 93.73% mIoU |
![]() 🎬 ⭐ Obstacle Detection QCar with LiDAR + RealSense fusion |
![]() 🎬 ⭐⭐ Multi-Sensor Fusion Demo LiDAR + Depth Camera + ENet (STRICT fusion) |
🎬 Click any thumbnail to watch the full video on YouTube
![]() |
![]() |
| QCar in Lab Environment | System Running Live |
![]() |
![]() |
| Quanser QCar Hardware | Test Environment |
![]() |
![]() |
| Sensor Fusion View 1 | Sensor Fusion View 2 |
![]() |
![]() |
| LIDAR 360° View | RealSense Depth Camera |
![]() |
![]() |
| ENet Trajectory (93.73% mIoU) | ENet Performance Analysis |
![]() |
![]() |
| U-Net Trajectory (93.56% mIoU) | U-Net Performance Analysis |
Result: ENet chosen for deployment — 87× parameter reduction (0.36M vs 31M) while matching U-Net accuracy (+0.17% mIoU).
![]() |
![]() |
| No Right Turn Detection | Traffic Light Detection |
![]() |
![]() |
| Stop Sign Detection | Occlusion Robustness Test |
![]() |
![]() |
| Simulation Full View | QLabs Environment |
![]() |
![]() |
| YOLO: Red Light | YOLO: Green Light |
![]() |
![]() |
| YOLO: Stop Sign | Lane Following |
![]() |
![]() |
| Waypoint Navigation | Curve Traversal |
The system uses a distributed architecture between the Quanser QCar (running on Jetson TX2) and a laptop with NVIDIA RTX 3060 GPU.
Sensors on QCar:
- CSI Camera (RGB) - Lane detection input
- Intel RealSense D435 - Depth perception
- RPLidar A2 - 360° obstacle detection
Communication: TCP/IP socket connection with <50ms latency
- 5-class custom-trained model
- Classes: Red light, Green light, Yellow light, Stop sign, No-right-turn
- 3,802 annotated training instances
- Real-time inference at 18-25 FPS
- ENet: 93.73% mIoU, 0.36M params (chosen for deployment)
- U-Net: 93.56% mIoU, 31M params (baseline)
- 87× parameter reduction while exceeding U-Net accuracy by 0.17 percentage points
- Intel RealSense D435 depth camera
- RPLidar A2 360° LiDAR
- AND-logic fusion for zero false positives
- Kalman filtering for state estimation
- Pure Pursuit trajectory tracking
- Adaptive speed control (slow zones, post-curve)
- Automatic braking on obstacle detection
- Waypoint-based navigation for complex maneuvers
- TCP/IP communication between QCar (Jetson) and laptop GPU
- <50ms end-to-end latency
- Production-ready scalable design
├── docs/ # Documentation
│ └── dissertation.pdf
│
├── simulation/ # QLabs Simulation Code
│ ├── main/
│ │ ├── final_method.py ⭐ Main file
│ │ ├── environment.py
│ │ └── qlabs_setup.py
│ ├── yolo_training/
│ ├── dataset_tools/
│ ├── utilities/
│ ├── waypoints/
│ └── models/
│
├── real_qcar/ # Real Hardware Code
│ ├── stream/
│ │ └── stream_server_enet_lidar+realsense.py ⭐ Production
│ ├── perception/
│ └── utilities/
│
├── demo/ # Videos and images
└── results/ # Performance metrics
cd simulation/main
python final_method.pyOn QCar (Jetson TX2):
cd real_qcar/stream
python stream_client_lidar.pyOn Laptop (GPU inference):
cd real_qcar/stream
python stream_server_enet_lidar+realsense.pyLanguages: Python 3.10
Deep Learning: PyTorch, YOLOv8 (Ultralytics), TensorFlow/Keras
Computer Vision: OpenCV, semantic segmentation (ENet, U-Net)
ML Engineering: Model optimization, edge deployment, multi-sensor fusion
Hardware / Deployment: NVIDIA Jetson TX2, Intel RealSense D435, RPLidar A2
Platform: Quanser QCar
- Simulation First (QLabs) - Validated algorithms in safe environment
- U-Net Lane Detection - Baseline implementation (31M parameters)
- ENet Optimization - 87x parameter reduction for embedded deployment
- LiDAR Integration - 360° obstacle detection
- RealSense Integration - Depth-based perception
- Multi-Sensor Fusion - AND-logic for zero false positives
- Real Hardware Deployment - QCar with distributed architecture
📄 Full Dissertation (120 pages)
Author: Sarath Kumar Komathukattil
Degree: MSc Mechatronic Systems
University: Kingston University, London (2025–2026)
- TensorRT inference optimization
- Quantization for faster edge inference
- Expand detection classes / retrain on larger dataset
- 🇨🇦 Location: Canada
MIT License - See LICENSE for details
⭐ If you find this project interesting, please consider starring the repository!























