ECCV2020 Spotlight | 圖像定位上的細粒化區域相似性自監督

ai科技評論 發佈 2020-08-14T04:06:29+00:00

R. Arandjelovic, et al. NetVLAD: CNN architecture for weakly supervised place recognition. CVPR, 2016.

作者 | 葛藝瀟

編輯 | 陳彩嫻

本文介紹一篇我們發表於ECCV 2020的論文《Self-supervising Fine-grained Region Similarities for Large-scale Image Localization》,很榮幸該論文被收錄為spotlight presentation。

我們針對大規模圖像定位中的弱監督問題提出有效的解決方法,旨在通過自監督學習的方法充分挖掘表征學習中的難樣本,並進一步將圖像級監督細粒化為區域級監督,以更好地建模圖像與區域間的複雜關係。利用該算法訓練的模型具有較強的魯棒性和泛化性,在多個圖像定位數據集上進行了驗證,Recall@1準確度大幅超越最先進技術高達5.7%,代碼和模型均已公開。

論文連結:arxiv.org/abs/2006.0392

代碼連結:github.com/yxgeee/OpenI

1 論文背景

1)圖像定位

圖像定位(Image-based Localization)技術旨在不藉助GPS等額外信息的情況下估計出目標圖像所在的地理位置。該技術被廣泛應用於SLAM、AR/VR、手機拍照定位等場景。

目前針對圖像定位的研究主要可以分為三個方向,分別為基於圖像檢索的、基於2D-3D匹配的和基於地理位置分類的算法。其中基於圖像檢索(Image Retrieval)的方案在大規模(Large-scale)的長期圖像定位(Long-term Localization)上可行性更高,所以該工作針對基於圖像檢索的定位問題展開了研究。

2)基於圖像檢索的圖像定位

基於檢索的圖像定位問題旨在通過從城市級規模的資料庫中識別出與目標圖像最相似的參考圖像,從而通過參考圖像的地理位置(GPS)來估計目標圖像的地理位置。基於檢索的圖像定位問題也被稱為地點識別(Place Recognition)。

2 挑戰1:如何合理使用top-k圖像?

1)問題

圖像定位的數據集目前主要主要分為兩種,一種是直接從街景地圖(谷歌街景圖、百度街景圖等)中對圖像和相應的GPS標籤進行爬取,這種類型的數據集無需人為標註,零成本,易於收集和進行規模提升;另一種是具有6DoF相機位姿的數據集,該類數據集通常通過自動駕駛車進行收集,收集成本較高。該工作以前者為基準開展研究,即在僅有GPS標籤的情況下進行基於檢索的圖像定位算法研究。

圖像檢索的關鍵在於如何學習到具有辨別性的圖像特徵,而在模型的訓練中往往都需要有正樣本和負樣本。具體來說,模型需要學習讓目標圖像的特徵靠近正樣本而遠離負樣本。在僅有GPS的圖像定位數據集中,我們可以首先通過GPS進行篩選,比如GPS相距10m以內的圖像為潛在正樣本(Potential Positives)。

但是,如下圖所示,當地理位置上較近(GPS較近)的圖像在面向不同方向時,並不會拍攝到同樣的場景,所以僅靠GPS進行過濾的潛在正樣本中仍然具有很多假性正樣本(False Positives)。所以在模型訓練中,這被定義為一個弱監督學習問題。

2)以前的方法

如果在訓練中讓目標圖像靠近假的正樣本,會導致嚴重的誤差放大,乃至模型崩潰。所以,如下圖所示,現有的訓練算法讓目標圖像靠近潛在正樣本中特徵距離最近的圖像,也被稱為top-1/最相似圖像。

雖然這樣的方法可以有效減少假性正樣本出現的機率,但是,讓模型學習靠近已經是最相似(也就是最簡單)的正樣本,會使得訓練的模型缺乏適應多種條件(光照、角度等等)的能力,降低模型的魯棒性。

3)動機

我們認為,困難的正樣本(Difficult Positives)在表征學習中不可缺少。但是,簡單地使用top-k圖像(這裡top-k指的是利用特徵距離進行排序後的top-k資料庫圖像)作為正樣本進行學習具有較大的噪聲。

如下圖所示,top-k的圖像中無法避免地包含一些假性正樣本,在對比實驗中我們也發現,簡單地採用top-k圖像進行訓練,結果還不如上述只學習top-1的現有方法。所以,問題的關鍵在於,如何合理地使用top-k圖像,在挖掘困難正樣本的同時,減輕假性正樣本對模型訓練帶來的干擾。

4)解決方法

我們提出利用目標圖像與資料庫圖像之間的相似性作為軟標籤對模型訓練進行監督。

具體來說,對於假性正樣本,或具有較小重疊區域的正樣本,我們希望設置較小的相似性標籤;而針對與目標圖像重疊區域較大的正樣本,我們希望設置較大的相似性標籤。這樣的話,在相似性標籤的監督下,模型可以模擬出目標圖像與不同匹配圖像之間距離關係,從而有針對性地進行表征學習。

那麼,如何獲得相似性標籤呢?直接通過當前模型的數據進行預測是不可行的,這就類似於自己站在自己的腳上,既沒有夠到更高的區域,反而會站不穩(導致誤差放大)。

所以,我們提出,通過疊代訓練(Training in Generations)的方案,將第一代模型的輸出作為第二代模型的監督,以此類推。請注意,這裡的「代」指的是一個模型從初始化訓練到收斂的整個過程。

如下圖所示,第一代模型通過與現有算法一致的方案進行訓練,訓練收斂後,建立並初始化第二代模型,並使用固定的第一代模型進行相似度標籤的估計,用以訓練第二代模型。預測的相似度標籤準確性和模型的辨別性隨著訓練的疊代不斷更新和提升,從而形成自監督的過程。

疊代訓練的思路與自蒸餾(Self-distillation)的算法比較相關,不同的是,自蒸餾的算法主要針對分類問題,對具有固定類別數目的分類預測值進行蒸餾,而我們成功地將疊代訓練的思路應用於圖像檢索問題,在表征學習的過程中利用我們提出的相似性標籤進行信息疊代。

3 挑戰2:如何合理挖掘困難正樣本?

1)問題與動機

上文,我們討論了如何合理地挖掘困難正樣本,並減輕假性正樣本對訓練造成的干擾。但是,我們發現,即使是真的正樣本,與目標圖像之間仍然存在不重疊的區域,該區域在困難正樣本中尤為顯著。

如下圖左邊所示,只使用圖像級的監督會使得目標圖像與正樣本圖像的所有局部特徵都趨向於相似,這樣的監督會損害局部特徵的辨別性學習。

所以,我們提出,理想的監督應當為區域級的監督,如下圖右邊所示,讓正樣本中的正區域(Positive Regions)靠近目標圖像,而負區域(Negative Regions)遠離目標圖像。

2)解決方法

為了實現區域級的監督,我們將匹配的正樣本分解為4個二分之一區域和4個四分之一區域,並將圖像-圖像間的相似性監督細粒化為圖像-區域間的相似性監督,以上文中所述疊代訓練的方式進行學習。具體來說,第一代模型所預測的圖像-區域的相似性標籤用於監督第二代模型的圖像-區域學習。

3)實驗結果

下圖是實驗結果,我們的模型只在一個數據集(Pitts30k-train)上進行了訓練,可以很好地泛化到不同的測試集上,例如在Tokyo 24/7和Pitts250k-test上均取得了最先進的精度。其中,Tokyo 24/7數據集難度最大,因為圖像的光照、角度、拍攝裝置等條件都具有很強的多樣性,我們在Recall@1準確度上超出此前最先進的SARE算法(發表於ICCV』19)5.7%個點。

上圖中的模型及訓練測試代碼均已開源在

https://github.com/yxgeee/OpenIBgithub.com

同時,我們還開源了基於PyTorch的NetVLAD和SARE復現(官方代碼基於MatConvNet),方便大家後續的研究與開發。

相關論文:

Y. Ge, et al. Self-supervising Fine-grained Region Similarities for Large-scale Image Localization. ECCV, 2020.

R. Arandjelovic, et al. NetVLAD: CNN architecture for weakly supervised place recognition. CVPR, 2016.

L. Liu, et al. Stochastic Attraction-Repulsion Embedding for Large Scale Image Localization. ICCV, 2019.

T. Furlanello, et al. Born Again Neural Networks. ICML, 2018.

Q. Xie, et al. Self-training with noisy student improves imagenet classification. CVPR, 2020.

關鍵字: