F1-Tenth Autonomous System
An autonomous system for F1-Tenth car lane-following
Overview
In this project, I led a team of 3 to develop an autonomous driving system for an F1-Tenth car, focusing on creating a reliable perception and control pipeline for safe navigation under various conditions.
- Lane Detection System: Designed a window-based lane detection algorithm using a D435 depth camera and image filters, making the system robust to diverse lighting conditions and capable of accurately identifying lane boundaries in real time.
- Pure-Pursuit Controller Integration: Implemented and optimized a pure-pursuit controller using ROS on a Jetson Nano, achieving consistent lane following with an average lane deviation under 5 cm, ensuring precise control and stability during high-speed maneuvers.
- Dynamic Obstacle Avoidance: Validated and modified an obstacle avoidance algorithm that detects and reacts to dynamic objects within the environment. This system was integrated with a histogram of oriented gradients (HOG) feature-based human detector and LiDAR readings.
Details can be found at the project repo.
An example showing how the perception system works with a window-based approach.
Skills Used
- Robotics: ROS, Pure-pursuit controller, Sampling-based motion planning, Jetson Nano developing framework
- Computer Vision: OpenCV, HOG features, Image filtering, LiDAR processing
- Programming: Python, C++
Acknowledgement
Special thanks to all the ECE 484 course staff in Spring 2024 for valuable guidance.