Lukas Neuman——【ICDAR2015】Efficient Scene Text Localization and Recognition with Local Character Refinement


  • 算法介绍

Fig. 2. Overview of the method. Initial text hypotheses efficiently generated
by a MSER detector are further refined using a local text model, unique to
each text line

一、 候选字符提取

1. MSER提取,二值化
2. 算出Distance Map
3. 求出所有SSP(以每个像素为中心的3*3窗口内,若中心点是最大值,则表示是SSP点)

4. 对每个连通分量,计算5维特征

5. 用4中学到的5维特征训练SVM分类器(三类,单字符,多字符,背景)

二、 文本线形成
1. 每三个字符拟合一条直线(三个,拟合误差小)
2. 所有直线进行聚类
3. 对每类的文本线投票选出最终的文本线

三、 字符调整
1. 算法目标:补全每个文本框里的字符

2. 算法初始值:Pf为MSER像素值,B为其他像素值,DF为空
3. 算法步骤:
(1) 边界扩展:计算PF的外接矩形,并进行边界扩展(水平取字符平均宽度,高度取高度的1/3)
(2) 更新DF:计算PF点中的SSP点,加入到DF中
(3) 训练GMM:使用DF点作为前景,B点作为背景,学习GMM的参数
(4) 构建图模型:加入源点(source)和汇点(sink),边权重如下:
    1) 第一类:源点与DF、PF相连,汇点与B相连。这些边的权重即为公式中的U,由算法步骤(3)中的GMM模型给出;
    2) 第二类:相邻像素点相连。边权重即为公式中的V,通过计算像素点在RGB空间的欧式距离得到;
(5) 求最小割模型:利用GrabCut算法求最小割,割分成的两个集合一个为PF,一个为B。
(6) 重新迭代(1)~(5),直到收敛(PF和B不再变化)
4. 算法输出:一个稳定的PF集合(属于字符的像素点)和B集合(属于背景的像素点)。

5. 算法的后处理:
(1) 计算PF的连通分量,得到候选图;
(2) 如果PF或B为空,则表示只有前景或背景点,说明是噪声块

6. 算法的示例图如下:

Fig. 1. The method pipeline. Source image (a). Initial MSER detection and classification (b) - character MSERs denoted green, multi-character MSERs blue and background MSERs denoted red. Text lines formation (c) - bottom line estimate in red. Local text refinement for the first text line - initialization (d), first iteration (e), second iteration (f), the last iteration (g), definitive foreground pixels in green, probable foreground pixels in blue, background pixels in red, ignored pixels in yellow. Final segmentation and text recognition (h)

  • 有意思的问题

  1. 为什么原始的As计算方法不好,要换成带w权的?权w为什么是那样的?(提示:奇数可以,偶数double)
  2. 为什么要分成三类?(提示:单字符和多字符的5种特征差异性太大)
  3. 为什么要进行character refinement?(提示:第一,为字符识别提供更准确的字符区域,第二,优化检测得到的结果)
  • 未解决的问题

  1. 用5维特征训练SVM,特征会不会太短,会不会过拟合?
  2. 文本线形成算法具体是怎么实现,细节怎样?
  3. GrabCut算法的实现?
  4. Distance Map的实现?

论文阅读(Lukas Neuman——【ICDAR2015】Efficient Scene Text Localization and Recognition with Local Character Refinement)的更多相关文章

  1. 论文阅读(Lukas Neumann——【ICCV2017】Deep TextSpotter_An End-to-End Trainable Scene Text Localization and Recognition Framework)

    Lukas Neumann——[ICCV2017]Deep TextSpotter_An End-to-End Trainable Scene Text Localization and Recogn ...

  2. 【论文速读】Chuhui Xue_ECCV2018_Accurate Scene Text Detection through Border Semantics Awareness and Bootstrapping

    Chuhui Xue_ECCV2018_Accurate Scene Text Detection through Border Semantics Awareness and Bootstrappi ...

  3. 【CV论文阅读】+【搬运工】LocNet: Improving Localization Accuracy for Object Detection + A Theoretical analysis of feature pooling in Visual Recognition

    论文的关注点在于如何提高bounding box的定位,使用的是概率的预测形式,模型的基础是region proposal.论文提出一个locNet的深度网络,不在依赖于回归方程.论文中提到locne ...

  4. 论文阅读笔记四:CTPN: Detecting Text in Natural Image with Connectionist Text Proposal Network(ECCV2016)

    前面曾提到过CTPN,这里就学习一下,首先还是老套路,从论文学起吧.这里给出英文原文论文网址供大家阅读:https://arxiv.org/abs/1609.03605. CTPN,以前一直认为缩写一 ...

  5. 【论文速读】Fangfang Wang_CVPR2018_Geometry-Aware Scene Text Detection With Instance Transformation Network

    Han Hu--[ICCV2017]WordSup_Exploiting Word Annotations for Character based Text Detection 作者和代码 caffe ...

  6. #论文阅读# Universial language model fine-tuing for text classification

    论文链接:https://aclweb.org/anthology/P18-1031 对文章内容的总结 文章研究了一些在general corous上pretrain LM,然后把得到的model t ...

  7. 论文阅读 | HotFlip: White-Box Adversarial Examples for Text Classification

    [code] [pdf] 白盒 beam search 基于梯度 字符级

  8. 论文阅读笔记“Attention-based Audio-Visual Fusion for Rubust Automatic Speech recognition”

    关于论文的阅读笔记 论文的题目是“Attention-based Audio-Visual Fusion for Rubust Automatic Speech recognition”,翻译成中文为 ...

  9. [论文阅读] A Discriminative Feature Learning Approach for Deep Face Recognition (Center Loss)

    原文: A Discriminative Feature Learning Approach for Deep Face Recognition 用于人脸识别的center loss. 1)同时学习每 ...

随机推荐

  1. NOI 题库 7084

    7084  迷宫问题 描述 定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, ...

  2. android4.4源码下载简介

    1. $sudo apt-get install git-core curl2. mkdir ~/bin PATH=~/bin:$PATH3. curl http://commondatastorag ...

  3. 02.JavaScript基础下

    运算符 算术:+ 加.- 减.* 乘./ 除.% 取模 实例:隔行变色.秒转时间 赋值:=.+=.-=.*=./=.%= 关系:<.>.<=.>=.==.===.!=(不等). ...

  4. ArcEngine奇怪异常:HRESULT:0x80040351

    错误如图 根据该博客,http://blog.csdn.net/u011609113/article/details/51155116, 显示该错误为Duplicate Field Names wit ...

  5. javascript平时小例子⑦(鼠标跟随的div)

    <!doctype html><html> <head> <meta charset="utf-8"> <title>无 ...

  6. php摇杆Tiger摇奖

    先说下整体思路,代码已附下方. 1.递归产生一个非中奖数(即非连续数字:'111','222','333','444','555','666','777','888') 2.点击摇奖,把奖项通过设置的 ...

  7. BSBuDeJie_03

    一 快速登录 1 改变状态栏的style - (UIStatusBarStyle)preferredStatusBarStyle { return UIStatusBarStyleLightConte ...

  8. IOS网络第二天 - 06-POST请求

    ************POST请求 #import "HMViewController.h" #import "MBProgressHUD+MJ.h" @in ...

  9. android中工作线程安全

    当应用程序启动,创建了一个叫“main”的线程,用于管理UI相关,又叫UI线程.其他线程叫工作线程(Work Thread). Single Thread Model 一个组件的创建并不会新建一个线程 ...

  10. osip2 代码分析

    主要类型定义: 1.osip_t /** * Structure for osip handling. * In order to use osip, you have to manage at le ...