Skip to content
This repository has been archived by the owner on Jun 11, 2020. It is now read-only.

Latest commit

 

History

History
47 lines (30 loc) · 1.75 KB

README.md

File metadata and controls

47 lines (30 loc) · 1.75 KB

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 1
pay-roller poy-roler 2
rhizopodist rhizospodist 3
theriacas trenagas 4
semantically semanticaly 5
dualistic duaistic 6
high-flying highi-fling 7
grossify grsity 8
scutular scutular 9
crispened crispened 10