文本檢測:一種新穎的漸進式拓展網絡PSENet

論文研讀PSENet:Shape Robust Text Detection with Progressive Scale Expansion Network


現狀:文本檢測的主流方法:基於迴歸(regression-based)、基於分割(segmentation-based)。

基於迴歸(regression-based)的方法通常基於通用對象檢測框架,例如Faster R-CNN [31]和SSD [22]。 TextBoxes [19]修改了卷積核的錨定比例和形狀,以適應文本的各種縱橫比。 EAST [42]使用FCN [25]直接預測每個像素的得分圖,旋轉角度和文本框。 RRPN [28]採用了Faster R-CNN,並提出了RPN部分的旋轉建議以檢測任意方向的文本。 RRD [20]從兩個單獨的分支中提取了用於文本分類和迴歸的特徵圖,以更好地檢測長文本。但是,大多數基於迴歸的方法通常需要複雜的錨設計和繁瑣的多個階段,這可能需要詳盡的調整並導致次優性能。 此外,上述論文是專為多種方向的文本檢測而設計的,在處理實際在實際場景中廣泛分佈的曲線文本時可能會不足。

基於分割(segmentation-based)的方法主要受全卷積網絡(FCN)的啟發[25]。 Zhang等[39]首先採用FCN提取文本塊,並通過MSER從這些文本塊中檢測字符候選。 Yao等[38]將一個文本區域表示為多種屬性,例如文本區域和方向,然後利用FCN預測相應的熱圖。 Lyu等人[27]利用角點定位為文本實例找到合適的不規則四邊形。 PixelLink [4]通過預測不同文本實例之間的像素連接來分離彼此靠近的文本。 最近,TextSnake [26]使用有序磁盤來表示曲線文本以進行曲線文本檢測。 SPCNet使用實例分割框架並利用上下文信息來檢測任意形狀的文本,同時抑制誤報。


一、文本檢測面對的挑戰:

(1)大多數現有的算法都是四邊形邊界框,而四邊形邊界框對於定位具有任意形狀的文本並不準確;(基於迴歸算法面臨的挑戰)

(2)彼此靠近的兩個文本實例可能相互覆蓋,而導致錯誤檢測(基於分割面對挑戰)。如圖1所示,

文本檢測:一種新穎的漸進式拓展網絡PSENet

二、傳統的基於分割的算法

優點:可以緩解上述的第一個挑戰(即具備檢測任意形狀文本的能力);

缺點:仍然無法解決彼此相鄰的文本的覆蓋問題。


三、提出了一種新穎的漸進式拓展網絡PSENet

PSENet在基於分割的基礎上,提出的基於內核的框架(kernel-based),該算法可以精準地檢測具有任意形狀的文本實例,其通過為每個文本實例生成不同比例的內核kernel,並逐漸將最小比例內核kernel拓展為具有完整形狀的文本實例。由於最小比例內核之間存在很大的幾何餘量,因此我們的方法有效地分割了緊密的文本實例,從而使使用基於分段的方法來檢測任意形狀的文本實例更加容易。

優點:

(1) 首先,作為基於分割的方法,PSENet執行像素級分割,該分割能夠精確定位具有任意形狀的文本實例;

(2) 其次,我們提出了一種漸進式比例擴展算法,利用該算法可以成功識別相鄰文本實例。

我們為每個文本實例分配了多個預測的分割區域,為簡單起見,這些區域被稱為"內核"。每個內核的形狀與原始文本實例相似,但比例不同。為了獲得最終的檢測結果,我們採用基於廣度優先搜索(BFS)的漸進規模擴展算法。通常,共有3個步驟:1)從最小比例的內核開始(在此步驟中可以區分實例); 2)通過逐漸在較大的內核中包含更多像素來擴展其區域; 3)完成,直到探究完整的文本實例(最大的內核)

文本檢測:一種新穎的漸進式拓展網絡PSENet

算法框架(FPN+PSE)

文本檢測:一種新穎的漸進式拓展網絡PSENet

PSENet是基於FPN的基礎上實現的,使用ResNet作為backbone網絡。首先,從backbone中獲取四個256通道的特徵圖(P2、P3、P4、P5)。為了進一步組合從低到高的語義特徵,通過函數C來融合四個特徵圖,以獲取具有1024個通道的特徵圖F,如下:

文本檢測:一種新穎的漸進式拓展網絡PSENet

其中"||"表示concatenation,Upx2、Upx4、Upx8分別表示2、4、8倍下采樣。隨後,將F總到Conv(3,3)-BN-ReLU層,將通道數由原來的1024減少到256通道。接下來,通過n個Conv(1,1)-up-Sigmoid層,產生n個分割結果S1、S2、…、Sn。Conv,BN,ReLU和Up分別是指卷積[18],批歸一化[15],整流線性單位[6]和上採樣。


Progressive Scale Expansion Algorithm(PSE)

文本檢測:一種新穎的漸進式拓展網絡PSENet

Figure 4是PSE算法的流程圖,其主要思想是來源於廣度優先搜索(BFS)算法。假設我們有3個分割的結果S={S1,S2,S3}。首先,基於最小kernel的圖S1(Figure 4(a)),4個不同的連接分量C={c1,c2,c3,c4}作為初始化。Figure 4(b)中具有不同顏色的區域分別表示這些不同的連接組件。 到目前為止,我們已經檢測到所有文本實例的中心部分(即最小內核)。 然後,我們通過合併S2和S3中的像素來逐步擴展檢測到的內核。 兩次縮放的結果分別顯示在Figure 4(c)和Figure 4(d)中。 最後,我們提取Figure 4(d)中用不同顏色標記的連接組件作為文本實例的。

Figure 4(g)描述了擴展的示意圖。該擴展基於BFS,從多個kernel(區域)的像素開始,並迭代合併相鄰的文本像素。值得注意的是,在擴展的過程中有衝突的像素(紅色框所示),解決原則:先到先得的方式合併內核。且由於採用漸進式擴展,這些邊界衝突不會影響最終的檢測和性能。拓展算法的偽代碼如下:

文本檢測:一種新穎的漸進式拓展網絡PSENet

在偽代碼中,T、P為中間結果,Q是一個隊列。Neighbor代表p的相鄰像素(4路),GroupByLabel是通過標籤對中間結果進行分組的函數。Si[q]=True表示Si中的像素q的預測值屬於文本部分。C和E分別是指擴展前和擴展後保留的內核。

Label Generation

如Figure 3所示,PSENet產生具有不同核比例的分割結果(如S1、S2、…、Sn)。因此,在訓練過程中需要不同內核尺度的相應的GT(Ground truths)。在實踐中,GT標籤可以收縮原本文本實例來簡單有效的使用GT標籤。如Figure 5所示,(b)中帶有藍色邊框的多邊形表示原本文本比例,並且對應於最大的分割標籤掩碼。為了在(c)中順序獲得縮小的mask,使用Vatti裁剪算法將原始的多邊形pn縮小了di個像素,並得到縮小的多邊形pi(如(a)所示)。隨後將每個縮小的多邊形pi轉移到0/1二進制掩碼中,以分割地面標籤GT。我們將這些GT分別表示為G1、G2,…,Gn。

文本檢測:一種新穎的漸進式拓展網絡PSENet

在數學上,如果我們將比例視為ri,則pn和pi之間的邊際餘量di為:

文本檢測:一種新穎的漸進式拓展網絡PSENet

其中,Area是計算多邊形面積的函數,Perimeter是計算多邊形周長的函數。此外,我們將GT圖中的Gi的比例ri定義為:

文本檢測:一種新穎的漸進式拓展網絡PSENet

其中,m是最小比例尺,在0到1之間。根據(3),通過兩個超參數n和m可確定比例尺的值(即r1、r2、…、rn),它們從m線性增加到1.


Loss Function

為了訓練PSENet,損失函數為:

文本檢測:一種新穎的漸進式拓展網絡PSENet

其中,Lc和Ls分別代表完整文本和縮小文本的損失,並平衡Lc和Ls之間的重要性。


通常情況下,文本只佔自然場景圖片的一個非常小的區域,這在使用二進制交叉熵[3]時使網絡對非文本區域的預測bias。受[29]的啟發,我們在實驗中採用了骰子係數。 骰子係數D(Si,Gi)的公式如式(5)所示。

文本檢測:一種新穎的漸進式拓展網絡PSENet

其中Si,x,y和Gi,x,y分別指分割結果Si和GT中Gi中的像素(x,y)。

此外,還有許多與文本筆劃類似的模式,例如柵欄,格子等。因此,在訓練過程中,對Lc採用了Online Hard Example Mining(OHEM)[34]以更好地區分這些模式。

Lc專注於分割文本和非文本區域。文中將OHEM給出的訓練掩碼視為M,因此Lc可公式化為公式(6):

文本檢測:一種新穎的漸進式拓展網絡PSENet

Ls是縮小的文本實例的損失。 由於它們被完整文本實例的原始區域包圍,因此我們忽略了分割結果Sn中非文本區域的像素,以避免了某些冗餘。 因此,Ls可以表示如下:

文本檢測:一種新穎的漸進式拓展網絡PSENet

其中,W是Sn中非文本區域的像素掩碼,Sn,x,y是在Sn中的像素值(x,y).


總結:

提出了一種新穎的漸進式規模擴展網絡(PSENet),以成功檢測自然場景圖像中具有任意形狀的文本實例。 通過使用多個語義分割圖將檢測到的區域從小內核逐漸擴展到大型完整實例,我們的方法對形狀具有魯棒性,並且可以輕鬆地分離非常接近甚至部分相交的那些文本實例。 在場景文本檢測基準上的實驗證明了該方法的優越性能。


分享到:


相關文章: