/acid-chess

ACID Chess - The Chess Computer for nerds, by nerds.

Primary LanguagePythonMIT LicenseMIT

Logo

Logo

 

The Chess Computer for nerds, by nerds.

RTFM badge Discord badge License badge

 

Picture by Picture

ACID Chess is a chess computer written in Python, which can be used with any? board. By filming the board, the contour of the board is recognized, and the positions of the individual pieces can be determined.

How it works - over the board

Two Neural Networks were trained for the board and squares recognition.

Board Segmentation Model

Board Segmentation

Square Classification Model

~15585 square images

Board Segmentation

Current Release

2023-11-23: v.0.2.0

  • added support to play on Lichess

complete Changelog

Features

You can play against an engine, Stockfish or Maia are available, or play a game against another human. In both variants, a PGN is generated, which you can load later in the analysis board at Lichess, or so, for analysis.

  • Engine play against Stockfish or Maia
  • Use polyglot opening books
  • Play on Lichess
  • PGN exports

How it works - GUI

Planned Features

  • Clock
  • ... see issues for details

Technology

  • Python as a programming language
  • Qt (PySide6) as toolkit for the GUI (with own extension for reactive bindings)
  • PyTorch (Lightning ) for the development of AI models

I want to play against ACID!

We have tested ACID Chess with four different boards and were able to complete games without significant flaws. There will be problems on unknown boards, but every tester makes ACID Chess better!

Regardless of the chosen installation method: ACID Chess saves images of data that cannot be classified sufficiently. Please provide us with this data. Create an issue and upload a ZIP file as an attachment. <3

Installation

Resources

Documentation

https://acid-chess.readthedocs.io

Sourcecode

https://github.com/ierror/acid-chess

Contributing

Contributions are always welcome. Please discuss major changes via issue first before submitting a pull request.

Data Attribution

Google Programmable Search Engine Rest API was used to search for Creative Commons licensed images of chess boards used for training the neural network models.

  • Notebook for collecting the data
  • CSV to document the Attribution

Contact