This project is created to detect handwritten letters of Tamil Language (South Indian Language) through deep learning nural network (TensorFlow / AI).
Currently this project supports Inception V3 model (inception_v3).
Sample Traning data is originally from:
https://shiftleft.com/mirrors/www.hpl.hp.com/india/research/penhw-resources/tamil-iwfhr06-train.html
You can download the original images:
some of the images are resized for training in 160x160, 64x64, 32x32 size in JPG format.
NOTE: not all the images are currently converted.
Also used the following document to understand the deep learning: https://web.media.mit.edu/~sra/tamil_cnn.pdf
This project assumes that you already aware of Tensorflow and Python and provided as a starting point.
Let's say we are going to train deep learning AI to learn from 160x160 hand writting, here are the steps to make it work. We are going to assume you are on Windows Environment for the following steps.
Make sure you have Anaconda is installed for Python 3.5+: https://www.anaconda.com/download/
Follow the instruction for installing TensorFlow using Anaconda: https://www.tensorflow.org/install/install_windows#installing_with_anaconda
OR
C:> conda create -n tensorflow python=3.5
C:> activate tensorflow
(tensorflow)C:> pip install --ignore-installed --upgrade tensorflow
Test your installation by runing the following commands using the test.py file (provided) in python:
(tensorflow)C:> python test.py
Clone this Project to a local folder and go to the folder.
Unzip the 160x160.zip file in the Training Data/Tamil/160x160/ Folder. Remove all the zip files from that folder. You can also use Tamil Font to Handwriting Image project to generate more images.
Go to command Prompt (Start->Run->CMD) then Type the following command:
C:> activate tensorflow
Start training your AI by using the following command:
(tensorflow)C:> python -m retrain --how_many_training_steps=6000
larger the steps for training using "how_many_training_steps" is better accuracy of the results going to be.
Validate by testing by providing your own 160 x 160 image. or use the sample from Test_Images/160 Folder.
(tensorflow)C:> python label_image.py --test_data_dir=Test_Images/160