論文筆記:Multi-Oriented Scene Text Detection via Corner Localization and Region Segmentation

論文筆記:Multi-Oriented Scene Text Detection via Corner Localization and Region Segmentation

4 人贊了文章

寫在最前面~~這篇論文是華中科技大學、face++和新加坡國立大學聯合發布的,大名鼎鼎的顏水城老師和白翔老師都有掛名。

論文核心:在已經存在的方法中,場景文字檢測的思路主要分為中,一種是類似faster rcnn的檢測方法,另一種是直接進行分割,但是這兩種方法都存在各自的缺陷。論文融合了檢測和分割的思路,使用default box的思路去回歸到corner point,然後對corner point進行sample和group,獲取candidate box,然後通過rotated position sensitive roi average pooling得到score,然後濾除得分低的box。

一、Network

論文採用的基礎架構是比較經典的VGG。考慮到場景文字的文字變化較大,網路必須有足夠大的容量去解決這個問題,並且自然場景背景比較複雜,因此網路層必須包含更多的信息。因此採用了FPN/DSSD的架構。

細節上,將VGG的兩個fc轉換成卷積,然後為了增大感受野,又加了5層卷積,然後開始進行多個反卷積,得到原圖大小的解析度,然後從中間層中取出層來進行分類、回歸以及分割。

二、Corner Detection

定義旋轉的bounding box為R,然後對每一個焦點表示為(xc, yc, ss, ss)其中xc、yc為角點的坐標,ss為bounding box的最短邊(個人理解這樣是為了創造一個水平的box,然後和default box進行匹配,容易計算)。依據SSD和DSSD的思路,論文使用default box去檢測角點。不過不同於直接輸出classication score和candidate box的offset,角點檢測更加複雜,因為同一個角點可能屬於不同的bounding box。因此,論文回歸了classication score和對應四種角點類型的四個candidate box的offset。對於一個mxn的特徵圖,假設每個cell的default box 為k,則score分支和offset分支則輸出2個score和4個對應不同類型的corner的defalt box的offset。其中2代表的是這個位置上是否存在corner point。因此,分別輸出kxqx2的score和kxqx4的offset,其中q為corner point的類型,默認為4.

三、Position-Sensitive Segmentation

傳統的分割採用的是對每個像素進行分類,但是如果物體發生重疊,就難以區分這個像素到底屬於誰,因此後期需要進行極為複雜的後處理。 受到InstanceFCN的激發,論文採用了 position-sensitive segmentation去生成e text segmentation maps。細節上,就是把bounding box劃為gxg個bin,每個bin里的像素區域決定是否屬於這些像素是否屬於這個bin。position-sensitive segmentation和 corner point detection使用的同一個網路,在不同的層間進行雙線性插值,resize到同一個scale,然後進行add操作,然後通過兩個1x1conv -BN-RELU-Deconv 的block來加大混合特徵的解析度,並且最後的deconv的kernel數設為g。

四、Optimization

loss function如圖所示,分類採用的交叉熵,同時採用OHEM平衡正負樣本數目

回歸採用的smooth L1

分割採用的是Dice loss

五、Inference

1、sample and group

在inference階段,corner points由predicted location, short side and confidence score生成。在經過score>0.5以及NMS操作之後,cornet points集合就生成了。然後通過對這些點集進行sample和group的操作去生成candidate box。理論上,已知兩個點和兩個點連成線段的垂線,就能構造出一個旋轉矩形。對於每個corner point,短邊已知,我們通過sample和group可以形成旋轉矩形。

以下先驗規則濾除不合適的點對:

1)左上點的橫坐標必須大於右上點的橫坐標

2)短邊長度必須大於5

3)兩個點的短邊比值必須小於等於1.5

2、score

獲取多個candidate boxes後,採用Rotated Position-Sensitive ROI Average pooling layer獲取得分。即對每一個bounding box劃分gxg哥bin,然後對每個bin去最小外接矩形,然後對每個bin里的像素取均值,得到gxg哥均值,然後在去所有bin的均值,得到score,然後濾出得分低於0.6的bounding box。

六、Experment


推薦閱讀:

TAG:OCR光學字元識別 | 人工智慧演算法 | 深度學習DeepLearning |