Hello everyone, welcome to Jrobot Self Drive, episode 3 of the Jrobot series.
Changed from the previous 2 episodes where we used Jcontrol to drive the Jrobot remotely, this time we got rid of Jcontrol and let Jrobot to do self drive.
Jrobot Self Drive is another self-driving experiment based on machine learning. It is not a simulator, it is not a road vehicle, it is a footpath traveler.
We built Nvidia CNN self drive model using Keras, collected training data, trained the model, and converted the trained model to TensorFlow Lite.
TensorFlow Lite allows us to do inference on-board a mobile device and is the key part of this project.
We added TensorFlow Lite to Jrobot Android app. When running, TensorFlow Lite is able to load the trained model, take a camera image as input and give a steering angle as output. Jrobot app runs on an Android phone (Xiaomi Mi5) sitting in the phone box on Jrobot car, and control the movement of the Jrobot car through Bluetooth connection with Arduino on the car.
We did road test in two places in the neighborhood and the tests show the trained model works well.
Even though it is not full self drive, it makes human control so much easier, and opens up so many new options, which means there is so much more to do...