OCR文本图像合成工具

问题


在进行文字识别时候,需要使用的数据集样式为一张含有文本的图片以及对应文本内容的标签。但是一般而言,实际情况是构建的文本字典中,每个字至少要出现200次才能有好的识别效果,因此,先对所有的label进行单字统计,看每个字出现的个数是否超过200次,如果不满足,则需要进一步收集数据。

数据来源有两种:

  • 真实数据:通过真实数据去截取图片或者人工标注
  • 生成数据:通过文本去生成对应的文本图片

真实数据的收集是比较费事费力的,因此可以使用一些生成数据的工具来无限量的生成想要的数据。

主要工具有:

  • Text Recognition Data Generator: https://github.com/Belval/TextRecognitionDataGenerator
  • Text Render: https://github.com/oh-my-ocr/text_renderer
  • SynthText: https://github.com/ankush-me/SynthText
  • SynthText_Chinese_version: https://github.com/JarveeLee/SynthText_Chinese_version

这里详细介绍Text Recognition Data Generator工具的使用

Text Recognition Data Generator


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

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

安装:

有两种安装方式,一种是通过pip安装,另外一种是通过源码安装,建议使用源码安装:

  • pip 安装
pip install trdg
  • 项目源码安装
git clone https://github.com/Belval/TextRecognitionDataGenerator
pip3 install -r requirements.txt
# 如果想使用手写体
pip3 install -r requirements-hw.txt

文件目录

  • images/ 文件夹内存放背景图,可以多添加一些图片用于丰富生成的合成图片,在使用是随机从中选择背景图区域作为背景;
  • fonts/ 文件夹内 cn/ en/分别存放中、英文字体文件(.ttf格式),可以自己在网上下载不同ttf文件放入文件夹内;
  • string_generator.py 定义了图片上的文本如何选取,可以自行定义
  • data_generator.py 是按照给定参数生成图片,最好在里面加上 try / except,大规模合成数据万一有一个case报错就要重新生成,很麻烦

重要参数

  • -i, --input_file: 具体的文本内容文件,文件中是一行行的文本,可以指定生成的图片内容;
  • -c, --count:设置 生成的图片数量
  • -l, --language: 设定生成的文本语言
  • -t, --thread_count: 设定线程个数,加快生成速度
  • -f, --format: 设定图片高度像素值,默认是32
  • -b, --background: 设定图片的背景样式
  • -W, --length:设定生成图片中文本的长度

具体可以使用

  • -h, --help 去查看每个参数的意义

生成命令:

样例:

$ python run.py -l cn -c 10000 -b 3 -w 20 -f 64 -t 32

生成10000张图片,生成语言是使用中文,背景图样式是3,每个生成文本长度为20, 图片像素值高度为64,使用32线程去生成

参考


  • OCR-文本图像合成工具
  • OCR训练数据生成方法
  • GAN+文本生成:让文本以假乱真
  • GAN之根据文本描述生成图像
  • ocr文本合成
  • SynthText
  • 文字识别(四)–大批量生成文字训练集

OCR文本图像合成工具相关推荐

  1. 使用CV2和Keras OCR从图像中删除文本

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 介绍 本文将讨论如何快速地从图像中删除文本,作为图像分类器的预处理 ...

  2. 个人永久性免费-Excel催化剂功能第86波-人工智能之图像OCR文本识别全覆盖

    在上一年中,Excel催化剂已经送上一波人工智能系列功能,鉴于部分高端用户的需求,再次给予实现了复杂的图像OCR识别,包含几乎所有日常场景,让公司个人手头的图像非结构化数据瞬间变为可进行结构化处理分析 ...

  3. CVPR 2020 论文大盘点-文本图像篇

    本文盘点CVPR 2020 所有文本图像(text)相关论文,主要分为手写文本和场景文本两大方向,总计16篇,对文献进行了细致的分类,大部分论文是围绕识别问题的研究. 方向包括: 1)场景文本检测(S ...

  4. CVPR 2019 论文大盘点—文本图像相关篇

    点击我爱计算机视觉标星,更快获取CVML新技术 CV君盘点了 CVPR 2019 文本图像相关论文,总计 17 篇. 其中研究文本检测的最多,共 7 篇,包括已经非常知名的PSENet,还有最近异常火 ...

  5. CVPR 2020文本图像检测与识别论文/代码

    向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程   公众号:datayx CVPR 2020 共收录 1470篇文章,算法主要领域:图像与视频处理,图像分类&检 ...

  6. 图像风格迁移cvpr2020_CVPR 2020 论文大盘点-文本图像篇

    本文盘点CVPR 2020 所有文本图像(text)相关论文,主要分为手写文本和场景文本两大方向,总计16篇,对文献进行了细致的分类,大部分论文是围绕识别问题的研究. 方向包括: 1)场景文本检测(S ...

  7. OCR文本识别系统项目文档——欢迎探讨交流

    <OCR文本识别系统项目计划书> 一.作品概述 http://115.159.205.168/ocr_php/public/index.php 本项目的名称为OCR文本识别系统,研发其主要 ...

  8. python场景文字识别_针对复杂场景的 OCR 文本识别,推荐一个Python 库!

    大家好,我是 zeroing~ 1,前言 之前谈到图片文本 OCR 识别时,写过一篇文章介绍了一个 Python 包 pytesseract ,具体内容可参考 介绍一个Python 包 ,几行代码可实 ...

  9. 2022CVPR:一种用于空间变形的文本注意网络鲁棒场景文本图像超分辨率

    TATT:A Text Attention Network for Spatial Deformation Robust Scene Text Image Super-resolution 单位:香港 ...

最新文章

  1. Session,ViewState用法
  2. 【OpenCV 】直方图均衡化,直方图计算,直方图对比
  3. IBM苏中:怎样利用深度学习、增强学习等方法提高信息处理效率
  4. jQuery的Prettydate插件
  5. 解决Latex正文中的参考文献有许多[0]的情况
  6. 菜鸟学Linux 第026篇笔记 LVM
  7. Linux 防火墙 开放 端口 iptables
  8. PyQt5教程 - QtDesigner窗口设计工具的使用
  9. Tomcat的JDBC连接池
  10. 简单几步开启Mac访问NTFS格式读写
  11. office2007卸载不干净 无法安装office64位的版本
  12. TestNg测试框架
  13. 她的话指引了很多人的未来生活———亦舒
  14. 方法论:后台产品经理的前世今生(一)
  15. Echarts中国地图与世界地图实战
  16. Web前端:古诗排版网页案例设计
  17. 2020 icpc 沈阳
  18. git 删除分支和删除文件夹
  19. 【接入指南】华为帐号服务Authorization Code模式介绍与接入步骤详解
  20. 自动控制原理大作业——已知某位置测控装置如图所示

热门文章

  1. 现实中的项目范围变更
  2. 花书 第十九章 第二十章
  3. node.js学习笔记3 express基本使用、托管静态资源、express中间件
  4. 天大计算机辅助设计与制造考题,2017年CAD工程师认证考题答案及解析
  5. url怎么隐藏html后缀,url 去掉.HTML 后缀 zencart
  6. rm 好凶残,太 TM 吓人了!
  7. 其他笔记 - Scum和KANBAN
  8. Android开发中Html.fromHtml(String source)方法过时的替代方法
  9. 英伟达JETSON XAVIER NX使用小记
  10. 情感分析学习笔记(5)——PolarityRank算法原理讲解