【AAAI 2019】SPCNet

这篇文章是谢恩泽在face++实习期间完成的一个工作,被AAAI2019接收,主要是做任意形状的场景文本检测,同时抑制错误样本的检测。

arXiv:https://arxiv.org/abs/1811.08605

Motivation

过去场景文字检测模型大多分为如下两类:1,基于语义分割的检测。2,基于边界框回归的检测。

这些方法的劣势在于不能很好的处理弯曲文字,而弯曲文字在自然场景中也是大量存在的。

我们考虑到弯曲文字可以通过实例分割的方法去处理,于是基于Mask R-CNN 去做。

ECCV2018有一篇Mask Text Spottor也是用了mask rcnn做了端到端识别,比我们早一点,做研究有局部撞车是常态了。。。不过eccv那篇对Maskrcnn本身并未做过多修改,创新之处主要在识别部分。

言归正传,本文的SPCnet将Mask R-CNN作为baseline,同时引入了text context 模块和re-score机制,从而提高检测准确率,降低FP的出现。

这张图是re-score模块的可视化图,可以看到,mask rcnn将水平box的分类分数最终的score,对于倾斜文本不是很友好,并且可能会引入fp,我们在这里将语义分割图上的响应和原本的score融合起来,得到的fus-score可以缓解mask rcnn直接移植到文字检测上分类分数不准的问题。

整个网络流程如下,a是fpn结构,b是text context(TCM)模块,d是TCM具体的方法。

整个方法在mask rcnn的基础上多了一个分支做文字的语义分割,并把语义分割的中间特征和检测分支的特征融合起来,再把语义分割的预测结果作为一个attention mask 乘回feature map,起到一个对特征attention的作用。

这块是重打分的一个可视化说明,绿色的是水平box,红色的是instance seg的结果,下面的是全局语义分割的结果,我们把instance seg的结果投影到语义分割图上,并在该区域内算一个响应值,得到instance score,并和原来的classification score融合得到最终的score。

该部分是label generation部分,主要是bounding box, instance seg和semantic seg的label。

消融实验

我们在icdar2017 val上做了实验,发现TCM和RS分别能提高模型的最终结果。在recall保持一致的情况下precision涨点,说明能有效抑制FP。

在icdar17,15,13和total-text(多语言,多方向,水平文本,弯曲文本)上都是state-of-the-art,充分证明了该方法的有效性。

PS:ic17上文字scale比例差距很大,所以随便写了个简陋的多尺度测试居然涨4个点。。。。。

一些可视化效果图:

在ICDAR2015上对比一些经典方法的FP情况,可以看到我们的方法可以有效抑制FP。

总结:这个工作是的第一份正儿八经的科研工作,在旷视大约两个半月时间完成,还是比较欣慰的,二作是一个本科生,也参与了很多工作在里面,同时也感谢很多人给予了不少帮助。

希望自己以后能在计算机视觉领域多发表高水平paper,同时欢迎同行多多交流。下面是我的知乎原文链接,欢迎评论交流。点击阅读原文,也可以直接访问。

©著作权归作者所有:来自51CTO博客作者mb5fe948249bc3d的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. LinearLayout 分割线
  2. Android四种模式里隐含的哲学
  3. [Android]如何创建一个View的分割线
  4. 线性布局分割
  5. java 文件的分割和合并
  6. Android(安卓)RecyclerView设置分割线
  7. 简单有效的ItemDecoration--分割线
  8. Android(安卓)RecycleView(二)——添加分割线
  9. ListView 添加长度样式不固定的分割线

随机推荐

  1. android如何使用DOM和SAXParserFactory来
  2. XML简明教程(2)
  3. android使用XmlPullParser来解析XML文件
  4. XML简明教程(1)
  5. 疯狂XML学习笔记(2)-------------格式要求
  6. android使用Gson来解析json
  7. 疯狂XML学习笔记(1)------------初识
  8. IOS解析XML文件
  9. XPath技术
  10. 如何建立一个 XML 的开发环境