深度學習論文翻譯解析(三):Detecting Text in Natural Image with Connectionist Text Proposal Network


論文標題:Detecting Text in Natural Image with Connectionist Text Proposal Network

論文作者:Zhi Tian , Weilin Huang, Tong He , Pan He , and Yu Qiao

論文源代碼的下載地址:https://github.com/tianzhi0549/CTPN

論文代碼的下載地址:https://github.com/eragonruan/text-detection-ctpn

論文地址:https://arxiv.org/pdf/1609.03605.pdf

聲明:小編翻譯論文僅為學習,如有侵權請聯系小編刪除博文,謝謝!

            小編是一個機器學習初學者,打算認真研究論文,但是英文水平有限,所以論文翻譯中用到了Google,並自己逐句檢查過,但還是會有顯得晦澀的地方,如有語法/專業名詞翻譯錯誤,還請見諒,並歡迎及時指出。

摘要

  我們提出了一種新穎的連接文本提議網絡(CTPN),它能夠准確定位自然圖像中的文本行。CTPN直接在卷積特征映射中的一系列細粒度文本提議中檢測文本行。我們開發了一個垂直錨點機制,聯合預測每個固定寬度提議的位置和文本/非文本分數,大大提高了定位精度。序列提議通過循環神經網絡自然地連接起來,該網絡無縫的結合到卷積網絡中,從而形成端到端的可訓練模型。這使得CTPN可以探索豐富的圖像上下文信息,使其能夠檢測機器模糊的文本。CTPN在多尺度和多語言文本上可靠的工作,不需要進一步的后處理,脫離了以前的自底向上需要多步后過濾的方法。他在ICDAR 2013和2015的基准數據集上達到了0.88和0.61的F-measure,大大的超過了最近的結果[8,35]。通過使用非常深的VGG16模型[27]。CTPN的計算效率為0.14s每張圖像。在線演示獲取地址:http://textdet.com/

關鍵詞

  場景文本檢測;卷積網絡;循環神經網絡;錨點機制

1 引言

  在自然圖像中閱讀文本最近在計算機視覺中引起越來越多的關注[8,14,15,10,35,11,9,1,28,32]。這是由於它的許多實際應用,如圖像OCR,多語言翻譯,圖像檢索等。它包括兩個子任務:文本檢測和識別。這項工作的重點是檢測任務[14,1,28,32],這是比在一個良好的裁剪字圖像[15,9]進行的識別任務更具有挑戰性。文本模式的大變化和高度雜亂的背景構成了精確文本定位的主要挑戰。

 

  圖1:(a)連接文本提議網絡(CTPN)的架構。我們通過VGG16模型[27]的最后一個卷積映射(conv5)密集地滑動3×3空間窗口。每行的序列窗口通過雙向LSTM(BLSTM)[7]循環連接,其中每個窗口的卷積特征(3×3×C)被用作256維的BLSTM(包括兩個128維的LSTM)的輸入。RNN層連接到512維的全連接層,接着是輸出層,聯合預測kk個錨點的文本/非文本分數,y軸坐標和邊緣調整偏移。(b)CTPN輸出連續的固定寬度細粒度文本提議。每個框的顏色表示文本/非文本分數。只顯示文本框正例的分數。

  目前的文本檢測大多采用自上而下的流程[28,1,14,32,33]。他們通常從低級別字符或者筆畫檢測開始,后面通常會跟隨一些后續步驟,非文本組件過濾,文本行構建和文本行驗證。這些自底向上的多步驟方法通常復雜,魯棒性和可靠性比較差。他們的性能很大程度上依賴於字符檢測的結果,並且已經提出了連接組件方法或者滑動窗口方法。這些方法通常探索低級特征(例如:基於SWT[3,13],MSER[14,33,23]或HoG[28])來區分候選文本和背景。但是,如果沒有上下文信息,他們不能魯棒的單獨識別各個筆划或字符。例如,相比單個字符人們更信任一個字符序列,特別是當一個字符非常模糊時。這些限制在字符檢測中通常會導致大量非文本組件,在后續步驟中的主要困難是處理它們。此外,正如[28]所指出的,這些誤檢很容易在自下而上的過程中連續累積。為了解決這些問題,我們利用強大的深度特征直接在卷積映射中檢測文本信息。我們開發的文本錨點機制能在細粒度上精確預測文本位置。然后,我們提出了一種網內循環架構,用於按順序連接這些細粒度的文本提議,從而允許它們編碼豐富的上下文信息。

  深度卷積神經網絡(CNN)最近已經基本實現了一般物體檢測[25,5,6]。最先進的方法就是

 Faster Region-CNN(R-CNN)系統[25],其中提出了區域提議網絡(RPN)直接從卷積特征映射中生成高質量類別不可知的目標提議。然后將RPN提議輸入Faster R-CNN[5]模型進行進一步的分類和微調,從而實現通用目標檢測的最新性能。然而,很難將這些通用目標檢測系統直接應用於場景文本檢測,這通常需要更高的定位精度。在通用目標檢測中,每個目標都有一個明確的封閉邊界[2],而在文本中可能不存在這樣一個明確定義的邊界,因為文本行或單詞是由許多單獨的字符或筆划組成的。對於目標檢測,典型的正確檢測是松散定義的,例如,檢測到的邊界框與其實際邊界框(例如,PASCAL標准[4])之間的重疊>0.5,因為人們可以容易地從目標的主要部分識別它。相比之下,綜合閱讀文本是一個細粒度的識別任務,需要正確的檢測,覆蓋文本行或字的整個區域。因此,文本檢測通常需要更准確的定義,導致不同的評估標准,例如文本基准中常用的Wolf標准[19,21]。

  在這項工作中,我們通過將RPN架構[25]擴展到准確的文本行定義來填補這個間隙。我們提出了幾種技術發展,針對我們的問題可以優雅的調整通用目標檢測模型。我們通過提出一種網絡內循環機制爭取更進一步,使我們的模型能夠直接在卷積映射中檢測文本序列,避免通過額外昂貴的CNN檢測模型進行進一步的后處理。

1.1 貢獻

  我們提出了一種新穎的連接文本提議網絡(CTPN),它可以直接定位卷積層中的文本序列。這克服了以前建立在字符檢測基礎上的自下而上方法帶來的一些主要限制。我們利用強深度卷積特性和共享計算機制的優點,提出了如圖1所示的CTPN框架,主要貢獻如下:

  首先,我們將文本檢測的問題轉化為一系列細粒度的文本提議。我們開發了一個錨點回歸機制,可以聯合預測每個文本提議的垂直位置和文本/非文本分數,從而獲得出色的定位精度。這背離了整個目標的RPN預測,RPN預測難以提供令人滿意的定位精度。

  其次,我們提出了一種在卷積特征映射中優雅連接序列文本提議的網絡內循環機制。通過這種連接,我們的檢測器可以探索文本行有意義的上下文信息,使其能夠可靠地檢測極具挑戰性的文本。

  第三,兩種方法無縫集成,以符合文本序列的性質,從而形成統一的端到端可訓練模型。我們的方法能夠在單個過程中處理多尺度和多語言的文本,避免進一步的后過濾或細化。

  第四,我們的方法在許多基准數據集上達到了新的最先進成果,顯著改善了最近的結果(例如,0.88的F-measure超過了2013年ICDAR的[8]中的0.83,而0.64的F-measure超過了ICDAR2015上[35]中的0.54 )。此外,通過使用非常深的VGG16模型[27],這在計算上是高效的,導致了每張圖像0.14s的運行時間(在ICDAR 2013上)。

2 相關工作

  文本檢測。過去在場景文本檢測中的工作一直以自下而上的方法為主,一般建立在筆畫或字符檢測上。它們可以粗略地分為兩類,基於連接組件(CC)的方法和基於滑動窗口的方法。基於CC的方法通過使用快速濾波器來區分文本和非文本像素,然后通過使用低級屬性(例如強度,顏色,梯度等[33,14,32,13,3])將文本像素貪婪地分為筆划或候選字符。基於滑動窗口的方法通過在圖像中密集地滑動多尺度窗口來檢測候選字符。字符或非字符窗口通過預先訓練的分類器,使用手動設計的特征[28,29]或最近的CNN特征[16]進行區分。然而,這兩種方法通常都會受到較差的字符檢測性能的影響,導致在接下來的組件過濾和文本行構建步驟中出現累積的錯誤。此外,強大地過濾非字符組件或者自信地驗證檢測到的文本行本身就更加困難[1,33,14]。另一個限制是通過在大量的滑動窗口上運行分類器,滑動窗口方法在計算上是昂貴的。

  目標檢測。卷積神經網絡(CNN)近來在通用目標檢測[25,5,6]上已經取得了實質的進步。一個常見的策略是通過使用廉價的低級特征來生成許多目標提議,然后使用強CNN分類器來進一步對生成的提議進行分類和細化。生成類別不可知目標提議的選擇性搜索(SS)[4]是目前領先的目標檢測系統中應用最廣泛的方法之一,如CNN(R-CNN)[6]及其擴展[5]。最近,Ren等人[25]提出了Faster R-CNN目標檢測系統。他們提出了一個區域提議網絡(RPN),可以直接從卷積特征映射中生成高質量的類別不可知的目標提議。通過共享卷積計算RPN是快速的。然而,RPN提議不具有判別性,需要通過額外的成本高昂的CNN模型(如Fast R-CNN模型[5])進一步細化和分類。更重要的是,文本與一般目標有很大的不同,因此很難直接將通用目標檢測系統應用到這個高度領域化的任務中。

3 連接文本提議網絡

  本節介紹連接文本提議網絡(CTPN)的細節,它包括三個關鍵的貢獻,使文本定位可靠和准確:檢測細粒度提議中的文本,循環連接文本提議和邊緣細化。

 

 3.1 在細粒度提議中檢測文本

  類似於區域提議網絡(RPN)[25],CTPN本質上是一個全卷積網絡,允許任意大小的輸入圖像。它通過在卷積特征映射中密集地滑動小窗口來檢測文本行,並且輸出一系列細粒度的(例如,寬度為固定的16個像素)文本提議,如圖1(b)所示。

  我們以非常深的16層vggNet(VGG16)[27]為例來描述我們的方法,該方法很容易應用於其他深度模型。CTPN的架構如圖1(a)所示。我們使用一個小的空間窗口3×3來滑動最后的卷積層特征映射(例如,VGG16的conv5)。conv5特征映射的大小由輸入圖像的大小決定,而總步長和感受野分別固定為16個和228個像素。網絡架構決定總步長和感受野。在卷積層中使用滑動窗口允許它共享卷積計算,這是減少昂貴的基於滑動窗口的方法的計算量的關鍵。

   通常,滑動窗口方法采用多尺度窗口來檢測不同尺寸的目標,其中一個窗口尺度被固定到與目標的尺度相似,在[25]中,Ren等人提出了一種有效的錨點回歸機制,允許RPN使用單尺度窗口檢測多尺度目標。關鍵的洞察力是單個窗口能夠通過使用多個靈活的錨點來預測各種尺度和長寬比的目標。我們希望將這種有效的錨點機制擴展到我們的文本任務。然而,實質上文本與普通目標不同,它們通常具有明確的封閉邊界和中心,可以從它的一部分推斷整個目標[2]。文本是一個沒有明顯封閉邊界的序列。它可能包含多層次的組件,如筆划,字符,單詞,文本行和文本區域等,這些組件之間沒有明確區分。文本檢測是在單詞或文本行級別中定義的,因此通過將其定義為單個目標(例如檢測單詞的一部分)可能很容易進行錯誤的檢測。因此,直接預測文本行或單詞的位置可能很難或不可靠,因此很難獲得令人滿意的准確性。一個例子如圖2所示,其中RPN直接被訓練用於定位圖像中的文本行。

  我們尋找文本的獨特屬性,能夠很好地概括各個層次的文本組件。我們觀察到由RPN進行的單詞檢測很難准確預測單詞的水平邊,因為單詞中的每個字符都是孤立的或分離的,這使得查找單詞的開始和結束位置很混亂。顯然,文本行是一個序列,它是文本和通用目標之間的主要區別。將文本行視為一系列細粒度的文本提議是很自然的,其中每個提議通常代表文本行的一小部分,例如寬度為16個像素的文本塊。每個提議可能包含單個或多個筆划,字符的一部分,單個或多個字符等。我們認為,通過固定每個提議的水平位置來預測其垂直位置會更准確,水平位置更難預測。與預測目標4個坐標的RPN相比,這減少了搜索空間。我們開發了垂直錨點機制,可以同時預測每個細粒度提議的文本/非文本分數和y軸的位置。檢測一般固定寬度的文本提議比識別分隔的字符更可靠,分隔字符容易與字符或多個字符的一部分混淆。此外,檢測一系列固定寬度文本提議中的文本行也可以在多個尺度和多個長寬比的文本上可靠地工作。

  為此,我們設計如下的細粒度文本提議。我們的檢測器密集地調查了conv5中的每個空間位置。文本提議被定義為具有16個像素的固定寬度(在輸入圖像中)。這相當於在conv5的映射上密集地移動檢測器,其中總步長恰好為16個像素。然后,我們設計k個垂直錨點來預測每個提議的y坐標。kk個錨點具有相同的水平位置,固定寬度為16個像素,但其垂直位置在k個不同的高度變化。在我們的實驗中,我們對每個提議使用十個錨點,k=10,其高度在輸入圖像中從11個像素變化到273個像素(每次÷0.7)。明確的垂直坐標是通過提議邊界框的高度和y軸中心來度量的。我們計算相對於錨點的邊界框位置的相對預測的垂直坐標(v),如下所示:

 

3.2 循環連接文本提議

  為了提高定位精度,我們將文本行分成一系列細粒度的文本提議,並分別預測每個文本提議。顯然,將每個孤立的提議獨立考慮並不魯棒。這可能會導致對與文本模式類似的非文本目標的誤檢,如窗口,磚塊,樹葉等(在文獻[13]中稱為類文本異常值)。還可以丟棄一些含有弱文本信息的模糊模式。圖3給出了幾個例子(上)。文本具有強大的序列特征,序列上下文信息對做出可靠決策至關重要。最近的工作已經證實了這一點[9],其中應用遞歸神經網絡(RNN)來編碼用於文本識別的上下文信息。他們的結果表明,序列上下文信息極大地促進了對裁剪的單詞圖像的識別任務。

  Ht中的內部狀態被映射到后面的FC層,並且輸出層用於計算第t個提議的預測。因此,我們與RNN層的集成非常優雅,從而形成了一種高效的模型,可以在無需額外成本的情況下進行端到端的訓練。RNN連接的功效如圖3所示,顯然,它大大的減少了錯誤檢測,同時還能夠恢復很多包含非常弱的文本信息的遺漏文本提議。

3.3 邊緣細化

  細粒度的檢測和RNN連接可以預測垂直方向的精確位置。在水平方向上,圖像被分成一系列相等的寬度為16個像素的提議。如圖4所示,當兩個水平邊的文本提議沒有完全被實際文本行區域覆蓋,或者某些邊的提議被丟棄(例如文本得分較低)時,這可能會導致不准確的定位。這種不准確性在通用目標檢測中可能並不重要,但在文本檢測中不應忽視,特別是對於那些小型文本行或文字。為了解決這個問題,我們提出了一種邊緣細化的方法,可以精確地估計左右兩側水平方向上的每個錨點/提議的偏移量(稱為邊緣錨點或邊緣提議)。與y坐標預測類似,我們計算相對偏移為:

 

3.4 模型輸出與損失函數

3.5 訓練和實現細節

  通過使用標准的反向傳播和隨機梯度下降(SGD),可以對CTPN進行端對端訓練。與RPN[25]類似,訓練樣本是錨點,其位置可以在輸入圖像中預先計算,以便可以從相應的實際邊界框中計算每個錨點的訓練標簽。

  訓練標簽。對於文本/非文本分類,二值標簽分配給每個正(文本)錨點或負(非文本)錨點。它通過計算與實際邊界框的IoU重疊(除以錨點位置)來定義。正錨點被定義為:(i)與任何實際邊界框具有>0.7的IoU重疊;或者(ii)與實際邊界框具有最高IoU重疊。通過條件(ii),即使是非常小的文本模式也可以分為正錨點。這對於檢測小規模文本模式至關重要,這是CTPN的主要優勢之一。這不同於通用目標檢測,通用目標檢測中條件(ii)的影響可能不顯著。負錨點定義為與所有實際邊界框具有<0.5的IoU重疊。yy坐標回歸(v)和偏移回歸(o)的訓練標簽分別按公式(2)和(4)計算。

 

   訓練數據。在訓練過程中,每個小批量樣本從單張圖像中隨機收集。每個小批量數據的錨點數量固定為Ns=128,正負樣本的比例為1:1。如果正樣本的數量少於64,則會用小圖像塊填充負樣本。我們的模型在3000張自然圖像上訓練,其中包括來自ICDAR 2013訓練集的229張圖像。我們自己收集了其他圖像,並用文本行邊界框進行了手工標注。在所有基准測試集中,所有自我收集的訓練圖像都不與任何測試圖像重疊。為了訓練,將輸入圖像的短邊設置為600來調整輸入圖像的大小,同時保持其原始長寬比。

  實現細節。我們遵循標准實踐,並在ImageNet數據[26]上探索預先訓練的非常深的VGG16模型[27]。我們通過使用具有0均值和0.01標准差的高斯分布的隨機權重來初始化新層(例如,RNN和輸出層)。該模型通過固定前兩個卷積層中的參數進行端對端的訓練。我們使用0.9的動量和0.0005的重量衰減。在前16K次迭代中,學習率被設置為0.001,隨后以0.0001的學習率再進行4K次迭代。我們的模型在Caffe框架[17]中實現。

4 實驗結果和討論

  我們在五個文本檢測基准數據集上評估CTPN,即ICDAR 2011[21],ICDAR 2013[19],ICDAR 2015[18],SWT[3]和Multilingual[24]數據集。在我們的實驗中,我們首先單獨驗證每個提議組件的效率,例如細粒度文本提議檢測或網內循環連接。ICDAR 2013用於該組件的評估。

4.1 基准數據集和評估標准

  CDAR 2011數據集[21]由229張訓練圖像和255張測試圖像組成,圖像以字級別標記。ICDAR 2013[19]與ICDAR 2011類似,共有462張圖像,其中包括229張訓練圖像和233張測試圖像。ICDAR 2015年(Incidental Scene Text —— Challenge 4)[18]包括使用Google Glass收集的1500張圖像。訓練集有1000張圖像,剩余的500張圖像用於測試。這個數據集比以前的數據集更具挑戰性,包括任意方向,非常小的尺度和低分辨率的文本。Multilingual場景文本數據集由[24]收集。它包含248張訓練圖像和239張測試圖像。圖像包含多種語言的文字,並且真實值以文本行級別標注。Epshtein等[3]引入了包含307張圖像的SWT數據集,其中包含許多極小尺度的文本。

  我們遵循以前的工作,使用由數據集創建者或競賽組織者提供的標准評估協議。對於ICDAR 2011,我們使用[30]提出的標准協議,對ICDAR 2013的評估遵循[19]中的標准。對於ICDAR 2015,我們使用了由組織者提供的在線評估系統[18]。SWT和Multilingual數據集的評估分別遵循[3]和[24]中定義的協議。

4.2 具有Faster R-CNN的細粒度文本提議網絡

   我們首先討論我們關於RPN和Faster R-CNN系統[25]的細粒度檢測策略。如表1(左)所示,通過產生大量的錯誤檢測(低精度),單獨的RPN難以執行准確的文本定位。通過使用Fast R-CNN檢測模型[5]完善RPN提議,Faster R-CNN系統顯著提高了定位精度,其F-measure為0.75。一個觀察結果是Faster R-CNN也增加了原始RPN的召回率。這可能受益於Fast R-CNN的聯合邊界框回歸機制,其提高了預測邊界框的准確性。RPN提議可以粗略定位文本行或文字的主要部分,但根據ICDAR 2013的標准這不夠准確。顯然,所提出的細粒度文本提議網絡(FTPN)在精確度和召回率方面都顯著改進了Faster R-CNN,表明通過預測一系列細粒度文本提議而不是整體文本行,FTPN更精確可靠。

 

4.3 循環連接文本提議

   我們討論循環連接對CTPN的影響。如圖3所示,上下文信息對於減少誤檢非常有用,例如類似文本的異常值。對於恢復高度模糊的文本(例如極小的文本)來說,這非常重要,這是我們CTPN的主要優勢之一,如圖6所示。這些吸引人的屬性可顯著提升性能。如表1(左)所示,使用我們的循環連接,CTPN大幅度改善了FTPN,將F-measure從0.80的提高到0.88。

  運行時間。通過使用單個GPU,我們的CTPN(用於整個檢測處理)的執行時間為每張圖像大約0.14s,固定短邊為600。沒有RNN連接的CTPN每張圖像GPU時間大約需要0.13s。因此,所提出的網內循環機制稍微增加了模型計算,並獲得了相當大的性能增益。

 

  我們在幾個具有挑戰性的圖像上的檢測結果如圖5所示。可以發現,CTPN在這些具有挑戰性的情況上可以完美的工作,其中一些對於許多以前的方法來說是困難的。它能夠有效地處理多尺度和多語言(例如中文和韓文)。

 

  全面評估是在五個基准數據集上進行的。圖像分辨率在不同的數據集中顯著不同。我們為SWT和ICDAR 2015設置圖像短邊為2000,其他三個的短邊為600。我們將我們的性能與最近公布的結果[1,28,34]進行了比較。如表1和表2所示,我們的CTPN在所有的五個數據集上都實現了最佳性能。在SWT上,我們的改進對於召回和F-measure都非常重要,並在精確度上取得了很小的收益。我們的檢測器在Multilingual上比TextFlow表現更好,表明我們的方法能很好地泛化到各種語言。在ICDAR 2013上,它的性能優於最近的TextFlow[28]和FASText[1],將F-measure從0.80提高到了0.88。精確度和召回率都有顯著提高,改進分別超過+5%+5%和+7%+7%。此外,我們進一步與[8,11,35]比較了我們的方法,它們是在我們的首次提交后發布的。它始終在F-measure和召回率方面取得重大進展。這可能是由於CTPN在非常具有挑戰性的文本上具有很強的檢測能力,例如非常小的文本,其中一些甚至對人來說都很難。如圖6所示,我們的檢測器可以正確地檢測到那些具有挑戰性的圖像,但有些甚至會被真實標簽遺漏,這可能會降低我們的評估精度。

   我們進一步調查了各種方法的運行時間,在表2中進行了比較。FASText[1]達到0.15s每張圖像的CPU時間。我們的方法比它快一點,取得了0.14s每張圖像,但是在GPU時間上。盡管直接比較它們是不公平的,但GPU計算已經成為主流,最近在目標檢測方面的深度學習方法[25,5,6]上取得了很大成功。無論運行時間如何,我們的方法都大大優於FASText,F-measure的性能提高了1111。我們的時間可以通過使用較小的圖像尺度來縮短。在ICDAR 2013中,使用450的縮放比例時間降低到0.09s每張圖像,同時獲得0.92/0.77/0.84的P/R/F,與Gupta等人的方法[8]相比,GPU時間為0.07s每張圖像,我們的方法是具有競爭力的。

5 結論

  我們提出了連接文本提議網絡(CTPN)—— 一種可端到端訓練的高效文本檢測器。CTPN直接在卷積映射的一系列細粒度文本提議中檢測文本行。我們開發了垂直錨點機制,聯合預測每個提議的精確位置和文本/非文本分數,這是實現文本准確定位的關鍵。我們提出了一個網內RNN層,可以優雅地連接順序文本提議,使其能夠探索有意義的上下文信息。這些關鍵技術的發展帶來了檢測極具挑戰性的文本的強大能力,同時減少了誤檢。通過在五個基准數據集測試中實現了最佳性能,每張圖像運行時間為0.14s,CTPN是有效的。

參考文獻:http://noahsnail.com/2018/02/02/2018-02-02-Detecting%20Text%20in%20Natural%20Image%20with%20Connectionist%20Text%20Proposal%20Network%E8%AE%BA%E6%96%87%E7%BF%BB%E8%AF%91%E2%80%94%E2%80%94%E4%B8%AD%E6%96%87%E7%89%88/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM