An end-to-end TextSpotter with Explicit Alignment and Attention
論文下載:http://cn.arxiv.org/pdf/1803.03474
代碼下載:https://github.com/tonghe90/textspotter
1方法概述
1.1主要思路
將文字檢測和識別整合到一個端到端的網絡中,檢測使用PVAnet,識別使用RNN,其中加入一個Text-alignment layer和字符attention和mask機制,通過利用Text-alignment layer中的抽樣網格將文字區域固定為64*8大的feature map,再輸入雙向LSTM進行識別。
1.2文章亮點
·提出Text alignment layer,用網格抽樣方案代替RoI Pooling,處理多方向的文本區域
·增加字符attention和mask機制,使用字符的空間信息作為額外的監督,指導decode過程
·提出一個新穎的training strategy
1.3主要流程
·整個端到端識別主要有三個步驟:
·檢測:用PVAnet代替ResNet50的EAST框架,得到任意方向的文本區域
·Test alignment:將四邊形區域統一映射為大小為64*8的feature map
·識別:Test alignment得到的feature map經過encode-decode得到最終結果
2 方法細節
·檢測
·檢測的框架是用PVAnet代替ResNet50的EAST框架,通過調節IoU損失實現一個多任務預測。
·最終得到兩個分支:第一個子分支返回文本分類概率。第二個子分支返回bounding box的五個參數,分別是當前點到上下左右邊的距離以及傾斜角度。
·識別
上述得到的四邊形將被輸入RNN分支。
·Text-alignment layer:
·這步的目的:
·它可以將任意方向的region proposal固定為統一大小的feature map,精確地跟每個像素對齊
·為什么不用RoI Pooling
·RoI Pooling進行量化,不可避免地在原始RoI區域和提取出來的特性之間引入了misalignment。
·RoI Pooling是為矩形區域設計的,只能夠定位水平region proposal。
·Text-alignment layer做什么
·給定一個四邊形區域,首先在feature map中建立一個64*8大的采樣網格,在這個區域內生成等間距的采樣點,Vp代表每個采樣點p空間位置(px,py)的特征向量,這個特征向量通過bilinear sampling計算,公式如下:
·Vpi是p周圍的四個點,g(m,n)是雙線性插值函數
·最終輸出固定大小為64*8的文本區域
·Character Attention
·識別流程
·經過Text-Alignment Layer得到的feature map,經過多個inception模塊,最終大小變為1*64,然后經過雙向LSTM操作,encode-decode操作后輸出最終識別結果。
·Attention alignment
·這張圖與傳統的注意力機制不同的地方是在增加了字符的attention作為監督,引入了字符對齊的損失函數,指導decode過程。這就是圖中update的由來
·即attention point,它應該盡可能和字符的中心點盡可能對齊;
·是第t個字符GT的中心坐標,是當前字符的GT寬度,T是一個序列的字符數
·這個損失函數表示歸一化的attention
·Character mask
·增加了binary masks,引入,mask數等於字符label數
·Position embedding
·從attention向量中生成一個one-hot向量,然后直接將one-hot向量和上下文向量直接連接起來,得到一個新的帶有額外one-hot注意力信息的特征表示。
·Overall loss
·Lloc是文本檢測的loss,Lword是文字識別的loss,Lalign和Lmask是可選的loss,可以不使用。λ1,λ2是平衡因子,這里面的實驗都設為0.1。
·Training Strategy
·從800K張合成圖像張隨機抽取600K張,固定檢測部分,提供Ground trut文本框進行單詞識別的訓練,迭代120K次,只計算識別,字符對齊和mask的loss
·打開檢測部分,仍然提供GT文本框,更新權重,迭代80K次,接下來用檢測部分生成抽樣網格,進行端到端訓練,迭代20K次
·在ICDAR2013和2015數據集上進行端到端訓練,迭代60K次。
3 實驗結果
·在ICDAR2013上得到的數據與最先進的結果相當,而在ICDAR2015上,這篇文章的方法大大超過了最新的結果。
·使用這篇文章的方法,一些小的文字和大幅度傾斜的文字都能很好的被識別到。
4 總結和收獲
·檢測部分用PVAnet代替ResNet50的EAST框架
·用bilinear sampling代替RoI Pooling,處理多方向的文本區域
·在原有的attention中增加字符的對齊信息和mask作為額外的監督,指導decode過程
·一個新穎的training strategy