筆記:Deep multi patch aggregation network for image style, aesthetics and quality estimation

在Image style, aesthetics and quality estimation三類任務中往往需要依靠更多的高像素(high resolution)圖片中的細紋理(fine-grained)信息。通常CNN網絡的輸入是256*256*3的尺寸,通常的做法是,通常的做法是將一個高像素(比如1024*768)圖片隨機裁剪爲一個patch,用這個patch表示整幅圖像,這樣會丟失掉其餘部分的細紋理信息。本文用一個patch集合(multi patch)來表示整個圖片。基於multiple patch,文章提出了一種特徵學習以及聚集(aggregation)不同patch特徵的框架。具體而言,首先在一個圖片上提取多個patch,然後爲每個patch做特徵提取,將各個patch的特徵進行聚集,從而得到用於分類的特徵。在這個框架上,本文提出了兩種用於特徵聚集的方法,分別是statistics aggregation structure和fully-connected sorting aggregation。整個框架本文用下圖表示:
這裏寫圖片描述
這裏的CNN表示下面結構中從input layer到fc256.(沒有softmax層)
這裏寫圖片描述
詳細的步驟如下:
1) 對圖像選擇patch,構成patch集;訓練階段隨機每個圖像隨機選取5個patch,測試階段沒個圖片隨機選取250個patch,每5個構成一個patches集合,作爲第(2)步的輸入,每個圖像共50個集合,最後取50個集合的平均值作爲結果。
2) 對patch集中的每個patch單獨進行特徵提取:方法是將每個patch用CNN提取特徵。在訓練階段,首先用任意一個patch訓練一個CNN,然後將所有CNN初始化爲該值,然後用對應的patch對各個CNN進行單獨訓練。在將CNN特徵傳去到aggregation層的時候,爲了保持它們之間的可比性,將各個CNN columns上的權重設爲相同。
3) 然後將patch的特徵進行aggregation。本文講了兩種策略,每個patch的特徵爲K,每個圖像用M個patch表示,分別是:
a) the statistics aggregation structure:這個結構保留每個patches特徵上的統計特徵,文章提到的包括max, min, median and mean. 聚集的過程爲:分別計算multi patch上對應維度上的每個統計特徵,將每維相同的統計特徵串聯起來得到M維向量,然後將U個統計特徵分別得到的M維特徵向量串聯,得到U*K的向量(假設考慮U個統計特徵),這個向量被傳到一個全鏈接層,生成特徵向量g(D)。整個流程在文中如下圖表示:(K=3,U=4)
這裏寫圖片描述
b) the fully-connected sorting aggregation:這個將上面的statistics layer替換爲sorting layer,文章提到的sorting 方式爲按值遞增排序。首先提取每個patch的特徵,然後將不同patch對應維度上的進行排序,每個維度上形成一個排序後的M維特徵向量,將K個維度上的M維特徵向量串聯得到K*M維特徵。這個結果在全連接層後得到特徵向量g(D)。流程在文中如下表示
這裏寫圖片描述
4)最後根據全連接層輸出的特徵分類用的CNN上的soft-max層。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章