表格檢測識別一般分為三個子任務:表格區域檢測、表格結構識別和表格內容識別。本章將圍繞這三個表格識別子任務,從傳統方法、深度學習方法等方面,綜述該領域國內國外的發展歷史和最新進展,並提供幾個先進的模型方法。
3.1 表格區域檢測方法
表格檢測已經被研究了一段較長的時間。研究人員使用了不同的方法,可以分為如下:
1.基於啟發式的方法
2.基於機器學習的方法
3.基於深度學習的方法
基於啟發式的方法,主要用於20世紀90年代、2000年代和2010年初。他們使用了不同的視覺線索,如線條、關鍵詞、空間特徵等,來檢測表格。
Pyreddy等人提出了一種使用字元對齊、孔和間隙來檢測表格 的方法。Wang等人使用了一種統計方法來根據連續單詞之間的距離來檢測表線。將水平連續的單詞與垂直相鄰的線分組起來,提出候選表實體。Jahan等人提出了一種使用單詞間距和線高的區域性閾值來檢測表格區域的方法。
Itonori提出了一種基於規則的方法,通過文字塊排列和規則行位置來定位檔案中的表格。 Chandran和Kasturi開發了另一種基於垂直和水平線的表格檢測方法。Wonkyo Seo等人使用連線點(水平線和垂直線的交點)檢測進行進一步處理。
Hassan等人通過分析文字塊的空間特徵來定位和分割表格。Ruffolo等人介紹了PDF-TREX,這是一種用於單列PDF檔案中的表格識別的啟發式自下而上的方法。它使用頁面元素的空間特徵來將它們對齊和分組為段落和表格。Nurminen提出了一套啟發式方法來定位具有公共對齊的後續文字方塊,並確定它們作為一個表格的概率。
Harit等人提出了一種基於唯一表起始和尾部圖形識別的表格檢測技術。Tupaj等人提出了一種基於OCR的表格檢測技術。該系統基於關鍵字搜尋類似表格的行序列,上述方法在具有統一佈局的檔案上效果比較好。
國內的表格區域檢測研究起步較晚,啟發式方法較少。其中,具有代表性的是Fang等人提出的基於表格結構特徵和視覺分隔符的方法。該方法以PDF檔案為輸入,分四步進行表格檢測:PDF解析,頁面佈局分析,線條檢測和頁面分隔符檢測,表格檢測。在最後的表格檢測部分中,通過對上一步檢測出的線條和頁面分隔符進行分析得到表格位置。然而,啟發式規則需要推廣到更廣泛的表格種類,並不真正適合通用的解決方案。因此,開始採用機器學習方法來解決表檢測問題。
基於機器學習的方法在2000年代和2010年代很常見。
Kieninger等人通過對單詞片段進行聚類,應用了一種無監督的學習方法。Cesarini等人使用了一種改進的XY樹監督學習方法。Fan等人使用有監督和無監督的方法進行PDF檔案中的表格檢測。Wang和Hu 將決策樹和SVM分類器應用於佈局、內容型別和片語特徵。T. Kasar等人使用結點檢測,然後將資訊傳遞給SVM分類器。Silva等人在視覺頁面元素(隱馬爾可夫模型)的順序觀察上應用聯合概率分佈,將潛在的表線合併到表中。Klampfl等人比較了兩種來自數位科學專題文章的無監督表識別方法。Docstrum演演算法應用KNN將結構聚合成線,然後使用線之間的垂直距離和角度將它們組合成文字塊。該演演算法是在1993年設計的,比本節中提到的其他方法要早。
F Shafait 提出了一種有用的表識別方法,該方法在具有相似佈局的檔案上表現良好,包括商業報告、新聞故事和雜誌頁面。Tesseract OCR引擎提供了該演演算法的一個開源實現。
隨著神經網路的興趣,研究人員開始將它們應用於檔案佈局分析任務中。最初,它們被用於更簡單的任務,如表檢測。後來,隨著更復雜的架構的發展,更多的工作被放到表列和整體結構識別中。
A Gilani [《Table detection using deep learning》]展示瞭如何使用深度學習來識別表格。檔案圖片最初是按照文中提出的方法進行預處理的。然後,這些照片被傳送到一個區域候選網路中進行表格測試,然後是一個完全連線的神經網路。該方法對各種具有不同佈局的檔案圖片非常精確,包括檔案、研究論文和期刊。
D Prasad [《An approach for end to end table detection and structure recognition from image-based documents》]提出了一種解釋檔案圖片中的表格資料的自動錶格檢測方法,主要需要解決兩個問題:表格檢測和表格結構識別。使用單一的折積神經網路(CNN)模型,提供了一個增強的基於深度學習的端到端解決方案,用於處理表檢測和結構識別的挑戰。CascadeTabNet是一個基於級聯掩碼區域的CNN高解析度網路(Cascade mask R-CNN HRNet)的模型,可以同時識別表區域和識別這些表格中的結構單元格。
SS Paliwal [《Tablenet: Deep learning model for end-to-end table detection and tabular data extraction from scanned document images》]提出了一種新的端到端深度學習模型,可用於表格檢測和結構識別。為了劃分表格和列區域,該模型使用了表格檢測和表結構識別這兩個目標之間的依賴關係。然後,從發現的表格子區域中,進行基於語意規則的行提取。
Y Huang [《A yolo-based table detection method》]描述了一種基於YOLO原理的表格檢測演演算法。作者對YOLOv3提供了各種自適應改進,包括一種錨定優化技術和兩種後處理方法,以解釋檔案物件和真實物件之間的顯著差異。還使用k-means聚類進行錨點優化,以建立更適合表格而不是自然物件的錨點,使他們的模型更容易找到表格的精確位置。在後處理過程中,將從投影的結果中刪除額外的空白和有噪聲的頁面物件。
L Hao [《A table detection method for pdf documents based on convolutional neural networks》]提供了一種基於折積神經網路的PDF檔案中檢測表格的新方法,這是目前最廣泛使用的深度學習模型之一。該方法首先使用一些模糊的約束來選擇一些類似表的區域,然後構建和細化折積網路,以確定所選擇的區域是否為表格。此外,折積網路立即提取並使用表格部分的視覺方面特徵,同時也考慮了原始PDF檔案中包含的非視覺資訊,以幫助獲得更好的檢測結果。
SA Siddiqui [《Decnt: Deep deformable cnn for table detection》]為檢測檔案中的表格提供了一種新的策略。這裡給出的方法利用了資料的潛力來識別任何排列的表。該方法直接適用於影象,使它普遍能適用於任何格式。該方法採用了可變形CNN和faster R-CNN/FPN的獨特混合。由於表格可能以不同的大小和轉換(方向)的形式出現,傳統的CNN有一個固定的感受野,這使得表格識別很困難。可變形折積將其感受野建立在輸入的基礎上,使其能夠對其感受野進行改造以匹配輸入。由於感受野的客製化,網路可以適應任何佈局的表格。
N Sun [《Faster r-cnn based table detection combining corner locating》]提出了一種基於Faster R-CNN的表檢測的尋角方法。首先使用Faster R-CNN網路來實現粗表格識別和角定位。然後,使用座標匹配來對屬於同一表格的那些角進行分組。不可靠的邊同時被過濾。最後,匹配的角組微調並調整表格邊框。在畫素級,該技術提高了表格邊界查詢的精度。
I Kavasidis[《A saliency-based convolutional neural network for table and chart detection in digitized documents》]提出了一種檢測表格和圖表的方法,使用深度cnn、圖形模型和 saliency ideas的組合。M Holecek[《Table understanding in structured documents》]提出了在賬單等結構化檔案中利用圖折積進行表格理解的概念,擴充套件了圖神經網路的適用性。在研究中也使用了PDF檔案,研究結合行項表格檢測和資訊提取,解決表格檢測問題。任何字元都可以快速識別為行項或不使用行項技術。在字元分類之後,表格區域可以很容易地識別出來,因為與賬單上的其他文字部分相比,表格線能夠相當有效地區分。
A Casado-Garcıa[《The benefits of close-domain fine-tuning for table detection in document images》]使用了目標檢測技術,作者已經表明,在進行了徹底的測試後發現,從一個更近域進行微調可以提高表格檢測的效能。作者利用了Mask R-CNN、YOLO、SSD和 Retina Net結合目標檢測演演算法。該研究選擇了兩個基本資料集, TableBank和PascalVOC。
X Zheng [《Global table extractor (gte): A framework for joint table identification and cell structure recognition using visual context》]提供了全域性表格提取器(GTE),這是一種聯合檢測表格和識別單元結構的方法,可以在任何物件檢測模型之上實現。為了利用單元格位置預測來訓練他們的表網路,作者開發了GTE-Table,它引入了一種基於表格固有的單元格約束限制的新懲罰。一種名為GTE-Cell的新型分層單元識別網路利用了表格樣式。此外,為了快速、低成本地構建一個相當大的訓練和測試資料語料庫,作者開發了一種方法來自動分類現有文字中的表格和單元格結構。
Y Li[《A gan-based feature generator for table detection》]提供了一種新的網路來生成表格文字的佈局元素,並提高規則較少的表格的識別效能。生成對抗網路(GAN)與該特徵生成器模型是類似的。作者要求特徵生成器模型為規則約束嚴格和規則鬆散的表格提取可比較的特徵。
DD Nguyen [《a fully convolutional network for table detection and segmentation in document images》]引入了TableSegNet,一個完全折積的網路,設計緊湊,可以同時分離和檢測表。TableSegNet使用較淺的路徑來發現高解析度的表格位置,而使用較深的路徑來檢測低解析度的表格區域,將發現的區域分割成單獨的表格。TableSegNet在整個特徵提取過程中使用具有廣泛核心大小的折積塊,並在主輸出中使用一個額外的表格邊界類,以提高檢測和分離能力。
D Zhang [《Yolo-table: disclosure document table detection with involution》]提出了一種 YOLO-table-based的表格檢測方法。為了提高網路學習表格空間排列方面的能力,作者將退化納入了網路的核心,並建立了一個簡單的FPN網路來提高模型的有效性。這項研究還提出了一種基於表格的增強技術。
下圖是幾種基於深度學習的表格檢測方法的優缺點的比較。
3.1.1 先進的表格區域檢測模型
DeCNT
2018年的論文《DeCNT: Deep Deformable CNN for Table Detection》提出了一種新的表格檢測方法,利用深度神經網路的潛力。傳統的表格檢測方法依賴於容易出錯且特定於資料集的啟發式方法。相比之下,本方法利用了資料識別任意佈局的表格的潛力。以前的大多數表格檢測方法只適用於pdf,而所提出的方法直接適用於影象,使其普遍適用於任何格式。本方法採用了可變形CNN和faster R-CNN/FPN的獨特混合。由於表格可能以不同的大小和轉換(方向)的形式出現,傳統的CNN有一個固定的感受野,這使得表格識別很困難。可變形折積將其感受野建立在輸入的基礎上,使其能夠對其感受野進行改造以匹配輸入。由於感受野的客製化,網路可以適應任何佈局的表格。
DeCNT演演算法原理:
框架由可變形的CNN與faster R-CNN/FPN 的新組合組成,如圖1所示。折積神經網路是一種自動特徵提取器,具有自動發現對手頭任務有用的特徵的能力。這種特徵的自動提取是基於層的層次結構,其中初始層提取原始特徵,如邊緣和梯度,而層次結構頂部的層提取非常抽象的特徵,如完整的物件或它的一些突出部分。這種在層次結構中的遍歷導致了在原始輸入影象中一個特定神經元的有效感受野的增加。傳統的二維折積運算可以用數學方法表示為:
其中*為折積運算,F為濾波器,I為影象,K定義為FilterSize/2,H為影象高度,W為影象寬度,i,j定義執行折積運算的位置。
在一個給定的折積層中,所有神經元的有效感受野是相同的。這個屬性對於位於層次結構頂部的層存在問題,因為在這些層中,不同的物件可能會以任意尺度以及任意轉換出現。這些轉換的存在需要根據神經元的輸入動態地適應神經元的感受野的能力。因此,作者為faster R-CNN/FPN模型配備了一個可變形的CNN,而不是傳統的CNN,其神經元並不侷限於一個預定義的感受野。每個神經元可以根據輸入產生顯式偏移來改變其感受野,這些偏移本身依賴於前面的特徵圖。這允許折積層濾波器通過調節輸入本身的感受野來適應不同的尺度和轉換。這個可變形的折積層如圖2所示,其中新增了一組折積層來生成影象中每個位置的濾波器偏移量。由於表可以以任意的比例以及任意變換(方向等),可變形折積運算對於表的檢測任務特別有用。可變形的二維折積運算包含額外的偏移量,這在數學上可以表示為:
其中nm,n為bin(m,n)中的畫素數。如果有C輸入特徵對映,那麼來自該層的總體輸出將是k × k × C,它將被提供給分類頭。
可變形的roi池,就像折積對應的池一樣,為roi池層增加了一個偏移量,以便該層可以適應給定輸入的感受野。這一點可以寫成:
由於在可變形的折積層中生成顯式偏移來轉換每個神經元的感受野,作者在圖3中視覺化了特定可變形折積層的感受野。紅色的點表示濾波器的中心,而藍色的點是在新增生成的偏移量後得到的。傳統折積運算的接受場均勻分佈在二維網格上。另一方面,在可變形折積的情況下,從圖中可以明顯看出,每個神經元根據其輸入適應自己的感受野。當接近一個表格區域時(圖3(a),圖3(c))時,感受野擴大到覆蓋了完整的表格,但在其他位置仍保持緻密(圖3(b),圖3(d))。
可變形結構
論文配備了兩種具有可變形折積的目標檢測模型。第一個模型是一個可變形faster R-CNN,它由一個可變形的base model組成,並用可變形的roi池化層代替傳統的roi池化層。本文將該模型稱為模型a。第二個模型是採用FPN框架的可變形特徵金字塔網路(FPN)。在可變形的FPN中,再次使用可變形的base model,並將位置敏感的roi池化層替換為可變形的位置敏感的roi池化層
在所有的實驗中,都使用了ResNet-101的base model。自可變形折積是一個記憶體密集型操作由於生成的顯式偏移的每個位置特性地圖,論文只是取代了三個更高層次的層ResNet-101模型轉換為可變形的對應層(可變形的感受野主要有助於層的層次結構)。這些層分別是res5a_branch2b、res5b_branch2b和res5c_branch2b。對於FPN的情況,作者另外將res3b3_branch2b層和res4b22_branch2b層替換為可變形的對應層,以幫助多尺度特徵提取。
由於沒有足夠的資料來從頭開始訓練模型,所以作者利用遷移學習來訓練模型。當使用可變形的ResNet-101時,作者將可變形的折積層的偏移量初始化為零(零偏移量轉化為固定的接受場,使其等同於傳統的折積操作)。由於網路在新資料集上進行了微調,偏移適應以應對錶格結構的規模和轉換。
值得注意的是,論文在目標檢測模型中包含的唯一顯著變化是使用可變形的基模型(可變形的ResNet-101)和使用可變形的roi池,而不是傳統的roi池。這將傳統的物體檢測器轉換為可變形的對應檢測器。為了建立比較,論文還訓練了一個具有傳統折積操作的ResNet-101模型,將這個非可變形的模型稱為模型C。
超引數
為了訓練模型A(可變形速度faster R-CNN),我們使用了三種不同的錨定比(0.5、1和2)和5種不同的錨定尺度(2、4、8、16和32)。為了訓練模型B(可變形的FPN),我們使用了相同的錨定比(0.5、1和2),但只有一個錨定尺度(8),因為FPN另外配備了一個自上而下的路徑用於多尺度檢測。對於前250次迭代,優化模型的初始學習率為0.000125(多gpu訓練時×NumGPUs)。然後使用速率為0.00125的學習速率(多gpu訓練時×NumGPUs),在4、16和32個週期使用學習速率衰減步長。該模型經過了50次的優化。最大影象大小被限制為1280×800。超過這個尺寸的影象被調整大小,以保持縱橫比不變。
實驗
資料集:
實驗使用了四個著名的公開的表檢測資料集。資料集的細節,如表1。
ICDAR-13
ICDAR-2013是最著名的表檢測和結構識別的資料集之一。資料集由PDF檔案組成,論文將其轉換為影象,以便在系統中使用。這是必需的,因為論文的系統只適用於影象,而不是大多數其他依賴於PDF檔案中可用的元資訊的方法。該資料集還包含了表結構識別任務的結構資訊。該資料集總共包含238張影象。由於之前在這個資料集上的大部分工作都使用了0.5的IoU閾值來計算f1,論文也基於這個閾值評估模型。
ICDAR-17
POD最近釋出了一個競賽資料集(ICDAR-2017 POD),專注於從影象中檢測表格、圖形和數學方程的任務。該資料集總共由2417張影象組成。訓練集由1600張影象組成,其餘的817張影象用於測試。論文只評估了系統的表格檢測任務,這是工作的重點。由於競賽中所有提交的材料都是針對兩個不同的IoU閾值0.6和0.8進行評估,論文報告了在這兩個閾值上的表現。
MORMOT
由計算機科技研究所(北京大學)釋出的Mormot是最大的公開可獲得的表識別資料集。資料集中的影象總數為2000張。兩組影象的正負影象樣本的比例約為1:1。在資料集中有許多不正確的ground truth註釋的範例。因此,使用實驗資料集的清理版本。資料集的清理版本由實驗中使用的1967張影象組成。
UNLV
UNLV資料集由各種檔案組成,包括技術報告、商業信件、報紙和雜誌等。該資料集總共包含2889個掃描檔案,其中只有424個檔案包含一個表格區域。在實驗中,論文只使用了一個包含一個表格區域的影象。
實驗結果:
表2比較了該方法與之前在ICDAR-2017 POD和ICDAR-2013資料集上的工作的效能。為了完成,還報告了UNLV和Mormot的結果,但這些資料集不是工作的重點。需要指出的是,依賴於PDF檔案的系統不能與論文的系統進行直接比較,因為它們使用了PDF檔案中包含的後設資料,而論文的方法只依賴於原始影象,而沒有額外的後設資料。這使得這個問題更加具挑戰性。
A.ICDAR-13
ICDAR-2013資料集由238張影象組成,包含156張表。實驗使用資料集中的所有影象進行測試,而沒有在訓練中使用任何一幅影象。該系統只有一個表格區域沒檢測到,取得99.4%召回。類似地,系統只錯誤地將一個區域標記為屬於表(false positive),導致精度為99.4%。圖4給出了來自ICDAR-13資料集的正確和錯誤檢測的代表性例子,包括 true positives, false positives, 和 false negatives。由於f-measure達到99.4%,在ICDAR- 2013資料集上全面優於之前的最先進的方法。
Schreiber等人使用了基於傳統折積運算的faster R-CNN的方法。由於它們的主幹是基於ZFNet 和VGG-16 ,它們的模型沒有直接的可比性。因此,實驗新增了模型C具有相同的ResNet-101主幹的實驗結果。結果表明,可變形折積的綜合效能優於傳統的折積。
B.ICDAR-17 POD
ICDAR-2017 POD挑戰包括817張影象,其中包含317張表格。所有參賽作品均在兩個不同的IoU閾值0.6和0.8上進行評估,以計算相關指標。可變形faster R-CNN(模型A)在0.6時表現良好,達到96.8%,召回率為97.1%,準確率為96.5%。可變形的FPN(模型B)實現了0.8的閾值的最先進的結果,f-measure達到95.3%,召回率為93.1%,精度為97.7%。
圖5顯示了來自ICDAR- 17 POD資料集的正確和錯誤檢測的代表性例子。根據所取得的結果,在IoU閾值分別為0.6和0.8時,本方法在表格檢測任務上都優於所有其他ICDAR- 2017 POD挑戰參與者。
對ICDAR-2017的錯誤結果進行分析發現,大部分錯誤與IoU有關。原因是不同的資料集組合在到表邊界的距離方面有不同的註釋。在極端情況下,有些情況下,表中的空單元格不被認為是表格區域的一部分。
實驗再次將本方法的結果與傳統的折積對應的結果進行了比較。在這種情況下,可變形的折積也優於傳統的折積。
C.MORMOT
MORMOT資料集由1967張影象組成,共包含1348張表。除了Mormot之外,在其他三個資料集中訓練的可變形faster R-CNN能夠正確地檢測到1275個表範例。該系統還產生了226個false positives和73個false negatives,導致召回率為94.6%,準確率為84.9%。這導致了最終的f-measure為89.5%。圖6給出了來自Mormot資料集的正確和錯誤檢測的代表性例子,包括true positives, false positives, 和 false negatives。
D.UNLV
UNLV資料集也同樣由424張影象組成,總共包含558張表。採用相同的留一方案訓練的可變形快速RCNN能夠正確檢測418個表範例。該系統還產生了114個false positives和140個false negatives,導致召回率為74.9%,準確率為78.6%,最終的f-measure為76.7%。圖7顯示了UNLV正確分類的表格區域,而圖8顯示了不正確分類的表格區域。
結論
論文提出了一種基於region-based的可變形折積神經網路的端到端表格檢測方法。從對所提出方法的廣泛評估中可以明顯看出,為自然場景中目標檢測而開發的深度架構輔以可變形特性可以全面優於非變形的方法。
Semi-Supervised Deformable DETR
2023年的論文《Towards End-to-End Semi-Supervised Table Detection with Deformable Transformer》本文提出了一種新的端到端半監督表格檢測方法,利用可變形transformer來檢測表格物件。本方法在PubLayNet、DocBank、ICADR-19和TableBank資料集上評估了我們的半監督方法,它比以往的方法取得了更好的效能。
演演算法原理:
Deformable DETR
可變形的DETR 包含一個Transformer encoder-decoder網路,它將目標檢測視為一個可設定的預測任務。它使用了Hungarian損失,並通過雙向圖匹配避免了對ground truth邊界框的重疊預測。它消除了對人工參與的元素的需要,如錨點和後處理階段,如在基於cnn的物件檢測器中使用的非最大抑制(NMS)。可變形的DETR是DETR體系結構的一個擴充套件,它解決了DETR的一些限制,如訓練收斂速度慢和在小物件上的效能差。可變形的DETR在體系結構中引入了可變形的折積,這允許更靈活的物件形狀建模和更好地處理不同尺度的物件。這可以提高效能,特別是在小物體上,並在訓練過程中更快地收斂。圖1顯示了可變形transformer所有模組,包括多尺度特徵和編解碼器網路。
Transformer Decoder
解碼器網路以編碼器特徵的輸出和N個物件query作為輸入。它包含兩種注意型別和self-attention和cross-attention。self-attention模組查詢物件query之間的連線。這裡的key和query矩陣都包含物件query。cross-attention模組使用物件query從輸入特徵圖中提取特徵。這裡的key矩陣包含編碼器模組提供的特徵對映,query矩陣是作為解碼器輸入的物件query。在注意模組之後,新增前饋網路(FFN)和線性投影層作為預測頭。線性投影層預測類標籤,而FFN提供最終的邊界框座標值。
Deformable Attention Module
DETR網路中的Attention模組考慮了輸入特徵圖的所有空間位置,這使得訓練的收斂速度較慢。然而,一個可變形的DETR可以利用基於可變形折積的Attention網路和多尺度輸入特徵來解決這一問題。它只考慮一個參考畫素附近的幾個樣本畫素,無論輸入特徵的大小如何,如圖2所示。Query矩陣只需要一小部分key,解決了DETR訓練收斂速度慢的問題。
Semi-Supervised Deformable DETR
半監督可變形DETR是一種統一的學習方法,它使用完全標記和未標記的資料來進行目標檢測。它包含兩個模組,一個是學生模組和一個是教師模組。訓練資料有兩種資料型別,標籤資料和未標記資料。學生模組將標記和未標記影象作為輸入,其中對未標記資料應用強增強,而對標籤資料應用(強增強和弱增強)。學生模組通過偽框使用已標記資料和未標記資料的檢測損失進行訓練。未標記的資料包含兩組用於提供類標籤的偽框及其邊界框。教師模組在應用弱增強後,只將未標記的影象作為輸入。圖3是pipeline的摘要。教師模組將預測結果提供給偽標記框架,得到偽標籤。然後,學生模組使用這些偽標籤進行監督訓練。這裡,教師模組使用對未標記資料的弱增強來生成更精確的偽標籤。通過對未標記資料的強增強,使學生模組具有更具挑戰性的學習。學生模組還以一小部分具有強增強和弱增強的標記影象作為輸入。對學生模組sm進行了優化,總損失如下:
訓期間,學生模組使用指數移動平均(EMA)策略不斷更新教師模組。將概率分佈視為偽標籤,偽標籤生成是簡單的。相比之下,目標檢測任務更加複雜,因為一個影象可能包含許多物件,而註釋包含物件位置和類標籤。基於cnn的物件檢測器使用錨點作為物件建議,並通過非最大抑制(NMS)等後處理步驟去除冗餘的方框。
下篇繼續介紹