conf_thres
- Confidence Threshold,置信度閾值。
- 只顯示預測概率超過conf_thres的預測結果。
- 想讓YOLO只標記可能性高的地方,就把這個參數提高。
iou_thres
- Intersect over Union Threshold,交並比閾值。
- IOU值:預測框大小∩真實框大小 / 預測框大小∪真實框大小。(預測框與真實框的交集與並集的取值。)
- iou_thres在detect.py中:
- 越大,則容易將對於同一個物品的不同預測結果 當成 對多個物品的多個預測結果,導致一個物品出現了多個預測結果。
- 越小,則容易將對於多個物品的不同預測結果 當成 對同一個物品的不同預測結果,導致多個物品只出現了一個預測結果。
- 如下面對甜甜圈的預測一般,多個甜甜圈重疊在一起的圖片中:
圖1:iou-thres = 0.65 (將iou閾值設為0.65,檢測出了18個甜甜圈。)
圖2:iou-thres = 0 (設為0,檢測出了6個甜甜圈,並且檢測區域都沒有重復。)
圖3:iou-thres = 0.98
- P
- Precision,精確率
- 對類A來說(下面提到的都是被預測成A的):
- P = 正確數 / 預測總數
- 或 P = 正確數/ 正確數+錯誤數
- 即,預測的東西正確了多少百分比。
- R
- Recall,召回率
- 對類A來說(下面提到的都是被歸為A類的):
- R = 預測正確數 / 真實A類總數。
- 或 R = 預測正確數 / 被預測到的A + 未被預測到的A
- 即,預測的東西找到了多少百分比。
- F1
- F-Measure,F值,P與R的調和平均
- F=1/(λ1P+(1−λ)1R),λ = 0.5時,簡化為F1
- F1 = 2*P*R / (P + R)
- 例:對於一個二分類問題來說:
- 要對動物進行分類,分為貓與非貓兩類。樣本中,貓有350份,非貓有150份。
- 預測出了400份被認為是貓,其中,正確的有300份,錯誤的有100份。則:
- P = 300 / 400 = 0.75
- R = 300 / 350 ≈ 0.86
PR圖
- 橫坐標是R值,縱坐標是P值,曲線表示當召回率為R時,精確率P的大小。
- 例:
-
- 假設測試集圖片數量為一百張,且測試了一百張。
- 當A類的R值設為0.1時,表示以某精確度P2計算,檢測到了A類總數的10%。
- 以此類推,當A類的R值設為1時,表示以某精確度P11計算,檢測到了所有的A類標簽。
- 可以看出,隨R值的升高,A被預測到的數量也會增加,即那些可能性較低的A類也逐漸被預測出來。
- 因此,可以判斷P值是隨着R的升高而降低。
-
- P值如果設為100,即要求被標記出來的區域一定屬於A類,這種概率非常低,所以可能一個A類都識別不出來,進而導致R值為0。
- 而若P值設為0.1,則要求被標記出來的區域只要有百分十的概率屬於A類即可,那么將有很多A類被標記,R值也進一步提高。
- 因此,PR圖左下方的面積越大,則表示模型對該數據集的效果越好。
AP
- Average Precision
- 以某種方式計算AP值來表達PR圖的面積
-
- 下面提到的是PASCAL VOC競賽於2010年前的計算方式,
- 根據我查到的資料,也是YOLOv3的計算方式(目標檢測中常提到的IoU和mAP究竟是什么?)。
- 但我沒有在YOLOv5的github wiki上找到相關資料,也沒有在其它地方找到。
- 使用平均,以R in range(0 : 1 : 0.1)作為IOU,滿足這個R值的最大P值作為Pi,求11個Pi的平均數。
- 這里的R是以0為起點,1為終點,0.1為步長的十一個值,1也算。
- 即上面解釋PR圖時的例子里R與P的關系。
mAP
- mean Average Precision
- 每個類的AP值的平均數。
- 用於表達多類標簽預測的性能,如AP一樣,mAP越高,性能越好。
- mAP@.5
- 當IoU為0.5時的mAP
- mAP@.5 : .95
- 當IoU為range(0.5 : 0.95 : 0.05)時的mAP的平均數。
如何提高mAP
優化數據集:
YOLO官方推薦數據集需求:
每類圖片數量:每類大於1500張圖片
每個類的實例:每類實例(標簽)大於一萬份。
圖像多樣性:確保圖片來自不同環境。對於現實世界物體的識別,推薦使用來自不同時間、不同季節、不同天氣、不同光照度、不同角度、不同來源的圖片。
標簽一致性:所有類中所有實例必須都被標簽標記,不要遺漏。
標簽准確性:標簽能准確標記對象,不要在對象與標記框之間留下縫隙。沒有對象可以不用標記(背景圖片)。
背景圖片:背景圖片是指沒有對象的圖片,用來減少誤報。YOLO推薦0~10%的背景圖片來減少誤報(COCO數據集包含1000張背景圖片,占據總數1%)。
簡單來說:
增加不同角度/光照度的數據集。
增加不同環境的數據集。
增加背景圖片(無目標的圖片)。
增加數據集大小。
確保標簽標定准確。
————————————————
版權聲明:本文為CSDN博主「MWHLS」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/asd123pwj/article/details/117171868