An AR program, which reads the Sudoku problem from webcam feed and using computer vision techniques digitize the image through CNN approach , then solves, displays the solution in the same perspective of the input feed , thus implementing Augmented reality
- Firstly make sure u have all the required libs installed from the requirements.txt
- Traverse your terminal to this folder location.
- Then , In your terminal type python sudoku_main.py and hit enter
its the input raw_img passes to the system through the cam feed
Here the sudoku is extracted , warped and thesholded from the raw_image .this img is then preprocessed and used for grid-extraction
- the left image is collection of all extracted number-img-grids collaged together.
- the right image is collection of all predicted numbers of the respective grids by the CNN model
After solving , the cropped and warped sudoku is updated with solution.
Here , the solved-cropped sudoku is warped_inversed to the original image in the same perspective
- Dataset : http://www.ee.surrey.ac.uk/CVSSP/demos/chars74k
- extracting Sudoku Grid: https://maker.pro/raspberry-pi/tutorial/grid-detection-with-opencv-on-raspberry-pi
- Finding all 4 corners from a contour: https://www.programcreek.com/python/example/89417/cv2.arcLength
- article about WarpPerspective : https://www.pyimagesearch.com/2014/05/05/building-pokedex-python-opencv-perspective-warping-step-5-6
- Optimize digit Prediction accuracy : https://medium.com/@o.kroeger/tensorflow-mnist-and-your-own-handwritten-digits-4d1cd32bbab4
- Solving Sudoku : http://norvig.com/sudoku.html