In April 2019, I launched chessvision.ai. In short, it's an app that recognizes chess positions from images and video frames. It uses computer vision and graph algorithms to first find chessboards in images (I hope I'll find time to publish a paper about it as from my research it's the most accurate and efficient algorithm to find chess-grids in images), and later, it uses Convolutional Neural Nets to classify the content of the individual cells in the found board.

Accomplishments that I'm proud of

What I learned

  • How to train a classifier that needs to have over 99.9% accuracy in order to be acceptable for real usage
  • How to deploy to production end-to-end machine learning pipelines, including online predictions
  • How important data distribution is in this case

Follow up

I developed a Reddit bot that uses this algorithm https://www.reddit.com/r/MachineLearning/comments/b9prd1/p_im_a_bot_and_will_serve_people_analyzing_chess/ as of now it's one of the most beloved bots on Reddit, recently I added features like posting hints for best moves marked as spoilers and people love it, e.g. https://www.reddit.com/r/chess/comments/c44qed/cool_tactic_from_lichess_today_black_just_played/

Share this project:
×

Updates