Bi-Directional Center-Constrained Top-Ranking for Visible Thermal Person Re-Identification
BDTR: 雙向中心限制的排序損失
1. 解決的問題
紅外光和可見光圖像之間差異大,而且存在大量的噪聲,無法學習可判别的特征。而現有的方法對噪聲圖像具有弱魯棒性。
多模态問題中出現模态間的特征映射關系不準确以及模态内變化巨大的問題。
2. 模型概覽
- 提出雙向中心聚合的排序損失函數同時考慮模态内和模态間的變化。
- 提出雙向中心限制的排序損失将兩個限制融合到一個公式裡面,可以獲得更好的性能。
小知識點:
- 淺層中的參數不同,用于模組化特定于模态的資訊,深層次的參數共享, 用于學習多模态共享特征。網絡訓練中引入雙向雙限制的top-ranking損失,并對其進行L2歸一化處理。同時結合identity loss穩定訓練過程,進而提高性能。
總結:
具體是引入了中心的概念,将不同模态的負樣本對之間的度量從二範數精确到距離樣本中心類的最小距離。不僅可以減小計算量,而且還可以減小模态之間的差異。
采用了anchor中心對中心計算loss 代替 anchor對anchor計算loss,因為所有anchor中心能夠很好的代表着一類,隻在中心計算ranking loss。
3. 模型詳述
雙流網絡的特征學習和雙向雙限制的top-ranking損失的度量學習。
雙路徑網絡的參數部分共享,以模組化多模态的共享資訊,獨立參數挖掘模态特定資訊。雙限制的top-ranking損失學習低次元的特征嵌入,能夠區分不同身份的兩種異質模式。
淺層參數自定義,深層參數共享。
3.1 雙流的網絡
現成的特征提取器:都是為了捕獲和提取人物圖像的特征表示而設計的。然而,兩條路徑的網絡參數被分别優化以捕獲特定于模态的資訊。由于VT-REID任務的訓練資料有限,采用在大規模圖像網絡上預訓練的通用圖像分類網絡參數初始化特征提取程式。
對于可見光和紅外光的路徑,使用AlexNet作為主幹網絡,淺卷積層通常捕獲兩種模式共享的低級視覺模式。在預先訓練好的FC層之後添加一個BN層,如果不進行BN層,所有人物圖像的特征将被壓縮到特征空間的一個小區域中。從經驗上看,BN操作顯著提高了人員重新識别的性能。
特征嵌入:
目的是在兩個異構模式之間學習一個有差別的低維嵌入空間,在雙流網絡之後引入共享的全連接配接層,這個共享結構提高了跨模态人員重識别的性能,充當投影函數将兩種模式的特征投影到公共的嵌入空間。具體如下表示:
x = F v ( I v ) , z = F t ( I t ) x = \mathcal F_v(I_v) , z = \mathcal F_t(I_t) x=Fv(Iv),z=Ft(It)
3.2 雙向雙限制的排序損失
Ranking loss:
三個輸入: x i , z j , z k x_i,z_j,z_k xi,zj,zk, z i , x j , x k z_i,x_j,x_k zi,xj,xk表示雙向的跨模态三元組損失的輸入.
x,z表示不同模态 顔色表示相同标簽。則其距離應該滿足:
D ( x i , z j ) < D ( x i , z k ) − ρ 1 , ∀ y i ≠ y k , ∀ y i = y j D ( x i , z j ) = 1 2 ∥ x i − z j ∥ 2 2 D(x_i,z_j) \lt D(x_i,z_k) - \rho_1, ~~ \forall y_i \neq y_k, \forall y_i = y_j \\ D(x_i,z_j) = \frac 1 2 \| x_i - z_j \|^2_2 D(xi,zj)<D(xi,zk)−ρ1, ∀yi=yk,∀yi=yjD(xi,zj)=21∥xi−zj∥22
那麼跨模态的行人重識别損失函數應該是:
L b i = ∑ ∀ y i = y j , ∀ y i ≠ y k max [ ρ 1 + D ( x i , z j ) − D ( x i , z k ) , 0 ] + ∑ ∀ y i = y j , ∀ y i ≠ y k max [ ρ 1 + D ( x i , z j ) − D ( x i , z k ) , 0 ] \mathcal L_{bi} = \sum_{\forall y_i = y_j, \forall y_i \neq y_k} \max [\rho_1 + D(x_i, z_j)-D(x_i,z_k), 0] + \\ \sum_{\forall y_i = y_j, \forall y_i \neq y_k} \max [\rho_1 + D(x_i, z_j)-D(x_i,z_k), 0] Lbi=∀yi=yj,∀yi=yk∑max[ρ1+D(xi,zj)−D(xi,zk),0]+∀yi=yj,∀yi=yk∑max[ρ1+D(xi,zj)−D(xi,zk),0]
跨模态的排序損失
L c r o s s = ∑ ∀ y i = y j max [ ρ 1 + D ( x i , z j ) − min ∀ y i ≠ y k D ( x i , z k ) , 0 ] + ∑ ∀ y i = y j max [ ρ 1 + D ( z i , x j ) − min ∀ y i ≠ y k D ( z i , x k ) , 0 ] \mathcal L_{cross} = \sum_{\forall y_i = y_j} \max [\rho_1 + D(x_i,z_j)-\min_{\forall y_i \neq y_k} D(x_i,z_k),0] + \\ \sum_{\forall y_i = y_j} \max [\rho_1 + D(z_i,x_j)-\min_{\forall y_i \neq y_k} D(z_i,x_k),0] Lcross=∀yi=yj∑max[ρ1+D(xi,zj)−∀yi=ykminD(xi,zk),0]+∀yi=yj∑max[ρ1+D(zi,xj)−∀yi=ykminD(zi,xk),0]
雙向跨模态的top-ranking loss有兩個優點:
- 減少了交叉模态的變化同時保證了hard mining的高可分辨性,不需要off-line hard triplet sampling,所有的三元組比較都是在training batch的online進行;
- 雙向訓練政策確定學習的特征表示是模态不變的,提高了不同查詢的魯棒性。
模态内的排序損失
L i n t r a = ∑ max [ ρ 2 − min ∀ y i ≠ y K D ( z j , z k ) , 0 ] + ∑ max [ ρ 2 − min ∀ y i ≠ y K D ( x j , x k ) , 0 ] \mathcal L_{intra} = \sum \max[\rho_2 - \min_{\forall y_i \neq y_K} D(z_j, z_k), 0] + \sum \max[\rho_2 - \min_{\forall y_i \neq y_K} D(x_j, x_k), 0] Lintra=∑max[ρ2−∀yi=yKminD(zj,zk),0]+∑max[ρ2−∀yi=yKminD(xj,xk),0]
其中 ρ 2 \rho_2 ρ2是一個預設定的值。
特征損失
由于不正确的關系度量,ranking loss可能會陷入收斂問題。同時,學習到的特征表示不能簡單地利用關系資訊來解決類内變化。此時引入identity損失:
L = λ 1 L c o r s s + λ 1 L i n t r a + λ 2 L i d \mathcal {L = \lambda_1 L_{corss} + \lambda_1 L_{intra} + \lambda_2 L_{id}} L=λ1Lcorss+λ1Lintra+λ2Lid
3.3 提出雙向中心限制的排序損失
首先是中心的概念:
L c e n t e r = 1 2 ∑ i = 1 K D ( x i , c y i ) \mathcal L_{center} = \frac 1 2 \sum^K_{i=1} D(x_i,c_{y_i}) Lcenter=21i=1∑KD(xi,cyi)
c y i ∈ R d c_{y_i} \in \mathcal R^d cyi∈Rd是該類的中心。對跨模态的行人重識别問題而言,假設在每一個模态中,所有的标簽都屬于一個中心的子元素。這樣就可以定義出雙向中心損失:
L b i c e n t e r = ∑ i = 1 K max [ ρ 1 + D ( x i , c y i ) − min ∀ y i ≠ y k D ( x i , c y k ) , 0 ] + ∑ i = 1 K max [ ρ 1 + D ( z i , c y i ) − min ∀ y i ≠ y k D ( z i , c y k ) , 0 ] \mathcal L_{bicenter} = \sum^K_{i=1} \max [\rho_1 + D(x_i,c_{y_i})-\min_{\forall y_i \neq y_k}D(x_i, c_{y_k}), 0] + \\ \sum^K_{i=1} \max [\rho_1 + D(z_i,c_{y_i})-\min_{\forall y_i \neq y_k}D(z_i, c_{y_k}), 0] Lbicenter=i=1∑Kmax[ρ1+D(xi,cyi)−∀yi=ykminD(xi,cyk),0]+i=1∑Kmax[ρ1+D(zi,cyi)−∀yi=ykminD(zi,cyk),0]
将anchor與sample的比較替換為anchor與center的比較的優點:減少計算量,原來模态内限制和跨模态限制共計4k^ 2,後來隻需要計算樣本和中心之間的樣本對距離2k^2。
保留了處理跨模态的模态内變化的屬性:三元組與中心的比較 確定不同形态的人身份上是可區分的;中心本身就限制了來自同一特征兩種模态連接配接起來的采樣,也解決了模态内的變化。
反向傳播的分析
為了計算目前步驟中兩種異質模式及其對應中心的輸入特征表示的反向傳播梯度,首先簡化中心限制排序損失的表示,最小樣本到類間中心距離 min ∀ y i ≠ y k D ( x i , c y k ) , min ∀ y i ≠ y k D ( z i , c y k ) \min_{\forall y_i \neq y_k} D(x_i,c_{y_k}),\min_{\forall y_i \neq y_k} D(z_i,c_{y_k}) min∀yi=ykD(xi,cyk),min∀yi=ykD(zi,cyk)用 D ( x i , c p i ) , D ( z i , c q i ) D(x_i,c_{p_i}),D(z_i,c_{q_i}) D(xi,cpi),D(zi,cqi)表示,那麼 x i , z i x_i,z_i xi,zi的中心排序損失可以表示為:
L ‾ x i = max [ ρ 1 + D ( x i , c y i ) − D ( x i , c p i ) , 0 ] , L ‾ z i = max [ ρ 1 + D ( z i , c y i ) − D ( z i , c p i ) , 0 ] \mathcal{\overline L_{x_i}} = \max [\rho_1 + D(x_i,c_{y_i})-D(x_i,c_{p_i}), 0] ,\\ \mathcal{\overline L_{z_i}} = \max [\rho_1 + D(z_i,c_{y_i})-D(z_i,c_{p_i}), 0] Lxi=max[ρ1+D(xi,cyi)−D(xi,cpi),0],Lzi=max[ρ1+D(zi,cyi)−D(zi,cpi),0]
對下标的梯度可以表示為:
∂ L b i c e n t e r ∂ x i = ( ∂ D ( x i , c y i ) ∂ x i − ∂ D ( x i , c p i ) ∂ x i ) δ ( L ‾ x i > 0 ) = ( c p i − c y i ) δ ( L ‾ x i > 0 ) ∂ L b i c e n t e r ∂ z i = ( ∂ D ( z i , c y i ) ∂ z i − ∂ D ( x i , c q i ) ∂ z i ) δ ( L ‾ z i > 0 ) = ( c q i − c y i ) δ ( L ‾ z i > 0 ) \frac {\partial \mathcal L_{bicenter}} {\partial x_i} = (\frac {\partial D(x_i,c_{y_i})} {\partial x_i} - \frac {\partial D(x_i,c_{p_i})} {\partial x_i})\delta(\mathcal{\overline L_{x_i}} \gt 0)\\ =(c_{p_i} - c_{y_i})\delta(\mathcal{\overline L_{x_i}} \gt 0)\\ \frac {\partial \mathcal L_{bicenter}} {\partial z_i} = (\frac {\partial D(z_i,c_{y_i})} {\partial z_i} - \frac {\partial D(x_i,c_{q_i})} {\partial z_i})\delta(\mathcal{\overline L_{z_i}} \gt 0)\\ =(c_{q_i} - c_{y_i})\delta(\mathcal{\overline L_{z_i}} \gt 0)\\ ∂xi∂Lbicenter=(∂xi∂D(xi,cyi)−∂xi∂D(xi,cpi))δ(Lxi>0)=(cpi−cyi)δ(Lxi>0)∂zi∂Lbicenter=(∂zi∂D(zi,cyi)−∂zi∂D(xi,cqi))δ(Lzi>0)=(cqi−cyi)δ(Lzi>0)
同時對 c j c_j cj的梯度可以表示為:
∂ L b i c e n t e r ∂ c j = ∑ i = 1 K ( x i − c j ) δ ( L ‾ x i > 0 ) δ ( y i = j ) 1 + ∑ i = 1 K δ ( L ‾ z i > 0 ) δ ( y i = j ) − ∑ i = 1 K ( x i − c j ) δ ( L ‾ x i > 0 ) δ ( p i = j ) 1 + ∑ i = 1 K δ ( L ‾ x i > 0 ) δ ( p i = j ) + ∑ i = 1 K ( z i − c j ) δ ( L ‾ z i > 0 ) δ ( y i = j ) 1 + ∑ i = 1 K δ ( L ‾ z i > 0 ) δ ( y i = j ) − ∑ i = 1 K ( z i − c j ) δ ( L ‾ z i > 0 ) δ ( q i = j ) 1 + ∑ i = 1 K δ ( L ‾ z i > 0 ) δ ( q i = j ) \frac {\partial \mathcal L_{bicenter}} {\partial c_j} = \frac {\sum^K_{i=1}(x_i - c_j)\delta(\mathcal{\overline L_{x_i}} \gt 0)\delta(y_i = j)} {1 + \sum^K_{i=1}\delta(\mathcal{\overline L_{z_i}} \gt 0)\delta(y_i = j)} \\ - \frac {\sum^K_{i=1}(x_i - c_j)\delta(\mathcal{\overline L_{x_i}} \gt 0)\delta(p_i = j)} {1 + \sum^K_{i=1}\delta(\mathcal{\overline L_{x_i}} \gt 0)\delta(p_i = j)}\\ + \frac {\sum^K_{i=1}(z_i - c_j)\delta(\mathcal{\overline L_{z_i}} \gt 0)\delta(y_i = j)} {1 + \sum^K_{i=1}\delta(\mathcal{\overline L_{z_i}} \gt 0)\delta(y_i = j)} \\ - \frac {\sum^K_{i=1}(z_i - c_j)\delta(\mathcal{\overline L_{z_i}} \gt 0)\delta(q_i = j)} {1 + \sum^K_{i=1}\delta(\mathcal{\overline L_{z_i}} \gt 0)\delta(q_i = j)} ∂cj∂Lbicenter=1+∑i=1Kδ(Lzi>0)δ(yi=j)∑i=1K(xi−cj)δ(Lxi>0)δ(yi=j)−1+∑i=1Kδ(Lxi>0)δ(pi=j)∑i=1K(xi−cj)δ(Lxi>0)δ(pi=j)+1+∑i=1Kδ(Lzi>0)δ(yi=j)∑i=1K(zi−cj)δ(Lzi>0)δ(yi=j)−1+∑i=1Kδ(Lzi>0)δ(qi=j)∑i=1K(zi−cj)δ(Lzi>0)δ(qi=j)
K表示一個訓練batch中包含的圖檔數量。
此處使用SGD作為優化器
c j t + 1 = c j t − α Δ c j t c^{t+1}_j = c^t_j - \alpha \Delta c^t_j cjt+1=cjt−αΔcjt
最後的損失函數可以表示為:
L = λ 1 L b i c e n t e r + λ 2 L i d \mathcal L = \mathcal {\lambda_1 L_{bicenter} + \lambda_2 L_{id}} L=λ1Lbicenter+λ2Lid
采樣政策的說明:
4. 實驗結果
4.1 消融研究
實作的具體細節:dropout rate=0.5, 在RGB資料集上 λ 1 = 1 , λ 2 = 0.1 \lambda_1 = 1, \lambda_2 = 0.1 λ1=1,λ2=0.1,在SYSU-MM01資料集上: λ 1 = 0.1 , λ 2 = 1 \lambda_1 = 0.1, \lambda_2 = 1 λ1=0.1,λ2=1所有配置可以在論文中看到。
不同的網絡結構對模型性能的影響。
表中第二大塊是關于不同的損失函數對模型的影響。
然後對于每一個子產品作者進行了對比,結果如下:
最後是不同的實驗參數對結果的影響:
intergrating identity loss可以持續提高跨模态ReID的性能。大樣本情況id loss可以獲得很好的性能,小樣本情況下,ranking loss可以獲得很好的性能。
而直接從預先訓練的ImageNet模型得到的ranking loss很難收斂,需要使用帶有idloss的預訓練參數進行初始化,進一步說明idloss對跨模态Reid的重要性。
優點:無需任何人工幹預的端到端學習可以獲得有差別性的特征;提出的方法對跨模态的問題提供了一個很好的解決方案,同時eBDTR保留了處理兩種模态變化的特性;內建的idloss有助于通過對特定身份資訊模組化穩定訓練過程,還提高了ranking loss特征表示的可分辨性。
人類很難通過簡單實用顔色資訊判斷哪個人是查詢的正确比對者。但是在夜間監控中起到重要作用。
即使排名清單中存在一些錯誤檢索的示例,但由于紋理或結構資訊相似,排名靠前的圖像通常與查詢圖像非常接近。
雙向關系訓練政策的有效性,增強了特征學習的模态不變性。
4.2 與SOTA方法比較
下表是與SOTA方法比較
解決模态内變化的模态内限制将持續改進特征學習.
擴充的eBETR保留了同時處理跨模态和模态内變化的特性但限制較少。