李 巖, 張敏藝, 宿漢辰, 李芳芳, 李斌陽(yáng)
(1.國(guó)際關(guān)系學(xué)院 網(wǎng)絡(luò)空間安全學(xué)院, 北京 100191;2.中國(guó)傳媒大學(xué) 廣告學(xué)院, 北京 100024;3.中南大學(xué) 計(jì)算機(jī)學(xué)院, 湖南 長(zhǎng)沙 410083)
場(chǎng)景中的文字包含豐富語(yǔ)義信息,場(chǎng)景文本理解在智能交通系統(tǒng)、地理信息定位等領(lǐng)域均有廣泛應(yīng)用。 與文本檢測(cè)識(shí)別[1]等常規(guī)理解任務(wù)不同,場(chǎng)景文本檢索[2]是從場(chǎng)景中搜索并定位與給定查詢(xún)文本相同或相似的所有文本實(shí)例。 具體地,給定待檢索的字符串,文本檢索算法從場(chǎng)景圖像庫(kù)中檢索出包含該字符串的圖像,同時(shí)定位出該字符串在圖像中的位置。 該項(xiàng)技術(shù)存在大量的應(yīng)用需求,如網(wǎng)絡(luò)圖像的安全性審核、圖書(shū)館中圖書(shū)檢索以及按照知識(shí)點(diǎn)切分教學(xué)視頻等。
場(chǎng)景文本檢索任務(wù)通常需要將待查詢(xún)文本與從場(chǎng)景中識(shí)別的單詞進(jìn)行匹配來(lái)實(shí)現(xiàn)。 隨著深度學(xué)習(xí)技術(shù)的廣泛應(yīng)用,利用神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)得到待檢索文本與場(chǎng)景文本實(shí)例之間的相似度并對(duì)其進(jìn)行排序,選取相似度最高的實(shí)例作為最終檢索結(jié)果的方法成為該領(lǐng)域的主流方法[3]。 然而,此類(lèi)方法在面對(duì)不規(guī)則文本實(shí)例時(shí),由于無(wú)法準(zhǔn)確提取不規(guī)則文本區(qū)域從而導(dǎo)致相似度計(jì)算的偏差,嚴(yán)重影響檢索效果。
為了解決這一問(wèn)題,本文對(duì)現(xiàn)有端到端網(wǎng)絡(luò)模型進(jìn)行重新設(shè)計(jì),將不規(guī)則文本提取和跨模態(tài)相似度學(xué)習(xí)統(tǒng)一融合到同一框架內(nèi),利用學(xué)習(xí)到的相似度對(duì)不規(guī)則文本實(shí)例排序,從而實(shí)現(xiàn)對(duì)不規(guī)則文本的檢索。與現(xiàn)有方法不同,本文提出的方法針對(duì)不規(guī)則文本進(jìn)行特別設(shè)計(jì),構(gòu)建高效精準(zhǔn)的文本檢索模型。
傳統(tǒng)的文本檢索方法[2]通常只能用來(lái)處理手工裁剪后的文本圖像。 這類(lèi)方法將待檢索文本字符串與剪裁后的文本圖像映射到同一特征空間中并計(jì)算它們之間的距離,挑選距離最短的文本圖像作為檢索結(jié)果。 其中,早期的文本字符串使用金字塔式字符直方圖( Pyramidal Histogram of Character,PHOC)[2]這類(lèi)手工設(shè)計(jì)特征,后續(xù)研究工作通過(guò)學(xué)習(xí)萊文斯坦編輯距離[4]直接對(duì)文本圖像排序,突破了手工設(shè)計(jì)特征方法的局限。
然而在場(chǎng)景圖像中,裁剪良好的文本圖像邊界框大都不易被檢測(cè)器自動(dòng)獲取,因此上述方法不能直接應(yīng)用于場(chǎng)景文本檢索任務(wù)。 Mishra 等[5]提出將任務(wù)分解為字符檢測(cè)識(shí)別和文本查詢(xún)2 個(gè)子任務(wù),采用查詢(xún)驅(qū)動(dòng)的搜索方法,在查詢(xún)中找到字符的大致位置,然后施加空間約束以在數(shù)據(jù)庫(kù)中生成圖像的排序列表。 然而,這類(lèi)方法的框架在字符檢測(cè)識(shí)別過(guò)程中采用人工設(shè)計(jì)的特征,且分割子任務(wù)的方式忽略了待檢索文本和檢測(cè)到的文本之間的相關(guān)性和互補(bǔ)性,性能受到極大限制。 Gómez 等[6]首次引入端到端網(wǎng)絡(luò)用于場(chǎng)景文本檢索,可以同時(shí)對(duì)候選文本及其對(duì)應(yīng)字符的金字塔直方圖特征進(jìn)行預(yù)測(cè)。
在端到端可訓(xùn)練網(wǎng)絡(luò)方法中,文本定位模塊的融入可以極大地提升性能。 這類(lèi)方法首先檢測(cè)并識(shí)別場(chǎng)景中的所有文本,將場(chǎng)景圖像中包含待檢索文本的概率表示為圖像中定位的文本中出現(xiàn)待檢索文本的頻次。 其中,利用跨模態(tài)相似度學(xué)習(xí)度量圖像中候選文本與待檢索文本的距離成為當(dāng)前主流的方法[3]。 該方法通過(guò)建立端到端網(wǎng)絡(luò)共同優(yōu)化場(chǎng)景文本檢測(cè)和跨模態(tài)相似性學(xué)習(xí),將場(chǎng)景文本檢索任務(wù)轉(zhuǎn)換為對(duì)檢測(cè)到的候選文本用學(xué)習(xí)到的相似性度量進(jìn)行排序的問(wèn)題。 然而,該方法在面對(duì)復(fù)雜場(chǎng)景下的不規(guī)則文本時(shí),依然存在嚴(yán)重不足。
深度學(xué)習(xí)技術(shù)的出現(xiàn)顯著提高了文本定位的性能,這些方法可以大致分為2 類(lèi):基于有錨框方法和無(wú)錨框方法。 其中基于有錨框文本檢測(cè)器受Faster-RCNN[7]和SSD[7]等經(jīng)典目標(biāo)檢測(cè)器啟發(fā),常用于形狀規(guī)則的文本定位, 如 TextBoxes[8], RRD[9],SSTD[10]和RRPN[11]等。
無(wú)錨文本檢測(cè)器將文本檢測(cè)問(wèn)題轉(zhuǎn)換為文本分割問(wèn)題,通常也稱(chēng)為基于像素級(jí)分割的方法。 這種方法可以較好地處理場(chǎng)景中的不規(guī)則文本,通常建立在全卷積網(wǎng)絡(luò)( Fully Convolutional Network,FCN)[12]上。 Zhang 等[13]首先用FCN 估計(jì)文本并用最穩(wěn)定極值區(qū)域(Maximally Stable Extremal Regions,MSER)方法從這些文本塊中檢測(cè)候選字符。Yao 等[14]使用FCN 來(lái)預(yù)測(cè)文本實(shí)例的3 個(gè)部分,包括文本/非文本、字符類(lèi)別和字符連接方向,并將其應(yīng)用于后續(xù)文本檢測(cè)過(guò)程。 EAST[15]和DeepReg[16]采用FCN 預(yù)測(cè)可收縮的文本位置可能性分?jǐn)?shù)圖,對(duì)其進(jìn)行逐像素回歸并進(jìn)行NMS(Non-Max Suppression) 后處理, 實(shí)現(xiàn)較好的文本檢測(cè)效果。PSENet[17]利用FCN 預(yù)測(cè)具有多尺度的文本實(shí)例,并采用一種先進(jìn)的尺度擴(kuò)展算法重構(gòu)整個(gè)文本實(shí)例,可以將距離相近的文本實(shí)例有效分割開(kāi)。 像素聚合網(wǎng)絡(luò)(Pixel Aggregation Network,PAN)[18]可以看做PSENet 的改進(jìn)版本,其核心思想是引入了一種可學(xué)習(xí)的后處理方法,使其能夠通過(guò)預(yù)測(cè)出的相似向量來(lái)引導(dǎo)文字像素去糾正核參數(shù)。
本文所提方法采用的基本框架如圖1[3]所示。主體網(wǎng)絡(luò)包括2 個(gè)分支;一個(gè)是圖像分支,用以提取所有可能的文本候選框的特征E ;另一個(gè)是文本分支,將查詢(xún)?cè)~Q轉(zhuǎn)換為特征F 。 最后,計(jì)算F 和E 的相似度,并進(jìn)行排序得到最終結(jié)果。 整個(gè)網(wǎng)絡(luò)將文本檢測(cè)、文本轉(zhuǎn)換和相似度計(jì)算這3 個(gè)任務(wù)統(tǒng)一到同一個(gè)端到端的網(wǎng)絡(luò)中進(jìn)行聯(lián)合優(yōu)化。
圖1 本文提出的文本檢索框架說(shuō)明Fig.1 Illustration of proposed text retrieval framework
具體地,圖像分支由文本檢測(cè)模塊和序列到序列模塊(Image-S2SM)組成,目的是提取所有可能出現(xiàn)的文本候選框的特征。 針對(duì)不規(guī)則文本,本文選取PAN[18]作為文本檢測(cè)模塊的主要結(jié)構(gòu),詳見(jiàn)2.2 節(jié)。 與一般的目標(biāo)檢測(cè)不同,由于場(chǎng)景文本通常以字符序列的形式出現(xiàn),因此使用基于圖像的Image-S2SM 可以顯著增強(qiáng)每個(gè)候選文本的上下文信息,具體結(jié)構(gòu)如表1 所示。
表1 圖像與文本序列到序列模塊結(jié)構(gòu)Tab.1 Architecture of Image-S2SM and Text-S2SM
對(duì)于給定的一幅圖像,檢測(cè)模塊將首先產(chǎn)生K個(gè)文本候選框(即產(chǎn)生K個(gè)文本實(shí)例),通過(guò)RoIAlign[19]技術(shù)提取感興趣區(qū)域(Region of Interest,RoI)的特征P={pi}K i=1,并將其輸入后續(xù)的Image-S2SM 中,產(chǎn)生特征E∈RK×T×C,其中T和C分別代表RoI 特征的寬度和通道數(shù)。
對(duì)于文本分支來(lái)說(shuō),與圖像不同的是,由于查詢(xún)?cè)~無(wú)法在神經(jīng)網(wǎng)絡(luò)中直接被前向傳播,因此需要利用詞嵌入模塊將查詢(xún)?cè)~轉(zhuǎn)化為特征詞。 與Image-S2SM 類(lèi)似,本分支也使用了Text-S2SM,其結(jié)構(gòu)詳見(jiàn)表1。 其中,詞嵌入模塊由嵌入層和雙線(xiàn)性插值算子組成。 給定查詢(xún)?cè)~Q={qi}N i=1,其中N是查詢(xún)?cè)~語(yǔ)集合中的元素個(gè)數(shù)(即查詢(xún)?cè)~數(shù)),單詞qi可以表示成一個(gè)字符序列為單詞qi中所含的字符數(shù),yj是單詞qi的第j個(gè)字符的獨(dú)熱向量表示。 嵌入層首先將每個(gè)字符yj轉(zhuǎn)換為2C維特征,生成每個(gè)單詞的嵌入特征序列。 然后,每個(gè)特征序列通過(guò)串聯(lián)和插值操作成為固定長(zhǎng)度特征。 最后,將Q所有特征堆疊為輸出特征∈RN×T×2C。 經(jīng)過(guò)單詞嵌入模塊對(duì)查詢(xún)?cè)~的處理后,得到的特征通過(guò)序列到序列模塊映射到F∈RN×T×C,特征E和F將用于后續(xù)的相似度學(xué)習(xí)任務(wù)。
在不規(guī)則文本檢測(cè)模塊選取上,本文選取PAN[18],這是一種高效準(zhǔn)確的任意形狀文本檢測(cè)器,由一個(gè)低計(jì)算成本的分割模塊和一個(gè)后處理模塊組成,整體框架如圖2 所示,主要包含2 個(gè)核心步驟:① 分割網(wǎng)絡(luò)用于預(yù)測(cè)文字區(qū)域、核區(qū)域以及相似向量(其中核區(qū)域與PSENet 類(lèi)似,均為文字區(qū)域的縮放);② 從預(yù)測(cè)的核區(qū)域中重建完整的文字實(shí)例。
圖2 PAN 整體框架Fig.2 Whole framework of PAN
具體地,首先為了加快網(wǎng)絡(luò)的推理速度,縮減了骨架網(wǎng)絡(luò)ResNet 特征圖的通道數(shù)得到Fr。 在特征提取部分使用了特征金字塔增強(qiáng)模塊(Feature Pyramid Enhancement Module,FPEM)及特征融合模塊(FFM)構(gòu)建輕量級(jí)的特征金字塔網(wǎng)絡(luò)(Feature Pyramid Networks,FPN)。 單個(gè)FPEM 呈U 形結(jié)構(gòu),由向上尺度(Up-scale)增強(qiáng)和向下尺度(Down-scale)增強(qiáng)2 個(gè)階段組成。 特征經(jīng)歷自上而下融合與自下而上融合2 個(gè)階段,不斷增強(qiáng)各個(gè)尺度F1,F2,…,Fnc特征信息。 FPEM 級(jí)聯(lián)多個(gè)模塊后可以通過(guò)FFM 將結(jié)果進(jìn)行融合,對(duì)得到相同尺寸的特征圖進(jìn)行上采樣及拼接操作,得到最終特征圖Ff。
在像素聚合階段使用了聚類(lèi)的思想從核中重建完整的文字實(shí)例。 將文字實(shí)例視為聚類(lèi)結(jié)果的類(lèi)群,則文本實(shí)例的核為該類(lèi)群的中心,文本像素為聚類(lèi)樣本。 為了將文本像素聚類(lèi)到對(duì)應(yīng)的核,文本像素與和它相同文本之間的距離就要足夠小,即最小化Ldis,同時(shí)把不同實(shí)例拉遠(yuǎn),即最大化Lagg。 用這樣的方式引導(dǎo)文字像素去糾正核參數(shù),從而提升該模塊對(duì)于不規(guī)則文本檢測(cè)的能力。
抽取候選文本與查詢(xún)?cè)~的特征E ∈RK×T×C和F ∈RN×T×C后,查詢(xún)?cè)~Q與候選文本P的相似度可用相似度矩陣(Q,P) ∈RN×K表示。 這里,,j(Q,P)的值為特征Fi與Ej的余弦相似度,其公式為:
式中,V表示將二維矩陣重構(gòu)為一維向量的算子。在訓(xùn)練過(guò)程中,預(yù)測(cè)的相似度矩陣(Q,P)由目標(biāo)相似度矩陣S(Q,P)進(jìn)行監(jiān)督訓(xùn)練。 每個(gè)目標(biāo)相似度Si,j(Q,P)為詞對(duì)(qi,qj)之間的歸一化編輯距離,用式(2)表示。 其中距離(Distance)是萊文斯坦編輯距離[4],表示單詞qi的字符數(shù)。
除(Q,P)外,還計(jì)算(P,P)∈RK×K和(Q,Q)∈RK×K用于輔助訓(xùn)練。 在推理過(guò)程中,qi與輸入圖像的相似度等于(Q,P)的最大值,并以此作為排序依據(jù)。 為了進(jìn)一步彌補(bǔ)視覺(jué)特征E 與文本特征F 之間的語(yǔ)義鴻溝,采用 Connectionist Temporal Classification,即CTC 損失[19]對(duì)視覺(jué)特征與文本字符串進(jìn)行對(duì)齊。 CTC 損失是計(jì)算一種損失值,可以對(duì)沒(méi)有對(duì)齊的數(shù)據(jù)進(jìn)行自動(dòng)對(duì)齊,主要用在沒(méi)有事先對(duì)齊的序列化數(shù)據(jù)訓(xùn)練上。 在本文實(shí)驗(yàn)中,存在很多Sequence to Sequence 結(jié)構(gòu),需要在預(yù)處理操作時(shí)進(jìn)行對(duì)齊,如果不對(duì)齊而直接訓(xùn)練模型,會(huì)由于字符間距離的不同,導(dǎo)致模型很難收斂。
對(duì)于訓(xùn)練過(guò)程中的損失函數(shù)來(lái)說(shuō),主要由3 部分組成[3]:
式中,Ld為文本圖像檢測(cè)損失[18];Lc為文本圖像對(duì)齊的CTC 損失[20];Ls[3]為跨模態(tài)相似學(xué)習(xí)損失,采用平滑L1 損失函數(shù)Lr進(jìn)行回歸計(jì)算:
式中,和Si為預(yù)測(cè)的相似度矩陣及其關(guān)聯(lián)的目標(biāo)相似度矩陣;2N和K分別為增強(qiáng)后的查詢(xún)?cè)~數(shù)和文本實(shí)例數(shù)。
本文使用PyTorch 1.8 版本,在Intel 酷睿i5 CPU,單塊Titan XP GPU 的平臺(tái)上進(jìn)行文本檢索模型的訓(xùn)練和評(píng)估。 實(shí)驗(yàn)與當(dāng)前最好的文本檢索方法STRTDSL[3]進(jìn)行對(duì)比。 同時(shí),對(duì)不規(guī)則文本模塊的骨架網(wǎng)絡(luò)選取進(jìn)行了比較分析及中文檢索應(yīng)用實(shí)驗(yàn)驗(yàn)證。
街景文本數(shù)據(jù)集(SVT)[21]有349 張來(lái)自谷歌Street View 的圖像。 該數(shù)據(jù)集包含100 張圖像組成的訓(xùn)練集和249 張圖像組成的測(cè)試集。 測(cè)試集中含有427 個(gè)帶標(biāo)注的單詞,被用作文本查詢(xún)。
場(chǎng)景文本檢索數(shù)據(jù)集(STR)[4]由50 個(gè)查詢(xún)?cè)~和10 000 張圖像組成。 字體樣式和視角多變,極具挑戰(zhàn)。
Coco 文本檢索數(shù)據(jù)集(CTR)是Coco-Text[22]的一個(gè)子集。 從Coco-Text 中選擇500 個(gè)帶標(biāo)注的單詞作為查詢(xún)。 然后,在Coco-Text 中使用7 196 張包含此類(lèi)查詢(xún)?cè)~的圖像來(lái)形成這個(gè)數(shù)據(jù)集。
中文街景文本檢索數(shù)據(jù)集(CSVTR)[3]由23 個(gè)預(yù)定義的中文查詢(xún)?cè)~和從谷歌圖像搜索引擎搜集的1 667 幅中文場(chǎng)景文本圖像組成。 數(shù)據(jù)集共預(yù)定義23 個(gè)中文查詢(xún)?cè)~,每個(gè)圖像都用其對(duì)應(yīng)的查詢(xún)?cè)~進(jìn)行標(biāo)注。
AIDATA 數(shù)據(jù)集是本文建立的一個(gè)極具挑戰(zhàn)的不規(guī)則文本數(shù)據(jù)集,包括433 張取自CTW1500[23]和Total-Text[24]數(shù)據(jù)集的圖像,其圖像具有任意形狀文本占比大、文本彎曲程度大的特點(diǎn),目的是為了更好地驗(yàn)證本文方法在自然場(chǎng)景特別是任意形狀不規(guī)則文本檢索的有效性。
實(shí)驗(yàn)結(jié)果如表2 所示,MS 代表多尺度測(cè)試,該測(cè)試通過(guò)組合在多種分辨率測(cè)試圖的輸出來(lái)實(shí)現(xiàn)。在本文實(shí)驗(yàn)中,輸入圖像的較長(zhǎng)邊分別被調(diào)整為
表2 與最先進(jìn)的方法在SVT,STR 和CTR 數(shù)據(jù)集上的性能比較Tab.2 Performance comparisons with SOTA text retrieval methods on SVT, STR and CTR dataset
960,1 280 和1 600。 與單尺度測(cè)試相比,SVT,STR和CTR 性能分別提高了1.71%,3.24%和1.18%。 不難發(fā)現(xiàn),在所有的數(shù)據(jù)集上,本文方法在推理速度FPS 下降不大的情況下平均準(zhǔn)確率均優(yōu)于STR-TDSL 方法。 結(jié)果表明,本文方法能夠在給定查詢(xún)?cè)~的情況下準(zhǔn)確定位并檢索圖像實(shí)例。
表3 為本文方法與STR-TDSL 在A(yíng)IDATA 上的實(shí)驗(yàn)結(jié)果,不難發(fā)現(xiàn)本文在推理速度FPS 和平均準(zhǔn)確率這2 個(gè)指標(biāo)上均超過(guò)STR-TDSL 方法20%以上,這一較大差距說(shuō)明STR-TDSL 方法不具備對(duì)彎曲程度大的不規(guī)則文本的有效檢索能力,而本文方法針對(duì)不規(guī)則文本檢索的引入的模塊設(shè)計(jì)是極其有效的。
表3 與最先進(jìn)的方法在A(yíng)IDATA 數(shù)據(jù)集上的性能比較Tab.3 Performance comparisons with the SOTA text retrieval method on AIDATA dataset
具體檢索效果示例如圖3 所示,其中第1 排為本文方法檢索結(jié)果,第2 排為STR-TDSL 方法檢索結(jié)果。
圖3 任意形狀文本檢索效果對(duì)比Fig.3 Comparison of retrieval effects for text detection with arbitrary shapes
為了驗(yàn)證不規(guī)則文本檢測(cè)模塊中骨干網(wǎng)絡(luò)的選取對(duì)實(shí)驗(yàn)結(jié)果的影響,將ResNet50 換成輕量級(jí)骨干ResNet18 和重量級(jí)骨干VGG16。 如表4 所示,在相同的設(shè)置下,ResNet50 和VGG16 對(duì)CTR 數(shù)據(jù)集性能提升都在1%以上,對(duì)AIDATA 的性能提升都在4%以上。 然而,重量級(jí)骨干網(wǎng)絡(luò)所導(dǎo)致的FPS 下降亦是必然的。
表4 骨架網(wǎng)絡(luò)性能比較Tab.4 Backbone performance comparison
正如之前所論述的,跨模態(tài)相似度學(xué)習(xí)是本文方法的必要組成部分。 從表5 可以看出,與Baseline 方法相比,在SVT,STR 和CTR 數(shù)據(jù)集上,CTC 損失上則比Baseline 方法提高了0.56%,2.07%,1.56%。
表5 CTC 損失的消融實(shí)驗(yàn)(平均準(zhǔn)確率)Tab.5 Ablation experiment of CTC loss (mAP scores)單位:%
研究結(jié)果表明了CTC 損失的必要性,CTC 損失可以幫助圖像分支聚焦于文本區(qū)域,從而提取純化的視覺(jué)特征,便于跨模態(tài)相似性度量。
為了進(jìn)一步驗(yàn)證本文方法對(duì)中文文本的通用性,在CSVTR 數(shù)據(jù)集上進(jìn)行了中文場(chǎng)景文本檢索實(shí)驗(yàn)。 本文方法與STR-TDSL 方法進(jìn)行了比較。 如表6 所示,在3 755 個(gè)字符類(lèi)型的設(shè)置下,本文的方法在推理速度保持12. 4 幀/秒的情況下實(shí)現(xiàn)了50.33% 的 平 均 準(zhǔn) 確 率。 相 比 STR-TDSL 方 法50.12%的平均準(zhǔn)確率略有提升。 結(jié)果表明,本文方法具有較強(qiáng)的魯棒性且易于推廣到非拉丁文本。
表6 CSVTR 數(shù)據(jù)集特征維度、檢索性能和推理時(shí)間比較Tab.6 Feature dimension,retrieval performance and inference time comparisons on CSVTR dataset
本文提出了一種結(jié)合任意形狀場(chǎng)景文本檢測(cè)和跨模態(tài)相似度學(xué)習(xí)的端到端框架,該框架可以從自然圖像中搜索與給定查詢(xún)文本相同或相似的文本實(shí)例。 實(shí)驗(yàn)表明,在3 個(gè)基準(zhǔn)數(shù)據(jù)集上,該方法的檢索性能均優(yōu)于目前最先進(jìn)的檢索方法。 此外,本文創(chuàng)建了一個(gè)新的彎曲文本數(shù)據(jù)集AIDATA,并在該數(shù)據(jù)集上實(shí)現(xiàn)理想檢索效果。
未來(lái)的工作可以從兩方面繼續(xù)優(yōu)化:一是任意形狀文本檢測(cè)效果的進(jìn)一步提高,提升框架整體檢測(cè)與檢索性能;二是框架內(nèi)容的拓展,本文以跨模態(tài)相似度為基本準(zhǔn)則,未來(lái)可以利用自然語(yǔ)言處理技術(shù)獲取語(yǔ)義上下文信息,以此為準(zhǔn)則提升框架整體性能。