DeepFashion: Powering Robust Clothes Recognition and Retrieval with Rich Annotations
服裝識别,檢索的難點:
1.變形,遮擋,縮放,視角的變化對檢索效果有很大的影響。
2.樣式紋理的多樣性。
3.背景不純,複雜。
創新點:
- 建立了一個服裝資料集DeepFashion,包含80萬張服裝圖像,有類别,屬性,特征點以及服飾框的标注。
- 提出一個深度學習模型FashionNet,結合服飾屬性和特征點進行服飾的特征提取,可以較好的應對服飾的變形遮擋等問題。
DeepFashion資料集:
标注:
- Massive attributes:50個類别,1000個屬性,其中屬性分成5個組,分别為質地、織物、形狀、零件和樣式(texture, fabric, shape, part, and style),屬性包含服裝商品識别必須的資訊。
- Landmarks: 關鍵點位置能夠有效處理形變和姿态變化,比如對于上衣,有六個關鍵點,分别在領子左右,袖子左右,下擺左右。
- Consumer-to-shop pairs):映射對(Pair Annotation)不同場景中的同一件衣服對,比如,網店的,街上拍的,給出對應關系。
網絡結構
Fashion Net 基于VGG16網絡,從開始到倒數第二層,與VGG16相同,最後一個卷積層重新設計用于服裝問題,3個分支,red,green,blue。
- 紅色分支,用于提取圖像的全局特征。
- 綠色分支,用于提取關鍵點的特征。
- 藍色分支,用于關鍵點的定位,并給出特征點是否可見。
- 其中 紅色,綠色分支兩個特征進行融合,然後用于後面的分類,屬性預測和triplet訓練(衣服pair的訓練)。
前向傳播
1.對于輸入先計算藍色分支,得到預測關鍵點的位置。
2.将預測的關鍵點資訊用于綠色分支,提取關鍵點的特征,這裡有一個關鍵點pooling層。在 pool5_local 層對估計的關鍵點進行池化pooling特征,以使布局特征對服裝形變和缺失具有不變性。
3.紅色分支全局特征和關鍵點特征進行融合,concate,然後用于分類,和屬性分類。在 fc7_fusion 對 fc6_global 層全局特征和 fc6_local池化後的關鍵點局部特征進行連接配接.
ps: landmark pooling 層的輸入是 feature maps(如 conv4 ) 和 估計的 landmarks
Loss Function
反向傳播時,考慮5個損失函數的權重:
1.關鍵點的regression loss
2.鍵點可見性和服裝類别預測的softmax loss
4.屬性的cross-entropy loss
5.同一件衣服的triplet loss。
訓練時,把藍色分支作為主要任務,紅色分支和綠色分支作為輔助任務。是以,關鍵點的損失和關鍵點是否可見的損失,将會被加重。
服裝檢索部分的實驗結果
關鍵點有利于圖像檢索。
In-Shop Clothes Retrieval:關鍵點對圖像檢索的作用意義重大。
Consumer-to-Shop Clothes Retrieval:雖然這種情況下的表現比上面in-shop低不少,但是關鍵點的加入效果顯著。是以知道為啥把關鍵點作為主要任務。當然也有可能正是因為關鍵點作為主要任務,才能在最終效果中展現出如此重要的作用。