Skip to content
An autonomous RC car
Branch: master
Clone or download
Latest commit dfa9520 Mar 21, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Data_processing
.gitignore
92_model_bigrace_opti_final.h5 final_model Nov 25, 2018
93_model_bigrace_original_5.h5 Signed-off-by: eparisot <parisot.eric.mail@gmail.com> Oct 3, 2018
IMG_20180210_150832.jpg Add files via upload Jul 18, 2018
IMG_20181124_202851.jpg
IMG_20181124_202857.jpg
README.md Update README.md Mar 21, 2019
const.py
head_test.py chackpoint Nov 13, 2018
model_bigrace_obstacle_5.h5 model obstacle Nov 13, 2018
model_bigrace_opti_final.h5 final Nov 24, 2018
model_lille_3.h5 lille Mar 16, 2019
patateScript3_threaded.py
patateScript5_threaded.py
pivideostream.py
requirements.txt Signed-off-by: Klhnikov Riton <parisot.eric.mail@gmail.com> Sep 19, 2018
test.png

README.md

Patate42

An autonomous RC car to compete the IronCar Challenge...

Patate42 won the first (and third) french IronCar race edition !!!

UPDATE !!

Patate42 won the IRONCAR Final 2018 !

Watch the video

Hardware Config :

* Tamyia TT-02 4WD RC car + larger wheels
* RaspberryPi 3B + battery pack (we use a Kuman)
* Rpi camera (depends on your taste)
* Adafruit PWM Hat
* Jumper cables, ...

Dataset :

https://drive.google.com/drive/folders/1RkS-dGwbgnpD9yIdXqCuHKk6IJnPAIvv?usp=sharing

Installation :

on Raspberry :

git clone https://github.com/EParisot/Patate.git
cd Patate
pip install -r requirement.txt

To use a Xbox gamepad :

sudo apt-get install xboxdrv

on Computer :

git clone https://github.com/EParisot/Patate.git
cd Patate/Data_processing/Training
pip install -r requirement.txt

Usage :

Collect Data (manual drive + take images/labels) (RPi) :

With Xbox Gamepad

cd Data_processing
sudo python Auto_datamining_pad.py 0.1

to take one picture every 0.1 sec (to just control without taking pictures, don't specify any value)

If you don't have Xbox Gamepad, you can use the computer keyboard (opencv needed, to install opencv on your RPi : https://www.pyimagesearch.com/2016/04/18/install-guide-raspberry-pi-3-raspbian-jessie-opencv-3/)

cd Data_processing
python Auto_datamining_key.py 0.1

Or you can use the built-in car controler and labelise by hand later: (opencv needed)

cd Data_processing
python Manual_datamining.py

Data Augmentation / Balancing (computer):

All pictures goes to Patate/Pics/Auto or Patate/Pics/Manual (create folder(s) if needed)

Augmentation scrits can be found in Patate/Data_processing/Augmentation

usages:

python 5to3.py [folder]		-> turn 2speeds/5directions labels into 2speeds/3directions
python b_w.py [folder]		-> turn all pictures black and white
python rename.py [folder]	-> rename pictures direction label with the folders name (ex: rename '0_4_4565432345.jpg' to '0_0_4565432345.jpg' in '/0' folder)
python tags.py [folder]		-> retag discrete to categorical labels
python reverse.py [folder]	-> apply a mirror effect on pics by value (comment/uncomment) and rename to opposite value (and add a 'r' in filename)

Train model (Computer) :

cd Patate/Data_processing/Training
jupyter notebook

AutoPilot (RPi) :

cd Patate
python patateScript5_threaded.py [myModel.h5]

Rpi CLI / Desktop

sudo raspi-config

-> boot option -> Desktop / CLI = Destop autologin

You can’t perform that action at this time.