Skip to content

A scanner that detects, recognizes and solves sudoku puzzles from real-life pictures using a pipeline of classical Computer Vision algorithms.

License

Notifications You must be signed in to change notification settings

lorenzoh/sudoku-scanner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sudoku-scanner

Build Status

A scanner that detects, recognizes and solves sudoku puzzles from real-life pictures using a pipeline of classical Computer Vision algorithms.

How to use

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

Pipeline

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

Input

Input image

1. Preprocessing input image

Image after preprocessing

2. Exposing the grid

Exposed grid

3. Finding corners and transforming perspective

Transformed grid

4. Preprocessing grid

Preprocessed grid

5. Digit cleaning and classification

The individual digits are then cut from the grid, cleaned individually and classified by a small ConvNet.

About

A scanner that detects, recognizes and solves sudoku puzzles from real-life pictures using a pipeline of classical Computer Vision algorithms.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published