This CNN can recognize a single character (Kanji, Hiragana, Katakana). A list of all supported characters can be found here.
Sneak peak of the network in action
To generate the data necessary to train this CNN, the single_kanji_data_gen notebook is used. The training can then be done with the single_kanji_cnn_training notebook.
In the releases section, pretrained model weights can be found. Also, a TensorFlow lite model is available.
Input: The input should be a grayscale image of any size.
Output:
A one-hot-vector containing the class probabilities (lines up with labels.txt
).
install all dependencies:
python -m pip install wheel
python -m pip install -r requirements.txt
name | android | iOS | Linux | MacOS | Windows | Web |
---|---|---|---|---|---|---|
DaKanji | ✅ | ✅ | ✅ | ✅ | ✅ | |
Kanji Graph | ✅ |
I put lots of effort and time into developing this model and hope that it can be used in many apps.
If you decide to use this machine learning model please give me credit like:
Character recognition powered by machine learning from CaptainDario (DaAppLab)
It would also be nice if you open an issue and tell me that you are using this model.
Than I would add your software to the apps section
Here you can find some examples how to use this model in different languages. If you use this model in a other language, please open an issue and let me know, I will add it to the wiki.
The data on which the neural network was trained on was kindly provided by ETL Character Database and The KanjiVG dataset. Papers: