Papers › End to End Learning for Self-Driving Cars

End to End Learning for Self-Driving Cars

25 Apr 2016arXiv:1604.07316archive 2025-07-28

Mariusz Bojarski, Davide Del Testa, Daniel Dworakowski, Bernhard Firner, Beat Flepp, Prasoon Goyal, Lawrence D. Jackel, Mathew Monfort, Urs Muller, Jiakai Zhang, Xin Zhang, Jake Zhao, Karol Zieba

We trained a convolutional neural network (CNN) to map raw pixels from a single front-facing camera directly to steering commands. This end-to-end approach proved surprisingly powerful. With minimum training data from humans the system learns to drive in traffic on local roads with or without lane markings and on highways. It also operates in areas with unclear visual guidance such as in parking lots and on unpaved roads. The system automatically learns internal representations of the necessary processing steps such as detecting useful road features with only the human steering angle as the training signal. We never explicitly trained it to detect, for example, the outline of roads. Compared to explicit decomposition of the problem, such as lane marking detection, path planning, and control, our end-to-end system optimizes all processing steps simultaneously. We argue that this will eventually lead to better performance and smaller systems. Better performance will result because the internal components self-optimize to maximize overall system performance, instead of optimizing human-selected intermediate criteria, e.g., lane detection. Such criteria understandably are selected for ease of human interpretation which doesn't automatically guarantee maximum system performance. Smaller networks are possible because the system learns to solve the problem with the minimal number of processing steps. We used an NVIDIA DevBox and Torch 7 for training and an NVIDIA DRIVE(TM) PX self-driving car computer also running Torch 7 for determining where to drive. The system operates at 30 frames per second (FPS).

PaperPDFCodeCode Syntology ran

In Syntology View this paper on Syntology: its repositories, every harvested function with whether it ran, its licence and the call to fetch it.

Open this paper in Syntology's Atlas, the map of the papers in Syntology's graph and their citations.

For agents, Syntology's MCP tool lists every function and class Syntology harvested from this paper and whether it ran (how to connect): get_harvested_code_for_paper(arxiv_id="1604.07316")

Code

Syntology Ran 9 of 41 code samples harvested from 21 repositories linked to this paper; 32 have no recorded run. Of those that ran: 2 ran · violated contract; 4 ran · our draft was wrong; 3 ran · fixture could not drive it.

By repository: community (archive-listed): 41 samples from 21 repositories, 9 ran. The run record, sample by sample. “Ran” means executed on a synthesized input, not that the code is correct or reproduces the paper.

113 repositories listed; official and paper-mentioned ones first.

Abhaya1998/Self-Driving-Car mentioned on GitHubtf report
AeroZealous4/Self_Driving_Car_CNN mentioned on GitHubpytorch report
Ashafix/NeuroMario mentioned on GitHubtf report
Dekki-Aero/Self-Driving-Car mentioned on GitHubtf report
ElSchuer/e2e_lane_keeping mentioned on GitHub report
FabrizioPuzzo/End-to-End-Learning mentioned on GitHubMIT report
GK4444/Self-Driving-Car mentioned on GitHubtf report
Git10Shikhar/Self-Driving-Cars mentioned on GitHubtf report
Hp990/Self-driving-car mentioned on GitHubMIT report
JdeRobot/DL-Studio mentioned on GitHubpytorch report
JdeRobot/DeepLearningStudio mentioned on GitHubpytorch report
M155K4R4/autopilot mentioned on GitHubtfMIT report
Mehul27/Self-Driving-Car mentioned on GitHub report
MisterTarock/Ultracar mentioned on GitHubtf report
Mohamed-ElhajAbdou/Self-driving-car mentioned on GitHubtfMIT report
Mrjaggu/Self_driving_car mentioned on GitHubtfMIT report
Naveenking006/AutoPilot mentioned on GitHubtf report
Nilanjan96/Self-Driving-Car mentioned on GitHub report
Noep1997/self-driving-car mentioned on GitHubtf report
PankajKarki/Self-Driving-Car mentioned on GitHubtf report
SullyChen/Autopilot-TensorFlow mentioned on GitHubtfMIT report
Vermankayak/Self-Driving-Car mentioned on GitHubtfMIT report
Zhenye-Na/self-driving-vehicles-sim-with-ml mentioned on GitHubpytorchMIT report
akshaybahadur21/Autopilot mentioned on GitHubtfMIT report
anasbadawy/Steering-Prediction-CNN mentioned on GitHubApache-2.0 report
aravindmanoharan/Self-Driving-Car-V1 mentioned on GitHubtfMIT report
aravindmanoharan/Self-Driving-Car-V2 mentioned on GitHubtfMIT report
as1067/PiCar mentioned on GitHubtfGPL-2.0 report
ashutosh1997/Self_Driving_Car mentioned on GitHubtf report
atlas604/behavioral-cloning mentioned on GitHub report
clarky104/carla_aebs mentioned on GitHubpytorchApache-2.0 report
cyanamous/Self-Driving-Car- mentioned on GitHubtfMIT report
dawn360/Behavioral-Cloning-P3 mentioned on GitHubMIT report
drtupe/Behavioral_Cloning mentioned on GitHubtfMIT report
ethanmclark1/carla_aebs mentioned on GitHubpytorchApache-2.0 report
gdineshk6174/self-driving-car mentioned on GitHubtf report
gitliber/Basic_self_driving_car mentioned on GitHubtfMIT report
govardhanharish/selfDriving mentioned on GitHubtf report
greerviau/GlorifiedCruiseControl mentioned on GitHubtfMIT report
heechul/picar mentioned on GitHubtfGPL-2.0 report
huangchaoxing/8536-project mentioned on GitHubpytorch report
iPhoring/BehavioralCloning mentioned on GitHub report
jaganadhg/tf2x_eval mentioned on GitHubtfApache-2.0 report
jm12138/car-behavioral-cloning-paddle mentioned on GitHubpaddleApache-2.0 report
kodluyoruz-ML-bootcamp-1/BSSA mentioned on GitHubtf report
koolhussain/Self-Driving-Car mentioned on GitHubtf report
lh-wang/ACC mentioned on GitHubtf report
littlemountainman/selfdrive mentioned on GitHubtf report
madhuridhangar/Self_Driving_Car mentioned on GitHubtf report
manish-vi/Autopilot-Tensoflow mentioned on GitHubtf report
mankadronit/SelfDrivingCar mentioned on GitHubtfnot reachable when probed 2026-09-18 — repositories for recent papers often appear after camera-ready report
manuTRON/self-driving-car mentioned on GitHubtfMIT report
marsauto/europilot mentioned on GitHubtfMIT report
mbechtel2/DeepPicar-v2 mentioned on GitHubtfGPL-2.0 report
mgei/sdcar mentioned on GitHubGPL-3.0 report
nandaswayam/Self-Driving-car mentioned on GitHubtf report
navoshta/behavioral-cloning mentioned on GitHubtfApache-2.0 report
nerdimite/behavioral-cloning mentioned on GitHubpytorch report
nishantml/Self-Driving-Car mentioned on GitHubtfMIT report
pkoripalli/Self-Driving-Car mentioned on GitHubtf report
pratibhaareddy/selfdrivingcar mentioned on GitHubtf report
preetam1997/Self-Driven-Car mentioned on GitHubtf report
rafa2000/Top-TensorFlow mentioned on GitHubtfMIT report
rahul263-stack/Self-Driving-Car mentioned on GitHubtf report
sem6-nu/AI-PROJECT mentioned on GitHubtf report
shunchan0677/deepware mentioned on GitHubtfMIT report
theneuralbeing/behavioral-cloning mentioned on GitHubpytorch report
woosoojin/final mentioned on GitHubtfGPL-2.0 report
zhenye-na/e2e-learning-self-driving-cars mentioned on GitHubpytorchMIT report

Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.

Code Syntology ran Syntology

41 samples harvested; 9 ran; 0 honoured the contract we drafted; 32 have no recorded run. Read from Syntology's graph 2026-09-25; that is when this build read the record, not when the samples ran.

2ran · violated contract
4ran · our draft was wrong
3ran · fixture could not drive it
32unverified

Licence: 9 of the 41 samples are pointer only, meaning Syntology does not serve that copy's text. This page shows no code text for any sample; each one links to its file in the repository.

Harvested from 21 repositories linked to this paper, official or community; each sample names its own and says which. “Ran” means the sample executed on a synthesized input. It does not mean the output is correct, and nothing here reproduces the paper's results. “Honoured” and “violated” refer to a contract Syntology drafted from the code itself; “our draft was wrong” and “fixture could not drive it” are failures of Syntology's instrument, not of the code.

Each sample ends with its code_sha256, Syntology's identity for that exact code. An agent fetches the stored sample with Syntology's MCP tool get_code(code_sha256="…") (how to connect); click an identity to copy that call.

Repository labels, per sample. official repository: The archive marks this repository official for the paper. named in the paper: The archive records that the paper mentions this repository; it is not marked official. community (archive-listed): In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper. found in paper text by Syntology: Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted. community: Not in the archive's code links for this paper; a community repository Syntology harvested. Samples from a repository marked official are listed first. Licence labels name the repository's licence as recorded at harvest. “Pointer only” means Syntology does not serve that copy's text, for one of four reasons: no licence file was found; the licence was not identified; the licence is recorded as permissive but that copy's record is not marked cleared; or the licence is outside the permissive list Syntology serves text under (MIT, Apache-2.0, BSD and similar). Some licences outside that list permit redistribution, such as WTFPL, and GPL-3.0 under its conditions; they are simply not on the list. Hover a licence label for the reason. File links open the file on GitHub at the default branch, which may have changed since the harvest.

atan_layer_shape AhmadWaly/Endtoend-learning-for-self-driving-cars/model.py community (archive-listed) ran · violated contract fingerprinted no licence file found · pointer only · beaf0e6f77128166 · report
augmentData ashutoshkumar19/Self_Driving_Car/Version_1/TrainModel.py community (archive-listed) ran · fixture could not drive it fingerprinted no licence file found · pointer only · 2e6fe67a4824a13c · report
bias_variable HarshaVardhanVanama/Autopilot-Steering-Control/model.py community (archive-listed) ran · our draft was wrong MIT (permissive) · 5d78e1f7a1afb766 · report
crop milsun/AI-Driver-CNN-DeepLearning-PyTorch/drive.py community (archive-listed) ran · fixture could not drive it fingerprinted no licence file found · pointer only · 40b4d4844a4401d7 · report
crop_image aditbiswas1/P3-behavioral-cloning/drive.py community (archive-listed) ran · our draft was wrong no licence file found · pointer only · 7e827bbc77666d2d · report
load_data koolhussain/Self-Driving-Car/model.py community (archive-listed) ran · our draft was wrong no licence file found · pointer only · 8773998315a878a0 · report
load_data kodluyoruz-ML-bootcamp-1/BSSA/model.py community (archive-listed) ran · our draft was wrong no licence file found · pointer only · dac6e010a84be37a · report
normalize kaycee-agent/End-to-End-Self-Driving-via-CNN/self_driving.py community (archive-listed) ran · fixture could not drive it fingerprinted no licence file found · pointer only · be16515895537798 · report
s2b kodluyoruz-ML-bootcamp-1/BSSA/model.py community (archive-listed) ran · violated contract no licence file found · pointer only · 3cc11af621bf4fdf · report
LoadTrainBatch HarshaVardhanVanama/Autopilot-Steering-Control/driving_data.py community (archive-listed) unverified MIT (permissive) · fb2c05a4b230783a · report
LoadTrainBatch SullyChen/Autopilot-TensorFlow/driving_data.py community (archive-listed) unverified MIT (permissive) · 50fb64330c7cfa97 · report
LoadValBatch HarshaVardhanVanama/Autopilot-Steering-Control/driving_data.py community (archive-listed) unverified MIT (permissive) · be1a41ace6daae2d · report
LoadValBatch SullyChen/Autopilot-TensorFlow/driving_data.py community (archive-listed) unverified MIT (permissive) · fd1e225bec959bc0 · report
add_salt_pepper_noise kirilcvetkov92/Self-Driving-Car-Behavior-Deep-Learning/utils.py community (archive-listed) unverified MIT (permissive) · 55499fe64c859590 · report
augment Zhenye-Na/self-driving-vehicles-sim-with-ml/src/RcCarDataset.py community (archive-listed) unverified MIT (permissive) · 051b7206bccec72e · report
bias_variable SullyChen/Autopilot-TensorFlow/model.py community (archive-listed) unverified MIT (permissive) · 993d22ff0d2b0b3d · report
corrSteeringAngle FabrizioPuzzo/CarND-Behavioral-Cloning-P4/model.py community (archive-listed) unverified MIT (permissive) · f865b97a27ceaca6 · report
crop jaganadhg/tf2x_eval/src/preprocess.py community (archive-listed) unverified Apache-2.0 (permissive) · 8ee4683fd264a4f5 · report
flip_image kirilcvetkov92/Self-Driving-Car-Behavior-Deep-Learning/utils.py community (archive-listed) unverified MIT (permissive) · 2e55a9f2aa760ba5 · report
getLinesFromDrivingLogs FabrizioPuzzo/CarND-Behavioral-Cloning-P4/model.py community (archive-listed) unverified MIT (permissive) · bbbef8afaefb2b00 · report
get_image_path kirilcvetkov92/Self-Driving-Car-Behavior-Deep-Learning/utils.py community (archive-listed) unverified MIT (permissive) · 132dbb6a991d344c · report
keras_model M155K4R4/autopilot/Autopilot_V2/Train_pilot_V2.py community (archive-listed) unverified MIT (permissive) · 3c2e04da72d7ad81 · report
keras_model akshaybahadur21/Autopilot/Autopilot_V2/Train_pilot_V2.py community (archive-listed) unverified MIT (permissive) · 616cce9a3b983e6e · report
keras_process_image M155K4R4/autopilot/Autopilot_V2/AutopilotApp_V2.py community (archive-listed) unverified MIT (permissive) · 51f056d5c91d6ff0 · report
keras_process_image M155K4R4/autopilot/DriveApp.py community (archive-listed) unverified MIT (permissive) · 8decfcfe2fe9b77e · report
load_data Zhenye-Na/self-driving-vehicles-sim-with-ml/src/utils.py community (archive-listed) unverified MIT (permissive) · 846e601c438d4e0e · report
load_image jaganadhg/tf2x_eval/src/preprocess.py community (archive-listed) unverified Apache-2.0 (permissive) · 9d511f7658db9f74 · report
load_image jm12138/car-behavioral-cloning-paddle/car/utils.py community (archive-listed) unverified Apache-2.0 (permissive) · b982f37276160f7e · report
preprocess ugururesin/Udacity-CarND-Behavioral-Cloning/model.py community (archive-listed) unverified no licence file found · pointer only · 56fb80160fd14de8 · report
preprocess M155K4R4/autopilot/Autopilot_V2/LoadData_V2.py community (archive-listed) unverified MIT (permissive) · b1e217ac94ad316e · report
preprocess M155K4R4/autopilot/LoadData.py community (archive-listed) unverified MIT (permissive) · acb5ef62667663ff · report
preprocess anasbadawy/Steering-Prediction-CNN/dataPreprocessing.py community (archive-listed) unverified Apache-2.0 (permissive) · 2d9b24ef0b26085c · report
preprocess drtupe/Behavioral_Cloning/finalPipline.py community (archive-listed) unverified MIT (permissive) · 9f03184dfeb34b29 · report
preprocess navoshta/behavioral-cloning/data.py community (archive-listed) unverified Apache-2.0 (permissive) · c56bc195493f19cd · report
resize jaganadhg/tf2x_eval/src/preprocess.py community (archive-listed) unverified Apache-2.0 (permissive) · 7d435baa52bf195d · report
resize jm12138/car-behavioral-cloning-paddle/car/utils.py community (archive-listed) unverified Apache-2.0 (permissive) · 732028197e9c0404 · report
sortImages FabrizioPuzzo/CarND-Behavioral-Cloning-P4/model.py community (archive-listed) unverified MIT (permissive) · 8421101e2bfcb508 · report
toDevice Zhenye-Na/self-driving-vehicles-sim-with-ml/src/utils.py community (archive-listed) unverified MIT (permissive) · e1e0d9441a6d3abe · report
weight_variable HarshaVardhanVanama/Autopilot-Steering-Control/model.py community (archive-listed) unverified MIT (permissive) · cb07eb141f5648be · report
weight_variable Mohamed-ElhajAbdou/Self-driving-car/model.py community (archive-listed) unverified MIT (permissive) · ac237542eee6cf2f · report
weight_variable SullyChen/Autopilot-TensorFlow/model.py community (archive-listed) unverified MIT (permissive) · d5ef859d6dcd9a83 · report

Tasks

Lane DetectionSelf-Driving Cars

Results from the paper archive 2025-07-28

No leaderboard rows for this paper in the archive.

Methods

3D Convolution

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections