飞道的博客

Github Star 7.2K,来自百度飞桨超级好用的OCR数据合成与半自动标注工具,强烈推荐!

269人阅读  评论(0)

OCR 方向的工程师,一定需要知道这个 OCR 开源项目:PaddleOCR。短短几个月,累计 Star 数量已超过 7.2K,频频登上 Github Trending 日榜月榜,称它为 OCR 方向目前最火的 repo 绝对不为过。

12 月,它又带来四大新发布与升级,核心内容先睹为快:

  • 全新发布数据合成工具 Style-Text:可以批量合成大量与目标场景类似的图像,在多个场景验证,效果均提升 15% 以上。

  • 全新发布半自动数据标注工具 PPOCRLabel:有了它数据标注工作事半功倍,相比 labelimg 标注效率提升 60% 以上,社区小规模测试,好评如潮。

  • 多语言识别模型效果升级:中文、英文、韩语、法语、德语、日文识别效果均优于 EasyOCR。

  • PP-OCR 开发体验再升级:支持动态图开发(训练调试更方便),静态图部署(预测效率更高),鱼与熊掌可以兼得。

 

PaddleOCR 历史表现回顾

先看下 PaddleOCR 自今年开源以来,短短几个月在 GitHub 上的表现:

  • 6 月,8.6M 超轻量模型发布,GitHub Trending 全球趋势榜日榜第一。
  • 8 月,开源 CVPR2020 顶会 SOTA 算法,再上 GitHub 趋势榜单!

  • 10 月,发布 PP-OCR 算法,开源 3.5M 超超轻量模型,再下 Paperswithcode 趋势榜第一

 

 

这个含金量,广大的 GitHub 开发者们自然懂,3.5M 超超轻量模型的效果图大家直接看,绝对杠杠的。

 

 

火车票、表格、金属铭牌、翻转图片、外语都是妥妥的,3.5M 的模型能达到这个识别精度,绝对是良心之作了!

 

传送门:

https://github.com/PaddlePaddle/PaddleOCR

 

那么最近的 12 月份更新,又给大家带来哪些惊喜呢?

 

全新发布 OCR 数据合成工具:Style-Text

相比于传统的数据合成算法,Style-Text 可以实现特殊背景下的图片风格迁移,只需要少许目标场景图像,就可以合成大量数据,效果展示如下:

 

1、相同背景批量数据合成

 

 

2、相同文字批量数据合成

 

 

3、图片分离前景背景

 

 

除了拉风的效果,采用这样的合成数据和真实数据一起训练,可以显著提升特殊场景的性能指标,分别以两个场景为例:

 

 

怎么样,绝对是黑科技了吧。这项能力核心算法是基于百度自研的文本编辑算法《Editing Text in the Wild》。

 

论文地址:

https://arxiv.org/abs/1908.03047

 

不同于常用的基于 GAN 的数据合成工具,Style-Text 主要框架包括 ①文本前景风格迁移模块 ②背景抽取模块 ③融合模块。经过这样三步,就可以迅速实现图片文字风格迁移啦。

 

 

超强 OCR 数据标注工具:PPOCRLabel

除了数据合成,数据标注也一直是深度学习开发者关注的重点,无论是从成本还是时间上面,提高标注效率,降低标注成本太重要了。PPOCRLabel 通过内置高质量的 PPOCR 中英文超轻量预训练模型,可以实现 OCR 数据的高效标注。CPU 机器运行也是完全没问题的。话不多说,直接看 PPOCRLabel 效果演示:

 

 

用法也是非常的简单,标注效率提升 60%-80% 是妥妥的。只能说,真的太香了。

 

最好的多语言模型效果

简单对比一下目前主流 OCR 方向开源 repo 的核心能力:

中英文模型性能及功能对比

 

其中,多语言识别模型准确率对比(仅 EasyOCR 提供)

 

测试数据及环境说明:

  • 中英文场景:针对 OCR 实际应用场景,包括合同,车牌,铭牌,火车票,化验单,表格,证书,街景文字,名片,数码显示屏等,收集的 300 张图像,每张图平均有 17 个文本框,PaddleOCR 的 F1-Score 超过 0.5,这个性能已经很不错了。

  • 多语言场景:PaddleOCR 选择了开源数据 ICDAR2017 – MLT(多语言文本识别测试集),并抽取其中的法语、德语、日语、韩语数据作为评测集合。其中测试图片大多来自于自然场景,例如广告牌、路标、海报等。

 

PP-OCR 开发体验再升级

动态图和静态图是深度学习框架常用的两种模式。在动态图模式下,代码编写运行方式符合 Python 程序员的习惯,易于调试,但在性能方面, Python 执行开销较大,与 C++ 有一定差距。

相比动态图,静态图在部署方面更具有性能的优势。静态图程序在编译执行时,预先搭建好的神经网络可以脱离 Python 依赖,在 C++ 端被重新解析执行,而且拥有整体网络结构也能进行一些网络结构的优化。

飞桨动态图中新增了动态图转静态图的功能,支持用户使用动态图编写组网代码。预测部署时,飞桨会对用户代码进行分析,自动转换为静态图网络结构,兼顾了动态图易用性和静态图部署性能两方面优势。

 

良心出品的中英文文档教程

 

别的不需要多说了,大家访问 GitHub 点过 star 之后自己体验吧:

https://github.com/PaddlePaddle/PaddleOCR

 

 

微信扫描二维码添加运营同学,并回复【OCR】,运营同学会邀请您加入官方交流群,获得更高效的问题答疑。

 

 

如在使用过程中有问题,可加入飞桨官方QQ群进行交流:1108045677。

 

如果您想详细了解更多飞桨的相关内容,请参阅以下文档。

 

·PaddleOCR 项目地址·

GitHub: 

https://github.com/PaddlePaddle/PaddleOCR 

Gitee: 

https://gitee.com/paddlepaddle/PaddleOCR

 


转载:https://blog.csdn.net/PaddlePaddle/article/details/111616567
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场