close

阿里達摩院和浙江大學合作的TransReID框架。成功將Pure Transformer架構應用於目標重識別ReID任務,效果超過了當前先進方法的性能!文章2021年5月剛出來,也入選了頂會ICCV2021!

論文地址:https://arxiv.org/pdf/2102.04378.pdf
開源代碼:https://github. com/heshuting555/TransReID

1

前言

提取穩健的特徵表示是目標重識別 (ReID) 的關鍵挑戰之一。儘管基於卷積神經網絡 (CNN) 的方法取得了巨大成功,但它們一次只處理一個局部鄰域,並且會因卷積和下採樣算子(例如池化和跨步卷積)導致細節信息丟失。為了克服這些限制,研究者提出了一個名為TransReID的純基於transformer的目標ReID框架。

2

背景

ReID全稱Re-identification,也就是目標重識別的意思。簡單理解就是對於一個特定的目標(可能是行人、車輛、人臉或者其他特定物體),在候選圖像集中檢索到它。或稱圖像中目標的實例級檢索。

目標重識別(ReID)與跟蹤(Tracking)有什麼區別?

從任務的角度來看,兩者最主要的區別如下:

目標重識別:給定一張切好塊的行人圖像 (probe image, 即圖像大部分內容只包含這個人), 從一大堆切好塊的圖像 (gallery images) 中找到跟probe image中同一身份的人的圖像。這些圖像通常是由不同攝像頭拍攝的不連續幀。

跟蹤:給定一張切好塊的行人圖像 (probe image), 從一段全景視頻 (panorama track, 視野中只有一小部分是這個行人) 中找到 probe 所在的位置。這段全景視頻是由單個攝像頭拍攝的連續幀。

在視頻監控領域,最終目標是要做到多目標跨攝像頭跟蹤(Multi-target Multi-camera Tracking, 簡稱MTMC Tracking)。而目標重識別和行人跟蹤都是為了達到這個最終目標的子任務。

今天我們具體來說說目標重識別。通過回顧基於CNN的方法,我們發現了兩個在目標重識別領域沒有得到很好解決的重要問題。

(1) 在全局範圍內利用豐富的結構模式對於目標重識別至關重要。然而,由於感受野存在一個高斯核的衰減,基於CNN的方法主要關注小的判別區域。最近,已經引入了注意力模塊 來探索遠程依賴關係,但其中大部分都嵌入在深層中,並沒有解決CNN的原理問題。因此,基於注意力的方法仍然更喜歡大的連續區域,並且難以提取多個多樣化的判別部分(見下圖 1)

(a) Original images, (b) CNN-based methods, (c) CNN+attention methods, (d) Transformer-based methods

(2) 具有詳細信息的細粒度特徵也很重要。然而,CNN的下採樣算子(例如池化和跨步卷積)降低了輸出特徵圖的空間分辨率,這極大地影響了區分具有相似外觀目標的能力。如下圖所示,基於CNN的特徵圖丟失了背包的細節,難以區分兩個人。

如上圖中的這對負樣本對(CNN識別錯誤,Transformer識別正確),兩張圖片的外觀特徵是非常相似的,但是從書包的細節可以看出,左邊書包側面有一個杯子,而右邊書包側面則沒有杯子,因此可以判斷是兩個ID。但是因此CNN的下採樣操作,在網絡最後輸出的特徵圖上已經看不清杯子這個細節了。但是Transformer沒有下採樣操作,因此特徵圖能夠比較好地保留細節信息,從而識別目標。

3

新框架

具體來說,研究者首先將圖像編碼為一系列補丁,並通過一些關鍵改進構建基於transformer的強基線,這在使用基於CNN的方法的多個ReID基準測試中取得了有競爭力的結果。為了進一步增強transformer上下文中的穩健特徵學習,精心設計了兩個新穎的模塊。

(i) Jigsaw Patch Module (JPM) 被提出通過移位和補丁混洗操作重新排列補丁嵌入,從而生成具有改進識別能力和更多樣化覆蓋範圍的魯棒特徵。

(ii) Side Information Embeddings (SIE) 以通過插入可學習的嵌入來合併這些非視覺線索來減輕對相機/視圖變化的特徵偏差。

據我們所知,這是第一項採用純transformer進行ReID研究的工作。TransReID的實驗結果非常有前途,在人和車輛ReID基準測試中都達到了最先進的性能。

Transformer-based strong baseline

研究者參考CNN的baseline BoT設計Transformer-based strong baseline。如下圖所示。

研究者參考ViT將圖片分成N個patch,並引入一個額外的cls token共N+1個embedding。經過Transformer layers之後將cls token作為圖像的全局特徵,之後經過一個BNNeck結構計算triplet loss和分類ID loss。

此外,還有一個技巧性操作,是對圖像進行patch分塊的時候可以讓相鄰的patch之間有一定的overlap。當然這個操作會使得patch數目增加從而使得模型訓練的資源消耗增加,但是性能也會有比較穩定提升。

Jigsaw Patch Module

ReID任務經常會遇到遮擋、不對齊這些問題,一般會採用細粒度的局部特徵來處理這些問題,水平切塊就是非常常用的一種局部特徵方法。

為了擴大每個group的視野,研究者將所有的patch embedding按照一定規則進行打亂,然後再進行分組。這樣每個group就可能包含來自圖片不同區域的patch,近似等效於每個group都有比較全局的感受野。

具體打亂操作分為兩步:

Side Information Embeddings

ReID任務中相機、視角的差異會給圖像帶來一些外觀上的差異。對於CNN框架,通常需要專門設計結構來處理這個問題,例如設計loss、對數據進行先驗處理、改變模型結構等等。這些設計通常比較定製化且比較複雜,推廣性並不強。而transformer則比較擅長融合不同模態的信息,因此研究者提出了SIE模塊來利用相機ID、視角等輔助信息。

4

實驗及分析

論文中使用的數據集的統計數據

不同Backbone的對比

下表給出了不同Backbone的準確度和推理時間的對比,將ResNet50作為baseline,同時給出了ViT和DeiT的結果。

可以看到,DeiT-S/16在速度上與ResNet50是接近的,在準確度上同樣也有可比的性能。當使用更深的DeiT-B/16和DeiT-V/16時,同樣和ResNest50取得了相似的速度和準確度。當在pre-patch環節縮小conv的stride時,patch的數目增加,速度下降,但是準確度也會收穫穩定的提升。

和SOTA對比

下表給出了和SOTA方法對比的結果。

可以看到,和CNN的方法相比,TransReID在六個ReID數據集上取得了更好的準確度,這顯示了pure transformer架構在圖像檢索任務上同樣適用。在ImageNet上取得更好分數的DeiT在下游的ReID任務上並沒有超過ViT。這是因為ViT使用了更大的ImageNet22K做預訓練,更大的預訓練數據使得ViT有更好的遷移性。

可視化

(a) Input images, (b) Baseline, (c) JPM w/o rearrange, (d) JPM.

©THE END

轉載請聯繫本公眾號獲得授權

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 鑽石舞台 的頭像
    鑽石舞台

    鑽石舞台

    鑽石舞台 發表在 痞客邦 留言(0) 人氣()