CRNN
CRNN copied to clipboard
A TensorFlow implementation of https://github.com/bgshih/crnn
This repository has been archived. Please see all the other (much better) implementations around GitHub
CRNN
A TensorFlow implementation of https://github.com/bgshih/crnn
But what is a CRNN?
It is a Convolutional Recurrent Neural Network that can be used as an OCR
Requirements
- Tensorflow (tested with 1.8)
pip3 install tensorflow - Scipy
pip3 install scipy
What training data was used?
All training data (200 000 examples) were generated using my other project https://github.com/Belval/TextRecognitionDataGenerator
To do the same, simply install that project with pip (pip install trdg) and do trdg -c 200000 -w 1 -t 8. -t should be your processor thread count.
Pretrained model
Available in CRNN/save. Use python3 run.py -ex ../data/test --test --restore to test.
Specify charset
You can specify charset to include only numbers python run.py --train -ex ../data/test -it 50000 -cs 0123456789
Results
It works but is a suboptimal solution for OCR in its current form as it makes some mistakes. Do note that I used a bigger char vector than the paper.
For fun, here are a list of words with their prediction:
| Ground truth | Prediction | Image |
|---|---|---|
| retardates | retardates | ![]() |
| pay-roller | poy-roler | ![]() |
| rhizopodist | rhizospodist | ![]() |
| theriacas | trenagas | ![]() |
| semantically | semanticaly | ![]() |
| dualistic | duaistic | ![]() |
| high-flying | highi-fling | ![]() |
| grossify | grsity | ![]() |
| scutular | scutular | ![]() |
| crispened | crispened | ![]() |









