Zurück zum Ranking

ndrplz/self-driving-car

C++

Udacity Self-Driving Car Engineer Nanodegree projects.

self-driving-carudacity-self-driving-cardeep-learningdeep-neural-networkskalman-filterlecture-materialparticle-filterlane-findingcomputer-visionvehicle-detectionconvolutional-neural-networksdetect-lane-lines
Sterne-Wachstum
Sterne
2.9k
Forks
1.4k
Wochenwachstum
Issues
10
1k2k
Feb. 2017März 2020Mai 2023Juli 2026
README

self-driving-car

In this repository I will share the source code of all the projects of Udacity Self-Driving Car Engineer Nanodegree.

Hope this might be useful to someone! :-)

Overview

Projects

Overview
P1: Basic Lane Finding
(code)

Overview
P2: Traffic Signs
(code)

Overview
P3: Behavioral Cloning
(code)

Overview
P4: Adv. Lane Finding
(code)

Overview
P5: Vehicle Detection
(code)

Overview
P6: Ext. Kalman Filter
(code)

Overview
P7: Unsc. Kalman Filter
(code)

Overview
P8: Kidnapped Vehicle
(code)

Overview
P9: PID Controller
(code)

Overview
P10: MPC Controller
(code)

Overview
P11: Path Planning
(code)

Overview
P12: Road Segmentation
(code)

Capstone


Table of Contents

P1 - Detecting Lane Lines (basic)

  • Summary: Detected highway lane lines on a video stream. Used OpencV image analysis techniques to identify lines, including Hough Transforms and Canny edge detection.
  • Keywords: Computer Vision

P2 - Traffic Sign Classification

  • Summary: Built and trained a deep neural network to classify traffic signs, using TensorFlow. Experimented with different network architectures. Performed image pre-processing and validation to guard against overfitting.
  • Keywords: Deep Learning, TensorFlow, Computer Vision

P3 - Behavioral Cloning

  • Summary: Built and trained a convolutional neural network for end-to-end driving in a simulator, using TensorFlow and Keras. Used optimization techniques such as regularization and dropout to generalize the network for driving on multiple tracks.
  • Keywords: Deep Learning, Keras, Convolutional Neural Networks

P4 - Advanced Lane Finding

  • Summary: Built an advanced lane-finding algorithm using distortion correction, image rectification, color transforms, and gradient thresholding. Identified lane curvature and vehicle displacement. Overcame environmental challenges such as shadows and pavement changes.
  • Keywords: Computer Vision, OpenCV

P5 - Vehicle Detection and Tracking

  • Summary: Created a vehicle detection and tracking pipeline with OpenCV, histogram of oriented gradients (HOG), and support vector machines (SVM). Implemented the same pipeline using a deep network to perform detection. Optimized and evaluated the model on video data from a automotive camera taken during highway driving.
  • Keywords: Computer Vision, Deep Learning, OpenCV

P6 - Extended Kalman Filter

  • Summary: Implement the extended Kalman filter in C++. Simulated lidar and radar measurements are used to detect a bicycle that travels around your vehicle. Kalman filter, lidar measurements and radar measurements are used to track the bicycle's position and velocity.
  • Keywords: C++, Kalman Filter

P7 - Unscented Kalman Filter

  • Summary: Utilize an Unscented Kalman Filter to estimate the state of a moving object of interest with noisy lidar and radar measurements. Kalman filter, lidar measurements and radar measurements are used to track the bicycle's position and velocity.
  • Keywords: C++, Kalman Filter

P8 - Kidnapped Vehicle

  • Summary: Your robot has been kidnapped and transported to a new location! Luckily it has a map of this location, a (noisy) GPS estimate of its initial location, and lots of (noisy) sensor and control data. In this project you will implement a 2 dimensional particle filter in C++. Your particle filter will be given a map and some initial localization information (analogous to what a GPS would provide). At each time step your filter will also get observation and control data.
  • Keywords: C++, Particle Filter

P9 - PID Control

  • Summary: Implement a PID controller for keeping the car on track by appropriately adjusting the steering angle.
  • Keywords: C++, PID Controller

P10 - MPC Control

  • Summary: Implement an MPC controller for keeping the car on track by appropriately adjusting the steering angle. Differently from previously implemented PID controller, MPC controller has the ability to anticipate future events and can take control actions accordingly. Indeed, future time steps are taking into account while optimizing current time slot.
  • Keywords: C++, MPC Controller

P11 - Path Planning

  • Summary: The goal in this project is to build a path planner that is able to create smooth, safe trajectories for the car to follow. The highway track has other vehicles, all going different speeds, but approximately obeying the 50 MPH speed limit. The car transmits its location, along with its sensor fusion data, which estimates the location of all the vehicles on the same side of the road.
  • Keywords: C++, Path Planning

P12 - Road Segmentation

  • Summary: Implement the road segmentation using a fully-convolutional network.
  • Keywords: Python, TensorFlow, Semantic Segmentation

Ähnliche Repositories
ApolloAuto/apollo

An open autonomous driving platform

C++Apache License 2.0apolloautonomous-vehicles
26.7k10k
microsoft/AirSim

Open source simulator for autonomous vehicles built on Unreal Engine / Unity, from Microsoft AI & Research

C++Otherdronesai
microsoft.github.io/AirSim/
18.3k4.9k
carla-simulator/carla

Open-source simulator for autonomous driving research.

C++MIT Licensesimulatorautonomous-vehicles
carla.org
14.2k4.6k
janhuenermann/neurojs

A JavaScript deep learning and reinforcement learning library.

JavaScriptnpmMIT Licensedeep-learningself-driving-car
janhuenermann.com/projects/learning-to-drive
4.4k362
Ly0n/awesome-robotic-tooling

Tooling for professional robotic development in C++ and Python with a touch of ROS, autonomous driving and aerospace.

Creative Commons Zero v1.0 Universalrosrobotics
3.9k547
autorope/donkeycar

Open source hardware and software platform to build a small scale self driving car.

PythonPyPIMIT Licenseself-driving-carraspberry-pi
donkeycar.com
3.5k1.4k
315386775/DeepLearing-Interview-Awesome-2024

AIGC-interview/CV-interview/LLMs-interview面试问题与答案集合仓,同时包含工作和科研过程中的新想法、新问题、新资源与新项目

aigcalgorithms
2.9k244
MaybeShewill-CV/lanenet-lane-detection

Unofficial implemention of lanenet model for real time lane detection

PythonPyPIApache License 2.0lanenetself-driving-car
2.6k900
daohu527/dig-into-apollo

Apollo notes (Apollo学习笔记) - Apollo learning notes for beginners.

MIT Licenseautonomous-drivingself-driving-car
2.5k714
lgsvl/simulator

A ROS/ROS2 Multi-robot Simulator for Autonomous Vehicles

C#Othersimulatorunity
2.5k790
microsoft/AutonomousDrivingCookbook

Scenarios, tutorials and demos for Autonomous Driving

Jupyter NotebookMIT Licensedeep-learningself-driving-car
2.4k568
HuangCongQing/pcl-learning

🔥PCL(Point Cloud Library)点云库学习记录

C++MIT Licensepclros
bilibili.com/video/BV1HS4y1y7AB
1.9k446