We will be solving some Sudoku puzzles using AI, Python and OpenCV. It uses a collection of image processing techniques and Convolutional Neural Networks to detect the digits and then using backtraking to solve the sudoku.
- Python 3.5
- OpenCV
python3 main.py
- Preprocessing the image(Gaussian Blur, Thresholing, Dilating).
- Finding the largest countour(Sudoku block) and getting it's coordinates.
- Cropping the image.
- Wrapping the perspective.
- Extracting each cell by slicing the image.
- Positioning the number in the image.
- Using a pre-trained MNIST Digit Recognition model to predict the digits.
- Solving the sudoku using backtracking and recursion.