目錄
精確率(Precision)和召回率(Recall)
F1分數(F1 Score)
IoU(Intersection over Union)
P-R曲線(Precision-Recall Curve)和 AP
mAP(mean Average Precision)
目標檢測是計算機視覺領域中的一個重要任務,其目標是在圖像或視頻中識別出物體的位置和類別。為了評估目標檢測算法的性能,需要使用一系列指標來量化模型的準確性、召回率、精確率以及對不同類別的處理能力。本文將詳細介紹常見的目標檢測性能指標,包括精確率、召回率、F1分數、IoU、AP、mAP、P-R曲線等,同時提供相關公式和案例。
精確率(Precision)和召回率(Recall)
精確率和召回率是評估目標檢測模型性能的重要指標,它們通常在二分類任務中使用。在目標檢測中,精確率表示模型正確識別出的目標數與所有被模型預測為目標的框的數量之間的比例。召回率表示模型正確識別出的目標數與總目標數之間的比例。
?
公式如下:
準確率(Accuracy):Acc?= ( TP + TN ) / ( P +N )
精確率( precision ):TP / ( TP+FP ) = TP / P ?
召回率(recall)):TP / (TP + FN ) = TP / T
案例: 假設我們有一個目標檢測模型在一組圖像上進行測試,其中涉及10個目標物體。模型識別出了8個目標,其中6個是真實目標(真陽性),2個是錯誤識別的(假陽性),而實際上還有2個目標未被識別(假陰性)。那么,精確率為6 / (6 + 2) = 0.75,召回率為6 / (6 + 2) = 0.75。
F1分數(F1 Score)
F1分數是精確率和召回率的調和平均,用于綜合考慮模型的準確率和召回率。F1分數對于處理不平衡數據集或需要權衡精確率和召回率的情況非常有用。
公式如下:
?
案例: 假設一個目標檢測模型的精確率為0.8,召回率為0.7。那么,F1分數為2 * (0.8 * 0.7) / (0.8 + 0.7) = 0.7619。
IoU(Intersection over Union)
IoU是衡量預測邊界框和真實邊界框之間重疊程度的指標,常用于評估目標檢測框的質量。IoU通過計算預測框和真實框的交集面積除以它們的并集面積來衡量。
公式如下:
通常,如果IoU大于某個閾值(例如0.5),則將預測框視為正確預測。
案例: 考慮一個目標檢測任務,真實框的位置為[20, 30, 100, 150],預測框的位置為[25, 35, 95, 145]。交集面積為(95 - 25) * (145 - 35) = 6000,真實框面積為(100 - 20) * (150 - 30) = 9000,預測框面積為(95 - 25) * (145 - 35) = 6000。并集面積為9000 + 6000 - 6000 = 9000。因此,IoU為6000 / 9000 = 0.6667。
P-R曲線(Precision-Recall Curve)和 AP
PR 曲線是用于衡量模型在不同召回率下的準確性的一種圖形化表示方式。在目標檢測中,召回率是指正確檢測出的正樣本數量與所有實際正樣本數量的比率,而精確率是指正確檢測出的正樣本數量與所有被模型預測為正樣本的樣本數量的比率。
用一個簡單的例子來演示平均精度(AP)的計算。假設數據集中總共有5個蘋果。我們收集模型為蘋果作的所有預測,并根據預測的置信水平(從最高到最低)對其進行排名。第二列表示預測是否正確。如果它與ground truth匹配并且loU≥0.5,則是正確的。
?
表中,Rank一列表示框按置信度由高到低排列后的序號,correct表示該框是否正確,Precision表示計算出的精確率,Recall表示計算出的召回率。
精確率和召回率的計算是一個不斷累計的過程,而不是每個框獨立的。
例如:
在第一個框時,精確率 = 1/1 =1.0,召回率 =1/5 = 0.2;
在第二個框時,精確率 = 2/2 = 1.0,召回率 = 2/5 = 0.4;
在第三個框時,精確率 = 2/3 = 0.67,召回率 = 2/5 = 0.4;
……
這時,我們根據精確率和召回率,就能繪制出PR曲線:
?
AP是PR曲線下的面積,會設定采樣點,一般在橫軸0~1范圍內平均分為10或者100段,最后采樣的值相加除以采樣點數。當然還有別的方法。
mAP(mean Average Precision)
mAP是所有類別AP的平均值,通常用于衡量多類別目標檢測任務的整體性能。它對模型在各個類別上的性能進行綜合評估,能夠準確反映模型在不同類別上的表現。
案例: 假設我們有一個多類別目標檢測模型,對于每個類別計算得到的AP如下:
類別 | AP |
---|---|
狗 | 0.85 |
貓 | 0.75 |
車輛 | 0.90 |
行人 | 0.70 |
則mAP為(0.85 + 0.75 + 0.90 + 0.70) / 4 = 0.80。
目標檢測性能指標在評估模型在不同數據集和任務上的性能時起著重要作用。精確率、召回率、F1分數、IoU、AP、mAP以及P-R曲線等指標能夠綜合考慮模型在不同方面的表現,幫助我們更好地理解模型的優勢和局限性。在實際應用中,根據任務的特點和需求,選擇適合的指標來評估模型的性能是至關重要的。