Marvin: Boardgame Playing with an Open Source Humanoid Robot
As it is necessary to write a thesis and program a project for graduating at a secondary technical college in Austria, my colleague Alexander Weller and I wrote a thesis about teaching a humanoid robot to play the game checkers.
For our project we partnered with Maker Austria to use their 3D printed Inmoov Robot. Also a simulation of it was done in Blender. Throughout the project we used Python to program the robot, the engine and the necessary computer vision.
While Alex’s part was to make the robot move and simulate the environment in Blender, I was responsible for detecting the game board and moves by the human counterpart with a single webcam as well as connecting an open source engine and GUI (Samuel) to the CV code, so a new move for the robot could be calculated. The move was then sent to Alex’s movement module by sockets.
The picture on the right shows the Blender simulation and in the video you can see what was basically my contribution to the project. The human player plays with the white pieces. The moves get detected, a new move for the robot is calculated and displayed on the GUI.
You can download the full thesis here.