天天看點

【圖像分類】細粒度圖像分類是什麼,有什麼方法,發展的怎麼樣

作者 | 郭冰洋

1 簡介

細粒度圖像分類是在區分出基本類别的基礎上,進行更精細的子類劃分,如區分鳥的種類、車的款式、狗的品種等,目前在工業界和實際生活中有着廣泛的業務需求和應用場景。

細粒度圖像相較于粗粒度圖像具有更加相似的外觀和特征,加之采集中存在姿态、視角、光照、遮擋、背景幹擾等影響,導緻資料呈現類間差異性大、類内差異性小的現象,進而使分類更加具有難度。

細粒度圖像分類研究,從提出到現在已經經曆了一段較長時間的發展。面對這一挑戰,人們在粗粒度圖像分類模型的基礎上進行了更加細緻的研究和改進,大緻可以分為基于特征提取的傳統算法和基于深度學習的算法。早期的基于特征提取的算法,由于特征的表述能力有限,分類效果也往往面臨很大的局限性。近年來,随着深度學習的興起,神經網路強大的特征提取能力促進了該領域的快速進步。

2 基于特征提取的傳統算法

1、局部特征

早期基于人工特征的細粒度圖像分類算法,其研究重點為圖像的局部特征,一般先從圖像中提取某些局部特征,然後利用相關編碼模型進行特征編碼。

由于局部特征選擇過程繁瑣,表述能力有限,其自身也存在一定缺陷,即忽略了不同局部特征之間的關聯以及與全局特征之間的位置空間關系,是以并沒有取得令人滿意的結果。

2、視覺詞包

為了進一步提升分類精度,相關人員在局部特征的基礎上又進一步提出視覺詞包(BOVW)的概念。通過統計圖像的整體資訊,将量化後的圖像作為視覺單詞,通過視覺單詞分布來描述圖像内容。

詞包模型與一系列特征提取算法進行融合,雖然取得了一定的進展,但距離實際應用要求還有很遠的距離。同時,建構詞包的過程非常複雜,需要額外的處理工作。

3、特征定位

局部特征和視覺詞包都沒有建構與全局特征之間的關聯,隻在圖像的部分區域進行語義挖掘,是以人們提出對特征進行定位,如利用關鍵點的位置資訊發現最具價值的圖像資訊。

通過位置資訊的輔助,分類精度也得到了一定的提高,但是位置資訊的擷取需要高精度的算法來完成,同時還需要精細的人工标注,其成本更大。

3 基于深度學習的算法

随着深度學習的興起,從神經網絡中自動獲得的特征,比人工特征具有更強大的描述能力,在一定程度上極大地促進了細粒度圖像分類算法的發展。

根據監督方式的不同,該類算法可以分為強監督和弱監督兩種類别。

1、強監督細粒度圖像分類

強監督利用bounding box和key point等額外的人工标注資訊,擷取目标的位置、大小等,有利于提升局部和全局之間的關聯,進而提高分類精度。

Part-based R-CNN基于R-CNN算法完成了局部區域的檢測,利用限制條件對R-CNN提取到的區域資訊進行修正之後提取卷積特征,并将不同區域的特征進行連接配接,構成最後的特征表示,然後通過SVM分類器進行分類訓練,該算法在CUB-200資料集上取得了73.9%的精度。

Pose-normalized CNN首先對每一張圖檔進行局域位置的檢測,然後将檢測框内的圖像進行裁剪,進而提取不同層次、不同位置的圖像,再對提取到的圖像塊進行姿态對齊送入CNN,将得到的特征拼接後利用SVM分類器進行分類,該算法在CUB-200資料集上取得了75.7%的精度。

Multi-proposal Net則通過Edge Box Crop方法擷取圖像塊,并引入關鍵點及視覺特征的輸出層,進一步強化了局部特征與全部資訊直接的位置關聯,該算法在CUB-200資料集上取得了80.3%的精度。

2、弱監督細粒度圖像分類

弱監督即僅利用圖像的類别标注資訊,不使用額外的标注。該方法又可以總結為圖像過濾和雙線性網絡兩類。

(1) 圖像過濾

圖像過濾的思想和強監督中利用bounding box的方法類似,隻不過僅借助于圖像的類别資訊過濾圖檔中與物體無關的子產品,其中比較有代表性的即Two Attention Level算法。

Two Attention Level利用物體級和局部級的資訊,通過Search Selective算法過濾掉無關背景,然後将過濾掉的背景送入CNN網絡進行訓練,得到物體級别的分類結果,随後通過聚類算法将不同位置的特征繼續區分,并将不同區域的特征拼接後送入SVM分類器進行訓練,該算法在CUB-200資料集上取得了75.7%的精度。

在此方法的靈感上,後續諸多算法開始研究如何更好、更有效地對圖像無關背景完成過濾,進而擷取到更有效的目标特征資訊。

(2) 雙線性網絡

人在認知物體和事物時,往往需要完成對其特征的了解以及類别名稱的記憶,為了使神經網絡具有更強大的學習能力,B-CNN創新性的提出了一個全新的概念。

B-CNN根據大腦工作時同認知類别和關注顯著特征的方式,建構了兩個線性網絡,協調完成局部特征提取和分類的任務,該算法在CUB-200資料集上取得了84.1%的精度,不過該方法在合并階段會産生較高的次元,使得整個計算開銷非常大。

後續的雙線性網絡将改進方向放在了設計更好的雙線性彙合過程以及精簡雙線性彙合,以減少計算開銷,同時提升分類精度。

在有三AI知識星球中進行了較多的講述,大家感興趣可以移步:

【知識星球】超3萬字的網絡結構解讀,學習必備

介紹完主要的思想方法,現将近年來基于深度學習的相關算法在CUB-200資料集上所取得的成績進行羅列,供大家查閱。

通過準确度排行清單我們可以看到,想要實作真正的應用,細粒度圖像分類還有很長的一段路要走。

4 資料集

相對于粗粒度圖像分類任務的資料集,細粒度圖像資料擷取難度要更大一些,其搭建往往需要更加專業的相關知識。近年來,越來越多的細粒度資料集出現,這也側面反應了這一領域的發展勢頭和實際需求。

(1) CUB-200

CUB-200是細粒度圖像分類領域最經典,也是最常用的一個資料庫,共包含200種不同類别、11788張鳥類圖像資料。同時,該資料庫提供了豐富的人工标注資料,每張圖像包含15個局部區域位置、312個二值屬性、1個标注框 以及語義分割圖像。

(2) Stanford Dogs

作為Stanford資料庫的系列之一,該資料庫提供了120種不同種類的狗的圖像資料,共有20580張圖,隻提供标注框。

(3) Stanford Cars

在對狗的不同類别進行建構後,Stanford團隊又對車輛進行了詳細的彙總和收集,提供196類不同品牌不同年份不同車型的車輛圖像資料,一共包含有16185張圖像,隻提供标注框資訊。

(4) Oxford Flowers

Oxford團隊建構的花朵資料庫共包含102種類别,每個類别包含了40到258張圖像資料,共有8189張圖像。該資料庫隻提供語義分割圖像 , 不包含其他額外标注資訊。

除了上述四個資料集,相關資料集還有很多,如下表所示,在此不再一一進行細述。

5 競賽

随着人們對細粒度圖像分類的越來越重視,相關賽事也在如火如荼的開展當中。

2011 年,谷歌開始贊助舉辦第一屆FGVC Workshop,之後每兩年舉辦一次,到 2017 年已經舉辦了四屆。由于近年來計算機視覺的快速發展,FGVC 活動影響力也越來越大,自2018年開始由兩年一次改為了一年一次。

FGVC競賽側重于子類别的詳細劃分,每屆賽事都包含了多個主題,涵蓋了動物種類、零售産品、藝術品屬性、木薯葉病、臘葉标本的野牡丹科物種、來自生命科學圖檔的動物物種、蝴蝶和蛾物種、菜肴烹饪以及博物館藝術品等多個事物的細粒度屬性。

除了FGVC以外,Kaggle也舉辦了許多以家具、動物為主題的細粒度圖像分類競賽。

競賽的舉辦在一定程度上促進了資料集的擴充,同時發掘了更多、更有效的細粒度分類算法,為該領域的進一步發展做出了重大貢獻。

6 總結

作為計算機視覺領域一項極具挑戰的研究課題,細粒度圖像分類的發展遠遠沒有達到粗粒度圖像分類的精度,在深度學習日漸繁榮的今天,如何更有效地解決這一問題,也是圖像分類領域的一大突破重點。

繼續閱讀