1. TP TN FP FN
GroundTruth 預測結果
TP(True Positives): 真的正樣本 = 【正樣本 被正確分為 正樣本】
TN(True Negatives): 真的負樣本 = 【負樣本 被正確分為 負樣本】
FP(False Positives): 假的正樣本 = 【負樣本 被錯誤分為 正樣本】
FN(False Negatives):假的負樣本 = 【正樣本 被錯誤分為 負樣本】
2. Precision(精度)和 Recall(召回率)
\(Precision=\frac {TP} {TP+FP} \text{ }\) 即 預測正確的部分
占 預測結果
的比例
\(Recall=\frac {TP} {TP+FN} \text{ }\) 即 預測正確的部分
占 GroundTruth
的比例
3. IoU(Intersection over Union)
4. AP
(1) 找出 預測結果 中 TP(正確的正樣本) 和 FP(誤分為正樣本) 的檢測框
設置IoU的閾值,如IoU=0.5
IoU值大於0.5 預測結果 正確;否則, 預測結果 錯誤,如下圖所示
- \(IoU=\frac {TP} {TP+FP+FN} \gt 0.5\) 預測結果:TP
- \(IoU=\frac {TP} {TP+FP+FN} \lt 0.5\) 預測結果:FP
注意:這里的TP、FP與圖示中的TP、FP在理解上略有不同
(2) 計算 不同置信度閾值 的 Precision、Recall
a. 設置不同的置信度閾值,會得到不同數量的檢測框:
閾值高,得到檢測框數量少;
閾值低,得到檢測框數量多。
b. 對於 步驟a 中不同的置信度閾值得到 檢測框(數量)=TP(數量)+FP(數量)
c. 計算Precision,按照上面步驟(1)中使用IoU計算TP、FP的方法,將步驟b中的檢測框(數量)划分為TP(數量)、FP(數量)
d. 計算Recall,由於TP+FN是GroundTruth(即已知的檢測框的數量),則可以得到:
e. 計算AP,不同置信度閾值會得到多組(Precision,Recall)
假設我們得到了三組(Precision,Recall):
(0.9, 0.2),(0.5, 0.2),(0.7, 0.6),如下圖中所示
AP=上圖中所圍成的面積,即 AP = 0.9 x 0.2 + 0.7 x 0.4 = 0.46
5. mIoU、mAP
IoU和AP是對一個類別所計算的結果,mIoU和mAP是所有類結果的平均值。