#SudokuSolver
============
Android application that captures image of Sudoku puzzle using camera and processes solution using image processing and OCR technology.
#Libraries Used
- OpenCV 2.4.9
- tess-two—Tesseract fork for Android
#Future Optimizations
-
Sodoku solving algorithm
- currently using greedy backtracking algorithm- could use different heuristics to improve performance of algorithm.
-
Image processing
-
Noise reduction currently using connected component labelling algorithm to remove parts of the image which aren't numbers which requires a passthrough of all the pixels in the image.
Improvement: Could possibly use a more efficient approach to reduce image noise. -
Puzzle detection: currently scanning through image from center across all four directions until outer gridlines of puzzle is reached, which is really inefficient.
Improvement: Could use an algorithm to detect the largest rectangle/square in the image and assume that to be the puzzle. -
Continuous feed detection feature: currently only executes image processing when button is pressed.
Improvement: Could have a feature that continuously detects a sudoku puzzle and overlays the solution onto the preview. -
Rotation detection: currently can detect a puzzle with a few degrees of rotation.
Improvement: Could have a pre-processing feature that detects the angle of the rotation and rotates the image before using the image processing algorithms.
-