This software can recongnize numbers written on a paper... the pipeline of the process is like this:
- Remove background by guassian adpative thresholding to get a binary image
- Analyzed pixels which are connected together following 8 direction of connectivity, to remove lone stops and locate position of digits
- Thicken the digits (so after resize still some information is left)
- Then pad it, resize it to 28x28 form
- Then thin the digits again (thinning is a part of neural network, and it won't trouble losing information because its carefully built)
- Use neural networks to identify what digits they are (neural network trained on MNIST numbers after thinning of it)
- Draw bounding boxes and then return the resultant image
Just run main.py, after replacing the image.jpg with the image desired to make the software work on but with the same file name. The processing of the image may take around 5 minutes, so be paitent. After the processing has done, an output with digits and bounding boxes will displaying automatically