A scanner that detects, recognizes and solves sudoku puzzles from real-life pictures using a pipeline of classical Computer Vision algorithms.
Install dependencies (use Python 3.6):
pip install -r requirements.txt
Run on image:
python src/sudoku-scanner.py <path to your image>
For some more options, use:
python src/sudoku-scanner.py --help
The pipeline is divided into 5 main steps
You can generate the following images for your own image by following the steps in /notebooks/VisualizePipeline.ipynb
The individual digits are then cut from the grid, cleaned individually and classified by a small ConvNet.