(轉)YOLOv5的置信度閥值與iou閥值



conf_thres

  1.   Confidence Threshold,置信度閾值。
  2.   只顯示預測概率超過conf_thres的預測結果。
  3.   想讓YOLO只標記可能性高的地方,就把這個參數提高。

iou_thres

  1. Intersect over Union Threshold,交並比閾值。
  2. IOU值:預測框大小∩真實框大小 / 預測框大小∪真實框大小。(預測框與真實框的交集與並集的取值。)
  3. 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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM