AliShazly / sudoku-py

An augmented reality sudoku solver using OpenCV

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Sudoku-py

An augmented reality sudoku solver using OpenCV.

Usage

Installation

pip install -r requirements.txt

main.py

usage: main.py [-h] [-f FILE] [-s] [-w] [-d]

arguments:
  -h, --help            show this help message and exit
  -f FILE, --file FILE  File path to an image of a sudoku puzzle
  -s, --save            Save image to specified file's current directory
  -w, --webcam          Use webcam to solve sudoku puzzle in real time
                        (EXPERIMENTAL)
  -d, --debug           Enables debug information output

Examples

python main.py --file assets/c6.jpg

Output_Image

python main.py --webcam

Output_Gif

Breakdown

Image Processing

Breakdoown_img

Algorithm Visualization

Breakdoown_alg

Limitations

  • Webcam solver cannot detect when a new puzzle has entered the frame, will try to warp the solution of the first puzzle it sees onto any subsequent puzzles
  • OCR predictions are very spotty for hand written digits and stylized fonts
  • Cannot solve puzzles that don't have a distinguishable four-point outer border

About

An augmented reality sudoku solver using OpenCV

License:MIT License


Languages

Language:Python 100.0%