01

导读

OCR方向的工程师,之前一定听说过PaddleOCR这个项目,其主要推荐的PP-OCR算法更是被国内外企业开发者广泛应用,短短半年时间,累计Star数量已超过15k,频频登上Github Trending和Paperswithcode 日榜月榜第一,在《Github 2020数字洞察报告》中被评为中国Github Top20活跃项目,称它为OCR方向目前最火的repo绝对不为过。

最近,由PaddleOCR原创团队,针对PP-OCR进行了一些经验性改进,构建了一种新的OCR系统,称为PP-OCRv2。

■ 从算法改进思路上看,主要有五个方面的改进。

(1) 检测模型优化:采用CML协同互学习知识蒸馏策略;

(2) 检测模型优化:CopyPaste数据增广策略;

(3) 识别模型优化:LCNet轻量级骨干网络;

(4) 识别模型优化:UDML 改进知识蒸馏策略;

(5) 识别模型优化:Enhanced CTC loss损失函数改进。

■ 从效果上看,主要有三个方面提升:

(1) 在模型效果上,相对于PP-OCR mobile版本提升超7%;

(2) 在速度上,相对于PP-OCR server版本提升超过220%;

(3) 在模型大小上,11.6M的总大小,服务器端和移动端都可以轻松部署。

GitHub项目: https://github.com/PaddlePaddle/PaddleOCR

注:为了照顾刚了解PaddleOCR的新用户,在第二、三部分简单进行一些背景介绍,熟悉PaddleOCR的老用户可以直接跳到第四部分。

02

PaddleOCR历史表现回顾

✦ 2020年6月,8.6M超轻量模型发布,GitHub Trending 全球趋势榜日榜第一。

✦ 2020年8月,开源CVPR2020顶会算法,再上GitHub趋势榜单!

✦ 2020年10月,发布PP-OCR算法,开源3.5M超超轻量模型,再上Paperswithcode 趋势榜第一!

✦ 2021年1月,发布Style-Text文本合成算法和PPOCRLabel数据标注工具,star数量突破10000+,在《Github 2020数字洞察报告》中被评为中国Github Top20活跃项目。

✦ 2021年4月,开源AAAI顶会论文PGNet端到端识别算法,Star突破13k。

✦ 2021年8月,开源版面分析与表格识别算法PP-Structure,Star突破15k。

✦ 2021年9月,发布PP-OCRv2算法,效果和速度再升级。

03

PaddleOCR开源能力速览

(1)通用文本检测识别效果:支持通用场景下的OCR文本快速检测识别

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

(3)半自动标注工具PPOCRLabel:通过内置高质量的PP-OCR中英文超轻量预训练模型,可以实现OCR数据的高效标注。CPU机器运行也是完全没问题的。用法也是非常的简单,标注效率提升60%-80%是妥妥的,效果演示如下:

(4)文档结构分析+表格提取PP-Structure:可以对文档图片中的文本、表格、图片、标题与列表区域进行分类,还可以利用表格识别技术完整地提取表格结构信息,使得表格图片变为可编辑的Excel文件。

(5)核心能力全部可以自定义训练,动静统一的开发体验

动态图和静态图是深度学习框架常用的两种模式。在动态图模式下,代码编写运行方式符合Python程序员的习惯,易于调试,但在性能方面, Python执行开销较大,与C++有一定差距。相比动态图,静态图在部署方面更具有性能的优势。静态图程序在编译执行时,预先搭建好的神经网络可以脱离Python依赖,在C++端被重新解析执行,而且拥有整体网络结构也能进行一些网络结构的优化。

PaddleOCR依赖飞桨核心框架动静统一的能力,支持用户使用动态图编写组网代码。预测部署时,飞桨会对用户代码进行分析,自动转换为静态图网络结构,兼顾了动态图易用性和静态图部署性能两方面优势。

传送门:

Github:https://github.com/PaddlePaddle/PaddleOCR

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

04

PP-OCRv2五大关键技术点深入解读:

全新升级的PP-OCRv2版本,整体的框架图保持了与PP-OCR相同的Pipeline,如下图所示。

在优化策略方面,主要从五个角度进行了深入优化(如上图红框所示),主要包括:

■ 检测模型优化:采用CML知识蒸馏策略

■ 检测模型优化:CopyPaste数据增广策略

■ 识别模型优化:LCNet轻量级骨干网络

■ 识别模型优化:UDML 知识蒸馏策略

■ 识别模型优化:Enhanced CTC loss 改进

下面展开详细介绍:

(1) 检测模型优化:采用CML (Collaborative Mutual Learning) 协同互学习知识蒸馏策略。

如上图所示,CML的核心思想结合了①传统的Teacher指导Student的标准蒸馏与 ②Students网络直接的DML互学习,可以让Students网络互学习的同时,Teacher网络予以指导。对应的,精心设计关键的三个Loss损失函数:GT Loss、DML Loss和Distill Loss,在Teacher网络Backbone为ResNet18的条件下,对Student的MobileNetV3起到了良好的提升效果。

(2) 检测模型优化:CopyPaste数据增广策略

数据增广是提升模型泛化能力重要的手段之一,CopyPaste 是一种新颖的数据增强技巧,已经在目标检测和实例分割任务中验证了有效性。利用CopyPaste,可以合成文本实例来平衡训练图像中的正负样本之间的比例。相比而言,传统图像旋转、随机翻转和随机裁剪是无法做到的。CopyPaste主要步骤包括:①随机选择两幅训练图像,②随机尺度抖动缩放,③随机水平翻转,④随机选择一幅图像中的目标子集,⑤粘贴在另一幅图像中随机的位置。这样,就比较好的提升了样本丰富度,同时也增加了模型对环境鲁棒性。

经过以上两个检测方向的优化策略,PP-OCRv2检测部分的实验效果如下:

(3) 识别模型优化:LCNet轻量级骨干网络

这里,PP-OCRv2的研发团队提出了一种基于MobileNetV1改进的新的骨干网络LCNet,主要的改动包括:

①除SE模块,网络中所有的relu替换为h-swish,精度提升1%-2%

②LCNet第五阶段,DW的kernel size变为5x5,精度提升0.5%-1%

③LCNet第五阶段的最后两个SEP block添加SE模块, 精度提升0.5%-1%

④GAP后添加1280维的FC层,增加特征表达能力,精度提升2%-3%

(4) 识别模型优化:UDML 知识蒸馏策略

在标准的DML知识蒸馏的基础上,新增引入了对于Feature Map的监督机制,新增Feature Loss,增加迭代次数,在Head部分增加额外的FC网络,最终加快蒸馏的速度同时提升效果。

(5) 识别模型优化:Enhanced CTC loss 改进

考虑到中文OCR任务经常遇到的识别难点是相似字符数太多,容易误识,借鉴Metric Learning的想法,引入Center Loss,进一步增大类间距离,核心思路如上图公式所示。

经过以上三个识别方向的优化策略,PP-OCRv2识别部分的实验效果如下:

经过以上五个方向的优化,最终PP-OCRv2仅以少量模型大小增加的代价,全面超越PP-OCR,取得了良好的效果。

05

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

随着本次PP-OCRv2升级,PaddleOCR的项目文档也全面升级,结构更清晰,内容更丰富。

别的不需要多说了,大家访问GitHub点过star之后自己体验吧:https://github.com/PaddlePaddle/PaddleOCR

9月8日晚20:15-21:30,百度高级研发工程师将为我们详细解析速度与精度都大幅提升的PaddleOCR,欢迎大家扫码报名,加入技术交流群~

官网地址:https://www.paddlepaddle.org.cn

PaddleOCR项目地址:

GitHub: https://github.com/PaddlePaddle/PaddleOCR

Gitee: https://gitee.com/paddlepaddle/PaddleOCR

百度又一OCR神器面世!速度提升220%。网友:这也太猛了...相关推荐

  1. 吊打一切现有开源OCR项目!PP-OCRv2效果再升7%,速度提升220%!

    OCR方向的工程师,之前一定听说过PaddleOCR这个项目,其主要推荐的PP-OCR算法更是被国内外企业开发者广泛应用,短短半年时间,累计Star数量已超过15k,频频登上Github Trendi ...

  2. 吊打一切现有开源OCR项目:效果再升7%,速度提升220%

    01 导读 OCR 方向的工程师,之前一定听说过 PaddleOCR 这个项目,其主要推荐的 PP-OCR 算法更是被国内外企业开发者广泛应用.短短半年时间,累计 Star 数量已超过15k,频频登上 ...

  3. JS前端AI应用集合重磅开源,PP-OCRv3 JS版模型速度提升87.5%

    在前端应用中,人脸识别.人像分割等AI能力已经广泛分布于各类场景中,其在低延迟.数据隐私保护.服务资源节省等方面都有明显的应用优势.随着人工智能技术的不断发展,越来越多的深度学习模型在保持超轻量的同时 ...

  4. 最新idm6.43下载器2023中文特别版怎么使用?真可以速度提升500%?

    Internet Download Manager,全球最佳下载利器.Internet Download Manager 6.41(简称IDM6.41) 是一款Windows 平台功能强大的多线程下载 ...

  5. 百度网盘cookie_你一定没用过的百度网盘下载神器补充说明

    一个人的认知还是存在局限性的,前段时间发的那个文章还有点缺陷,如果再加上今天这个工具那就完美了.一直以为登录以后没法高速下载,原来是我自己登录账号的方式不对,非常高兴有人指出来了. 告别百度网盘svi ...

  6. Python速度提升

    Python 是一种脚本语言,相比 C/C++ 这样的编译语言,在效率和性能方面存在一些不足.但是,有很多时候,Python 的效率并没有想象中的那么夸张.本文对一些 Python 代码加速运行的技巧 ...

  7. bert速度提升fastbert

    FastBERT 自从BERT问世以来,大多数NLP任务的效果都有了一次质的飞跃.BERT Large在GLUE test上甚至提升了7个点之多.但BERT同时也开启了模型的"做大做深&qu ...

  8. nmap 命令行执行错误_Unimap:一款基于Nmap实现的扫描速度提升工具

    Unimap Unimap是一款基于Nmap实现的扫描速度提升工具,我们只需要提供一个IP地址给Unimap,即使是大量数据,Unimap也能够以非常快的速度完成网络扫描.Unimap是"U ...

  9. mac webpack 版本_晓前端周刊 第48期:EMP面向未来微前端方案正式开源了!玩转 webpack,使你的打包速度提升 90%;...

    业界动态 苹果最大杀招:iPhone App 已能在电脑运行 近日网友反馈,苹果 App Store 中大量应用在兼容性一栏中显示:已支持运行 macOS 11(及以上版本)的 Mac 电脑.这意味着 ...

  10. 开源sk-dist,超参数调优仅需3.4秒,sk-learn训练速度提升100倍

    作者 | Evan Harris 译者 | Monanfei 编辑 | Jane  出品 | AI科技大本营(ID:rgznai100) [导语]这篇文章为大家介绍了一个开源项目--sk-dist.在 ...

最新文章

  1. 初探GNN-文本表示学习
  2. Libra教程之:数据结构和存储
  3. opencv 模板匹配(cvMatchTemplate)
  4. spring配置数据库
  5. Lync和Exchange 2013集成PART4:配置统一存档
  6. 老有人问你什么是Docker?把这篇干货文章甩给他!
  7. 别被忽悠了!我来谈谈大数据平台的4个要点,你们写的都不是干货
  8. js中~~和^=分别代表什么,用处是什么?
  9. Mysql中导入和导出数据库
  10. Android中文API(98)—— ContextMenu.ContextMenuInfo
  11. Terraform 支持自动化开通阿里云产品
  12. Arduino开发遥控小车(二)基于nRF24L01无线模块实现数据发送和接收
  13. python 刷b站点击量_python + selenium 刷B站播放量的实例代码
  14. Nuxt开发中The client-side rendered virtual DOM tree is not matching server-rendered content.的问题
  15. qq邮箱发送html文本,使用qq邮箱发送html格式的邮件
  16. uniApp和微信小程序好看的我的页面(有源码)
  17. Operation CREATE USER failed for 'lin'@'host'
  18. linux 删除IP地址
  19. Scss中的嵌套规则
  20. 最牛的IT编程信息网站

热门文章

  1. Centos 7忘记密码,如何重置
  2. angular4学习记录 -- 依赖注入
  3. 2017 Multi-University Training Contest - Team 3 Kanade's trio(字典树+组合数学)
  4. 半导体科普:封装,IC 芯片的最终防护与统整
  5. POJ 1002 UVA 755 487--3279 电话排序 简单但不容易的水题
  6. [JavaScript]Call和Apply方法
  7. 「leetcode」1207. 独一无二的出现次数:【数组在哈希法中的经典应用】详解
  8. 非常流行的版本管理工具Tower for Mac
  9. 争取来的酷狗前端面试 共勉之
  10. 由儿时的游戏打保猜最广想到的