![]() ![]() This is done in two steps by processing the image coming from the camera. Image Processing: Detecting the Line To control the car along the track, we need to detect the line and anticipate turns: this allows to go at full speed in straight line and reduce speed before turning. We randomly shake the input image to test the robustness of our approach. ![]() ![]() Simulator We created a simulator using Blender and Python to test our computer vision algorithm along with our control strategy. We detail the communication between the Arduino and the Raspberry Pi in the appendix.Īfter briefly presenting the result on the simulated environment in the next section, we explain our image processing method to detect the line and describe our controller that was used to follow the line. It communicates with the Arduino that sends orders to the motors (direction and speed) using Pulse-Width Modulation (PWM ). View from the on-board camera The Building Blocks: Hardware Chassis from an old Nikko RC Car (eg. However, we must keep the line in sight and be robust to illumination changes. Finally, we will dive into the internals of the robot: how we made the car autonomous.Īpril 2018 Update: The Arduino Raspberry Pi communication is described in this article: araffinsimple-and-robust-computer-arduino-serial-communication-f91b95596788 January 2019 Update: Follow up to this project, using reinforcement learning: The Result (Please watch the entire video, there are bonuses at the end )) The Race The race consists in an autonomous time trial on a 110 meters track (120 yards) with a blackwhite line in the center.īecause of the illumination changes, that was a challenge to do computer vision instead of using a range sensor (e.g. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. Archives
March 2023
Categories |