Skip to content

Systems

Isaac Wilcove edited this page Jul 30, 2017 · 1 revision

PeopleNet

We created a neural network using Caffe and DIGITS on an Nvidia Tesla P40 and Quadro GPU on a standard Ubuntu host. We strongly recommend using 2 Days to a Demo, or 2D2AD, as shown in the below link to get started with the platform. The network is built upon DetectNet and a GoogLeNet base on the DIGITS platform using leg/person data, and can be deployed through the detectnet-camera script in the jetson-inference repository. https://github.com/dusty-nv/jetson-inference

SteerNet

We've created code for steering a robot based on solely visual recognition to train our RC Car robot. This is based off of the DIY Donkey Car steering code at this link: https://wroscoe.github.io/keras-lane-following-autopilot.html We use a basic Neural Network consisting of 3 convolutional layers and 1 Fully Connected Layer with a single linear output that correlates to steering. The image is the input. The model here is built in Keras, a platform built upon a Tensorflow backend.

Navigation and the Hamilton Problem

To run the correct SteerNet direction in the correct order, we need to make a plan before we start looking for people. Unfortunately, it has been proven that it is impossible to make an algorithm that can find a path without checking every node (in our case, pixels) individually. This makes efficiency a problem, and so we had to choose an algorithm that uses a brute force solution to check every node only once. The solution we came upon is an algorithm called recursive backtracking. Recursive backtracking is simple: keep moving until you reach a dead end. Once you do, step backwards through nodes you have already checked until you get out of the dead end and can move in a different direction, and then move in that new direction until you reach a dead end. After repeating this process, you will have reached every node in the map without reading a node twice. This ends up being efficient enough to find a path on a large-scale map in less than 10 minutes. Brute-force pathing is not required if the racecar were to be used on a building where the operator already had a pre-set path (for example, a robot specific for a certain building/buildings won't need to find paths by itself as an efficient path can be chosen by a human).

Formula1Epoch

The self-driving car trained with deep learning

Clone this wiki locally