ChessFENnyBot

Eldar Mukhtarov

From a chessboard image to notation · Python

A Telegram bot using OpenCV to read supported Lichess board screenshots. It returns piece-placement notation or an annotated board. A small project bringing chess and programming together.

A simplified view of how the project works.
A simplified view of how the project works.
Open the diagram in a new tab

Reading the board

The bot uses OpenCV template matching to recognize pieces in supported Lichess screenshots. It can return piece-placement notation or an annotated board through Telegram.

What a screenshot can tell us

The board theme and piece artwork affect recognition. A screenshot gives the piece positions, but not all the game history needed for a complete FEN record, such as castling rights. The output is therefore the piece-placement part of FEN.

← All projects