圖像檢索(image retrieval)- 11 - End-to-end Learning of Deep Visual Representations for Image Retrieval -1-論文學習


 

End-to-end Learning of Deep Visual Representations for Image Retrieval

Abstract

雖然深度學習已經成為許多計算機視覺任務的top執行方法的關鍵組成部分,但到目前為止,它還沒有在實例級圖像檢索方面帶來類似的改進。在本文中,我們認為深度檢索方法在圖像檢索方面的結果令人失望的原因有三:1)嘈雜的訓練數據,2)不合適的深度架構,和3)次優的訓練過程。我們解決了這三個問題。首先,我們利用了一個大規模但有噪聲的地標數據集,並開發了一種自動清理方法,該方法可以產生一個適合深度檢索的訓練集。其次,我們基於最近的R-MAC描述符,表明它可以被解釋為一個深層和可區分的架構,並提出改進來增強它。最后,我們用siamese結構來訓練這個網絡,它結合了三個streams並使用triplet loss的。在訓練過程的最后,提出的架構在一個單一的前向傳遞后產生一個全局的圖像表征,這非常適合於圖像檢索。大量的實驗表明,我們的方法顯著優於以前的檢索方法,包括基於昂貴的局部描述符索引和空間驗證的最新方法。在Oxford 5k、Paris 6k和Holidays數據集中,我們分別報告了94.7、96.6和94.8的mAP。我們的表征也可以使用乘積量化(product quantization)來進行高度壓縮,而准確率只有很小的下降。為了確保我們研究的可重復性,我們還發布了數據集的clean注解和我們的預訓練模型:http://www.xrce.xerox.com/Deep-Image-Retrieval。

 

1 Introduction

實例級圖像檢索是一個可視化搜索任務,目標是給定一個查詢圖像,在一個可能非常大的圖像數據庫中檢索包含與查詢圖像有着相同對象實例的所有圖像。圖像檢索和其他相關的可視化搜索任務具有廣泛的應用,如web上的逆向圖像搜索或個人照片收藏的組織。圖像檢索也被視為數據驅動方法的一個關鍵組件,這些方法使用可視化搜索將與檢索圖像關聯的注釋傳輸到查詢圖像(Torralba et al, 2008)。這已被證明對各種各樣的注釋都很有用,如圖像級標簽(Makadia et al,2008)、GPS坐標(Hays and Efros, 2008)或顯著物體位置(Rodriguez- Serrano et al,2015)。

深度學習,尤其是深度卷積神經網絡(Deep convolutional neural networks, CNN),已經成為計算機視覺領域一個極其強大的工具。在Krizhevsky et al(2012)使用卷積神經網絡在2012年的ImageNet分類和定位的挑戰(Russakovsky et al,2015)上獲得第一名后,基於深度學習的方法顯著提高了在目標檢測等其他任務(Girshick et al,2014)和語義分割(Long et al,2015)的最新效果。最近,它們也在其他語義任務中發光發熱,比如image captioning (Frome et al, 2013; Karpathy et al, 2014) 和visual question answering (Antol et al, 2015)。然而,到目前為止,深度學習在實例級圖像檢索方面還不太成功。在大多數檢索基准,深度方法比依賴於局部描述符匹配和使用詳盡空間驗證 (Mikul ́ık et al, 2010; Tolias et al, 2015; Tolias and J ́egou, 2015; Li et al, 2015)進行重新排序的傳統方法效果差。

大多數深度檢索方法使用網絡作為局部特征提取器,利用在大型圖像分類數據集(如ImageNet)上預先訓練的模型(Deng et al, 2009),並且只專注於在這些特征之上設計適合圖像檢索的圖像表征。人們已經做出了一些貢獻,使得深層架構能夠准確地表示不同大小和長寬比的輸入圖像 (Babenko and Lempit- sky, 2015; Kalantidis et al, 2016; Tolias et al, 2016) 或解決基於CNN的特征缺乏幾何不變性的問題(Gong et al, 2014; Razavian et al, 2014)。在此,我們認為,以往基於深度架構的圖像檢索方法無法取得良好效果的主要原因之一是缺乏針對實例級圖像檢索的具體任務的監督學習。

在這項工作中,我們集中在學習適合用於檢索任務的表征這個問題上。不同於那些被學習來區分不同語義類別的特征,這些特征對於類內的變化來說是穩健的,在這里我們感興趣的是區分特定的物體,即使它們屬於相同的語義類別(如區分白馬和黑馬,語義類別都為馬)。我們提出了一個解決方案,結合了一個為檢索任務定制的表征和一個明確目標檢索的訓練過程。

對於表征,我們在卷積(R-MAC)描述符的區域最大激活 (Tolias et al, 2016)上構建。該方法對不同尺度下的多個圖像區域計算基於CNN的描述子,並將其聚合成固定長度的緊湊特征向量,因此具有較好的縮放和平移魯棒性。該方法的一個優點是,它可以編碼高分辨率的圖像,並不扭曲其長寬比。然而,在最初的形式中,R-MAC描述符使用了一個在ImageNet上預先訓練好的CNN,我們認為這是次優的。在我們的工作中,我們注意到R-MAC管道的所有步驟都可以集成到一個單獨的CNN中,我們建議以端到端的方式學習它的權值,因為它的計算所涉及的所有步驟都是可微的(就是打算自己訓練一個CNN)。

在訓練過程中,我們使用了一個包含三個streams和使用triplet loss的siamese網絡,它明確地優化了網絡的權值,以產生非常適合檢索任務的表征(即訓練新的CNN的方法)。此外,我們還提出學習R-MAC描述符的池化機制。在Tolias等人(2016)的原始架構中,一個rigid的網格決定了被池化的區域的位置,這些區域將產生最終的圖像級描述符。在這里,我們建議顯式學習如何使用區域推薦網絡選擇給定的圖像內容的這些區域位置(即在網絡中加上一個RPN網絡,用於定位)。該訓練過程產生了一種新的結構,它能夠在一次前向傳遞中將一張圖像編碼成一個緊湊的固定長度的向量。然后可以使用dot-product對不同圖像的表征進行比較。最后,我們提出了一種將不同分辨率的信息編碼為單個描述符的方法。輸入圖像首先以不同的尺度調整大小,然后組合它們的表征,產生一個多分辨率描述符,這個方法將顯著改善結果。

學習我們表征的權值需要適當的訓練數據。為了實現這一目標,我們利用了Babenko等人(2014)的公共地標數據集,它與Babenko等人(2014)所示的標准實例級檢索基准保持了良好的一致性,它的圖像是通過使用幾個著名地標的名稱查詢圖像搜索引擎來檢索得到的。我們建議對這個數據集進行清理,它可以自動丟棄大量錯誤標記的圖像,並在不需要進一步注釋或人工干預的情況下估計地標位置。

一項關於四種標准圖像檢索基准的廣泛實驗研究定量地評估了我們每一項貢獻的影響。我們還展示了將我們的表征與查詢擴展(query expansion)和數據庫端特征增強相結合的效果,以及使用乘積量化進行壓縮的影響。最終,我們得到的結果在很大程度上超越了所有數據集上的最新的效果,不僅與每個圖像使用一個全局表征的方法對比, 而且還與更昂貴的與我們的方法不同的方法對比,其還需要進行后續匹配階段或幾何驗證。

本文的其余部分組織如下。第2節討論相關工作。第3節描述了產生合適訓練集的清理過程。第4節描述了訓練過程,而第5節提出了對深層架構的一些改進。第6節描述了最后的管道,並將其與最新研究進行比較。最后,第7節對本文進行總結。

本文以以下方式擴展了我們之前的工作(Gordo et al, 2016):在構建全局描述符時,我們將殘差網絡架構作為一種替代方法(其非常深層的本質需要調整我們的訓練過程,參見4.3節)。我們構建描述符的多分辨率版本來處理查詢圖像和數據庫圖像之間的縮放變化(第5.3節)。我們建議將我們的方法與數據庫端特征增強相結合,在測試時無需額外成本的情況下顯著提高檢索精度(第6.2節)。我們通過PCA和乘積量化方法來評估在我們的表征中壓縮的效果(章節6.3)。這些新的貢獻大大改善了結果。此外,我們還展示了定性的結果,說明學習在模型激活中的影響。

 

2 Related work on image retrieval

本節概述了一些對實例級圖像檢索有貢獻的關鍵論文。

2.1 Conventional image retrieval

早期的實例級檢索技術,如Sivic and Zisserman (2003), Nister and Stewenius (2006), and Philbin et al (2007) 的技術,都依賴於 bag-of-features表征、大型詞匯表和inverted文件。無數的方法,提出了更好的近似匹配的描述符,看到的作品例如J ́egou et al (2008); J ́egou et al (2010); Mikulik et al (2013); Tolias et al (2015)。這些技術的一個優點是可以使用空間驗證來重新排序候選結果列表(Philbin et al, 2007;Perdoch et al,2009年),盡管成本巨大,但仍取得了很大的改進。

同時,還考慮了聚合局部patch以構建全局圖像表征的方法。編碼技術,如Fisher vector(Perronnin and Dance, 2007;Perronnin et al,2010)或VLAD描述符(J́egou等,2010)已經被如(J ́egou et al, 2010) have been used for example by Perronnin et al (2010); Gordo et al (2012); J ́egou and Chum (2012); Radenovic et al (2015)等使用。所有這些方法都可以與查詢擴展等后處理技術相結合(Chum et al,2007,2011;Arandjelovic and Zisserman, 2012)。一些研究還建議壓縮描述符以提高存儲要求和檢索效率,但代價是降低准確性。盡管最常見的方法是通過PCA或乘積量化使用無監督壓縮(Perronnin et al,2010;J́egou and Chum,2012;Radenovic et al,2015),有監督的降維方法也是有的(Gordo et al,2012)。

 

2.2 CNN-based retrieval

在Krizhevsky等人(2012)的開創性工作中,一個經過ImageNet分類訓練的CNN的激活被用作實例級檢索任務的圖像特征,盡管這只進行了定性的評估。不久之后,Razavian等人(2014)對這些現成的CNN特征進行了定量評估。針對它們對縮放、裁剪和圖像雜波缺乏魯棒性的缺點,提出了一些改進措施。Razavian等人(2014)對每個查詢區域進行區域交叉匹配並累積最大相似度,而Babenko和Lempitsky(2015)對白化區域描述符使用sum-pooling。Kalantidis等人(2016)擴展了Babenko和Lempitsky(2015)的工作,允許跨維加權和神經編碼的聚合。其他提出的混合模型也涉及編碼技術,如Perronnin和Larlus(2015)使用了FV,或Gong等人(2014)和Paulin等人(2015)考慮了VLAD。盡管這些方法的性能優於標准的全局描述符,但它們的性能明顯低於傳統方法的水平

Tolias等(2016)提出在固定的空間區域布局中聚合CNN的激活特征。該方法使用一個預訓練、全卷積的CNN提取圖像的局部特征,且沒有扭曲他們的長寬比和改變圖像大小,然后聚合這些局部特色為使用歸一化的全局表征,其已知在圖像檢索中效果很好(J ́egou and Chum, 2012)。這個方法的結果叫做R-MAC描述符,它是圖像的固定長度向量表示,當與查詢擴展結合使用時,可以獲得接近最新技術水平的結果。我們的工作靈感來自於R-MAC管道,但以端到端的方式學習模型權重

 

2.3 Finetuning for retrieval

使用在ImageNet上為分類而訓練的模型的現成特征可能不是實例級檢索任務的最佳選擇,因為所訓練的模型是為了實現類內泛化(即用來區分不同的類,如區分魚和馬;但是類內很難區分,如白馬和黑馬)。與使用預先訓練好的模型作為特征提取器不同,一些方法提出了明確地學習更適合檢索任務的權重。Babenko等人(2014)的工作表明,在ImageNet上預先訓練的用於對象分類的模型可以通過在一組外部地標圖像上微調來改進,即使使用了分類損失。

我們工作的初始版本 (Gordo et al, 2016)連同並發工作 (Radenovic et al, 2016),證實為了檢索微調預訓練的模型可以帶來顯著的性能改善,但也說明了更重要的是將 i)一個好的圖像表征和 ii)用於排名的損失(其和使用在Babenko et al(2014)的分類損失相反)結合起來。Arandjelovic等人(2016)最近的NetVLAD也強調了學習排名的重要性。

 

3 Leveraging large-scale noisy data

(這里是用來得到帶有邊界框標注信息的干凈的地標數據集)

為了學習用於實例級檢索的信息化和有效的表征,我們需要適當的數據集。本節描述我們如何利用和自動清理現有數據集,以獲得訓練我們的模型所需的特征。

我們利用了Landmarks數據集(Babenko et al, 2014),這是一個大規模的圖像數據集,包含672個著名地標的大約214k幅圖像。它的圖像是通過圖像搜索引擎中的文本查詢收集的,沒有經過徹底的驗證。因此,它們包含了各種各樣的profiles: 如場地的一般視圖、雕像或繪畫等細節的特寫鏡頭,以及所有中間案例,除此外還有場地地圖圖片、藝術素描,甚至是完全不相關的圖像,如圖1所示。

由於URLs的損壞,我們只能下載一部分圖片。我們刪除了圖像太少的類。我們還小心翼翼地刪除了所有與我們實驗的Oxford 5k, Paris 6k和 Holidays數據集有重疊的類,見4.4節。我們獲得了一組約192,000張分割成586個地標的圖像。我們將此集合稱為Landmarks-full。在我們的實驗中,我們使用168,882張圖像進行實際的微調,使用剩余的20,668張圖像來驗證參數。

 

leaning the Landmarks dataset.  Landmarks數據集包含了不可忽略的大量不相關圖像(圖1)。雖然這在特定的框架(例如分類,通常網絡可在訓練中容納這種多樣性,甚至噪音)下可能是被允許的,在某些情況下我們需要學習有着相同的特定對象或場景的圖像的表征。在這種情況下,這些圖像的差異來自於不同的觀圖尺度、角度、光照條件和圖像雜波(而不是類別)。我們對Landmarks數據集進行預處理,如下所示。

我們首先在每個地標類的圖像中運行一個強圖像匹配基線。我們使用不變關鍵點匹配和空間驗證(Lowe, 2004)對每對圖像進行比較。我們使用SIFT和Hessian-Affine關鍵點檢測器(Lowe, 2004;Mikolajczyk and Schmid, 2004)和使用first-to-second neighbor ratio rule(Lowe, 2004)匹配關鍵點。眾所周知,這種方法優於基於描述符量化的方法(Philbin et al, 2010)。然后,我們用Philbin等人(2007)提出的仿射變換模型驗證所有成對匹配。這個沉重的過程是可負擔的,因為它是離線執行,只在訓練時間進行一次,並在每個類基礎類中執行。

為了不失一般性,我們將描述單個地標類的清理過程的其余部分。一旦我們獲得了所有圖像對之間的成對分數集,我們構造一個圖,其節點是圖像,而邊是成對匹配。我們修剪所有分數低的邊。然后提取圖的連通分量。它們對應着一個地標的不同profiles; 圖1展示了St Paul’s Cathedral的兩個最大的連接組建(一個是整個建築外觀,一個是他的內部景觀,即與St Paul’s Cathedral建築搜索相關的圖一遍出來的就是其外觀或內部圖)。最后,我們只保留最大的連接組件,並丟棄其他組件,以確保類中的所有圖像在視覺上是相關的。這個清理過程留下大約49,000張圖像(分為42,410張訓練圖像和6,382張驗證圖像),仍然屬於586個地標之一,該數據集稱為Landmarks-clean。在32核服務器上,清理過程花費了大約一周的時間,在類上並行進行。

Bounding box estimation. 在我們的一個實驗中,我們用一個學習過的感興趣區域(ROI)選擇器來替換R-MAC描述符中區域的均勻采樣方法(第5.1節)。這個選擇器是使用邊界框標注進行訓練的,我們會自動對所有地標圖像進行估計。為了實現這個目標,我們利用了在清理步驟中獲得的數據。經過驗證的關鍵點匹配的位置是一個有意義的線索,因為感興趣的對象在地標的圖片上是一致可見的,而干擾的背景或前景對象是變化的,因此是不匹配的。

我們用圖S = {VS, ES}表示每個地標的連通分量。每對連通圖像(i,j)∈ES都對應一組驗證過的關鍵點匹配和一個仿射變換Aij。我們首先在圖像i和j中定義一個初始邊界框,用Bi和Bj表示,作為包圍所有匹配關鍵點的最小矩形。請注意,單個圖像可以包含在許多不同的對中。在這種情況下,初始邊界框是所有框的幾何中值,如Vardi和Zhang(2004)中的有效計算。然后,我們運行一個擴散過程,如圖2所示,在這個過程中,對於一對(i,j),我們使用Bi和仿射變換Aij來預測邊界框Bj(反之亦然,即用Bj和仿射變換Aij預測邊界框Bi)。在每次迭代中,邊界框被更新為:,其中,α是小的更新步長(在我們的實驗中我們設置了α= 0.1)。同樣,對單一圖像的多次更新使用幾何中值合並,這是魯棒的仿射變換估計。這個過程迭代直到收斂。從圖2中可以看出,邊界框的位置得到了改善,其在圖像間的一致性也得到了改善。我們正在制作一份 Landmarks-clean圖像及其估計的可用邊界框列表(這樣就為使用的數據得到了其對象對應的邊界框)。 

接下來,我們利用我們清理的數據集為圖像檢索學習定制的強大圖像表征。

 

 

4 Learning to rank: an end-to-end approach

本節首先回顧了Tolias等人(2016)在4.1節中的R-MAC表示,並表明,盡管它具有手工制作的特性,但它所涉及的所有操作都可以集成到單個CNN中,該CNN在一次前向傳播過程中就能計算R-MAC表征。更重要的是,它的所有組件都由可微操作組成,因此,給定訓練數據和適當的損失,就可以以端到端方式學習架構的最優權重。為了達到這個目的,我們利用了一個triplet ranking損失的three-stream siamese網絡(章節4.2)。然后,我們將討論允許此架構擴展到具有大內存需求的深度網絡的實際細節(第4.3節)。最后,我們通過實驗驗證了在標准基准測試中所提出的訓練策略所獲得的有效性(第4.4節)。

 

4.1 The R-MAC baseline

最近由Tolias等人(2016)引入的R-MAC描述符是一種全局圖像表征,特別適合於圖像檢索。其核心是使用一個“全卷積”的CNN作為一個強大的局部特征提取器,它獨立於圖像大小來工作,並且在不扭曲原始圖像高寬比的情況下提取局部特征。Tolias等人(2016)的原始工作使用了AlexNet (Krizhevsky et al, 2012)和VGG16 (Simonyan and Zisserman, 2015)兩種網絡架構,模型在ImageNet數據集上預先訓練,但也可以使用其他網絡架構,如殘差網絡(He et al, 2016)。然后沿着從一個覆蓋圖像的剛性網格中獲得的多個多尺度重疊區域中將這些局部特征max-pooled,其類似於空間金字塔,每個區域將產生一個單一的特征向量。這些區域層次上的特征都獨立進行了L2歸一化、PCA白化和再次L2歸一化操作,這個已知的規范化管道在圖像檢索中效果很好 (J ́egou and Chum, 2012)。最后,再次對所有的區域描述符進行求和聚合和L2歸一化。獲得的全局圖像表征是一個緊湊的向量,其大小(通常為256到2k維,取決於網絡架構)獨立於圖像的大小和區域的數量。注意,區域池化與空間金字塔不同:后者連接區域描述符,而前者對它們進行求和聚合。用點積比較兩幅圖像的R-MAC向量可以被解釋為一種加權的多對多區域匹配,其中權重取決於集合的區域描述符的范數。

 

4.2 Learning to retrieve

R-MAC管道的一個關鍵方面是,它的所有組件都是可微操作。更准確地說,不同區域的多尺度空間池化方法與He et al(2014)使用固定rigid網格的感興趣區域(ROI)池化方法是等價的,在檢測上下文中顯示出是可微的(Girshick, 2015)。PCA投影可以被看作是shifting(對於平均centering)和全連接(FC)層(對於特征向量投影)的組合,具有可學習的權重。不同區域的總和聚合和L2歸一化也是可微的。因此,我們可以實現這樣一種網絡架構:給定圖像及其區域的預計算坐標,直接生成相當於R-MAC管道的表征。由於所有的組件都是可微的,人們可以通過網絡架構反向傳播來學習最優網絡權值,即卷積層和用來替換PCA的shifting層和全連接層的權值。

Learning with a classification loss. 我們可以使用交叉熵損失在Landmarks數據集上輕松地微調一個標准分類架構(例如VGG16),就像之前由Babenko等人(2014)所做的那樣,然后使用改進的卷積過濾器作為R-MAC管道的特征提取器,而不是使用原始的權重。我們使用這種方法作為我們的訓練基線,並注意到它有重要的問題。首先,它不直接學習檢索任務去解決問題,而是學習一個分類代理。其次,它沒有利用R-MAC架構,因為它在原始的分類架構上學習,使用低分辨率的方形crop輸入。卷積權值只有在訓練完成后才與R-MAC架構一起使用(該微調方法其實就是用Landmarks數據集去微調CNN分類網絡,然后再使用某層輸出的特征作為提取的特征)。在我們的實驗中,我們展示了這種朴素的微調方法是如何顯著優於基線方法的,但與使用適當的結構和損失進行訓練所獲得的精確度並不匹配。

Learning with a ranking loss. 在我們的工作中,我們提出考慮基於圖像triplets的排序損失。目標是顯式強制執行的,即給定由查詢圖像、與查詢相關的元素和不相關的元素組成的triplet,相關圖像的R-MAC表征比不相關圖像的表征更接近查詢圖像的表征。

我們設計了一個three-stream siamese網絡架構,其中由每一stream產生的圖像表征都被損失共同考慮。這種體系結構如圖3所示。卷積濾波器和全連接層的權值在流之間共享,因為它們的大小與圖像的大小無關。這意味着siamese架構可以處理任何大小和長寬比的圖像,並且我們可以在測試時使用相同的(高)分辨率的圖像來訓練網絡。

Siamese網絡在metric learning (Song et al, 2016), dimensionality reduction (Hadsell et al, 2006), learning image descriptors (SimoSerra et al, 2015), and performing face identification (Chopra et al, 2005; Hu et al, 2014; Sun et al, 2014)中很好地實現了。最近,triplet網絡(即three-stream siamese網絡)被考慮用於metric learning (Hoffer and Ailon, 2015; Wang et al, 2014) and face identification (Schroff et al, 2015)。

我們使用下面的排名損失。讓Iq表示為具有R-MAC描述符q的查詢圖像,I+為具有描述符d+的相關圖像,I-為具有描述符d的無關圖像。我們將排序triplet損失定義為:

其中m是控制邊際的標量。給定一個產生非零損失triplet,其子梯度為: 

子梯度通過網絡的三個stream反向傳播,卷積層和“PCA”層(即shifting層和全連接層)都得到了更新。這種方法直接優化排序目標函數。

 

4.3 Practical considerations

在使用排序損失學習的過程中,要注意一些實際的考慮。第一個是對triplets進行抽樣,因為隨機抽樣在大多數情況下會產生沒有損失的三胞胎(即查詢圖像和不相關圖像的不相關性太大,導致損失等式1損失L(Iq,I+,I-)總是為0),因此不能改進模型。為了保證采樣的tripelts是有用的,我們首先隨機選取N個訓練樣本,利用現有模型提取其特征,然后計算所有可能的triplets及其損失,一旦特征提取完成,計算速度很快。所有生成損失的triplets都被預選為優秀的候選人。triplets可以從這一組優秀的候選樣本中取樣,並傾向於hard triplets,即產生高損失的triplets。在實踐中,這是通過隨機抽樣均勻分布的N個圖像中的一個,然后隨機選擇25個包含前面選擇的特定圖像作為查詢圖像的triplets中損失最大的一個來實現的(這樣一次次來,得到N對triplet)。請注意,理論上,每次更新模型時都應該重新計算好的候選集,這是非常耗時的。在實踐中,我們假設對於一個給定的模型,即使模型更新了幾次,大多數的hard triplets仍然hard,因此我們只在模型更新了k次之后才更新好的候選集合。在我們的實驗中,我們使用N = 5,000個樣本和k = 64次迭代,每次迭代的batch size為64個triplets。

第二個要考慮的問題是訓練期間所需的內存量,因為我們同時訓練大圖像(較大的一側調整為800像素)和三個stream。在使用VGG16架構時,我們在一個12Gb內存的M40 GPU上一次只能在內存中容納一個triplet。為了對一批有效大小大於1的bs進行更新,我們依次計算和聚合每個triplet的網絡參數損失梯度,僅在每bs個triplets后實現實際更新,bs = 64。

當使用更大的網絡(如ResNet101)時,情況會變得更加復雜,因為我們沒有足夠的內存來處理一個triplet。為了避免減小圖像尺寸會導致圖像細節的丟失,我們提出了一種替代方法,具體在算法1中。這種方法允許我們使用單個stream順序處理一個triplet的stream,而不是同時處理所有的stream。這將產生完全相同的梯度,但是由於重新計算(大約25%的開銷),會犧牲一些計算效率來獲得非常顯著的內存減少(只需要三分之一的內存,從23 Gb減少到7.5 Gb)。這允許我們使用非常深的架構來訓練模型,而不減少訓練圖像的大小。

 

4.4 Experiments

在本節中,我們將研究學習不同設置和架構的權重的影響。在所有這些實驗中,我們假設描述符按照標准的R-MAC策略提取區域,即遵循預定義的rigid網格。

4.4.1 Experimental details

我們四個標准數據集上測試我們的方法:Oxford 5k building dataset (Philbin et al, 2007), the Paris 6k dataset (Philbin et al, 2008), the INRIA Holidays dataset (J ́egou et al, 2008), and the University of Kentucky Benchmark (UKB) dataset (Nister and Stewenius, 2006)。我們使用標准的評估協議,即對UKB使用recall@4,對其余的使用mean average precision(mAP)。按照標准做法,在Oxford和Paris數據集中,用戶只使用查詢圖像的感興趣的帶注釋的區域,而在Holidays和UKB數據集中,用戶使用整個查詢圖像。此外,在對Holidays進行評估時,查詢圖像將從數據集中刪除,在Oxford、Paris和UKB中則不需要。按照大多數基於CNN的方法,我們在Holidays數據集上手動校正圖像的方向,並對校正后的圖像進行評估。為了與不修正方向的方法進行公平比較,我們在最后的實驗中也報告了不修正方向的結果。

對於我們網絡的卷積部分,我們評估了兩種流行的架構:VGG16 (Simonyan和Zisserman, 2015)和ResNet101 (He et al, 2016)。在這兩種情況下,我們都從ImageNet ILSVRC數據上預先訓練的公開可用模型開始。使用PCA投影對全連接層進行初始化,並根據每個區域的歸一化描述符進行計算。所有的后續學習都在Landmarks數據集上進行。

為了使用分類進行微調,我們遵循標准做法,將訓練圖像調整為多個尺度(最短邊在[256 - 512]范圍內),並提取224×224像素的隨機crop圖像。為了使用我們提出的架構進行微調,我們還會執行隨機裁剪(隨機刪除圖像每一邊的5%)來增強訓練數據,然后調整結果裁剪的大小,比如較大的一邊為800像素,同時保持高寬比不變。在測試時,所有數據庫圖像也進行了調整,使較大的一側為800像素。所有模型都采用momentum為0.9、學習率為10−3、權值衰減為5·10−5的隨機梯度下降(SGD)進行訓練。當Landmarks的驗證誤差停止下降時,我們將分類微調的學習率降低到10-4。在學習排序時,我們沒有看到降低學習率的操作得到任何改善,所以我們將學習率保持在10-3,直到最后。margin被設置為m = 0.1。

 

4.4.2 Results

Quantitative evaluation. 我們在表1中報告了網絡卷積部分的兩個可能選擇的結果:VGG16(上)和ResNet101(下)。對於每個架構,我們首先使用R-MAC基線報告性能,其卷積層權重直接取自ImageNet預訓練的網絡,PCA是在Landmarks-full上學習的。對於已學習的模型,通過分類損失(Ft-Cls)或排序損失(Ft-Rnk)對地標的權重進行微調。對於后一種情況,我們考慮直接使用ImageNet預先訓練過的網絡來初始化權值,或者使用一個已經用分類損失對地標進行微調的預熱模型來初始化權值。

從表1報告的結果中,我們突出顯示了以下觀察結果。

  • 對相關數據集使用原始分類損失進行微調,已經比在ImageNet上預先訓練的模型有了顯著的改進,正如Babenko等人(2014)在前三個數據集上觀察到的那樣(盡管采用了不同的架構)。在這種情況下,使用Landmarks-full進行訓練或使用Landmarks-clean進行訓練不會產生顯著差異。
  • 使用排序損失微調我們提出的體系結構能得到最佳的性能策略。對於前三個數據集,使用Landmarks數據集改進我們的模型的權重似乎非常有用。我們只報告使用Landmarks-clean學習排序的結果。我們發現這一點至關重要:在Landmarks-full上學習反而顯著降低了模型的准確性。
  • 為了利用排序損失獲得好的結果,我們認為首先使用分類損失在Landmarks數據集上訓練網絡來預熱是十分重要的,就像Gordo等人(2016)所做的那樣。然而,在使用最近的ResNet101體系結構時,這就不是那么重要了:盡管預熱網絡會帶來輕微的改進,但最終的結果是相似的。這也可以在圖4中觀察到,圖4顯示了在不同模型初始化的訓練過程中,Oxford數據集的准確率的變化。
  • 對於UKB數據集,“現成的”R-MAC已經提供了最先進的結果,並且訓練稍微降低了它的性能,可能因為大的領域差異(章節6有關於UKB的更詳細的討論)。

正如預期的那樣,基於ResNet101的模型優於基於VGG16的模型。然而,這種差距並不像訓練帶來的改善那么明顯。

 

Impact of finetuning on the neurons. 我們定性地評估了為檢索而微調表征的影響。為此,我們將圖5中對最后一個卷積VGG16層的不同神經元反應最強烈(即激活值最大)的圖像patches微調前和微調后的結果進行可視化。這些例子說明了在微調中經歷了什么。一些最初專門用於識別對ImageNet分類至關重要的特定物體部分的神經元(例如“肩部神經元”或“腰部神經元”)被重新用於攻擊視覺上相似的地標部分(例如圓頂、有平屋頂和兩個窗戶的建築物)。然而,其他的神經元(例如“太陽鏡神經元”)並沒有被明確地重新利用,這表明在訓練計划中的改進是可能的。

 

Computational cost. 為了訓練和測試我們的模型,我們使用了12Gb內存的M40 NVIDIA GPU。當ResNet101在Landmarks-full上使用分類損失進行預訓練時,大約需要4天時間來執行80000次迭代,batch size為128。這是我們在大多數實驗中用來初始化我們的方法的模型。為了訓練我們的排名模型,我們使用64個triplets的批處理大小和“單一流”方法(算法1),並調整我們的圖像保持它們的高寬比,使更長的邊有800像素。對於ResNet101,這個過程對每個樣本的每個流大約需要7.5 Gb內存,並且可以在大約1小時內處理64次迭代,其中大約15分鍾用於挖掘hard triplets。我們的模型用預先訓練好的分類模型進行初始化后,經過大約3000次迭代即2天收斂。如果我們不在Landmarks數據集上預熱模型並直接使用ImageNet模型,它將在大約8,000次迭代后收斂。在這兩種情況下,整個訓練大約需要一周時間。

一旦訓練完成,提取一幅圖像的描述符大約需要150毫秒,也就是說,在一個GPU上大約每秒7幅圖像。計算兩幅圖像之間的相似性歸結為計算它們表示之間的點積,這是非常高效的,也就是說,在一個標准處理器上每秒可以計算數百萬次這樣的比較

 

5 Improving the R-MAC representation

R-MAC表征已被證明在深度檢索方法中表現出色(Tolias et al, 2016)。在上一節中,我們已經展示了通過為圖像檢索定制目標函數和訓練集,以端到端方式學習網絡權重,可以進一步提高其有效性。在本節中,我們提出了幾種修改網絡架構本身的方法。首先,我們改進了區域池機制,引入了區域建議網絡(region proposal network, RPN)來預測圖像中最相關的區域,在這些區域中局部特征需要被提取(5.1節)。其次,我們注意到網絡體系結構只考慮單一固定的圖像分辨率,並建議對其進行擴展,以構建一個多分辨率描述符(第5.2節)。

 

5.1 Beyond fixed regions: proposal pooling

在R-MAC中使用rigid的多尺度網格去池化區域,以試圖確保所關注的對象被至少一個區域覆蓋。然而,這提出了兩個問題。首先,任何網格區域都不可能與感興趣的對象精確對齊。其次,很多區域只覆蓋背景,特別是當檢索對象規模較小時。這是一個問題,因為R-MAC簽名之間的比較可以看作是一個多對多區域匹配,因此區域雜波將負面影響性能。增加網格中區域的數量可以提高一個區域與感興趣的對象良好對齊的可能性,但也會增加不相關區域的數量。

我們建議修改R-MAC架構,以增強其聚焦於圖像中相關區域的能力。為此,我們用區域建議網絡(RPN)代替了rigid網格,該網絡訓練用於定位圖像中感興趣的區域,類似於Ren等人(2015)的建議機制。這個RPN是使用我們清洗過程的副產品獲得的地標數據集的近似邊界框標注來訓練的。所得到的網絡體系結構如圖6所示。

RPN背后的主要思想是為一組不同大小和長寬比的候選框預測一個分數,該分數描述每個候選框在每個可能的圖像位置上包含感興趣對象的可能性。同時,對每個候選框進行坐標回歸,提高定位精度。這是通過一個由使用3×3過濾器的第一層和使用1×1過濾器的兩個兄弟卷積層組成的“全卷積”網絡,來對於圖像中每個候選框的圖片和每個位置預測目標分數和回歸坐標。然后對排列的框執行非最大抑制方法(Non-maximum suppression),以為每個圖像產生k個最終建議框,用於替代rigid網格。

對網絡的這種修改有幾個積極的結果。首先,區域推薦通常比死板的網格能更緊密地覆蓋感興趣的對象。其次,即使它們與感興趣的區域沒有完全重疊,但大多數推薦都與感興趣的區域有明顯的重疊,這意味着增加每張圖像的推薦數量不僅有助於增加覆蓋率,而且有助於多對多匹配。

Learning the RPN. 我們根據這個框與ground truth的感興趣區域的重疊大小給每個候選框分配二進制類標簽,然后我們使用包含分類損失(更准確地說是一個對象log損失 VS 背景類)和回歸損失(類似於Girshick(2015)使用的光滑L1損失)的多任務損失來最小化目標函數和回歸損失。通過反向傳播和SGD優化目標函數。更詳細的RPNs的實施和訓練流程可以在Ren等人(2015)的工作中找到。

我們在網絡的卷積層之上學習RPN。我們首先使用第4.2節中描述的rigid網格訓練網絡,然后固定卷積層的權值,從最后一個卷積層的輸出訓練RPN。這樣一來,兩個網絡共享卷積部分的計算,並被合並到一個單一架構中(圖6)。同時微調RPN和排名也是可行的,但我們觀察到這樣做並沒有提高准確率。

 

5.2 Multi-resolution

在Tolias等人(2016)提出的原始R-MAC描述符中,圖像是在單一尺度上考慮的。但是,可以考慮從被調整到不同分辨率的圖像中提取和組合特征,以便集成來自不同尺度的信息。其目標是改進數據庫圖像中以不同尺度出現的對象和小對象的檢索之間的匹配。

原始R-MAC網絡的一個有趣特點是,不同的輸入圖像大小仍然產生相同長度的描述符。但是請注意,具有不同分辨率的同一圖像的兩個版本將不會產生相同的輸出描述符。網絡的第一部分是完全卷積的,它直接能夠處理不同大小的輸入,而聚合層將輸入特征的大小相關的數量組合成固定長度的表征。根據這個想法,我們提出從調整到不同尺度大小的圖像中提取不同的描述符,然后將它們組合成一個單一的最終表征。在實踐中,我們使用3個尺度,在較大的一側使用550、800和1050像素,保持高寬比。然后分別提取這三幅圖像的描述符。最后,我們對它們進行相加聚合並對它們進行L2歸一化,以獲得最終的描述符。

這個多分辨率描述符可以在查詢端和數據庫端進行計算。這個過程在特征提取時帶來了額外的計算成本(大約是三種分辨率成本的三倍),但是在搜索時的成本和存儲成本是相同的。

我們的多分辨率方案可以與之前構建轉換不變性(transformation-invariant)表征的論文相聯系,如Schmidhuber (2012);Laptev et al(2016)。在我們的例子中考慮的變換是圖像縮放。與multi-column網絡或bagging方法相比(Schmidhuber, 2012),我們對所有圖像尺度使用相同的網絡。事實上,我們的方法在概念上接近Laptev等人(2016)的方法,這是一個權重共享的siamese網絡,主要區別在於我們使用的是average-pooling,而不是sum-pooling。

 

5.3 Experiments

在本節中,我們將研究推薦池化和多分辨率描述符的影響。

Experimental details. 我們訓練RPN網絡200k次迭代,權值衰減為5·10−5,學習率為10−3,在100k次迭代后學習率降低了10倍。我們注意到只有RPN層被更新,而前面的卷積層保持不變。在M40 GPU上,這個過程只需要不到12個小時。

Region proposal network. 表2展示了VGG16和ResNet101體系結構中,與rigid網格相比,對於基線R-MAC(從ImageNet獲得的卷積權值)和經過排名損失訓練的版本,區域建議網絡在越來越多的區域上的結果。使用VGG16,當區域數量足夠多(128個或更多)時,我們觀察到所有數據集和訓練類型都有顯著改善,這與我們在(Gordo et al, 2016)的初版中的發現一致。然而,在ResNet101中,這個差距要小得多,特別是在網絡經過了排名損失的訓練后。我們的直覺是,ResNet101能夠學習更不變的區域表示,並降低背景的影響,因此它不需要像VGG16那樣的推薦。這使得在使用ResNet101時推薦的使用不那么吸引人。鑒於ResNet101在所有情況下的表現都比VGG16要好(如表1和表2),我們去掉Gordo等人(2016)的版本,在本文的其余部分,我們只報告沒有使用RPN的ResNet101結果。 

 

Multi-resolution.  表3顯示了使用受過排名損失訓練的ResNet101的結果。多分辨率應用於查詢圖像(QMR)、數據庫圖像(DMR)或兩者。所有情況都優於單分辨率描述符,表明使用多個尺度編碼圖像有助於匹配和檢索對象。QMR和DMR似乎也是互補的。在接下來的實驗中,我們同時使用QMR和DMR。

  

6 Evaluation of the complete approach

在前面的章節中,我們已經將R-MAC描述符描述為一個獨立的網絡架構,其中的權重可以以端到端方式有區別地學習,並提出了一些對原始管道的改進。在本節中,我們將所獲得的表征與最新技術進行比較。我們的最后一個方法集成了另外兩個改進:查詢擴展(QE)和數據庫端特征增強(DBA)。

 

6.1 Query expansion

為了提高檢索結果,我們使用了查詢擴展方法,這是Chum等人(2007)在圖像搜索問題中引入的一種標准技術。查詢擴展的工作方式如下:用查詢圖像的表征發出第一次查詢,然后檢索top k個結果。然后,這些頂部的k個結果可能會經歷一個空間驗證階段,在這個階段中,與查詢不匹配的結果將被丟棄。然后對剩余的結果和原始查詢表征進行求和集合(sum-aggregated)和重新歸一化得到合並的表征。最后,使用組合的描述符發出第二次查詢,生成檢索到的圖像的最終列表。查詢擴展通常可以大幅提高准確性,但在查詢時需要額外付出兩個代價:空間驗證和第二次查詢操作。在我們的示例中,我們不執行空間驗證(請注意,因為這通常需要訪問局部關鍵點描述符,而我們沒有),因此,由於第二次查詢操作,查詢擴展將使查詢時間增加一倍。

 

6.2 Database-side feature augmentation

在Turcot and Lowe(2009)和Arandjelovic and Zisserman(2012)的研究中引入了數據庫端增強(database-side augmentation, DBA),它可能在經過查詢擴展的空間驗證階段之后去將數據庫中的每一個圖像簽名都通過自身和相鄰圖像的結合來替代其目的是通過利用相鄰圖像的特征來提高圖像表示的質量。由於我們不使用空間驗證,我們對最近的k個鄰居進行求和聚合(sum-aggregated),就像在查詢擴展的情況下一樣。在我們的實驗中,我們使用weights (r) = (k−r) / k作為一個加權方案,其中r是鄰居的秩,k是考慮鄰居的總數。

使用稀疏的反向文件的DBA不像查詢擴展那么常見,因為它會增加數據庫的大小和查詢時間。在我們的例子中,簽名已經很密集了,所以我們不受它的影響。因此,唯一的額外成本是在數據集中找到最近的鄰居,這只需要在脫機狀態下完成一次。對於不斷增長的數據庫,隨着新示例的添加,數據庫擴展可能也可以在線完成。

 

6.3 Experiments

6.3.1 Evaluation of QE and DBA

在圖7中,我們評估了依賴於鄰居數量k的查詢擴展(QE)的效果,以及依賴於鄰居數量k '的數據庫端擴展(DBA)的效果。首先我們觀察,在Oxford5k,許多查詢很少有相關的物品(小於10個甚至小於5),對QE使用大的k值,不出所料,會降低而不是提高准確性,與是否使用DBA不相關。這在Paris上不是問題,因為所有查詢在數據集中都有大量相關項。

加權DBA似乎在所有情況下都有幫助,即使是選擇了較大的k'值,但是,有一個副作用,如果QE選擇了不適當數量的鄰居,也會使DBA結果惡化。一般看來,如果選擇適當數量的鄰居數量,QE和DBA可以極大地幫助對方,而且,作為一個經驗法則,我們建議為DBA使用一個較大的值為(如k'= 20)和為QE使用一個小值(如k = 1或k = 2)。因為DBA是一個昂貴的預處理,它並不總是可行的。在這種情況下(對應於k' = 0), k最好使用一個中間值。對於我們包含QE和DBA的最后實驗中,我們在所有數據集中固定k=1和k' =20。當只使用QE時,我們在所有數據集中固定k = 10。如果一個人有關於數據集的先驗知識,修改這些值可能會導致改進的結果。

 

6.3.2 Comparison with the state of the art

我們在表4中將我們的方法與最新的技術進行了比較。在這些實驗中,除了4.4節中介紹的四個數據集之外,我們還考慮了Oxford105k和Paris106k數據集,它們用100k的干擾圖像擴展了Oxford5k和Paris6k數據集(Philbin et al, 2007)。在表的前半部分,我們展示了其他方法的結果,這些方法使用了圖像的全局表哦正,並且在運行時不執行任何形式的空間驗證或查詢擴展。因此,它們在概念上更接近我們的方法。然而,我們在所有數據集上始終比他們都出色。在一個案例中(即Paris106k),我們的方法領先最佳競爭對手超過14個mAP(Radenovic et al, 2016)。

基於Holidays數據集中用於基於CNN特征的方法的評估協議包括手動旋轉圖像以糾正其方向。如果我們不手動旋轉圖像,我們的精度將從94.8下降到90.3,這仍然比當前的技術水平要好。不用使用oracle來旋轉數據庫圖像,可以自動旋轉查詢圖像並發出三個不同的查詢(原始查詢、查詢旋轉90度和查詢旋轉270度)。一個數據庫圖像的得分是通過三個查詢獲得的最大得分得到的。這使得查詢過程慢了3倍,但是在沒有oracle干預的情況下將准確率提高到了92.9。

我們還使用ResNet101代替VGG16重新實現了R-MAC基線(Tolias等人,2016)。雖然在使用ResNet101時精度的提高是不可忽略的,但是通過訓練模型獲得的精度仍然要高得多(在Oxford,訓練時,無論是使用單分辨率還是多分辨率測試,在沒有訓練時是69.4,而訓練時是84.1和86.1)。這一差距突出了設計良好的體系結構和有相關數據的完整的端到端訓練的重要性,所有這些都是為圖像檢索的特定任務量身定做的。(所以對於特定任務使用特定數據集重新微調是很重要的)

 

表4的第二部分顯示了不需要依賴全局表征的最新方法的結果。他們中的大多數的特點是比我們的方法更大的內存占用,如Tolias and J ́egou (2015); Tolias et al (2016); Danfeng et al (2011); Azizpour et al (2015)。這些方法在運行時執行一個昂貴的空間驗證,通常需要在數據庫中為每個圖像存儲成千上萬的局部描述符(Tolias and J ́egou, 2015; Li et al, 2015; Mikulik et al, 2013)。它們中的大多數還執行查詢擴展(QE)。為了進行比較,我們還在表的底部報告使用QE(有DBA或沒有DBA)的結果。僅使用QE帶來的改進只有同時使用QE和DBA時的一半左右,但是避免了對數據庫的任何預處理。盡管不需要在運行時進行任何形式的空間驗證,但我們的方法在所有數據集上都有很大的改進。特別是,我們的性能在所有數據集上領先最佳競爭對手5到14個mAP。

 

在文獻 (Tolias and J ́egou, 2015; Azizpour et al, 2015)最好方法很難擴展,因為它們需要大量的存儲內存和昂貴的驗證。例如,Tolias and J ́egou(2015)需要一個緩慢的空間驗證,每個查詢圖像需要1秒(不含描述符提取時間)。如果沒有空間驗證,他們的方法會丟失5個mAP,而且每次查詢仍然需要大約200毫秒。Tolias等人(2016)的方法更具可擴展性,但仍需要額外的空間驗證階段,該階段基於存儲許多數據庫圖像的局部表征,盡管使用了先進的壓縮技術,但最終會比我們的方法占用更大的內存。相比之下,我們的方法只計算兩個矩陣向量積(如果不執行QE,則只計算一個),這是非常高效的。該操作在不到一秒的時間內計算數百萬次圖像比較。在不進行任何壓縮的情況下,我們的方法需要為每個圖像存儲2048個浮點數,即8 kb,但是這種表征可以大幅壓縮,而不會造成很大的精度損失,我們將在下一節中介紹。最后,我們想指出的是,當不執行QE和DBA(在測試時利用目標數據集的信息)時,我們的方法使用單一的通用模型——對所有測試數據集都是一樣的——與 Danfeng et al (2011); Shen et al (2014); Tolias et al (2015)在目標數據集上進行一些學習的方法相反。

我們也報告使用我們的通用模型在UKB數據集上的結果。我們的方法在沒有QE和DBA的情況下獲得3.84的recall@4,在有QE和DBA的情況下獲得3.91的recall@4。后者可與該數據集上發表的最佳結果相媲美,即Az- izpour等人(2015)報告的3.85結果,盡管這種方法的成本要高得多。其他結果顯然更低(如Paulin et al (2015) reports 3.76, Deng et al (2013) reports 3.75, and Tolias and J ́egou (2015) reports 3.67),他們也是很難擴展的(見上面的討論)。注意,訓練略微降低了我們在UKB上的性能(表1)。這是由於我們的訓練集(地標圖像)和UKB圖像(日常生活項目)之間的差異造成的。下降仍然是邊際的,這表明我們的方法在適應其他檢索上下文上效果很好。

 

6.3.3 Short image codes with PCA and PQ

我們研究了兩種不同的方法來減少我們的方法的內存占用,同時保持最好的准確性。我們使用主成分分析(PCA)或乘積量化(PQ)壓縮2048維圖像描述符(Jegou et al, 2011)。在這兩種情況下,我們在沒有標記的圖像上學習詞匯表(PCA投影或PQ碼本),並用我們學習到的表征進行編碼。

在主成分分析的情況下,為了得到d維的描述符,我們只需要將特征集中起來,將它們投影到數據的d個最大特征值所對應的特征向量上,然后對其進行L2歸一化。因此得到的描述符大小為4d字節,因為它們被存儲為32位浮點數。PQ壓縮是在k個子部分分割輸入描述符,並分別對每個子部分進行矢量量化。盡管有些工作也在PQ編碼之前將PCA應用於輸入描述符,但我們發現它在我們的案例中沒有任何明顯的影響。訓練PQ相當於為每個子部分學習一個碼本,通過k-means聚類在一組代表性描述符上實現。每個子部分的碼本大小通常設置為256,因為它允許它們恰好存儲在1個字節上。因此,一個PQ編碼的描述符的大小是k個字節。在測試時,高效的緩存技術允許高效地計算查詢圖像和PQ編碼的數據庫描述符之間的dot-product(Jegou et al,2011)。請注意,最近的改進使得PQ可以在不損失精度的情況下匹配高速的bitwise漢明距離計算(Douze et al, 2016)。

圖8顯示了我們的方法(不使用QE或DBA)和最新的檢索結果,這些方法用於所有數據集和不同描述符大小(以字節為單位)。基於PCA的壓縮,被標記為“Proposed (PCA)”,對於所有考慮的數據集和所有編碼大小,都比其他現有方法取得了稍微好一點的結果,但是對於短編碼,它的准確性會迅速下降。這種壓縮方法仍然值得關注,因為它不需要對系統體系結構進行任何更改,而且與當前的技術相比,它仍然是比較好的。基於PQ的壓縮,在圖8中被標記為“Proposed (PQ)”,在所有數據集上,在性能和大小權衡方面大大優於所有已發布的方法。即使對於64字節的非常短的圖像編碼,它也能夠超過大多數使用2048字節代碼的最新技術。在這種設置中,我們可以在一台RAM為64 Gb的機器上存儲數億個圖像,這說明了我們的方法的可擴展性。

 

6.4 Qualitative results

圖9顯示了我們基於ResNet101(包括QE和DBA)對一些Oxford5k查詢圖像(最左邊圖像上的紫色矩形)使用我們最終最好的檢索系統得到的top檢索圖像。對於每個查詢,我們還提供相應的平均精度(AP)曲線(綠色曲線),並將其與基線R-MAC(紅色曲線)、我們學習的架構(藍色曲線)及其多分辨率風格(紫色曲線)所獲得的平均精度(AP)曲線進行比較。用所提出的訓練模型得到的結果在精度方面始終較好。在許多情況下,通過我們的方法正確檢索到的圖像中,有幾張在基線方法中沒有得到很好的分數,且基線方法將它們排在結果列表的最下面。

 

7 Conclusions

我們提出了一種有效且可擴展的實例級圖像檢索方法,該方法將圖像編碼為緊湊的全局簽名,可用dot-product進行比較。提出的方法結合了成功的三個關鍵因素。首先,我們通過自動清理一個已有的地標數據集來收集一個合適的訓練集。其次,我們提出了一個學習框架,它依賴於基於triplet的排名損失,並利用這個訓練集來訓練一個深層架構。第三,對於我們建立在R-MAC描述符上的深度架構,將其轉換為一個完全可微的網絡,這樣我們就可以學習它的權重,並通過一個專注於最相關圖像區域的推薦網絡(RPN)來增強它。在幾個基准測試中進行的大量實驗表明,在使用全局簽名時,即使使用64或128字節的短編碼,我們的正的性能也顯著優於當前的技術水平。我們的方法的性能也優於現有的方法,因為這些方法更加復雜,依賴於代價高昂的匹配和驗證,而且我們的運行速度更快,內存效率更高。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM