In my initial post I regaled you with the tale of how I got interested in computers: games. I also talked about what got me interested in computers as more than just a toy, but a tool: automating my work.
Through the capstone project matching process, I was lucky enough to been matched to my first choice of project, one that perfectly distills the spectrum of my interests in computers, from the most frivolous to the most practical: I will be see and understand a game being played, and maybe teach the computer to play the game on its own.
The Game
The game is this marble maze.
The object of the game is to, by tilting the board, get the metal ball from the starting position (arrow at the middle of the top edge) to the ending position (star at the middle of the right edge).
My capstone project will be one piece of a larger project being undertaken by OSU graduate student, Andrey Kornilovich. Andrey has already mounted the board to hardware of his own design that will record a video of the game board, eventually also physically manipulating the board as needed for a user or the computer to play the game. My goal is to use Computer Vision tools and techniques to process the captured video, detect various features (the ball, corners, walls, holes, etc.) needed for the computer to understand the current state of the game board, and display those to the user.
If all goes well and we can achieve our goals early, we may also work on further “stretch” goals including path planning and the actual control loop, two pieces that would be needed for the computer to actually play the marble maze game on its own.
I’m not sure at what point I crossed over from finding it more fun to teach a computer to play games instead of playing a game myself, but here we are.