天天看點

論文筆記 | 基于雙線性CNN模型的細粒度視覺識别介紹

細粒度視覺識别之雙線性CNN模型

[1] Lin T Y, RoyChowdhury A, Maji S. Bilinear cnn models for fine-grained visual recognition[C]//Proceedings of the IEEE International Conference on Computer Vision. 2015: 1449-1457.

[2] Lin T Y, RoyChowdhury A, Maji S. Bilinear CNNs for Fine-grained Visual Recognition//arXiv. 2017.

摘要

  • 定義:雙線性CNN模型:包含兩個特征提取器,其輸出經過外積(外積WiKi)相乘、池化後獲得圖像描述子。
  • 優點:
    • 該架構能夠以平移不變的方式,對局部的對級(pairwise)特征互動進行模組化,适用于細粒度分類。
    • 能夠泛化多種順序無關的特征描述子,如Fisher 向量,VLAD及O2P。實驗中使用使用卷積神經網絡的作為特征提取器的雙線性模型。
    • 雙線性形式簡化了梯度計算,能夠對兩個網絡在隻有圖像标簽的情況下進行端到端訓練。
  • 實驗結果:
    • 對ImageNet資料集上訓練的網絡進行特定領域的微調,該模型在CUB200-2011資料集上,訓練時達到了84.1%的準确率。
    • 作者進行了實驗及可視化以分析微調的效果,并在考慮模型速度和精确度的情況下選擇了兩路網絡。
    • 結果顯示,該架構在大多數細粒度資料集上都可以與先前算法相媲美,并且更加簡潔、易于訓練。更重要的是,準确率最高的模型可以在NVIDIA Tesla K40 GPU上以8 f/s的速度高效運作。代碼連結:http://vis-www.cs.umass.edu/bcnn
論文筆記 | 基于雙線性CNN模型的細粒度視覺識别介紹

介紹

  • 細粒度識别

    對同屬一個子類的物體進行分類,通常需要對高度局部化、且與圖像中姿态及位置無關的特征進行識别。例如,“加利福尼亞海鷗”與“環狀海鷗”的區分就要求對其身體顔色紋理,或羽毛顔色的微細差異進行識别。

    通常的技術分為兩種:

    • 局部模型:先對局部定位,之後提取其特征,獲得圖像特征描述。缺陷:外觀通常會随着位置、姿态及視角的改變的改變。
    • 整體模型:直接構造整幅圖像的特征表示。包括經典的圖像表示方式,如Bag-of-Visual-Words,及其适用于紋理分析的多種變種。

      基于CNN的局部模型要求對訓練圖像局部标注,代價昂貴,并且某些類沒有明确定義的局部特征,如紋理及場景。

  • 作者思路
    • 局部模型高效性的原因:本文中,作者聲稱局部推理的高效性在于其與物體的位置及姿态無關。紋理表示通過将圖像特征進行無序組合的設計,而獲得平移無關性。
    • 紋理表征性能不佳的思考:基于SIFT及CNN的紋理表征已經在細粒度物體識别上顯示出高效性,但其性能還亞于基于局部模型的方法。其可能原因就是紋理表示的重要特征并沒有通過端到端訓練獲得,是以在識别任務中沒有達到最佳效果。
    • 洞察點:某些廣泛使用的紋理表征模型都可以寫作将兩個合适的特征提取器的輸出,外積之後,經池化得到。
    • 首先,(圖像)先經過CNNs單元提取特征,之後經過雙線性層及池化層,其輸出是固定長度的高維特征表示,其可以結合全連接配接層預測類标簽。最簡單的雙線性層就是将兩個獨立的特征用外積結合。這與圖像語義分割中的二階池化類似。
  • 實驗結果:作者在鳥類、飛機、汽車等細粒度識别資料集上對模型性能進行測試。表明B-CNN性能在大多細粒度識别的資料集上,都優于目前模型,甚至是基于局部監督學習的模型,并且相當高效。

繼續閱讀