李溶真 劉巖石 劉貴鎖 季偉
關鍵詞:圖像識別;目標檢測;評價標準
1引言
目前,深度學習領域成為各學科融合熱門,伴隨計算機算力的提升,深度學習進一步發(fā)展,并基于深度學習實現圖像識別,在圖像識別領域取得了重大進步。但大家似乎都邁入了一個誤區(qū):圖像識別相當于計算機視覺或者僅僅是對圖像進行簡單處理。相較于大眾認知,圖像識別不僅僅等同于對圖像進行識別,它是一個寬泛的領域。本文首先探討圖像識別的任務分類,并對圖像識別領域的應用場景進行介紹。算法的研究基于圖像識別的可行性,以及如何判斷圖像識別效果的優(yōu)劣,可以較為清晰地掌握對模型訓練的底層知識脈絡,為以后算法的學習和改進提供思路。本文第4節(jié)主要概括深度學習中圖像識別的可行性以及算法優(yōu)劣性的計算指標。最后,本文總結了目前目標檢測領域的主要模型以及數據集,并基于目前研究現狀對未來圖像識別領域進行展望。
2圖像識別
圖像識別是深度學習領域的主要應用,它的發(fā)展經歷了3個階段:文字識別、數字圖像處理與識別、物體識別。如圖1所示。但只有物體識別屬于高級的計算機視覺范疇。當前圖像識別的3大任務如下。
(1)目標識別:目標分類,定性目標類別,確定目標是什么。
(2)目標檢測:定位目標信息,確定目標是什么以及位置。
(3)目標分割:將背景與前景進行分類,將背景刪除,或將前景去除。
3領域應用場景
圖像識別的應用一般分為通用場景應用和垂直場景應用,其中通用場景一般是作為谷歌、微軟、百度、阿里巴巴在內的科技巨頭搭建的圖像識別平臺,因為它們能夠收集龐大的數據圖片,比如識別商品,識別標簽文字。但是這些功能只能在特定的產品中進行圖像識別,由于特殊行業(yè)的特定數據不易收集,因此只能對能夠掌握的數據進行訓練。
垂直場景的應用近年來發(fā)展突飛猛進,垂直領域是指向特定行業(yè)中的圖像識別領域?;谏疃葘W習的目標檢測技術應用在各大場景中:人臉檢測、行人檢測、遙感影像檢測、醫(yī)學圖像檢測、顯著目標檢測、異常檢測、3D點云檢測、細粒度檢測領域。但仍有可以進步的空間,如在視頻目標檢測、弱目標監(jiān)督檢測、無監(jiān)督檢測、多任務學習等方向。
4目標檢測技術的可行性
一個目標檢測模型的好壞,需要結合目標檢測任務來評價,即分類的準確性以及定位的準確性。性能的評價有多種指標,如精度、特效度、準確率、召回率,對于每個不同的應用場景,模型檢測的好壞由這些指標來確定。
當目標檢測模型識別的圖片中有多個物體時,即使檢測物體分類的精度很高,也并不能用物體分類的評價指標來評價目標檢測的準確性。原因如下。(1)當圖片包含多個目標時,計算機只找了一個檢測框,這個檢測框恰好正確,說明precision為1,但它只找到一個框,所以不能以單一精確度衡量。(2)目標檢測不只要求物體識別正確,還需要精確的位置,如模型識別出某個位置物體是貓,但如果不能準確定位,這個目標檢測模型的實用性能是不滿足要求的。
4.1如何標定目標檢測的正確性
(1)識別分類的正確程度,且大于一定的閾值。
(2)識別物體位置的準確性,即預測框和真實框的重合程度大于某個閾值。
(3)閾值大小不確定,在輸出結果中對比檢測效果,以確定閾值,不同的閾值會影響目標檢測模型效果。
4.2定位準確性分析
定位目標的位置框稱作B-box,在定位準確性的計算上有2個B-box,分別為Ground-truth boundingbox(圖片中真實標記的框)和Predicted bounding box(預測時候檢測出來的框),位置框用坐標表示。識別物體目標定位準確性的評價標準為IoU,可以簡單理解成檢測到的物體框和標注的物體框的重合率。這個比值越大,說明位置檢測效果越好。具體如圖2所不。
4.3識別分類的準確性
我們不能用單一精確度來衡量目標檢測的效果優(yōu)劣,當圖片中只有一個物體,精度值越大說明效果越好,當圖片中存在多個檢測目標時(假設n個),若繼續(xù)使用單一精度評價效果優(yōu)劣,會出現模型檢測到一個物體的精確度為100%,但找全所有物體的精確度卻為1/n。所以我們引入新的目標檢測標準:準確率Precision、召回率Recall[1]。
準確率和查全率至少被2個因素影響,計算機通過標定閾值確定識別目標的可信度,正確識別的標準分為分類準確性和位置準確性。因為我們要確定閾值,再根據閾值輸出結果計算得到準確率和查全率,故至少會有2個變量會影響Precision和Recall,即IoU和可信度閾值。評價分類的準確性首先要定義一個信度閾值,我們認為計算機輸出結果大于這個閾值即為正類,小于這個閾值稱為負類。比如,標定IoU的信度閾值0.7,說明我們只承認IoU >0.7的結果檢測,輸出IoU>0.7的所有檢測結果,之后定義輸出結果中類別識別準確度大于閾值的為正類、小于閾值的為負類。具體如圖3所示。
在正類的結果輸出中又存在預測結果正確的(TP)和錯誤的(FP),在負類預測結果上會存在預測準的(TN代表確實是負類)和預測不準的(FN代表錯誤的識別為負類)。鑒別出TP,FP,TN和FN,計算機在“測試/驗證”數據集中計算目標識別的準確率Precision和召回率Recall。
當目標檢測的查全率增大時,檢測結果的準確率也增高,說明模型的檢測效果好,檢測可信度高。對比不同的模型,如果在相同查全率的基礎上,目標檢測的準確率越高說明效果越好。但我們還需要一個數字直觀表示,所以在該領域內定義一個指標來衡量目標檢測模型的好壞-mAP。mAP的定義首先出現在PASCAL挑戰(zhàn)賽,它成功地將模型的檢測效果量化為數字,便于描述目標模型效果的優(yōu)劣。mAP是mean of Average Precision的縮寫,意思是平均精確度(average precision)的平均(mean)[2]。
4.3.1計算AP
AP的計算基本等同于計算曲線以下的面積,略有不同的是先平滑化曲線(因為召回率和精確度是離散的點,存在震蕩),即將它的精確度替換為該點召回率右邊的最大精確率,這樣就得到一條單調的曲線,具體如圖4所示。最一般化AP計算方法就是求PR曲線下的面積PR-AUC,因為我們得到的點都是離散的點,計算積分是很難的,所以只能通過離散的點去擬合AUC。
4.3.2擬合方法
(1) 11-point Interpolated AP(11點插值法計算AP)。
11點插值法是在2007年提出的VOC數據集的計算方法。我們在平滑化曲線上以0.1為步長,在recall[0,1.0]將其分成11份,然后我們計算11個召回率下的平均精確率,具體如下:
11點擬合法雖然可以很接近PR-AUC,但是上述例子中離散的點只有5個,就代表圖像褶皺最多有5個,我們取11個點來計算面積是相對接近的,但是在實際的目標檢測中召回率的離散數值的數量遠遠大于11,說明就有遠大于11個的曲線震蕩,那么平滑化PR曲線之后如果繼續(xù)使用11點插值法擬合,對于PR-AUC來說,它的面積精確度就不高[3]。
在后來的Pascal VOC比賽中,采用了一種新的方法,使用了所有的數據點。在新方法中,選取m個長度為Recalln -Recall,這樣產生了m個矩形,即m是召回率的數量,其實也是數據集中所有正例的數量。因為召回率就是目前獲得的TP/數據集中的所有正例,所以它的取值就是1/m,2/m,一直到m/m。
5結束語
目標檢測作為圖像識別的主要任務,其主流算法在不斷地改進,其中包括R-CNN,Fast-CNN,YOLO,SSD。常見的目標檢測數據集有Pascal VOC,ILSVRC,MS-COCO,Open Images.ImageNet。目標檢測準確率隨著算法的改進、數據集的豐富,其計算方式也在面向多層次、多任務性發(fā)展。mAP在2010年采用多點擬合方法之后,在多點擬合的基礎上,為了更好地擬合PR-AUC,COCO挑戰(zhàn)賽定義了12種mAP計算方法,如采用不同的IoU閾值、采用計算多個不同類別物體Iou閾值下mAP的平均值,或者是根據目標檢測圖片的大小來計算mAP。雖然目標檢測近年來發(fā)展迅速,但在不同領域的融合上,目標檢測還有許多待改進的地方,如小物體的檢測、多類物體重疊后的檢測,相信目標檢測的精度會隨著基于深度學習下的目標檢測算法的改進而不斷提升。