当前位置:网站首页>文本识别-SVTR论文解读
文本识别-SVTR论文解读
2022-06-30 20:40:00 【‘Atlas’】
文章目录
论文: 《SVTR: Scene Text Recognition with a Single Visual Model》
github: https://github.com/PaddlePaddle/PaddleOCR
解决问题
常规的文本识别模型包括两部分:用于特征提取的视觉模型及文本转录的序列模型;
问题:
这种模型虽然准确率高,但是复杂且低效;
解决:
作者提出SVTR,仅有视觉模型,免去序列模型;
1、解耦图像文本patch;
2、层级阶段通过mixing、merging、combining循环执行;全局和局部mixing模块用于感知字符内和字符间形态;
SVTR-L在英文及中文识别上速度快的同时accuracy高;
算法
SVTR整体结构如图2所示,
流程如下:
1、输入文本图像 H × W × 3 H \times W \times 3 H×W×3,经过patch embedding模块,转换为 H 4 × W 4 \frac H4 \times \frac W4 4H×4W个维度为 D 0 D_0 D0的patch;
2、三个stage用于提取特征,每个stage有一系列mixingblock及merging 或combing构成;
局部和全局mixing block用于提取笔画局部特征及元素间依赖关系;
使用此backnobe,可表征不同距离不同尺度的字符元素特征及依赖关系,此特征尺寸为 1 × W 4 × D 3 1 \times \frac W4 \times D_3 1×4W×D3,用符号C表示;
3、最后经过FC层得到字符序列;
progressive overlap patch embedding
作者没有使用vit中kernel=4, stride=4卷积;而是使用两个kernel=3,stride=2卷积,如图3;虽然增加一些计算量,但是有利于特征融合;消融实验见3.3
mixing block
mixing block如图4所示,
局部特征:编码字符形态特征以及字符不同部分之间相关关系;
全局特征:表征不同字符之间、有文本或无文本的patch之间相关关系;
Merging
为降低计算量以及去除多余表征,提出Merging;通过kernel=3,stride=(2,1),conv将高度下采样2倍;因为大多文本是水平的;同时增加channel维度补偿信息损失;
Combining & Prediction
Combining
首先池化高度维度为1,接着为全连接层、非线性激活层和dropout层;
Prediction
线性分类器有N个节点,生成 W 4 \frac W4 4W的序列,理想情况下同一字符的patch会转录为重复字符,无文本patch会转录为空格;英文中N设置为37,中文中N设置为6625;
英文模型最大预测长度为25,中文模型最大预测长度为40.
结构变体
SVTR中有几个超参,每个stage中channel深度,head数量,mixing blockj数量及local mixing、global mixing数量,因此有SVTR- T (Tiny), SVTR-S (Small), SVTR-B (Base) and SVTR-L (Large),如表1。
实验
IC13:ICDAR 2013数据集,规则文本。
IC15:ICDAR 2015数据集,不规则文本。
patch embedding消融实验
如表2左侧,渐进embedding机制超越极限0.75%,2.8%,在不规则文本识别效果明显;
Merging消融实验
如表2右侧,渐进降分辨率网络相对保持固定分辨率网络不仅计算量提升,而且性能提升
置换融合模块消融实验
如表3,
1、每种策略都有一定程度提升,归因于全面字符特征感知;
2、L6G6方式最佳,IC13性能提升1.9%,IC15性能提升6.6%。
3、切换他们的组合坑你导致全局mixing block不起作用,其可能重复关注局部特征;
SOTA比较
图5为各个模型accuracy与参数量、速度关系;
表4为各种方法性能比较,
SVTR综合耗时及accuracy具有不错性能;
结论
本文提出的图像文本识别视觉模型SVTR,提出多细粒度字符特征表征局部笔画及多尺度下字符间依赖关系;因此SVTR效果佳。
边栏推荐
- PHP require/include 区别
- 在线教育项目用户登录和注册
- By analyzing more than 7million R & D needs, it is found that these eight programming languages are the most needed by the industry
- 居家办公没有“血泪史”| 社区征文
- Lumiprobe biotin phosphimide (hydroxyproline) instructions
- The newly born robot dog can walk by himself after rolling for an hour. The latest achievement of Wu Enda's first disciple
- Peking University ACM problems 1003:hangover
- 1.微信小程序页面跳转方法总结;2. navigateTo堆栈到十层不跳转问题
- 报错FileSystemException: /datas/nodes/0/indices/gtTXk-hnTgKhAcm-8n60Jw/1/index/.es_temp_file:结构需要清理
- Lingyun going to sea | 10 leap &huawei cloud: jointly helping Africa with inclusive financial services
猜你喜欢

Deflection lock / light lock / heavy lock lock is healthier. How to complete locking and unlocking

【数字IC应届生职业规划】Chap.1 IC行业产业链概述及代表企业大厂汇总

Failed to configure a DataSource: ‘url‘ attribute is not specified and no embedded datasource could

PHP require/include differences

uniapp-路由uni-simple-router

Lumiprobe dye hydrazide - BDP FL hydrazide solution

Lumiprobe 聚乙二醇化和 PEG 接头丨碘-PEG3-酸研究

基于开源流批一体数据同步引擎ChunJun数据还原—DDL解析模块的实战分享

1.微信小程序页面跳转方法总结;2. navigateTo堆栈到十层不跳转问题

AVL平衡二叉树(一) - 概念与C语言实现
随机推荐
[原创]用代码dialog 高度 宽度无法屏幕屏幕问题
MySQL简介、详细安装步骤及使用 | 黑马程序员
请问海量数据如何去取最大的K个
亚马逊在阿拉伯联合酋长国限制LGBTQ相关的搜索和产品销售
股票开户优惠链接,我如何才能得到?另外,手机开户安全么?
基于开源流批一体数据同步引擎ChunJun数据还原—DDL解析模块的实战分享
Golang应用 ━━ 安装、配置与使用hugo博客系统
vncserver: Failed command ‘/etc/X11/Xvnc-session‘: 256!
第299场
C文件指针
Lumiprobe nucleic acid quantitative qudye dsDNA br detection kit
Peking University ACM problems 1006:biorhythms
Go学习笔记
Lumiprobe细胞生物学丨DiA,亲脂性示踪剂说明书
Vite2兼容低版本chrome(如搜狗80),通过polyfills处理部分需求高版本的语法
在手机炒股开户安全吗?
Lumiprobe染料 NHS 酯丨BDP FL NHS 酯研究
Peking University ACM problems 1000:a+b problem
第81场双周赛
二叉查找树(一) - 概念与C语言实现