c-cn / text_renderer

Generate text images for training deep learning ocr model

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Text Renderer

Generate text images for training deep learning ocr model.

example1.jpg example2.jpg

example3.jpg example4.jpg


The code was only tested on Ubuntu 16.04.

Install dependencies:

pip3 install -r requirements.txt

Generate image

Run python3 main.py, images and labels.txt will generate at output/default/.

Run python3 main.py --help to see optional arguments.

Strict mode

If some chars in corpus is not supported by your font, your will get bad result:




Run main.py with --strict, renderer will retry get sample from corpus until all chars are supported by a font.


Check how many chars your font not support for a charset:

python3 tools/check_font.py

checking font ./data/fonts/eng/Hack-Regular.ttf
chars not supported(4971):
['', '', '广', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '','', '', '', ''...]
0 fonts support all chars(5071) in ./data/chars/chn.txt:

Debug mode

Run python3 main.py --debug will save images with extract information. You can see how perspectiveTransform works and all bounding/rotated boxes.


Generate image using GPU

If you want to use GPU to speed up image generating, first compile opencv with CUDA. Compiling OpenCV with CUDA support

Then build Cython part, and add --gpu options when run main.py

cd libs/gpu
python3 setup.py build_ext --inplace


See https://github.com/Sanster/text_renderer/projects/1


Generate text images for training deep learning ocr model


Language:Python 83.1%Language:C++ 16.9%