Giter Club home page Giter Club logo

chauffeurnet's Introduction

ChauffeurNet

Trying to implement (at least 10% hopefully, I just want the car to drive like 10 meters without crashing ๐Ÿ˜Ÿ ) ChauffeurNet : Learning to Drive by Imitating the Best and Synthesizing the Worst.

Development will be divided in the following steps:

  1. Provide data generation tools:
  • Add Carla as depenency. This will provide accurate rendered data.

  • Created my own simulator as I found carla to be too hard to use. This way I think I am more flexible as redering is done at train time based on recorded driving session.
  • Provide preprocessing scripts for data and transform them into the required format for the network.
  1. Implement some parts of the neural network:
  • Implement steering in order to keep the center of the lane (Given predicted waypoints, compute the required turn angle to reach the waypoint, next is to compute the required speed)
  • Implement path following
  • Implement speed control
  • Implement road mask layer
  • Implement agent box output layer
  • Implement waypoint layer
  • Implement waypoint offset regression layer
  • Add other agents to input
  • Implement perception box output
  1. Iterate from step 1 while adding more complexity

v 0.1 demo:

Basically, it is USELESS because the network only learned to predict waypoints along the desired path. Given a waypoint the car computes the desired angle to reach that waypoint. No speed control is involved. Thus, I could just give to the car a point from the desired path.

The utility of predicted waypoints (of a complete implementation of ChauffeurNet) is that it takes into account other agents actions and driving rules, where hand crafted driving models would become too complex.

v 0.1.1

The net was trained to stop at every intersection. Thus, I added the speed control based on distance from car to waypoint.

v 0.2

Added traffic-lights to environment. Still need to update rendering properly of the traffic lights. Also, a traffic light is active (coloured, not black) when the car is near the traffic light. Modified the speed control. Added offset regression for fine-grained prediction of waypoints.

How to run with pretrained model (will automatically download model from drive):

#For linux: sudo apt-get install python3-tk 
pip3 install <torch config ex: https://download.pytorch.org/whl/cpu/torch-1.0.0-cp36-cp36m-linux_x86_64.whl>
pip3 install -r requirements.txt
python3 main.py

chauffeurnet's People

Contributors

iftimie avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.