論文閱讀筆記(六十四)【arXiv2021】:TransReID: Transformer-based Object Re-Identification


Introduction

作者把Vision Transformer (ViT) 應用到目標重識別任務上。ViT在圖像分類任務上首次得到應用,它將圖像切割成若干小塊,每個小塊拉成序列,輸入到transformer中。在ReID任務中,空間的對齊對於特征學習而言非常重要,因此把transformer應用到ReID中需要考慮到空間的對齊。在此論文中,作者把ViT作為backbone提取特征,並對ReID任務進行調整適配,提出一個名為ViT-BoT的Baseline。(BoT指的是Bag of Tricks)

圖像往往包含了眾多非視覺信息,即視角、相機風格等,基於CNN的方法需要設計特定的網絡結構才能提取出這些非視覺信息,比如針對相機風格設計Camera-based Batch Normalization (CBN),針對視角問題設計Viewpoint-Aware Network (VANet)。為了處理這些非視覺信息(side information),作者在transformer中通過向量投影進行編碼,該模塊命名為Side Information Embedding (SIE).

為了更好地訓練ViT-BoT,作者在最后一層設計了Jigsaw branch,與標准的全局分支並列。雖然全局分支可以對全局的特征編碼,但只有少數有判別力的patch作主要貢獻。因此,在Jigsaw branch中,設計了jigsaw patch module (JPM),小patch在JPM中打亂重組成更大的patch。這樣操作有兩個原因:1) 重組patch使得模型適應擾動;2) 新構建的patch依然包含全局的信息。

通過結合SIE和JPM模塊,作者提出了最終的模型框架TransReID。

 

Methodology

ViT-BoT

1) Overlapping Patches:

首先將圖像划分成邊長為 P 的patch,假設圖像為 HxW 尺寸,patch划分窗口的間隔為 S,則patch數量為:

2) Position Embedding:

ViT在ImageNet上的預訓練模型會加載到網絡中,但位置投影的預訓練參數不加載,因為不同任務的圖像像素不一樣,位置信息並不通用。

3) Feature Learning:

最后一層encoder layer輸出的class token為全局特征向量,其余對應 N 個patch的輸出為。隨后采用BNNeck技巧的交叉熵損失和soft-margin三元組損失,即:

 

TransReID

1) Side Information Embedding:

transformer模型可以很好的把side information編碼到embedding representation中,對其信息進行結合,且這些embedding是可學習的。若相機編號為 C,則相機embedding為 S(C);若視角標簽為 V,則視角embedding為 S(V)。當需要同時使用這兩種信息時,采用了聯合編碼,即 S(C, V)。

第 i 個patch的編碼為,其中為特征embedding的線性投影,為位置embedding。

2) Jigsaw Patch Module:

假設倒數第二層的輸出為:。全局分支采用標准的transformer,得到。token embedding往往取決其靠近的token,因此一組相近的patch進行embedding會把信息局限在有限的區域。作者采用了JPW模塊,其本質是隨機分組,具體為:把前 m 個patch挪到后面,再進行patch打亂划分。這里的 k 組patch會輸入到同一個transformer結構中,分別提取出一個局部特征。(並不是把一組的patch級聯,形成k個大patch,輸入一次transformer;而是每組輸入一次transformer。)由此得到局部特征

最后的損失函數計算為:。最后將全局特征和局部特征級聯,得到最終的特征表示。

 

Experiment

數據集:

 

實驗結果:

 


免責聲明!

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



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