1. 程式人生 > >2017 ICCV-Pose-driven Deep Convolutional Model for Person Re-identification

2017 ICCV-Pose-driven Deep Convolutional Model for Person Re-identification

論文地址

Motivation

  • 巨大的姿勢變化以及複雜的視角差異增加了從行人圖片中提取特徵與匹配的困難

Contribution

  • 提出了Pose-driven Deep Convolutional(PDC) model來提高特徵學習以及匹配
  • pose driven feature weighting sub-network來學習自適應特徵融合

思考

  • 利用pose的關鍵點對身體分塊並對不同塊加權來增強細節特徵來進行識別,越來越多的re-id方法更加註重區域性細節特徵的識別,18年CVPR出現了用human分割產生更精準的部分來進行特徵提取,個人認為如何最大化利用可判別的細節特徵是一個值得嘗試的方法;文中運用了多種網路,結構相對複雜,對於如何借鑑已有方法的思想來解決re-id也很有啟發

1.Introduction

  • re-id定義:給定包含某個特定照相機下的特定人物的探測影象或視訊序列,從其他照相機查詢此人的影象,位置和時間戳。
  • 傳統方法:
    • 從圖片中提取區域性不變特徵
    • 度量學習減少相同人特徵圖片之間的距離
  • 深度學習:卷積提特徵 + 歐式距離
    • Softmax Loss學習全域性表示
    • 預先分的身體模組來學習區域性特徵,融合區域性特徵與全域性特徵
    • 雖然相比傳統方法有較大的提升,但是沒有考慮身體姿勢變化對人外觀的影響
  • 一些嘗試:
    • 通過預先的設定來進行簡單分割
    • 先利用pose estimation演算法預測姿勢,再訓練Re-ID模型(非end-to-end)
  • 本文的網路:
    • Pose-driven Deep Convolutional(PDC)來同時學習全域性(softmax loss)與區域性特徵(Feature Embedding subNet–>Pose Transformation Network),並通過Feature Weighting subNet(FWN)對不同部分加權融合區域性與全域性特徵
  • 區域性表示產生如下圖:original image –> 14個身體關節點的響應圖 –> 14個關鍵點 –> 6個身體部分 –> 對各部分旋轉 + 縮放 –> PTN歸一化–> 送入網路學習表示



- 本文動機+貢獻

2.Related Work

  • 傳統方法、Deep Learning、其他區分身體部分的嘗試
  • 本文方法:
    • 更精確的姿勢估計方法
    • 考慮了姿勢估計的精度、遮擋以及光線變化的影響
    • 不同身體部分具有不同的判別力,對得到的身體區域進行了歸一化處理再通過FEN得到更加魯棒的特徵,並通過FWN學習每個部分的權重

3.Pose-driven Deep ReID Model

3.1 Framework



  • 人體姿勢估計演算法得到人體關節點位置
  • 利用關節點位置來得到人體不同的部分
  • 將身體部分通過FEN來變換得到歸一化的身體區域
  • 將整個圖片以及身體區域圖片一起送入CNN,前幾層共享卷積特徵,後幾層有各自權重
  • 最後通過FWN對身體部分特徵進行加權來與全域性特徵融合後送入Softmax Loss
  • 不同資料集尺寸的影響,可能不適合使用ImageNet Pretrained-model (224*224),本文基於GoogleNet設計了自己的網路,本文輸入大小為(512 x 256), 結構如下表:


3.2.Feature Embedding sub-Net

定位關節點,產生身體區域:
- 通過姿態估計得到14個關鍵點
- 利用關節點將人體劃分成6個區域:頭、上體、兩個胳膊、兩個腿
- 關節點產生(不是很懂)

PTN:
- 關鍵點定位存在不準確問題,通過STN來學習調整需要旋轉的角度
- STN三個部分:
- localisation network:輸入feature map,輸出轉換的引數
- parameterised sampling grid
- differentiable image sampling
- 本文使用affine transformation,6維轉換引數:

(xsys)
- 不同身體部分由不同的位置與大小,設計了PTN對每個部分圖片來進行轉換,如下圖


  • 考慮到頭部很少有較大的旋轉,對頭沒有使用PTN
  • 一共有5個獨立的PTN,Aθlarm,Aθrarm,Aθupperbody,Aθlleg,Aθrleg
  • 身體部分Pi通過Aθi得到校正過的身體部分Mi


3.3.Feature Weighting sub-Net