首頁/ 科技/ 正文

影象檢索在高德地圖 POI 資料生產中的應用

影象檢索在高德地圖 POI 資料生產中的應用

作者 | 靈籠、懷邇

一 背景

POI 是 Point of Interest 的縮寫。在電子地圖上,POI 代表餐廳、超市、政府機關、旅遊景點、交通設施等等 。POI是電子地圖的核心資料。對普通使用者而言,POI 資料包含的名稱和位置資訊,能夠滿足其使用電子地圖“查詢目的地”,進而喚起導航服務的基本需求;對電子地圖而言,透過提供“搜尋附近”、“點評”等操作,可提高使用者的活躍時長。另外,POI資料是線上線下連線互動的一個紐帶,是基於位置服務(Location Based Service)產業的一個重要元件。

高德透過自有海量的影象源,來保證現實世界的每一個新增的POI及時製作成資料。在較短時間間隔內(小於月度),同一個地方的POI 的變化量是很低的,如下圖所示,只有“湯火功夫”POI是一個新增的掛牌。

影象檢索在高德地圖 POI 資料生產中的應用

圖1。 同一地方上不同時間的POI牌匾對比

如果對全部POI進行處理的話,則會帶來高昂的作業成本,因此需要對其中沒有變化的POI進行自動化過濾,其中關鍵技術能力就是影象匹配,該場景是一個較為典型的影象檢索任務。

1 技術定義

影象檢索問題定義:給定查詢影象(Query),透過分析視覺內容,在大型影象庫中(Gallery)中搜索出相似的影象。該方向一直是計算機視覺領域的一個長期研究課題,在行人重識別、人臉識別、視覺定位等任務中均有廣泛的研究。影象檢索的核心技術是度量學習,其目標是在固定維度的特徵空間中,約束模型將同類別樣本拉近,不同類別樣本推遠。在深度學習時代,主要有幾種經典的結構,包括:對比損失(contractive loss)、三元組損失(triplet loss)、中心損失(center loss)等,均是透過正負樣本定義以及損失函式設計上進行最佳化。此外,影象檢索還有一個必不可少的要素就是特徵提取,通常包括:全域性特徵、區域性特徵、輔助特徵等,主要是針對不同任務特點進行相應的最佳化,例如:行人重識別以及人臉識別具有很強的剛性約束,並且具備明顯的關鍵特徵(行人/人臉關鍵點),因此會將人體分割或關鍵點檢測資訊融合到模型特徵提取中。

2 問題特點

POI牌匾的影象檢索和學術上主流檢索任務(如行人重識別)有著較大的區別,主要包括以下幾點:異源資料、遮擋嚴重以及文字依賴性。

異源資料

行人重識別任務也存在異源資料問題,但是該任務的異源更多是不同相機拍攝以及不同場景的區別。而在POI牌匾檢索場景中,存在更嚴重的異源資料問題,如下圖所示:

影象檢索在高德地圖 POI 資料生產中的應用

圖2。 不同拍攝條件下的異源影象

左圖來自低質量相機,並且是前向拍攝;右圖來自高質量相機,並且是側向拍攝;因為相機拍攝質量以及拍攝視角不同,這就導致POI牌匾的亮度、形狀、清晰度等都存在非常大的差異。而如何在差異較大的異源資料中實現POI牌匾檢索,是一個非常具有挑戰性的問題。

遮擋嚴重

在道路場景中,經常存在樹木以及車輛等干擾資訊,並且由於拍攝視角原因,拍攝到的POI牌匾經常會面臨嚴重的遮擋問題,如下圖所示:

影象檢索在高德地圖 POI 資料生產中的應用

圖3。 遮擋嚴重的POI牌匾示例

而且該遮擋場景還是不規則的,導致很難對兩個牌匾進行較好地特徵對齊,這給POI牌匾檢索帶來巨大的挑戰。

文字依賴性

POI牌匾還有一個獨有特性就是對文字強依賴,主要是對POI名稱文字的依賴。在下圖場景中,兩個牌匾的整體佈局以及顏色都非常相似,但是其中POI名稱發生了變化。而在該場景下,我們希望兩個牌匾不要匹配,這就需要引入文字特徵來增強特徵區分性。不過,由於遮擋原因也會導致文字特徵不同,因此需要結合影象特徵進行權衡。而且,文字特徵和影象特徵來自多個模態,如何將多模資訊進行融合也是該業務特有的技術難點。

影象檢索在高德地圖 POI 資料生產中的應用

圖4。 僅文字變化的POI牌匾示例

二 技術方案

牌匾檢索的技術方案主要包括資料迭代和模型最佳化兩塊。在資料生成部分,我們分為了冷啟動自動生成資料以及模型迭代生成資料兩個步驟。在模型最佳化部分,我們設計了一個多模態檢索模型,包括視覺分支和文字分支兩部分,主要是考慮到牌匾的文字資訊比較豐富,因此將視覺資訊與文字資訊進行融合。針對視覺資訊特徵的提取,我們進一步設計了全域性特徵分支與區域性特徵分支,並分別進行了最佳化。整體技術框架如下圖所示:

影象檢索在高德地圖 POI 資料生產中的應用

圖5。 整體技術方案

首先利用傳統匹配演算法Sift自動生成模型所需的訓練資料,完成模型的冷啟動;並且在模型上線後,對線上人工作業結果進行自動挖掘,並組織成訓練資料,以迭代模型最佳化。多模態檢索模型是基於三元組損失(Triplet Los)的度量學習框架下進行設計的,輸入包括了:1)POI牌匾的影象資訊;2)POI牌匾的文字資訊。影象資訊使用雙分支進行特徵提取,文字資訊使用BERT進行特徵提取,最後再將文字特徵與視覺特徵進行融合。

1 資料

為訓練檢索模型,通常需要進行例項級標註,即按照POI牌匾粒度進行標註。而在不同資料中篩選同一POI牌匾是一件非常複雜的工作,如果進行人工標註的話,則會帶來高昂的標註成本,並且無法大規模標註。因此,我們設計了一套簡單高效的訓練資料自動生成方式,可用於模型冷啟動,整個環節無需任何人工標註。

我們借鑑了傳統特徵點匹配演算法思想,利用Sift特徵點匹配演算法對兩趟資料中的所有牌匾進行兩兩匹配,並透過內點數量對匹配結果進行篩選,即內點數量大於閾值的匹配牌匾視作同一牌匾。通常來說,傳統特徵點匹配演算法會存在泛化性不足問題,由此生成的訓練資料很可能導致模型無法很好學習,具體體現在:1)訓練樣本較為簡單;2)類別衝突,即同一牌匾分為多個類別;3)類別錯誤,即不同牌匾分為同一類別。因此,我們針對該問題進行了相應最佳化:1)採用多趟資料匹配結果,提升同一類別下牌匾的多樣性;2)採用Batch取樣策略以及MDR loss[2]來降低模型對錯誤標籤資料的敏感性。

具體來說,對於樣本多樣性問題,我們使用了多趟資料的匹配結果來生成訓練資料,因為在不同資料中同一牌匾存在多張來自不同視角的拍攝結果,這就保證了同一類別下牌匾的多樣性,避免了自動生成的樣本都為簡單樣本問題。Batch取樣策略即按類別進行取樣,而資料中類別總數遠遠大於batch size,因此可以緩解類別衝突的問題。MDR loss是在Triplet loss基礎上設計了根據不同距離區間進行正則化約束的新的度量學習框架,從而減少模型對對噪聲樣本的過擬合。

影象檢索在高德地圖 POI 資料生產中的應用

圖6。 MDR loss示意圖,和Triplet loss相比增加了距離正則約束

圖6 是Triplet loss和MDR loss的對比示意圖。MDR loss希望正樣本和anchor之間的距離不被拉到無限近,同時負樣本也不希望被推到無限遠。以類別錯誤噪聲樣本來說,不同牌匾被誤分為同一類別,按照Triplet loss的最佳化目標則會強制模型將兩者距離學習到無限近,這樣的話,模型會過擬合到噪聲樣本上,從而導致最終效果較差。

2 模型

為了最佳化牌匾檢索效果,我們融合了牌匾中的視覺資訊與文字資訊,設計了多模態檢索模型。針對視覺資訊,我們優化了模型全域性特徵和區域性特徵的提取能力。針對文字資訊,我們使用BERT對牌匾的OCR結果進行編碼,將其作為輔助特徵,並與視覺特徵融合後進行度量學習。

全域性特徵

通常對於檢索任務來說,使用深度學習模型提取到的全域性特徵更為魯棒,可以適應牌匾視角、顏色、光照變化等不同場景。為了進一步提升全域性特徵的魯棒性,我們主要從以下兩方面進行了最佳化:1)採用Attention機制,加強對重要特徵的關注;2)網路backbone的改進,以關注到更多細粒度特徵。

在我們的業務場景中,存在一些外觀相似而細節有一定差異的牌匾,如圖8 (c) 所示,在這種情況下,我們希望模型可以關注到牌匾中的細粒度資訊,比如牌匾中文字的字型、文字排版或者是文字內容本身。而注意力機制則可以幫助模型在大量資訊中準確地關注到能夠區分不同牌匾更為關鍵的部分。因此,我們在網路中引入了注意力模組,讓模型學習關鍵資訊,以提升全域性特徵的辨別能力。我們採用了空間注意力機制SGE(Spatial Group-wise Enhance)[4],SGE透過對特徵圖上的每個空間位置生成一個注意力因子來調整每個空間位置處特徵的重要性。SGE模組如圖7所示。它首先對特徵圖進行了分組,然後對每組特徵圖計算語義特徵向量,使用語義特徵向量和特徵圖進行position-wise點乘,得到注意力圖,然後將注意力圖與特徵圖進行position-wise點乘,以此來增強特徵,從而獲得在空間上分佈更好的語義特徵。

影象檢索在高德地圖 POI 資料生產中的應用

圖7。 SGE示意圖,引入了空間注意力機制

為了減少區域性特徵的損失,我們對網路backbone進行了改進,取消了ResNet網路最後一個block中的下采樣,使得最終的特徵圖中包含更多的區域性資訊。除此之外,我們使用GeM[3]池化層替代了最後一個global average pooling,GeM是一種可學習的特徵聚合方法,global max pooling和global average pooling都是它的特殊情況,使用GeM池化可以進一步提升全域性特徵魯棒性。

區域性特徵

在針對全域性特徵進行最佳化以後,現有模型仍然在以下三個方面表現不夠好:1)牌匾截斷的情況,特徵學習質量差,如圖8(a);2)遮擋的牌匾,特徵中引入一些無關的上下文資訊,如圖8(b);3)相似但不同的牌匾難以區分,如圖8(c)。因此,我們進一步設計了局部特徵分支[1],讓模型更加關注牌匾的幾何、紋理等區域性資訊,與全域性特徵共同做牌匾檢索。

影象檢索在高德地圖 POI 資料生產中的應用

(a)

影象檢索在高德地圖 POI 資料生產中的應用

(b)

影象檢索在高德地圖 POI 資料生產中的應用

(c)

圖8。 需區域性特徵最佳化的不同示例,(a)截斷 (b)遮擋(c)文字變化

針對區域性特徵的提取,我們主要的思路是將牌匾垂直切分成幾個部分,分別關注每個部分的區域性特徵[7],並對區域性特徵進行對齊後最佳化。對齊操作如下圖9所示,首先將特徵圖進行垂直池化,得到分塊的區域性特徵圖,再計算兩張圖區域性特徵之間的相似度矩陣,然後根據公式1找到最短距離將兩張影象進行對齊,其中,i,j分別表示兩張圖中的第i塊特徵和第j塊特徵,dij表示兩張圖中第i塊和第j塊特徵的歐式距離。

影象檢索在高德地圖 POI 資料生產中的應用

公式1。 區域性對齊計算公式

影象檢索在高德地圖 POI 資料生產中的應用

圖9。 POI牌匾區域性對齊示意圖

透過這種方式進行區域性特徵對齊,可以很好地提升牌匾在截斷、遮擋、檢測框不準等情況下的檢索效果。

文字特徵

POI牌匾對文字強依賴,可能存在僅牌匾名稱文字發生變化的場景。我們設計的全域性特徵分支以及區域性特徵分支,雖然可一定程度上學習到文字特徵,但是文字資訊在整體資訊中佔比較小,並且監督訊號僅為兩張圖是否相似,導致文字特徵並沒有被很好的學習到。因此,我們利用已有的文字OCR識別結果,並引入BERT對OCR結果進行編碼得到文字特徵,該特徵作為輔助特徵分支和視覺特徵進行融合,融合後的特徵用於最終的牌匾檢索度量學習。值得注意的是,在對牌匾提取OCR結果時,為了減少單幀內識別結果不準的影響,我們利用了一趟資料內同一牌匾的多幀OCR結果,並且將所得到的OCR結果進行拼接,使用BERT對OCR結果特徵編碼時,對來自不同幀的OCR結果之間插入符號做區分。

3 模型效果

在新的技術方案下,POI牌匾影象檢索取得了非常好的效果,準確率和召回率都大於95%,大幅提升了線上指標,並且模型速度也有了巨大的提升。我們隨機選擇了一些匹配結果,如圖10所示。

影象檢索在高德地圖 POI 資料生產中的應用

圖10。 評測集中隨機抽取的POI牌匾檢索結果

我們在最佳化過程中,有一些非常難的Case也在逐漸被解決,如下圖11所示:

影象檢索在高德地圖 POI 資料生產中的應用

圖11。 評測集中難例展示,(a)(b)(c)是最佳化前的錯誤檢索結果,(d)(e)(f)是最佳化後的檢索結果

圖(a)、(b)、(c)展示的是最佳化前的Bad case(左圖為query影象,右圖為Rank1檢索結果),從Bad case中我們不難發現,牌匾檢索對細粒度特徵提取要求非常高,因為這些case普遍特點是具備整體相似性,但是區域性特徵有區別。這些Bad case就是我們設計的多模態檢索模型的初衷,並且也在最佳化過程逐漸得以解決,如圖(d)、(e)、(f)所示。我們提出的多模態檢索模型透過對全域性特徵最佳化以及引入區域性特徵對齊,使得模型更多關注到牌匾上更有區分性的區域性特徵,如文字資訊,文字字型、板式,牌匾紋理等,因此我們的模型對於外觀相似的不同牌匾具有更好的區分能力,如圖(a)和圖(d)效果對比。此外,由於不同視角牌匾存在遮擋、拍攝時的光照強度不同以及不同相機色彩差異大等因素,部分牌匾只利用視覺特徵檢索非常困難。因此,我們透過輔助特徵分支加入了OCR資訊,進一步增強了特徵的魯棒性,使得牌匾檢索可以綜合考慮牌匾的視覺資訊和牌匾中的文字資訊進行檢索,如圖(b)和圖(e)效果對比。

三 未來發展和挑戰

影象檢索是在高德地圖資料自動化生產中的一次嘗試,取得了不錯的效果,並且已在實際業務中使用。但是模型並不是完美的,仍會存在Corner case,為了解決這些case,我們未來將會從半監督學習/主動學習自動補充資料,以及引入Transformer[9,10]最佳化特徵提取和融合兩方面進行探討。

1 資料:基於半監督學習/主動學習的資料探勘

資料是非常重要的,因為模型很難做到完美,總是會存在Corner case,而解決Corner case的一個非常高效的手段就是針對性補充資料。補充資料的關鍵是如何挖掘Corner case以及如何自動標註,該方向也是目前學術的研究熱點,即半監督學習以及主動學習。半監督學習利用有標籤資料訓練出的模型來對海量無標籤資料產生偽標籤,進一步標籤資料和偽標籤資料混合後再最佳化模型。主動學習是利用有標籤資料訓練出的模型對海量無標籤資料進行資料探勘,並人工標註挖掘出的有價值資料。兩者區別在於是否需要部分人工標註,半監督學習是完全由模型自身產生標籤,但是可能導致模型效果存在上限,而主動學習則可以一定程度可提高該上限,因此未來需要深入研究兩者的結合,從而更好的補充訓練資料,解決Corner case。

2 模型:基於 Transformer 的特徵提取與融合

Transformer是目前學術的研究熱點,大量的工作已證明其在分類、檢測、分割、跟蹤以及行人重識別等任務上的有效性。和CNN相比,Transformer具有全域性感受野以及高階相關性建模的特點,使其在特徵提取上有著更好的表徵能力。此外,Transformer的輸入較為靈活,可以方便地將其他模態資訊進行編碼,並和影象特徵一起輸入到模型中,因此其在多模特徵融合上也有較大的優勢。綜上來看,Transformer可以透過對影象Patch的相關性建模來解決POI牌匾在遮擋/截斷場景下的匹配效果,並且可以透過對文字特徵編碼來實現多模特徵的融合。

本文參考文獻

[1] Zhang X, Luo H, Fan X, et al。 Alignedreid: Surpassing human-level performance in person re-identification[J]。 arXiv preprint arXiv:1711。08184, 2017。

[2]Kim, Yonghyun, and Wonpyo Park。 “Multi-level Distance Regularization for Deep Metric Learning。” arXiv preprint arXiv:2102。04223,2021。

[3]Radenović F, Tolias G, Chum O。 Fine-tuning CNN image retrieval with no human annotation[J]。 IEEE transactions on pattern analysis and machine intelligence, 2018, 41(7): 1655-1668。

[4]Li X, Hu X, Yang J。 Spatial group-wise enhance: Improving semantic feature learning in convolutional networks[J]。 arXiv preprint arXiv:1905。09646, 2019。

相關文章

頂部