論文位址:https://arxiv.org/abs/2103.11617
代碼位址:https://github.com/daodaofr/AlignPS
前言:
本文針對anchor-free模型用于行人搜尋中會出現三個不對齊問題:Scale misalignment,Region misalignment,Task misalignment提出了相應的解決方案,進一步提出了一個更簡單更有效的anchor-free模型--AlignPS。
Introduction
行人重識别的方法分為兩個類别,一類是基于two-step的方法,如圖a所示,先使用現成的模型進行行人檢測,将其裁剪出來,再放進re-id網絡識别。這種方法可以獲得比較好的效果,但對時間和資源消耗比較大。第二類是基于one-step的方法,如圖b所示,使用一種端到端的方式檢測并識别。

如圖b所示,這種一步到位的方式在檢測出行人後,将檢測框内的feature通過ROI Align得到相同大小feature maps, 再進行回歸,分類,re-id損失值的計算。這種方式類似于目标檢測的two-stages的方法,我們稱之為one-step two-stage模型。
這種one-step two-stage模型不可避免的與目标檢測的two-stages模型一樣,也有一些内在缺陷,例如密集anchors帶來的高計算量,對大小、比例和anchor數量這些超參數的高敏感性。
最近幾年,基于anchor-free的模型展現了獨有的優點,即更簡單的結構和更快的速度。基于這一點,作者提出要在Re-ID中建構一個anchor free模型。
但這會存在以下三個不對齊的問題:
1) 許多anchor-free模型通過FPN的方式學習多尺度特征以實作目标檢測的尺度不變性。但在Re-ID上會存在尺度不對齊的問題,這是因為在gallery set中會存在各種尺度的人。
2) 沒有了ROI-Align操作,anchor-free模型無法根據指定區域将re-id和檢測聯系起來。是以,必須直接從特征圖中學習re-id embedding,而無需顯式的區域對齊。
3) 行人搜尋可以直覺地認為是一個把檢測和Re-ID作為自認為的多任務學習架構,是以需要找到這兩個任務的平衡。
在這篇論文中提出了第一個用于行人搜尋的anchor-free模型,稱之為Feature Aligned Person Search Network (AlignPS),AlignPS遵循Re-ID優先的原則提出了aligned feature aggregation (AFA) module,用于處理上面這三個問題。
AFA通過可變形卷積重塑了FPN的一些構造塊,通過特征融合解決了在Re-ID特征學習中區域和尺度不對齊的問題。同時優化了Re-ID和檢測在訓練過程中的步驟,更注重生成更魯棒的Re-ID embeddings。這些簡單有效的設計成功的将一個經典的anchor-free模型變成了一個很強很有效率的行人搜尋架構,超過了anchor-based模型。
Feature Aligned Person Search Network
AlignPS的基礎架構是FCOS,FCOS是目标檢測中最常用的one-stage anchor-free架構之一。
前面提到,AlignPS是基于Re-ID優先的原則,為了學習Re-ID embedding,直接使用AFA輸出的feature maps進行flatten,沒有使用額外的embedding layers。
對于檢測,使用了FCOS中的檢測頭。檢測頭分成兩個分支,兩條分支都由四個3x3卷積層組成,第一個分支預測回歸偏移和中心得分,第二個對前景背景進行分類。最後,AFA輸出feature maps的每個位置都會與一個含有分類、中心得分以及Re-ID embedding的Bounding boxes聯系起來。
Aligned Feature Aggregation
Scale Alignment--FCOS采用在不同層檢測不同大小的目标,對于一些重疊的有歧義的目标很有可能會分到不同的層,是以可以很好的提升檢測效果。然而這對于Re-ID來說這并不好,因為Re-ID需要與gallery set進行比較,在不同的尺度下檢測将會出現尺度不對齊的問題。
本文的解決辦法是隻使用P3層的資訊,這樣就不存在尺度不對齊的問題,注意,可以這樣做的原因是P3層基本融合了全部的語義資訊。在上一篇論文分享《YOLOF: 特征金字塔的新方式》中提到,特征金字塔的最頂層基本融合了全部語義資訊,進行多尺度融合對精度提升影響不大。
Region Alignment--前面提到沒有ROI-Align操作會出現Region misalignment問題,AlignPS從三個方面處理這個問題。
第一,使用3x3可變形卷積來代替FPN中鄰側連接配接過程中的1x1卷積。3x3可變形卷積可以使網絡自适應input feature maps的感受野,很好地完成Region Alignment。
第二,使用concatenation代替自頂向下路徑中的求和操作,這可以整合多尺度特征。
第三,再次使用3x3可變形卷積代替FPN輸出層的3x3卷積。這可以對其多尺度特征進而生成更精确的feature map。
Task Alignment--提出Re-ID優先是基于以下兩點考慮。
第一,因為現有的一些檢測架構有比較強的效果,以至于檢測任務相比Re-ID更好處理,是以學習判别Re-ID embedding是首要關注的問題。經過作者們讨論,在anchor-free架構中,Re-ID的performance對Region misalignment更敏感。是以,傾向于Re-ID對于行人搜尋是比較理想的。
第二,對比于檢測優先和兩者并重的結構,Re-ID優先的結構不需要額外的層去生成Re-ID embedding,進而更有效率。
Triplet-Aided Online Instance Matching Loss
目前典型的行人搜尋方法大多采用Online Instance Matching(OIM)損失來監督ReID任務的訓練過程。
具體而言,OIM将所有帶标簽個體的特征中心存儲在一個查找表(Lookup Table,簡稱LUT)中,其中L代表特征個數、D代表特征次元。同時,維護一個循環隊列(Circular Queue),其包含了Q個無标簽個體的特征。在每次疊代過程中,給定标簽為i的輸入特征x,OIM分别将x與查找表和循環隊列中的所有特征計算相似度,這樣可得到x屬于标簽i的機率pi。
本文發現,盡管OIM能夠有效地利用帶标簽和無标簽樣本,但還是具有下面兩個局限性:1)相似度計算隻局限在輸入特征與查找表或循環隊列之間,輸入特征之間并沒有任何相似度計算操作。2)對數似然損失并沒有給出特征對之間的明确距離度量。
為此,提出了一種三元組損失(Triplet Loss)來進一步增強OIM損失。對于輸入圖像中的每個行人,首先采用中心采樣(Center Sampling)政策對特征進行采樣。這樣,每個人中心附近的特征被認為是正樣本,這裡目标是拉近同一個人采樣到的不同特征,将不同人的特征盡量分開。
與此同時,帶标簽個體采樣到的不同特征也應與查找表中相應的個體中心特征相接近,與查找表中不同個體的中心特征相遠離。虛線框中展示的就是根據上述政策建構得到的三元組。
其中M代表正負樣本間的邊界大小,Dpos和Dneg分别代表正、負樣本對之間的歐氏距離。最後,本文所提出的TOIM損失即為OIM和三元組損失函數的簡單疊加。
Conclusion
AlignPS在CUHK-SYSU上比baseline anchor-free模型提高了20%的mAP。且以更快的速度超過了two-stages 的SOTA。
本文來源于公衆号CV技術指南的技術總結系列,更多相關技術總結請掃描文末二維碼關注公衆号。
公衆号其它技術總結内容
深度學習前人的精度很高了如何創新?
特征金字塔技術總結
CV方向的高效閱讀英文文獻方法總結
資料增強方法總結
CNN結構演變總結(一)經典模型
CNN結構演變總結(二)輕量化模型
CNN結構演變總結(三)設計原則
CNN可視化技術總結(一)-特征圖可視化
CNN可視化技術總結(二)--卷積核可視化
CNN可視化技術總結(三)--類可視化
CNN可視化技術總結(四)--可視化工具與項目
池化技術總結
NMS總結