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
- Over 100k analyzed positions
- Most accurate 2d chess board detection algorithm
- Most accurate chess piece classification
- HackerNews most upvoted post of the day https://news.ycombinator.com/item?id=19563768
- Twitter mentions: https://twitter.com/search?q=chessvision.ai&src=typed_query&f=live
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/


Log in or sign up for Devpost to join the conversation.