目標檢測演算法map 目標檢測的指標AP與mAP詳解

2021-10-14 13:14:58 字數 1565 閱讀 5054

上一章《機器學習回歸模型評價指標-mae, mse, mape及**實現》主要講述了mae, mse, mape的概念以及**實現,本章講述目標檢測的指標ap與map。

ap和map是影象分類任務中的評價方法.

舉例說明

首先用訓練好的模型得到所有測試樣本的confidence score,每一類(如car)的confidence score儲存到乙個檔案中(如comp1_cls_test_car.txt)。假設共有20個測試樣本,每個的id,confidence score和ground truth label如下:​​

接下來對confidence score排序,得到:

ground truth label通過**的bbox與ground truth的iou確定為正樣本或負樣本。我們得到top-5的結果,前score最高的前5個樣本,**label為1,即:

在這個例子中,true positives就是指第4和第2張,false positives就是指第13,19,6張。是相對於方框內的元素而言,在這個例子中,confidence score排在top-5之外的元素為false negatives和true negatives,即:

其中,false negatives(fn)是指第9,16,7,20張,true negatives(tn)是指1,18,5,15,10,17,12,14,8,11,3張。那麼,這個例子中precision=2/5=40%,意思是對於car這一類別,我們選定了5個樣本,其中正確的有2個,即準確率為40%;recall=2/6=30%,意思是在所有測試樣本中,共有6個car,但是因為我們只召回了2個,所以召回率為30%

實際多類別分類任務中,我們通常不滿足只通過top-5來衡量乙個模型的好壞,而是需要知道從top-1到top-n(n是所有測試樣本個數,本文中為20)對應的precision和recall。

假設這n個樣本中有m個正例,那麼我們會得到m個recall值(1/m, 2/m, ..., m/m),對於每個recall值r,我們可以計算出對應(r' >= r)的最大precision,然後對這m個precision值取平均即得到最後的ap值。計算方法如下:

ap衡量的是模型在每個類別上的好壞,計算每個分類的ap,求和再平均,得到的就是map。

此例中採用top-5評估,也可採用其他評估,如ap50,即當**框與真實框的iou值大於這個閾值時,該**框才被認定為真陽性(true positive, tp),反之就是假陽性(false positive,fp)。

目標檢測演算法

基於深度學習的回歸方法 yolo ssd densebox 傳統目標檢測流程 rcnn解決的就是預先找出圖中目標可能出現的位置,即候選區域,再對這些區域進行識別分類。r cnn 具體步驟如下 步驟二 對該模型做fine tuning 微調 步驟三 特徵提取 步驟四 訓練乙個svm分類器來判斷這個候選...

目標檢測演算法對比 目標檢測演算法工程落地

覆盤一下在實現檢測演算法落地過程中所經歷的乙個流程 列出幾點重點說明一下 1 網路的選取和調參是關鍵 網路選取 考慮到實際情況的實時性 硬體效能,需考慮參數量較小的檢測網路,更傾向於單階段式的網路 基於yolossd等的多個變體網路 其次基礎特徵提取網路backbone的替換,傳統都是vgg的特徵提...

目標檢測演算法歷史

最近在做一些目標檢測相關的東西,目標檢測是計算機視覺裡面最重要的課題之一了,很多場合檢測和識別都是很重要的,比如現在很火的無人駕駛,就非常依賴目標檢測和識別,需要非常高的檢測精度和定位精度。目標檢測從很早就開始有了。傳統演算法的典型代表有 haar特徵 adaboost演算法 hog特徵 svm演算...