1. 程式人生 > >顯著性目標檢測模型評價指標(二)——PR曲線

顯著性目標檢測模型評價指標(二)——PR曲線

顯著性目標檢測模型評價指標 之 PR曲線原理與實現程式碼

目錄

一、PR曲線原理

在顯著目標提取中(關於視覺顯著性的簡要介紹點此處連結),PR曲線是用來評估模型效能的重要指標之一,PR曲線中的P(Precision)和R(Recall)分佈意為“查準率”和“查全率”。以“查準率”為縱座標,“查全率”為橫座標所做的曲線即為PR曲線(如下圖,來自南京大學周志華教授主編的《機器學習》第二章,p31)。
PR曲線示意圖

計算方法

我們將模型所提的顯著性目標圖譜S進行二值化得到M,然後通過下面公式逐畫素對比M與Ground-truth來計算Precision值與Recall值[1]:
這裡寫圖片描述


如下圖所示,模型輸出的顯著性圖片與Ground-truth圖在一般情況下都不會完全相同,即我們模型所提取出的顯著性圖mask出了正確被分類的目標(TP)與背景(TN)外,會將一部分本應該是背景的區域劃到目標區域(FP),將一部分本應該是目標的區域劃為背景區域(FN)。
PR曲線示意圖
通過統計我們獲得TP、TN、FP、FN的數目,然後利用下式來計算Precision值與Recall值。
這裡寫圖片描述

閾值選取

將輸出圖片S進行二值化時,閾值選擇為從0到255,每取一個閾值,即可對所有輸出圖S算得一組相對應的Precision值與Recall值。最後將所有影象在該閾值下的Precision值與Recall值分別求平均,最後將會得到256對P,R值,以Recall為橫座標,Precision為縱座標繪製曲線圖即可得到precision-recall (PR)曲線。

二、Matlab程式碼

程式碼塊語法遵循標準markdown程式碼,例如:

function PRcurveHanle
%本程式的功能是對顯著性特徵提取的結果繪製PR曲線。
%by [email protected]
clc
clear
close all
%讀取資料庫
imnames=dir(path_output);  
imnames2=dir(path_target);  
num=length(imnames);
Precision=zeros(256,num);
Recall=zeros(256,num);
TP=zeros(256,num);
FP=zeros
(256,num); FN=zeros(256,num); MAES=zeros(num,1); for j=1:num Target=imread(imnames2(j).name);%讀圖 Output=imread(imnames(j).name); target=rgb2gray(Target); %二值化ground-truth target0=(target)>0; for i=0:255 %以i為閾值二值化Output output0=(Output)>i; output1=output0*2; TFNP=zeros(256,256); x=1; TFNP(:,:)=output1(:,:,x)-target0; TP(i+1,j)=length(find(TFNP==1)); FP(i+1,j)=length(find(TFNP==2)); FN(i+1,j)=length(find(TFNP==-1)); Precision(i+1,j)=TP(i+1,j)/(TP(i+1,j)+FP(i+1,j)); Recall(i+1,j)=TP(i+1,j)/(TP(i+1,j)+FN(i+1,j)); end j end P=mean(Precision,2); R=mean(Recall,2); figure,plot(R,P)

著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。

參考文獻

[1]: A. Borji, M.-M. Cheng, H. Jiang, and J. Li. Salient object detection: A benchmark. IEEE TIP, 24(12):5706–5722, 2015.

相關推薦

顯著目標檢測模型評價指標——PR曲線

顯著性目標檢測模型評價指標 之 PR曲線原理與實現程式碼 目錄 一、PR曲線原理 在顯著目標提取中(關於視覺顯著性的簡要介紹點此處連結),PR曲線是用來評估模型效能的重要指標之一,PR曲線中的P(Precision)和R(Recall)分

顯著目標檢測模型評價指標——平均絕對誤差:Mean Absolute Error(MAE)

顯著性目標檢測模型評價指標 之 平均絕對誤差(MAE)原理與實現程式碼 目錄 一、顯著性目標檢測簡介 顯著性目標(Salient Object): 當我們在看一張圖片時,注意力首先會落在我們所感興趣的物體部分。比如我們看到一張畫有羊

目標檢測常見評價指標

一:準確率 (Accuracy) 、錯誤率 (Error rate) 二:混淆矩陣 (Confusion Matrix) 三:召回率(Recall)、精確率(Precision) 四: P-R曲線、平均精度(Average-Precision,AP)、F指標 五:

caffe目標檢測模型訓練全過程python載入caffemodel分類

繼上篇 caffe目標檢測模型訓練全過程(一)指令碼、資料準備與製作 之後,我們訓練出來了其模型,如圖所示: models2_iter_70000.caffemodel 就是需要呼叫的模型,70

caffe目標檢測模型訓練全過程目標檢測第一步

遍歷整圖查詢蝴蝶位置 2018/04/22 訓練模型對於識別背景和蝴蝶有比較好的效果,基本對不會識別錯誤,接下來,將通過整圖遍歷的原始而又野蠻的方式對一張原始圖片進行處理,進而查詢到蝴蝶的具體位置。具體思路如下圖。對原圖進行縮放成理想大小,例如, 最小邊長縮放為227*6畫素,最大邊長等比

R語言︱機器學習模型評價指標+模型出錯的四大原因及如何糾錯

筆者寄語:機器學習中交叉驗證的方式是主要的模型評價方法,交叉驗證中用到了哪些指標呢?交叉驗證將資料分為訓練資料集、測試資料集,然後通過訓練資料集進行訓練,通過測試資料集進行測試,驗證集進行驗證。模型預測

機器學習的評價指標-SSE、MSE、RMSE、MAE、R-Squared

迴歸評價指標SSE、MSE、RMSE、MAE、R-Squared 前言 分類問題的評價指標上一篇文章已講述,那麼迴歸演算法的評價指標就是SSE、MSE,RMSE,MAE、R-Squared。下面一一介紹: 一、SSE(和方差) 該統計引數計算的是擬合數據和原始資料對應

目標檢測光流法:opencv下的光流L-K演算法

後續將簡單介紹光流法的一些簡單實現包,包括opencv下的光流演算法與matlab下的光流演算法。該節主要介紹opencv下的光流實現。 Opencv的光流實現由好幾個方法可以(也就是說有好幾個函式可以用),每個函式當然也對應著不同的原理,那麼它的效果以及演算

目標檢測模型評估指標——mAP計算的討論

對於使用機器學習解決的大多數常見問題,通常有多種可用的模型。每個模型都有自己的獨特之處,並隨因素變化而表現不同。 每個模型在“驗證/測試”資料集上來評估效能,效能衡量使用各種統計量如準確度(accuracy),精度(precision),召回率(recall)等。選擇的統計量通常針對特定應用場景

顯著目標檢測】CVPR2018 顯著檢測領域論文整理解讀(Salient Object Detection)

前言:CVPR2018會議論文集已經公示(CVPR2018全部論文集連結),本文對顯著性目標檢測領域的6篇進行了整理,將這幾篇論文的主體思想彙總起來,供大家一起學習。 一、論文列表: 1.《Flow Guided Recurrent Neural Enc

目標檢測效能評價指標mAP、Precision、Recall、IoU

一、mAP 1. TP,FP,FN,TN (1)TP(True positives):正確劃分正例個數;正->正; (2)FP(False positives):錯誤劃分正例個數;負->正; (3)FN(False negatives):錯誤劃分負例個數;

珍藏 | 基於深度學習的目標檢測全面梳理總結

關於作者:@李家丞 同濟大學數學系本科在讀,現為格靈深瞳演算法部實習生。 作者個人主頁:李家丞 | 個人主頁 | 關於我 導言:目標檢測的任務表述   如何從影象中解析出可供計算機理解的資訊,是機器視覺的中心問題。深度學習模型由於其強大的表示能力,加之資料量的積累和

珍藏 | 基於深度學習的目標檢測全面梳理總結

關於作者:@李家丞 同濟大學數學系本科在讀,現為格靈深瞳演算法部實習生。 作者個人主頁:李家丞|個人主頁|關於我 導言:目標檢測的任務表述   如何從影象中解析出可供計算機理解的資訊,是機器視覺的中心問題。深度學習模型由於其強大的表示能力,加之資料量的積累和計算力的

目標檢測之網路篇2【STN-空間變換網路】

1. STN是什麼 STN:Spatial Transformer Networks,即空間變換網路,是Google旗下 DeepMind 公司的研究成果。該論文提出空間變換網路STN,分為引數預測、座標對映、畫素採集三大部分,可以插入到現有的CNN模型中。通

目標檢測之網路篇3【Faster R-CNN】

前言 1.有關VGG16結構,參見:VGG16圖形化描述 2.本週目標是看三篇網路類,讀到第三篇Faster R-CNN的時候我發現需要先弄懂R-CNN以及Fast R-CNN。引用@v_JULY_v的文章的總結: R-CNN 1.在影象中確定約1000-200

深度學習目標檢測(object detection)系列 Faster R-CNN

Faster R-CNN簡介 RBG團隊在2015年,與Fast R-CNN同年推出了Faster R-CNN,我們先從頭回顧下Object Detection任務中各個網路的發展,首先R-CNN用分類+bounding box解決了目標檢測問題,SP

yolo 目標檢測演算法個人總結yolov1

yolo 目標檢測演算法個人總結 目前yolo目標檢測有兩個版本,分別為v1和v2。因工作需要用yolo演算法檢測人物,所以這段時間重點看了這兩篇論文,並實現了對應的tensorflow程式碼。這裡記錄下在論文閱讀過程中的一些細節資訊,留給自己,同時也希望各位能指出本人

4.4.2分類模型評判指標

簡介混淆矩陣是ROC曲線繪製的基礎,同時它也是衡量分型別模型準確度中最基本,最直觀,計算最簡單的方法。一句話解釋版本:混淆矩陣就是分別統計分類模型歸錯類,歸對類的觀測值個數,然後把結果放在一個表裡展示出來。這個表就是混淆矩陣。資料分析與挖掘體系位置混淆矩陣是評判模型結果的指標

目標檢測光流法:opencv下光流Farneback法

上節說到過的calcOpticalFlowPyrLK光流演算法,可以看到它實際上是一種稀疏特徵點的光流演算法,也就是說我們先找到那些(特徵)點需要進行處理,然後再處理,該節介紹下一個全域性性的密集光流演算法,也就是對每一個點都進行光流計算,函式為calcOpti

4.4.2分類模型評判指標

簡介 KS曲線是用來衡量分型別模型準確度的工具。KS曲線與ROC曲線非常的類似。其指標的計算方法與混淆矩陣、ROC基本一致。它只是用另一種方式呈現分類模型的準確性。KS值是KS圖中兩條線之間最大的距離,其能反映出分類器的劃分能力。 一句話概括版本: KS曲線是兩條線,其