Application Architecture of Saral App
- Saral uses Tensorflow Lite AI/ML model embedded within Android Application for predicting Handwritten digits.
- Each layout is configurable in the backend as JSON. Refer Layout specification andLayout configuration for more details.
Saral SDK and Application Architecture
- Saral SDK is an Android and React Native Software Development kit with core logic to predict handwritten digits and OMR bubbles.
- Saral SDK accepts layout JSON as input and enriches the JSON with predictions and sends back the response. Refer Layout specification
- Saral SDK component can be reused for Android and React Native App development with handwritten digits and OMR bubbles prediction capabilities.
Handwritten Digits ML Model
Handwritten Digits Machine Learning model is build using Python,Keras ,Tensor-flow technologies.
To embed this model in Android SDK/Application , its converted from HDF5 to TFLite format.
Model is trained on MNIST Handwritten digits open data-set along with handwritten digits from the field.
OpenCV is used for capturing ROI’s(Region Of Interest) and processing images before passing them to ML model for prediction.
OMR(Optical Mark Recognition) Detection
For OMR detection Saral SDK uses OpenCV Computer Vision Technology to capture answer sheet images , sub-divide them into individual ROI(Region of Interest Images).
Individual ROI(Region Of Interest) images of answer sheet are processed using OTSU thresholding in OpenCV and predict if OMR bubble is filled or unfilled using pixel count.