Autonomous Control of a RC Car with a Convolutional Neural Network
Krasheninnikov, Dmitrii (2017)
Krasheninnikov, Dmitrii
Kaakkois-Suomen ammattikorkeakoulu
2017
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201705056549
https://urn.fi/URN:NBN:fi:amk-201705056549
Tiivistelmä
Autonomous vehicles promise large benefits for humanity, such as a significant reduction of injuries and deaths in traffic accidents, and more efficient utilization of transportation leading to reduced air pollution and vastly reduced costs. However, at the present moment the technology is still in development.
The objective of the thesis was to build a simple and reliable testbed for the evaluation of algorithms for autonomous vehicles and to implement a baseline car control algorithm. For this purpose a system that allows a remote controlled car autonomously follow a track on the floor was developed. This work used the Parrot Jumping Sumo car with a built-in camera as the experimental vehicle. A control system that allows to receive and record the images from the car and send back the control commands was implemented. The baseline car control algorithm chosen in this work was a convolutional neural network (CNN) predicting control commands from the images received in real time from the car’s camera.
CNNs are machine learning models achieving state of the art results in a variety of computer vision tasks, and have previously been applied to autonomous driving. Several simple machine learning models were introduced in this thesis, followed by construction of a CNN from these models. Afterwards, the algorithms used to train CNNs were reviewed. The CNN used in this work was trained on one hour of recorded driving data and was able to successfully control the car for over a minute without requiring an intervention by a human driver.
The objective of the thesis was to build a simple and reliable testbed for the evaluation of algorithms for autonomous vehicles and to implement a baseline car control algorithm. For this purpose a system that allows a remote controlled car autonomously follow a track on the floor was developed. This work used the Parrot Jumping Sumo car with a built-in camera as the experimental vehicle. A control system that allows to receive and record the images from the car and send back the control commands was implemented. The baseline car control algorithm chosen in this work was a convolutional neural network (CNN) predicting control commands from the images received in real time from the car’s camera.
CNNs are machine learning models achieving state of the art results in a variety of computer vision tasks, and have previously been applied to autonomous driving. Several simple machine learning models were introduced in this thesis, followed by construction of a CNN from these models. Afterwards, the algorithms used to train CNNs were reviewed. The CNN used in this work was trained on one hour of recorded driving data and was able to successfully control the car for over a minute without requiring an intervention by a human driver.