雲從科技在自然場景OCR任務取得重大技術突破
日前,雲從科技在自然場景OCR中的文字檢測這個環節取得了技術突破,在檢測準確率和檢測效率兩個綜合維度上,獲得了至今為止最好的結果。和麵對高質量文件影象的傳統OCR相比,自然場景OCR跳出了對輸入影象的質量和場景束縛,能夠在更寬泛的領域中獲取應用,引起了學術界以及工業界的極大關注。在自然場景文字檢測測試集ICDAR2015上,雲從科技提出的Pixel-Anchor文字檢測框架,取得87.68分的檢測準確率(FMeasure,一種檢出率和精確度的加權), 獲得單尺度文字檢測準確率的第一名, 同時該文字檢測框架在960×1728的解析度下檢測效率達到了10FPS,既有較強的學術意義,又可以滿足實際生產環境的實時性需求。為了驗證演算法的有效性,Pixel-Anchor文字檢測框架在難度更高的多語言自然場景文字檢測測試集ICDAR2017 MLT上,經過簡單的尺度組合,在學術界所有公開文獻的競爭方法中以74.54的分數獲得了多語言綜合文字檢測準確率的第一名, 特別對於ICDAR2017 MLT中的東亞語言部分,該文字檢測框架的表現尤為出色,在多個子測試集上(包括中文)都獲得了第一。該框架在所有測試集上只用到了文字的通用特徵,未引入文字識別作為反饋資訊。
文章地址:https://arxiv.org/abs/1811.07432
背景導讀
OCR技術有著悠久的發展歷史,從上世紀60年代第一個識別英文字母的OCR產品面世以來,OCR的識別領域逐步擴充套件到數字,符號,進而其他語言,譬如拉丁語系中的法文,德文,義大利文等,東亞語系中的中文,日文,韓文等。OCR一般包含兩個基本模組,文字檢測和文字識別。在深度學習技術發展之前,傳統OCR的文字檢測依賴於一些淺層次的影象處理方法或者影象分割方法以及一些複雜繁瑣的後處理技術進行文字定位,譬如早期基於二值化的連通域提取,或者後期基於極大穩定區域的字元區域提取,之後再配合這些被提取區域進行一系列的連線操作來完成最終的文字定位。因為這些技術的使用,傳統OCR所處理的物件往往侷限於成像清晰,背景乾淨,字型簡單而同時又排列規整的文件影象。
隨著深度學習的發展,在OCR的文字檢測領域中,也湧現出一系列端到端的深度學習檢測框架,OCR所能處理的物件逐步從高質量的文件影象擴充套件到成像質量高低不等,背景複雜,字型多樣,文字方向任意的自然場景中。應用範圍也從文件識別擴充套件到圖片廣告過濾,場景理解,商品識別,街景定位,票據識別等廣泛的領域。下圖是幾個自然場景文字檢測的例子。
研究成果
目前基於深度學習的文字檢測框架可以分為兩類,一類是基於畫素級別的影象語義分割,另一類是來源於通用的物體檢測框架,譬如基於錨(anchor)的檢測和迴歸。基於畫素分割的文字檢測框架首先通過影象語義分割獲得可能的文字畫素,之後通過畫素點直接回歸或者對文字畫素的聚合得到最終的文字定位;而基於錨檢測迴歸的文字檢測框架是在通用物體檢測的基礎之上,通過設定更多不同長寬比的錨來適應文字變長的特性,以達到文字定位的效果。基於畫素分割的文字檢測往往具有更好的精確度,但是對於小尺度的文字,因為適用的文字畫素過於稀疏,檢出率通常不高,除非以犧牲檢測效率為代價對輸入影象進行大尺度的放大;基於錨檢測迴歸的文字檢測對文字尺度本身不敏感,對小文字的檢出率高,但是對於大角度的密集文字塊,錨匹配的方式會不可避免的陷入無法適從的矛盾之中,此外,由於這種方法是基於文字整體的粗粒度特徵,而並不是基於畫素級別的精細特徵,它的檢測精度往往不如基於畫素分割的文字檢測。對於中文這樣文字長度跨度很大的語言,目前的這兩種方法在長文字上的效果都不盡人意。
針對這些問題,雲從科技提出了一種端到端的深度學習文字檢測框架Pixel-Anchor,通過特徵共享的方式高效的把畫素級別的影象語義分割和錨檢測迴歸放入一個網路之中,把畫素分割結果轉換為錨檢測迴歸過程中的一種注意力機制,使得錨檢測迴歸的方法在獲得高檢出率的同時,也獲得高精確度。此外,對於如中文這樣文字長度跨度很大的語言,在Pixel-Anchor中,我們提出了一個自適應的預測層,針對不同層級的特徵所對應的感受野範圍,設計不同的錨以及錨的空間位置分佈,以更高的效率更好的適應變化的文字長度。如前所述,在兩個具有挑戰性的自然場景文字檢測測試集ICDAR2015以及ICDAR2017 MLT,Pixel-Anchor在檢測準確率和檢測效率兩個綜合維度上,獲得了至今為止最好的結果(具體結果見下面Table 1,Table 2和Table 3)。該框架在滿足生產環境實時性要求的基礎上獲得了很高的檢測準確率,目前該框架已在雲從科技的證件票據識別系統和圖片廣告過濾系統中上線。
文章導讀
Pixel-Anchor這套文字檢測框架,和目前主流的文字檢測框架相比,提出了兩個大的改進點:
第一點是提出了把畫素級別的影象語義分割以及基於錨的檢測迴歸方法高效融合在一起,可端到端訓練的檢測網路。在該網路中,畫素級別的影象語義分割以及基於錨的檢測迴歸方法共享基礎特徵,而畫素級別的影象語義分割結果作為一種注意力機制,用以監督錨檢測迴歸的執行過程,在有效保證文字檢出率的同時,提升了文字檢測的精度。
總體框架見上圖,Pixel-Anchor採用學術界通用的ResNet-50作為特徵提取主幹網路,提取出1/4,1/8,1/16的特徵圖作為畫素級別語義分割模組(Figure 5)以及錨檢測迴歸模組(Figure 6)的基礎特徵,同時語義分割模組的輸出結果以熱力圖的形式注入到錨檢測迴歸模組中。整個網路簡單輕巧,可通過ADAM優化方法進行端到端的訓練。
第二點是在錨檢測迴歸這個模組中引入了自適應預測層“Adaptive Predictor Layer”,該預測層連線在不同層級的特徵圖之後,根據各特徵圖感受野的不同,調整錨的長寬比,卷積核的形狀以及錨的空間密度(anchor density,見Figure 7),用以高效的獲得各特徵圖上的文字檢測結果,進而對文字長度的變化獲得更好的適應性。自適應預測層在檢測水平長文字上的效能非常出色,和經典的CTPN方法相比,我們的方法不需要複雜的後處理,更魯棒的同時效率更高。