OCR-文本图像合成工具

1. Text Recognition Data Generator

Github地址: https://github.com/Belval/TextRecognitionDataGenerator

官方文档:https://textrecognitiondatagenerator.readthedocs.io/en/latest/index.html

安装:

# pip 安装,中文不建议
$ pip install trdg -i https://pypi.mirrors.ustc.edu.cn/simple/

# git clone
$ git clone https://github.com/Belval/TextRecognitionDataGenerator

以下根据个人需要:

git clone 解压后进入 /trdg/bin 安装目录:

$ mv trdg ../run.py

$ cd ..

$ vim run.py
# 删除 run.py中的 from trdg import, 全部改为 import

$ vim data_generator.py
# 同上,删除此文件首部的 from trdg import, 改为 import
  • pictures/ 文件夹内存放背景图,可以多添加一些图片用于丰富生成的合成图片;
  • fonts/ 文件夹内 cn/ en/分别存放中、英文字体文件(.ttf格式),可以自己在网上下载不同ttf文件放入文件夹内;
  • string_generator.py 定义了图片上的文本如何选取,可以自行定义(博主在Centos7服务器上中文好像一直有乱码问题,只能修改string 的编码)
  • data_generator.py 是按照给定参数生成图片,最好在里面加上 try / except,大规模合成数据万一有一个case报错就要重新生成,很麻烦,相应的在 bin/trdg 文件中修改相应的生成 labels.txt 的代码,保证一致(这里也可能涉及到保存的中文文本乱码,如果是的话也要修改string的编解码)

生成命令(示例,具体见官方文档):

$ python trdg -l cn -c 1000000 -d 1 -rs -b 3 -w 20 -bl 1 -rbl -tc '#000000,#888888' -f 64 -t 32 --output_dir 'sin-100w'
  • -l cn: language 为中文
  • -c 1000000: 生成1000000张图
  • -d 1: 文字按正弦函数曲线分布(0为不弯曲,1为sin,2为cos)
  • -rs: 图片文字随机选取;
  • -b 3: 背景图像从pictures文件夹中的图像上随机截取(0为高斯白噪声背景,1为白色背景,2为quasicrystal,3为自定义图片)
  • -bl 1 -rbl: 随机模糊,1为模糊的kernel size
  • -tc '#000000, #888888': 颜色变化区间
  • -f 64: 水平分布文字图像的高(像素64)
  • --output_dir 'sin-100w': 输出文件夹

2. Text Render

Github地址:https://github.com/Sanster/text_renderer

参见 github 的 README.md.

3. SynthText

Github地址: https://github.com/ankush-me/SynthText

参考链接


发布者

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注