天天看點

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

文章轉載自:https://www.cnblogs.com/skyfsm/p/9776611.html

前言

文字識别分為兩個具體步驟:文字的檢測和文字的識别,兩者缺一不可,尤其是文字檢測,是識别的前提條件,若文字都找不到,那何談文字識别。今天我們首先來談一下當今流行的文字檢測技術有哪些。

文本檢測不是一件簡單的任務,尤其是複雜場景下的文本檢測,非常具有挑戰性。自然場景下的文本檢測有如下幾個難點:

  • 文本存在多種分布,文本排布形式多樣;
  • 文本存在多個方向;
  • 多種語言混合。
    自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

我們先從直覺上了解文本檢測任務。給定一張圖檔,我們需要找出這張圖裡文字出現的所有位置位置,那這個任務其實跟目标檢測任務差别不大,即找出每個物體在圖檔中的位置,并标出該包圍框裡的物體的類别。而文本檢測就是,找出每個文本在圖檔中出現的位置,因為我們的類别隻有2個(有文字和沒文字),看起來就像一個簡單的單類别目标檢測的任務,自然而然我們就會想到用經典的目标檢測網絡來進行文本檢測,比如經典的Faster R-CNN。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

Faster RCNN

Faster RCNN來做文本檢測從任務上分析是可行的,畢竟文本說到底還是一個Object。我們回顧一下Faster RCNN做目标檢測的關鍵步驟有哪些:

  1. 基礎網絡做特征提取;
  2. 特征送入RPN做候選框提取;
  3. 分類層對候選框内物體進行分類,回歸層對候選框的(x,y,w,h)進行精細調整。

Faster RCNN做文本檢測感覺問題不大,但是從效果來看,僅套用Faster RCNN來做文本檢測效果并不好,原因在于,文本有自己獨有的特點,這種通用的文本檢測架構并不能很好地解決文本的這些特點。那文本有什麼特點呢?我總結如下:

  1. 文本大多數以長矩形形式存在,即長寬比一般較大或較小,這與普通的目标檢測中的物體不一樣(這些長寬比較接近1)
  2. 普通物體(比如貓)存在明顯的閉合邊緣輪廓,而文本沒有;
  3. 文本中包含多個文字,而文字之間是有間隔的,如果檢測做得不好,我們就會把每個字都當成文本行給框出來而非整行作為文本框,這與我們的期望不一樣。

    基于以上文本檢測的特點,我們必須對Faster RCNN這類通用網絡進行改進,設計出适合文本檢測的全新網絡架構。

CTPN(2016)

2016年出了一篇很有名的文本檢測的論文:《Detecting Text in Natural Image with

Connectionist Text Proposal Network》,這個深度神經網絡叫做CTPN,直到今天這個網絡架構一直是OCR系統中做文本檢測的一個常用網絡,極大地影響了後面文本檢測算法的方向。

這個算法很有創新,我打算一步一步介紹其閃光點。我們回顧一下Faster RCNN做目标檢測的一個缺點就是,沒有考慮帶文本自身的特點。文本行一般以水準長矩形的形式存在,而且文本行中每個字都有間隔。針對這個特點,CTPN剔除一個新奇的想法,我們可以把文本檢測的任務拆分,第一步我們檢測文本框中的一部分,判斷它是不是一個文本的一部分,當對一幅圖裡所有小文本框都檢測之後,我們就将屬于同一個文本框的小文本框合并,合并之後就可以得到一個完整的、大的文本框了,也就完成了文本的檢測任務。這個想法真的很有創造性,有點像“分治法”,先檢測大物體的一小部分,等所有小部分都檢測出來,大物體也就可以檢測出來了。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

如圖所示,左邊的圖是直接使用Faster RCNN中的RPN來進行候選框提取,可以看出,這種候選框太粗糙了,效果并不好。而右圖是利用許多小候選框來合并成一個大文本預測框,可以看出這個算法的效果非常不錯,需要說明的是,紅色框表示這個小候選框的置信度比較高,而其他顔色的候選框的置信度比較低,我們可以看到,一個大文本的邊界都是比較難預測的,那怎麼解決這個邊界預測不準的問題呢?後面會提到。

剛提到CTPN的其中一個閃光點,即檢測小框代替直接檢測大文本框。除了這個新意,CTPN還提出了在文本檢測中應加入RNN來進一步提升效果。為什麼要用RNN來提升檢測效果?文本具有很強的連續字元,其中連續的上下文資訊對于做出可靠決策來說很重要。我們知道RNN常用于序列模型,比如事件序列,語言序列等等,那我們CTPN算法中,把一個完整的文本框拆分成多個小文本框集合,其實這也是一個序列模型,可以利用過去或未來的資訊來學習和預測,是以同樣可以使用RNN模型。而且,在CTPN中,用的還是BiLSTM(雙向LSTM),因為一個小文本框,對于它的預測,我們不僅與其左邊的小文本框有關系,而且還與其右邊的小文本框有關系!這個解釋就很有說服力了,如果我們僅僅根據一個文本框的資訊區預測該框内含不含有文字其實是很草率的,我們應該多參考這個框的左邊和右邊的小框的資訊後(尤其是與其緊挨着的框)再做預測準确率會大大提升。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

如上圖所示,如果我們單純依靠1号框内的資訊來直接預測1号框中否存在文字(或者說是不是文本的一部分),其實難度相當大,因為1号框隻包含文字的很小一部分。但是如果我們把2号框和3号框的資訊都用上,來預測1号框是否存在文字,那麼我們就會有比較大的把握來預測1号框确實有文字。我們還可以看看為什麼邊緣的文本框的置信度會較中間的低呢?個人認為很大一部分原因就在于因為這些框都位于總文本的邊緣,沒有辦法充分利用左右相鄰序列的資訊做預測(比如位于最左的文本框丢失了其右邊的資訊)。這就是雙向LSTM的作用,把左右兩個方向的序列資訊都加入到學習的過程中去。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

我們已經對CTPN這個算法的總體思路有了一點了解,那關鍵問題來了,我們怎麼把這些小文本框準确地檢測出來呢?

CTPN借助了Faster RCNN中anchor回歸機制,使得RPN能有效地用單一尺寸的滑動視窗來檢測多尺寸的物體。當然CTPN根據文本檢測的特點做了比較多的創新。比如RPN中anchor機制是直接回歸預測物體的四個參數(x,y,w,h),但是CTPN采取之回歸兩個參數(y,h),即anchor的縱向偏移以及該anchor的文本框的高度,因為每個候選框的寬度w已經規定為16個像素,不需要再學習,而x坐标直接使用anchor的x坐标,也不用學習,是以CTPN的思路就是隻學習y和h這兩個參數來完成小候選框的檢測!跟RPN相類似,CTPN中對于每個候選框都使用了K個不同的anchors(k在這裡預設是10),但是與RPN不同的是,這裡的anchors的width是固定的16個像素,而height的高度範圍為11~273(每次對輸入圖像的height除以0.7,一共K個高度)。當然CTPN中還是保留了RPN大多數的思路,比如還是需要預測候選框的分數score(該候選框有文本和無文本的得分)。

這麼多小尺度候選框怎麼才能串聯成一個完整的文本行呢?

文本行建構很簡單,通過将那些text/no-text score > 0.7的連續的text proposals相連接配接即可。文本行的建構如下。首先,為一個proposal Bi定義一個鄰居(Bj):Bj−>Bi,其中:

  1. Bj在水準距離上離Bi最近
  2. 該距離小于50 pixels
  3. 它們的垂直重疊(vertical overlap) > 0.7

另外,如果同時滿足Bj−>Bi和Bi−>Bj,會将兩個proposals被聚內建一個pair。接着,一個文本行會通過連續将具有相同proposal的pairs來進行連接配接來建構。

接下來我們就較為細節地學習一下這個CTPN經典網絡。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

首先CTPN的基礎網絡使用了VGG16用于特征提取,在VGG的最後一個卷積層CONV5,CTPN用了3×3的卷積核來對該feature map做卷積,這個CVON5 特征圖的尺寸由輸入圖像來決定,而卷積時的步長卻限定為16,感受野被固定為228個像素。卷積後的特征将送入BLSTM繼續學習,最後接上一層全連接配接層FC輸出我們要預測的參數:2K個縱向坐标y,2k個分數,k個x的水準偏移量。看到這裡大家可能有個疑問,這個x的偏移到底是什麼,為什麼需要回歸這個參數?如果需要X的參數,為什麼不在候選框參數回歸時直接預測成(x,y,h)三個參數呢,而要多此一舉把該參數單獨預測?這個X的作用作者提到這也是他們論文的一大亮點,稱之為Side-refinement,我了解為文本框邊緣優化。我們回顧一下上面提到的一個問題,文本框檢測中邊緣部分的預測并不準确。那麼改咋辦,CTPN就是用這個X的偏移量來精修邊緣問題。這個X是指文本框在水準方向的左邊界和右邊界,我們通過回歸這個左邊界和右邊界參數進而可以使得我們對文本框的檢測更為精準。在這裡想舉個例子說明一下回歸這個x參數的重要性。

我們觀察下圖,第一幅圖張我們看到我們有很多小候選框,位于左邊的候選框我标記為1、2、3、4号框,1号框和2号框為藍色,表明得分不高我們不把這兩個框合并到大文本框内,對于3号框和4号框那就比較尴尬了,如果取3号框作為文本框的邊緣框,那麼顯然左邊邊緣留白太多,精準度不夠,但如果去掉3号框而使用4号框作為左邊緣框,則有些字型區域沒有檢測出來,同樣檢測精度不足。這種情況其實非常容易出現,是以CTPN采取了Side-refinement 思路進一步優化邊緣位置的預測即引入回歸X參數,X參數直接标定了完整文本框的左右邊界,做到精确的邊界預測。第二幅圖中的紅色框就是經過Side-refinement後的檢測結果,可以看出檢測準确率有了很大的提升。 side-refinement确實可以進一步提升位置準确率,在SWT的Multi-Lingual datasets上産生2%的效果提升。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

再看多幾幅圖,體驗一下Side-refinement後的效果。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

最後總結一下CTPN這個流行的文本檢測架構的三個閃光點:

  1. 将文本檢測任務轉化為一連串小尺度文本框的檢測;
  2. 引入RNN提升文本檢測效果;
  3. Side-refinement(邊界優化)提升文本框邊界預測精準度。
    自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

當然,CTPN也有一個很明顯的缺點:對于非水準的文本的檢測效果并不好。CTPN論文中給出的文本檢測效果圖都是文本位于水準方向的,顯然CTPN并沒有針對多方向的文本檢測有深入的探讨。那對于任意角度的文本檢測應該采取什麼的算法思路呢?下面的SegLink算法給出了一個新奇的解決方案。

SegLink(2017)

CVPR2017的一篇spotlight論文《Detecting Oriented Text in Natural Images by Linking Segments》介紹以一種可以檢測任意角度文本的檢測算法,我們一般稱這個算法為SegLink,這篇論文既融入CTPN小尺度候選框的思路又加入了SSD算法的思路,達到了當時自然場景下文本檢測state-of-art的效果。

現在我想先介紹為什麼要針對多方向的文本檢測做特定的研究。對于普通目标檢測,我們并不需要對其做所謂的多方向目标檢測,比如下面這個檢測任務,我們直接把單車和狗的位置找出來即可。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

但是對于文本檢測任務可不一樣,文本的特點就是高寬比特别大或小,而且文本通常存在一定的旋轉角度,如果我們對于帶角度的文本仍然使用目标檢測那個思路回歸四個參數(x,y,w,h)來指定一個目标的位置的話(如下圖紅色框),那顯然誤差太大了,這個檢測效果并不是我們所能接受的。作為對比,下圖的綠色框的檢測效果才是我們的終極目标。那麼怎麼基于原來經典的目标檢測算法做相應的優化以适應這種檢測效果的要求呢?

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

一個最直接的思路就是讓模型再學習一個參數θ!這個θ表示文本框的旋轉角度,也就是我們最終要回歸的參數從原來的(x,y,w,h)變成(x,y,w,h,θ)。SegLink确實也采取了這個思路,除此之外,他還提出了Segment和Linking兩個重要概念,這個才是這篇CVPR論文的核心創新點。

什麼是segment?segment從中文上了解為文本行的一部分,這一部分可以是一個字元或文本行的任意一部分。如下圖示,黃色框表示一個segment,一個完整的文本行中包含多個segment,每個sgment之間通過link(圖中的綠色線)連接配接組合起來。那麼Segment做文本檢測的思路其實跟CTPN的思路很像,先檢測文本行的一部分,再把他們連接配接起來構成一個完整文本行。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

我們把圖檔的關鍵部位放大看看細節:首先每個segment是有一定的重合區域的,然後每兩個segment連接配接的部位是兩個segment的中心點。每一個segment和link僅依靠局部圖像的紋理資訊即可完成檢測,而無需整張圖像的資訊。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

接下來我們通過分析SegLink的網絡架構進一步了解SegLink如何做到高效的多角度文本檢測。下圖是SegLink的網絡架構,顯然這個架構采取了SSD的思路,首先使用VGG16作為backbone進行特征提取,其中VGG16的全連接配接層(fc6,fc7)替換成卷積層(conv6,conv7),再接卷積層conv8到conv11。值得說明的是,conv4~conv11之間的尺寸依次減少(每一層是前一層的1/2)。這個做法是為了做多尺度下的目标檢測,即大的feature map擅長做小物體的檢測,而小的feature map則擅長檢測大物體。借助多個不同尺度的feature map,從6個feature layer上檢測segment和link,我們就可以檢測出不同尺寸的文本行了。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

觀察後面的卷積層可以發現,對不同層的feature map使用3×3的卷積層産生最終的輸出(包括segment和link),不同特征層輸出的次元是不一樣的,因為除了conv4_3層外,其它層存在跨層的link。這裡segment是text的帶方向bbox資訊(它可能是個單詞,也可能是幾個字元,總之是文本行的部分),link是不同segment的連接配接資訊(文章将其也增加到網絡中自動學習)。

當所有segments都被檢測出來後,我們就可以通過融合規則(combining segments),将各個feature map的segment的box資訊和link資訊進行融合,得到最終的文本行。

SegLink所使用的目标函數由三個部分構成,是否是text的二類分類的softmax損失,box的smooth L1 regression損失,是否link的二類的softmax損失。λ1和λ2控制權重,最後都設為1。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

現在計算一下每個feature map輸出的參數有哪些呢?

  • segment的位置資訊:(x,y,w,h,θ),一共5個參數
  • 每個segment内的分類分數,即判斷框内有字元還是無字元的分數(2分類),共2個參數
  • 同層(within-layer)的每個segment的link的分數,表示該方向有link還是沒link(2分類問題),而一個segment有八鄰域是以有八個方向,參數一共有2×8=16
  • 相鄰層(cross-layer)之間也存在link,同樣是該方向有link還是沒link(2分類問題),而link的個數是4個,是以參數總數為2×4=8

下圖很清楚地表示出每個feature map輸出的參數有多少個,輸出參數總數為(2+5+16+8=31)。假設目前的feature map的尺度為(w,h),那麼該層卷積後輸出為w×h×31。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

這裡想再談談Within-Layer Link和Cross-Layer Link的作用。

within-layer link表示在同一層feature layer裡,每個Segment與8鄰域内的segment的連接配接狀況,如下圖(a)所示。且每個link有2維,一維是正分,表示兩個segment屬于同一文本,一維是負分,表示兩個segment不屬于同一文本。是以,每個predictor輸出16(8×2)維向量。

  

cross-layer link:在不同的feature layer上有可能會檢測到同一文本的segments,造成備援,cross-layer link的提出就是為了解決這個問題。cross-layer link連接配接了兩個相鄰feature layer上的segments,如圖(b)所示。需要注意的是,由于下采樣使後一層為前一層scale的1/2,定義一個segment的cross-layer鄰居為前一層4鄰域更小的segment,即前一層是後一層的鄰居,但後一層不是前一層的鄰居,是以conv4_3的feature layer沒有cross-layer鄰居。圖中所示的黃框為目前層的segment,藍框為上一層更小更細的segment,綠色的線代表cross-layer link有連接配接,屬于同一文本,在後續的combine算法中會将他們融合,即去除了備援。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

讀到這裡我們已經知道如何擷取segment和相應的link了,那接下來要做的就是怎麼把這些link和segment合并成一個完整的文本行。先貼一下論文中使用到的合并算法:

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

看起來真的是頭都大,其實思想很簡單,我嘗試用中文解釋一下:

  1. 假設我們有一個集合B,裡面有很多相關聯的segment待合并;
  2. 每一個segment都有自己的角度θ,那我們求集合B中所有segment角度的平均值θb;
  3. 求一條直線L使得所有segment的中心到這條直線的距離最小,也就是最小二乘法線性回歸啦;
  4. 每個segment的中心往直線L做垂直投影;
  5. 從所有投影點中選出相距最遠的兩個點,記做(xp,yp)和(xq,yq);
  6. 最終合并好的文本框的位置參數記為(xb,yb,wb,hb,θb)那麼xb:=1/2(xp+xq,yb:=1/2(yp+yq)
  7. 文本行的寬度wb就是兩個最遠點的距離(即(xp,yp)和(xq,yq))再加上最遠兩個點所處的segment的寬度的一半(Wp和Wq)。
  8. 文本行高度hb就是所有segment高度求平均值

我畫了下圖輔助了解合并算法,橙色直線是拟合出的最佳直線,紅色點表示segment的中心,黃點表示紅點在直線上的投影,綠框就是合并後的完整本文框。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

這樣子我們就求解完一個完整文本框的所有參數,也就完成了segment合并成文本行的任務。

SegLink算法對于各種角度的文本檢測具有很強的魯棒性。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

SegLink論文中并沒有提到該算法能不能檢測彎曲的文本,從理論上解讀,SegLink是可以做到的。比如下圖,隻是合并算法要做一些改變而已。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

EAST(2017)

對于以上把完整文本行先分割檢測再合并的思路,有人提出質疑,覺得這種做法比較麻煩,把文本檢測切割成多個階段來進行,這無疑增大了文本檢測精度的損失和時間的消耗,對于文本檢測任務上中間處理越多可能效果越差。是以有篇CVPR2017的文章提出,我們有一種方法能優雅且簡潔地完成多角度文本檢測,這個算法叫做EAST,論文為《EAST: An Efficient and Accurate Scene Text Detector》。

通過下圖我們知道,一個文本檢測有多個階段,就以region proposals系的檢測算法為例,他們通常包含候選框提取、候選框過濾、bouding box回歸、候選框合并等階段,EAST的作者認為,一個文本檢測算法被拆分成多個階段其實并沒有太多好處,實作真正端到端的文本檢測網絡才是正确之舉。是以EAST的pipeline相當優雅,隻分為FCN生成文本行參數階段和局部感覺NMS階段,網絡的簡潔是的檢測的準确性和速度都有了進一步的提高。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

我們從網絡架構來了解EAST做文本檢測的優勢。首先EAST采取了FCN的思路,一開始我以為EAST是一個通過語義分割來解決文本檢測的難題,深入閱讀後才發現并不是,而隻是借助了FCN的架構做特征提取和學習,最終還是一個回歸問題,在EAST最後預測出相應的文本行參數。

EAST網絡分為特征提取層+特征融合層+輸出層三大部分。

特征提取層: backbone采取PVANet來做特征提取,接下來送入卷積層,而且後面的卷積層的尺寸依次遞減(size變為上一層的一半),而且卷積核的數量依次遞增(是前一層的2倍)。抽取不同level的feature map,這樣可以得到不同尺度的特征圖,目的是解決文本行尺度變換劇烈的問題,size大的層可用于預測小的文本行,size小的層可用于預測大的文本行。

特征合并層,将抽取的特征進行merge.這裡合并的規則采用了U-net的方法,合并規則:從特征提取網絡的頂部特征按照相應的規則向下進行合并,這裡描述可能不太好了解,具體參見下述的網絡結構圖。

網絡輸出層:網絡的最終輸出有5大部分,他們分别是:

  • score map:一個參數,表示這個預測框的置信度;
  • text boxes: 4個參數,(x,y,w,h),跟普通目标檢測任務的bounding box參數一樣,表示一個物體的位置;
  • text rotation angle: 1個參數,表示text boxe的旋轉角度;
  • text quadrangle coordinates:8個參數,表示任意四邊形的四個頂點坐标,即(x1,y1),(x2,y2),(x3,y3),(x4,y4)。
    自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)
    是以從整體看來,EAST就是借助FCN架構直接回歸出文本行的(x,y,w,h,θ)+置信度+四邊形的四個坐标!非常簡潔!但是看到這裡或許會有個問題,為什麼要生成四邊形的四個坐标呢?(x,y,w,h,θ)這個參數不足以解決文本行定位問題?還真不能,看看下面這個圖檔。
    自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)
    對于這種帶放射變換的文本行(可能還有的是透視變換),呈現出來的形狀是平行四邊形(黃色虛線為ground true),如果我們以(x,y,w,h,θ)來表示這個文本的位置,就是粉色框所示,顯然不合适。是以對于這種場合,直接預測四邊形的四個頂點坐标才是正确之舉。

EAST目标函數分兩部分,如下,第一部分是分類誤差,第二部分是幾何誤差,文中權衡重要性,λg=1。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

Ls稱為分類誤差函數,采用 class-balanced cross-entropy,這樣做可以很實用的處理正負樣本不均衡的問題。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

其中β=反例樣本數量/總樣本數量 (balance factor)

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

Lg為幾何誤差函數

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

對于RBOX,采用IoU loss

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

角度誤差則為:

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

對于QUAD采用smoothed L1 loss

CQ={x1,y1,x2,y2,x3,y3,x4,y4},NQ*指的是四邊形最短邊的長度

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

下面看看EAST文本檢測的效果,注意觀察一些帶放射變換or透視變換的文本行的檢測效果。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

總結

文本介紹了我一直關注且實驗效果都相當不錯的三個經典的文本檢測算法,他們都是基于深度學習,可以這麼說,現在做文本檢測都是深度學習的天下了。當然深度學習流派做文本檢測遠不止以上幾個思路,比如基于語義分割的思路做文本檢測的、基于角點檢測做文本檢測、各種方法混合的文本檢測的論文也非常多,同時也取得非常不錯的效果。可以說,現在基于深度學習的文本檢測論文可謂百花齊放。

自然場景文本檢測技術綜述(CTPN, SegLink, EAST)前言Faster RCNNCTPN(2016)SegLink(2017)EAST(2017)

繼續閱讀