云从科技提出了一种端到端的深度学习文本检测框架Pixel-Anchor,通过特征共享的方式高效的把像素级别的图像语义分割和锚检测回归放入一个网络之中,
把像素分割结果转换为锚检测回归过程中的一种注意力机制,使得锚检测回归的方法在获得高检出率的同时,也获得高精确度。此外,对于如中文这样文本长
度跨度很大的语言,在Pixel-Anchor中,提出了一个自适应的预测层,针对不同层级的特征所对应的感受野范围,设计不同的锚以及锚的空间位置分布,以更
高的效率更好的适应变化的文本长度。如前所述,在两个具有挑战性的自然场景文本检测测试集ICDAR2015以及ICDAR2017 MLT,Pixel-Anchor在检测准确率
和检测效率两个综合维度上,获得了至今为止最好的结果(具体结果见下面Table 1,Table 2和Table 3)。该框架在满足生产环境实时性要求的基础上获得了很
高的检测准确率,目前该框架已在云从科技的证件票据识别系统和图片广告过滤系统中上线。

文章导读

Pixel-Anchor这套文本检测框架,和目前主流的文本检测框架相比,提出了两个大的改进点:

第一点是提出了把像素级别的图像语义分割以及基于锚的检测回归方法高效融合在一起,可端到端训练的检测网络。在该网络中,像素级别的图像语义分割以及基于锚的检测回归方法共享基础特征,而像素级别的图像语义分割结果作为一种注意力机制,用以监督锚检测回归的执行过程,在有效保证文本检出率的同时,提升了文本检测的精度。

总体框架见上图,Pixel-Anchor采用学术界通用的ResNet-50作为特征提取主干网络,提取出1/4,1/8,1/16的特征图作为像素级别语义分割模块(Figure 5)以及锚检测回归模块(Figure 6)的基础特征,同时语义分割模块的输出结果以热力图的形式注入到锚检测回归模块中。整个网络简单轻巧,可通过ADAM优化方法进行端到端的训练。

第二点是在锚检测回归这个模块中引入了自适应预测层“Adaptive Predictor Layer”,该预测层连接在不同层级的特征图之后,根据各特征图感受野的不同,调整锚的长宽比,卷积核的形状以及锚的空间密度(anchor density,见Figure 7),用以高效的获得各特征图上的文本检测结果,进而对文本长度的变化获得更好的适应性。自适应预测层在检测水平长文本上的性能非常出色,和经典的CTPN方法相比,我们的方法不需要复杂的后处理,更鲁棒的同时效率更高。

 
链接:https://zhuanlan.zhihu.com/p/50401761

云从科技 OCR任务 pixel-anchor 方法的更多相关文章

  1. 袋鼠云旗下新公司云掣科技启航,深耕云MSP业务助推企业数字化转型

    1983年3月15日,国际消费者联盟组织将3月15日确立为国际消费者权益日. 2019年3月15日,袋鼠云举办三周年年会. 一生二,二生三,三生万物.植树节后,万物生长. 年会现场,袋鼠云宣布成立新公 ...

  2. 云服务器 ECS Linux 误删除文件恢复方法介绍

    云服务器 ECS Linux 下,rm -rf  意味着一旦删除的文件是无法挽回的.但如果在没有文件覆盖操作的前提下,可以先尝试相关方式进行文件恢复. 本文对此进行简要说明. https://help ...

  3. 消息推送之百度云推送Android集成与使用方法

    这两天由于项目需要,研究了一下百度云推送,本来这事没什么多大工作量的,但注册百度开发者账户创建应用令我蛋疼菊紧了好一阵,这些东西做了对技术没啥提升,不做又不行,必经之路.好在我耗费了N多个毫毫秒秒后稀 ...

  4. 阿里云提示ECS服务器存在漏洞处理方法

    1.阿里云提供生成修复命令,但是这个只提供给企业版,即收费的: 2.自己手动修复的话, 采用软件升级一般都可以解决.除了提示带kernel的高危漏洞的,其他的不需要重启实例即可修复. 有kernel的 ...

  5. OCR训练数据生成方法

    有的时候我们训练网络的时候,数据集在收集的过程中由于种种原因导致图像收集的不完整,比如某些种类很少,或者没有,这个时候我们就可以考虑自己生成数据集. 这个和data augmentation还不太一样 ...

  6. 融云SDK:获取用户Token的方法

    融云SDK查看ServerAPI里面有个获取Token的方法,本以为只要传三个参数就可以.后来发现,在请求头有几个必须要传的参数,否则服务器返回401(未授权).拿获取Token接口为例子 如图所示, ...

  7. 阿里云CentOS7系列一 -- 安装JDK7的方法.

    最近因为数据采集以及生产环境冲突.导入windows Server 2008系统经常死机.经讨论决定把采集服务程序和生产服务进行分开.采集程序通过windows Server2008运行.而生产程序通 ...

  8. vps云服务器建站后绑定域名的方法?

    有很多的新手站长们,都不知道vps建站后该如何绑定自己的域名,这里就Windows系统的VPS主机利用iis绑定网站域名的方法,简要介绍一下. 通常情况下,我们在使用IIS建站的时候,都会有一步提示, ...

  9. 阿里云Nginx绑定多个域名的方法

    nginx绑定多个域名,可通过把多个域名规则写一个配置文件里实现,也可通过分别建立多个域名配置文件实现,一般为了管理方便,建议每个域名建一个文件,有些同类域名也可写在一个总的配置文件里. 一.每个域名 ...

随机推荐

  1. 理解闭包的微观世界和JS垃圾回收机制

    function a() { ; function b() { alert(++i); } return b; } var c = a(); c(); 一.闭包的微观世界 如果要更加深入的了解闭包以及 ...

  2. 分解大量switch-case分支的两种方法

    项目经过长期多人的维护,所谓人多手杂,出现不少过多过长的switch-case分支,或者多重switch-case嵌套.每每添加功能,我都会紧皱眉头,然后带着罪恶感向已经成百上千行的函数里再添上一个c ...

  3. mysql 数据库远程访问设置方法

    摘自: http://www.iteye.com/topic/418151 mysql数据库远程访问设置方法 1.修改localhost更改 "mysql" 数据库里的 " ...

  4. zypper命令使用示例

    导读 Zypper是OpenSUSE和企业版SUSE中软件包管理器ZYpp的命令行接口. 主要用于:1.管理软件包:zypper可用来安装.删除.更新和查询本地或远程的软件包.2.管理仓库:zyppe ...

  5. 更改Apache的首页

    本机Apache的安装过程请见: Apache的首页是由/usr/local/httpd/conf/httpd.conf文件的DocumentRoot决定的. ...## DocumentRoot: ...

  6. ArcEngine10.x开发的许可问题

    1. ArcEngine9.x迁至ArcEngine10.x 相信很多同学都知道,在ArcEngine9.x下正常编译的代码到ArcEngine10.x会报错:ArcGIS version not s ...

  7. 在AE10.1环境下调试其他版本的程序

    不同人的可能使用的开发环境不一样,使用SDK版本也不一样,比如用ArcEngine9.3开发的程序在ArcEngine10.1下就不能运行,需要重新调试,才能运行. 这里的例子程序是其他网友在ArcE ...

  8. Asp.net 之页面处理积累(一)

    1.实现超链接跳转网页直接定位到跳转后页面中部,而不是要往下拖,才能看到想看的内容 (1)在跳转后页面想定位的位置加:<a name="middle" id="mi ...

  9. CSDN日报20170310——《假如我是一行代码》

    [程序人生]假如我是一行代码 作者:henry-hacker 我们不止一次在生活中听到"假如我如何如何,我会如何如何"的句式.而这种句式说出来的一般意义无非就是让我们站在还有一个角 ...

  10. mac系统下ionic环境配置

    本人是在mac环境下进行配置的: 下载nodejs:https://nodejs.org/download/ 并双击安装 Cordova and Ionic command-line tools 安装 ...