速度提升220%以及效果提升7%的OCR系统—PP-OCRv2

速度提升220%以及效果提升7%的OCR系统—PP-OCRv2

发布时间:2021-09-09 作者:未知
  今天给大家分享的是速度提升220%以及效果提升7%的OCR系统—PP-OCRv2,下面我们来看该OCR开源项目的详细内容!
  OCR方向的工程师,之前一定听说过PaddleOCR这个项目,其主要推荐的PP-OCR算法更是被国内外企业开发者广泛应用。短短半年时间,累计Star数量已超过15k,频频登上Github Trending和Paperswithcode日榜月榜第一。
  在《Github 2020数字洞察报告》中被评为中国Github Top 20活跃项目,
  称它为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的总大小,服务器端和移动端都可以轻松部署。
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  GitHub项目:
  https://github.com/PaddlePaddle/PaddleOCR
  注:为了照顾刚了解PaddleOCR的新用户,在第二、三部分简单进行一些背景介绍,熟悉PaddleOCR的老用户可以直接跳到第四部分。
  PaddleOCR历史表现回顾
  2020年6月,8.6M超轻量模型发布,GitHub Trending全球趋势榜日榜第一。
  2020年8月,开源CVPR 2020顶会算法,再上GitHub趋势榜单!
  2020年10月,发布PP-OCR算法,开源3.5M超超轻量模型,再上Paperswithcode趋势榜第一!
  2021年1月,发布Style-Text文本合成算法和PPOCRLabel数据标注工具,star数量突破10000+,在《Github 2020数字洞察报告》中被评为中国Github Top 20活跃项目。
  2021年4月,开源AAAI顶会论文PGNet端到端识别算法,Star突破13k。
  2021年8月,开源版面分析与表格识别算法PP-Structure,Star突破15k。
  2021年9月,发布PP-OCRv2算法,效果和速度再升级。
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  PaddleOCR开源能力速览
  (1)通用文本检测识别效果:支持通用场景下的OCR文本快速检测识别
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  (2)文本合成工具Style-Text效果:相比于传统的数据合成算法,Style-Text可以实现特殊背景下的图片风格迁移,只需要少许目标场景图像,就可以合成大量数据,效果展示如下:
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  (3)半自动标注工具PPOCRLabel:通过内置高质量的PP-OCR中英文超轻量预训练模型,可以实现OCR数据的高效标注。CPU机器运行也是完全没问题的。用法也是非常的简单,标注效率提升60%-80%是妥妥的,效果演示如下:
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  (4)文档结构分析+表格提取PP-Structure:可以对文档图片中的文本、表格、图片、标题与列表区域进行分类,还可以利用表格识别技术完整地提取表格结构信息,使得表格图片变为可编辑的Excel文件。
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2

 
  (5)核心能力全部可以自定义训练,动静统一的开发体验:动态图和静态图是深度学习框架常用的两种模式。在动态图模式下,代码编写运行方式符合Python程序员的习惯,易于调试,但在性能方面,Python执行开销较大,与C++有一定差距。相比动态图,静态图在部署方面更具有性能的优势。静态图程序在编译执行时,预先搭建好的神经网络可以脱离Python依赖,在C++端被重新解析执行,而且拥有整体网络结构也能进行一些网络结构的优化。
  PaddleOCR依赖飞桨核心框架动静统一的能力,支持用户使用动态图编写组网代码。预测部署时,飞桨会对用户代码进行分析,自动转换为静态图网络结构,兼顾了动态图易用性和静态图部署性能两方面优势。
  传送门:
  Github:https://github.com/PaddlePaddle/PaddleOCR
  那么最近的2021年9月份更新,PaddleOCR又给大家带来哪些惊喜呢?
  PP-OCRv2五大关键技术点深入解读
  全新升级的PP-OCRv2版本,整体的框架图保持了与PP-OCR相同的Pipeline,如下图所示。
 
  速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  在优化策略方面,主要从五个角度进行了深入优化(如上图红框所示),主要包括:
  检测模型优化:采用CML知识蒸馏策略
  检测模型优化:CopyPaste数据增广策略
  识别模型优化:LCNet轻量级骨干网络
  识别模型优化:UDML知识蒸馏策略
  识别模型优化:Enhanced CTC loss改进
  下面展开详细介绍:
  (1)检测模型优化:采用CML(Collaborative Mutual Learning)协同互学习知识蒸馏策略。
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  如上图所示,CML的核心思想结合了①传统的Teacher指导Student的标准蒸馏与②Students网络直接的DML互学习,可以让Students网络互学习的同时,Teacher网络予以指导。对应的,精心设计关键的三个Loss损失函数:GT Loss、DML Loss和Distill Loss,在Teacher网络Backbone为ResNet18的条件下,对Student的MobileNetV3起到了良好的提升效果。
  (2)检测模型优化:CopyPaste数据增广策略
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  数据增广是提升模型泛化能力重要的手段之一,CopyPaste是一种新颖的数据增强技巧,已经在目标检测和实例分割任务中验证了有效性。利用CopyPaste,可以合成文本实例来平衡训练图像中的正负样本之间的比例。相比而言,传统图像旋转、随机翻转和随机裁剪是无法做到的。
  CopyPaste主要步骤包括:①随机选择两幅训练图像,②随机尺度抖动缩放,③随机水平翻转,④随机选择一幅图像中的目标子集,⑤粘贴在另一幅图像中随机的位置。这样,就比较好的提升了样本丰富度,同时也增加了模型对环境鲁棒性。
  经过以上两个检测方向的优化策略,PP-OCRv2检测部分的实验效果如下:
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  (3)识别模型优化:LCNet轻量级骨干网络
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  这里,PP-OCRv2的研发团队提出了一种基于MobileNetV1改进的新的骨干网络LCNet,主要的改动包括:
  ①除SE模块,网络中所有的relu替换为h-swish,精度提升1%-2%
  ②LCNet第五阶段,DW的kernel size变为5x5,精度提升0.5%-1%
  ③LCNet第五阶段的最后两个DepthSepConv block添加SE模块,精度提升0.5%-1%
  ④GAP后添加1280维的FC层,增加特征表达能力,精度提升2%-3%
  (4)识别模型优化:UDML知识蒸馏策略
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  在标准的DML知识蒸馏的基础上,新增引入了对于Feature Map的监督机制,新增Feature Loss,增加迭代次数,在Head部分增加额外的FC网络,最终加快蒸馏的速度同时提升效果。
  (5)识别模型优化:Enhanced CTC loss改进
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  考虑到中文OCR任务经常遇到的识别难点是相似字符数太多,容易误识,借鉴Metric Learning的想法,引入Center Loss,进一步增大类间距离,核心思路如上图公式所示。
  经过以上三个识别方向的优化策略,PP-OCRv2识别部分的实验效果如下:
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  经过以上五个方向的优化,最终PP-OCRv2仅以少量模型大小增加的代价,全面超越PP-OCR,取得了良好的效果。
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
 
  05良心出品的中英文文档教程
  随着本次PP-OCRv2升级,PaddleOCR的项目文档也全面升级,结构更清晰,内容更丰富:
 
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2
速度提升220%以及效果提升7%的OCR系统—PP-OCRv2

 
 
  别的不需要多说了,大家访问GitHub点过star之后自己体验吧:
  https://github.com/PaddlePaddle/PaddleOCR
  更多PaddleOCR开源项目相关内容,AI人工智能持续分享中!

7x24小时服务热线:400-996-8756

公司地址:河南省郑州市姚砦路133号金成时代广场6号楼13层

I CP备案号:豫B2-20110005-1

公安备案号: 41010502003271

法律顾问:河南天坤律师事务所-段志刚律师