文本检测 论文阅读笔记之 Pixel-Anchor: A Fast Oriented Scene Text Detector with Combined Networks
Pixel-Anchor: A Fast Oriented Scene Text Detector with Combined Networks
摘要:最近語義分割和通用對象檢測框架已被場景廣泛采用文本檢測任務,但是他們在實踐中存在明顯的缺陷。在本文中,我們提出一種新穎的端到端可訓練的深度神經網絡框架,名為Pixel-Anchor,它結合了語義分割和SSD在一個網絡中,通過特征共享和anchor 水平的注意力機制來檢測自然場景下多方向文字。為了處理文字大小以及寬高比的復雜變化,在語義分割部分我們結合FPN和ASPP操作作為我們的編碼器 - 解碼器結構,同時在SSD中我們提出一種新的自適應預測層。Pixel-Anchor檢測場景文本除了有效的融合的NMS之外沒有其它復雜的后處理步驟。提出的Pixel-Anchor進行了基準數據集測試。 Pixel-Anchor在文本定位精度和運行速度方面優于競爭方法。在ICDAR 2015數據集中,對于960×1728分辨率圖像提出的算法在10 FPS時達到0.8768的F分數。
1.引言.(部分主要內容)
基于語義分割的方法具有較高的精確度,但由于小文本像素級特征太稀疏,因此召回率較低。?基于錨的方法具有高召回率因為錨級功能對文本不太敏感大小,但它遭受“錨定困境”問題(在2.2節中描述),并不是那么好像基于語義分割的方法那樣獲得高精度。而且,現有方法對于貫穿整個圖像的較長中文文本行的檢測表現不佳。
為了解決這些問題,提出的網絡結構分為兩部分named the pixel-based module and the anchor-based module。兩個部分共享ResNet50提取的特征。在pixel-based module我們結合FPN和ASPP(atrous spacial pyramid pooling)操作作為我們的編碼器 - 解碼器結構,通過在1/16的特征圖上引入ASPP,以較低的代價獲得更大的感受野 ;在anchor-based module我們提出一種新的自適應預測層(APL)來檢測尺寸變化大的文字;APL可以有效地調整網絡的容納領域,以適應文本形狀。 為了檢測在圖像上運行的長文本行,我們進一步在APL中提出了?“long anchors” and “anchor density”。
2.相關工作
2.1 The pixel-based method
文本的筆畫特征是顯而易見的,所以它是易于從背景中分割文本像素。基于像素的方法通過文本像素特征直接預測文本邊界框。在文本像素分割階段,每個像素的文本/非文本分數由典型的編碼器 - 解碼器網絡進行預測。?流行的基于像素的方法,像EAST 以及Pixel-Link , 和PSENet都用FPN作為基本結構。在FPN中,U形結構被構造以保持高空間分辨率和語義信息。
在文本邊界框預測階段,EAST預測在每個文本像素的文本邊界框,然后進行NMS得到最終檢測結果。對EAST進行修改,FOST獲得了具有競爭力的結果。然而,因為它們處理的文本實例的最大大小與網絡的接受域成正比,所以在檢測非常長的文本時表現不佳。Pixel-Link 和 PSENet通過鏈接相鄰文本像素來獲取文本實例,這種方法不受感受野的限制,所以它可以檢測很長的文本行。然而,這種方法方法后處理步驟是復雜的。易受復雜背景的干擾。
為了辨別非常接近文本實例,通常基于像素的方法使用“縮小多邊形”來分配真實文本標簽。由于真實標簽已經縮小了很多,所以輸入圖像必須保持高分辨以檢測小文本在時間上相應地提高成了成本。
2.2?The anchor-based method
anchor的概念起源于更快的Faster-RCNN,這是兩步通用對象檢測框架。首先,它用默認的boxs生成候選框(proposal);其次預測相對于anchors的偏移量而不是直接預測bounding boxs,這種策略在物體檢測上得到普遍的應用像SSD,YOLO,SSD是在速度與精度之間的權衡,在自然場景下文字的檢測得到廣泛的應用。
Textboxes [13] 和 Textboxes++ [14] 修改SSD應用到自然場景文字檢測,Textboxes 在三個方面優化了SSD以適應水平文字檢測。1.增加anchor的長寬比以更好地適應文本框的形狀。明確地,文本框將anchor的縱橫比設置為1, 2, 3,5, 7,10;2.增加垂直方向上的anchor密度;3.使用1*5的卷積核而不是標準的3*3的卷積核,1*5的卷積核更加適用長文本的檢測。而Textboxes++進一步擴大anchor的縱橫比為1, 2, 3、5, 1/2, 1/3, 1/5;使用3×5卷積濾波器進行多方向文本的檢測。Textboxes++雖然在公開數據集上獲得了很好的效果,但它無法處理密集和大傾斜角度的文本。Textboxes++使用水平矩形作為錨,如果有兩個鄰近的大傾斜角度文本實例,那么很難確定哪個文本實例應該與anchor匹配。我們稱為“Anchor Matching Dilemma”現象。為了克服上述問題,DMPNET〔22〕和RRPN(23)使用不同的四邊形錨來檢測多方向文本。然而,它極大地增加錨的數量。這種方法計算交叉點之間的兩個任意的四邊形時會很耗時,特別是當錨數量較大時。除了“錨匹配困境”之外,Textboxes++也遭受場景限制。1×5或3×5卷積濾波器的接收場不足以檢測貫穿圖像的文本行,即使錨的縱橫比擴大到1:10,也不能匹配長寬比超過1:30的中文文行。
與基于像素的方法相比,基于錨的方法直接學習錨級文本實例的抽象特征,而不是像素級筆劃特征。錨定水平抽象的特征必須面對更多的多樣性,因此通常有更多的假陽性。基于錨的方法學習的錨級抽象特征對文本大小更具有魯棒性,并有效地檢測小文本。根據我們的實驗,當使用小圖像時基于錨的方法通常具有更高的召回分數。
3.本文方法
3.1 整體框架
基本框架如圖4所示,
我們將基于像素的方法和基于錨的方法結合起來通過特征共享和anchor 水平的注意力機制。RESNET-50作為特征提取器,分類之前輸出步幅為32。
基于像素的模塊的語義分割的任務,為了密集特征提取通過去除最后一個Res-block的步幅和應用空洞卷積(rate=2),將輸出步幅設置為16。相應地,1/4、1/8和1/16特征圖是從RESNET-50骨干網絡提取并共享的特征圖。將基于像素的模塊中的分割熱圖輸送到基于注意機制的錨級模塊。在推理階段,除了融合的NMS沒有其它復雜的后處理操作。
3.2 The pixel-based module
大多數基于像素的文本檢測器,如EAST和Pixel-Link采用FPN作為編碼器解碼器模塊。為了增加我們網絡的感受野,我們將FPN和ASPP操作結合起來作為我們的編碼器解碼器結構,用空洞率{ 3, 6, 9,12, 15, 18 }修改ASPP(原論文DeLPABV3+[ 7 ]中使用{ 6, 12, 18 })以獲得更好的感受野。在解碼階段,編碼特征首先2倍上采樣(bilinearly upsampled)然后與相應的低級特征級聯。解碼的特征圖同時保持高空間分辨率和語義信息。
與FPN模塊相比,ASPP操作是更簡單更有效。這是一種增大感受野額低成本操作,因為它的大部分操作是在1/16個特征圖上進行的。所以網絡具有較大的接受域,同時保持高效率。基于像素的模塊的輸出由兩個模塊組成部分:旋轉盒子和注意力熱圖。這個旋轉框(RBOX)預測器包含6個通道(類似EAST)。第一通道計算每一個像素為正文本的概率,以下4個通道預測其與文本邊界的頂部、底部、左側、右側的距離,最后一個通道預測文本邊界框的方向。注意熱圖包含指示每個像素作為文本的概率的一個通道,并將被送入the anchor-based module。對于RBOX預測器,為了區分非常接近文本實例,使用“縮小多邊形”方法(類似FOTS)。僅收縮部分原文區域被認為是文本區域,而包圍盒與收縮多邊形之間的區域被忽略。對于注意熱圖不使用“縮小多邊形”方法,所有原始文本區域被認為是正文本區域。
我們采用online hard example mining(OHEM)計算像素分類損失。對于每個圖像,512 hard negative non-text pixels,512 random negative non-text pixels,所有正文本像素被選擇用于分類培訓。像素分類損失函數如下:
H(pi, pi*)是交叉熵損失。
我們還使用OHEM計算文本回歸框,這一點與FOTS相同。我們從每張圖片選擇128 hard positive
 text pixels 和 128 random positive text pixels 進行回歸訓練,回歸框損失函數如下:
IoU(Ri, Ri*) 是第i個像素的預測回歸框與真實回歸框(between the predicted text bounding box Ri at the i-th pixel and its ground truth Ri*)的IoU 損失 ,第二項是方向損失,λθ是平衡IOU損失和角度損失的權重,在我們的實驗中設定為10。因此pixel-based module損失如下所示:
αp是來平衡分類損失和位置損失,在我們的實驗中設置為1。
3.3 the anchor-based module
此模塊是我們修改SSD來檢測尺寸變化大的文本,結構如下圖:
從Resnet-50基本骨架得到1/4和1/16的熱力圖是共享特征層。1/32、1/64、1/64、1/64特征圖在1/16的特征圖之后通過全卷積操作被附加。為了避免生成太小的特征圖,最后兩個特征圖的分辨率保持不變,并且應用相應的空洞卷積(atrous convolution rate=2)。使用1/4的特征圖代替在原始SSD中的1/8個特征圖以增強網絡檢測小文本的能力。在feat1也就是來自于the pixel-based 模塊熱力圖,注意力監督信息被應用。熱力圖(圖6右下角藍色方塊,這個圖從哪來?)先進行指數操作然后與feat1進行點乘。使用指數運算,將每個像素作為正文本的概率映射到范圍[1,e],因此能夠保留背景信息同時凸顯檢測信息。以這種方式減少了小文本的假陽性檢測。
此外,我們提出了“自適應預測器層”(APL),附加到每個特征圖以獲得最終文本框。在APL中,anchor根據不同的縱橫比被分組,每個組使用不同大小的濾波器。具體來說anchor被分為5組:a.正方形anchor 寬高比1:1,卷積核大小3*3;b.中等水平anchor, aspect ratios = {1:2, 1:3, 1:5,1:7},卷積核大小3*5;c.中等垂直anchor,aspect ratios = {2:1, 3:1, 5:1,7:1},卷積核大小5*3 d.較長水平anchor,aspect ratios = {1:15, 1:25,1:35},卷積核大小1*n?;e較長垂直anchor,aspect ratios =?{15:1, 25:1, 35:1},卷積核大小n*1。對于長anchor,每一層的特征圖的參數n是不同的,這取決于檢測的文本行的長度。在feat1的APL中剔除長anchor,在feat2-feat6中,n被設置為{33, 29, 15, 15, 15}。通過使用APL,卷積核的感受野可以更好地擬合不同長寬比的文本。
為了檢測密集文本,我們提出了“anchor density”,如下圖所示:
在Textboxes++中,anchors只在垂直方向復制一次,在我們的框架里,方形錨在水平方向上和垂直方向上重復。水平錨是在垂直方向上重復,垂直錨在水平方向上重復。anchor密度在每個特征層單獨的被指定。在我們實驗中,對于中等anchor,feat1-feat6,
 anchor密度是{1, 2, 3, 4, 3, 2},對于長的anchor,feat2-feat6,anchor 密度是{4, 4, 6,4, 3}。
真實標簽分配策略及基于錨的模塊的損失函數與Textboxes ++類似。任意方向的文本是以四邊形表示,四邊形的最小包圍矩形(MBRS)用于匹配錨。具體而言,錨定為文本四邊形(正文本錨)IOU最大值大于0.5,如果最高IOU小于0.5則認為是背景。基于錨的模塊的輸出與Textboxes++相同,每個anchor對應輸出9通道的預測向量,第一個通道是每個錨為正文本四邊形的概率,剩下的8個通道是預測文本四邊形坐標相對于錨的偏移量。
我們采用OHEM計算分類損失,并設置負例與正例之比為3:1,分類損失如下:
?a是被選擇來分類訓練的anchor集合(negative text anchors and positive text anchors),| ? |操作表示anchor集合里positive? anchor 的數量。
四邊形的回歸損失函數如下:
pos(?a)表示postive anchor,SL表示smooth L1函數。因此對于the anchor-based module,損失函數計算為:
αa在實驗中設置為0.2。
3.4 訓練
整個訓練器使用ADAM優化器,損失函數如下:
αall是3.0來平衡兩者之間的損失。
對于數據擴增,我們均勻地從原圖采樣640×640小圖像塊,batchsize為32。在ImageNet數據集上訓練的模型,作為我們的預訓練模型,同時使用SynthText 方法合成80w文本圖像預訓練模型,然后在基準數據集上進行訓練。第一階段學習率設置為0.0001第二階段設置為0.0001.
總結
以上是生活随笔為你收集整理的文本检测 论文阅读笔记之 Pixel-Anchor: A Fast Oriented Scene Text Detector with Combined Networks的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 【Scratch案例实操】Scratch
- 下一篇: java毕业设计电影推荐网站mybati
