1. 程式人生 > >自然場景文字處理論文整理 (4)PixelLink

自然場景文字處理論文整理 (4)PixelLink

paper:https://arxiv.org/abs/1801.01315v1
github:https://github.com/ZJULearning/pixel_link

摘要

大多數最先進的場景文字檢測演算法是基於深度學習的方法,其依賴於邊界框迴歸並且執行至少兩種預測:文字/非文字分類和位置迴歸。迴歸在這些方法中獲取邊界框中起著關鍵作用,但它不是必不可少的,因為文字/非文字預測也可以被視為一種包含完整位置資訊的語義分割。然而,場景影象中的文字例項通常彼此非常接近,使得它們很難通過語義分割來分離。因此,需要例項分割來解決此問題。本文提出了一種基於例項分割的新型場景文字檢測演算法PixelLink。首先通過將同一例項中的畫素連結在一起來分割出文字例項。然後直接從分割結果中提取文字邊界框而不進行位置迴歸。實驗表明,與基於迴歸的方法相比,PixelLink可以在幾個基準測試中實現更好或相當的效能,同時需要更少的訓練迭代次數和更少的訓練資料。

PixelLink的架構
訓練CNN模型以執行兩種畫素預測:文字/非文字預測和連結預測。 在被閾值化之後,正畫素通過正連結連線在一起,實現例項分割。 然後應用minAreaRect直接從分割結果中提取邊界框。 使用後置濾波可以有效地消除噪聲預測。 顯示輸入樣本以便更好地說明。 中的八個熱圖虛線框代表八個方向的連結預測。 儘管在文字/非文字預測中難以分離某些單詞,但它們可通過連結預測分離,如下圖所示:
這裡寫圖片描述

演算法思路

1、將畫素連結在一起
給定畫素和連結的預測,可以分別對它們應用兩個不同的閾值。 然後使用正連結將正畫素分組在一起,產生CC的集合,每個CC表示檢測到的文字例項。因此實現了例項分割。 值得注意的是,給定兩個相鄰的正畫素,它們的連結由它們兩者預測,並且當兩個連結預測中的一個或兩個為正時它們應該連線。 可以使用不相交集資料結構來實現該連結過程。

2、提取邊界框
實際上,檢測任務在例項分割後完成。 然而,需要邊界框作為檢測結果,如IC13(Karatzas等人2013),IC15(Karatzas等人2015)和COCO-Text(Veit等人2016)。 因此,然後通過OpenCV中的minAreaRect(2014年)等方法提取CC的邊界框.minAreaRect的輸出是一個定向矩形,可以很容易地轉換為IC15的四邊形或IC13的矩形。 值得一提的是,在PixelLink中,對場景文字的方向沒有限制。
該步驟導致PixelLink和基於迴歸的方法之間的關鍵差異,即,邊界框直接從除位置迴歸之外的例項分割獲得。

3、進行分割之後的過濾


由於PixelLink嘗試通過連結將畫素組合在一起,因此不可避免地要進行一些噪聲預測,因此需要進行後置過濾步驟。 一種簡單而有效的解決方案是通過檢測盒的簡單幾何特徵進行過濾,例如寬度,高度,面積和縱橫比等。例如,在第二部分的IC15實驗中。 5.3,如果檢測到的盒子的短邊小於10矩形框或者其面積小於300,則放棄檢測到的矩形框.10和300是IC15訓練資料的統計結果。 具體地,對於選擇的過濾標準,選擇在TRAINING集合上計算的相應的第99百分位數作為閾值。 例如,再次選擇10作為較短邊長度的閾值,因為IC15列中約99%的文字例項具有短邊≥10畫素。

優化

1、地面實況計算(其實就是怎麼計算連結畫素)
在TextBlocks(Zhang等人,2016)中的公式之後,文字邊界框內的畫素被標記為正。 如果存在重疊,則只有未重疊的畫素為正。 否則為負。對於給定畫素及其八個鄰居中的一個,如果它們屬於同一個例項,則它們之間的連結為正。
否則為負。注意,對調整大小為預測層形狀的輸入影象執行地面實況計算,即,對於4s的conv3_3和對於2s的conv2_2。

2、損失函式
培訓損失是畫素損失和鏈路損失的加權總和:
L =λL畫素+ L連結。
由於L連結僅在正畫素上計算,因此畫素的分類任務比連結更重要,並且在所有實驗中λ都設定為2.0。

實驗效果

在各資料集上表現很好,主要針對解決傾斜文字,對旋轉文字效果不好。
這裡寫圖片描述