SAR變化檢測的效能指標(kappa係數)——簡化版
原來部落格中寫過比較複雜的一種計算kappa係數的方法,具體的細節可以看:http://blog.csdn.net/wyl1813240346/article/details/56843409。在這裡寫一下比較簡單的計算kappa係數的方法,並給出計算的程式碼。
對於變化檢測來說是一個二分類問題(變化類和非變化類),我們假設影象的總畫素為N,參考影象中未改變的畫素數量為Nu,改變的畫素的數量為Nc。於是我們將參考影象(ground truth)與用演算法產生的變化影象進行逐畫素比較。以這種方式:
- 若該畫素在參考影象中為變化的類別,而使用自己演算法得到變化影象中的類別為未變化類別,統計這樣的畫素個數,假設統計的數目總數為FN(有時候也用MA表示,代表漏檢數目);
- 若該畫素在參考影象中為未變化的類別,但是使用自己演算法得到變化影象中的類別為變化類別,統計這樣的畫素個數,假設統計的數目總數為FP(有時候也用FA表示,代表虛警數目);
- 若該畫素在參考影象中為變化的類別,同時使用自己演算法得到變化影象中的類別同樣為變化類別,統計這樣的畫素個數,假設統計的數目總數為TP;
- 若該畫素在參考影象中為未變化的類別,同樣使用自己演算法得到變化影象中的類別為未變化類別,統計這樣的畫素個數,假設統計的數目總數為TN。
於是四者的關係為:
為了進一步評估結果,總誤差(OE)用作顯示總體效能的標準。 其定義如等式所示:
但是使用總誤差OE來衡量整體的效能不是很精確。實際上,在分類域中,經常使用Kappa係數作為衡量指標。Kappa的值越高,結果越好。 Kappa係數可以由下式計算:
其中,
KC的值通常在0到1的範圍內。從式中可以看出KC取決於TP、TN、FN、FP四個相關的值,而OE僅取決於TP和TN總和的值。因此,KC更詳細的涉及了分類資訊,是一個更加精確的係數。
計算kappa係數的程式碼為:
function [TN,TP,FN,FP,OE,KC]=Kappa(refImage,testImage)
% refImage:代表參考影象(即ground truth)
% testImage:代表變化影象
%-------------------------------------------------------------------------
if isempty(refImage)
error('!!!Not exist reference map');
end
%將影象轉化為列向量
RI=refImage(:);TI=testImage(:);
[m,n]=size(testImage);
%計算參考影象與測試影象不相同的畫素點的個數
TN = find(RI==0&TI==0);%參考影象為未變化畫素,檢測的結果也為未變化畫素,即真反例
TP = find(RI~=0&TI~=0);%參考影象為變化畫素,檢測的結果也為變化畫素,即真正例
FP = find(RI==0&TI~=0);%參考影象為未變化畫素,檢測的結果為變化畫素,即假正例
FN = find(RI~=0&TI==0);%參考影象為變化畫素,檢測結果為未變化畫素,即假反例
TN = numel(TN);TP = numel(TP);FP = numel(FP);FN = numel(FN);
Nc = FN + TP;Nu = FP + TN;
OE = FP + FN;
PRA = (TP+TN)/(m*n);
PRE = ((TP+FP)*Nc+(FN+TN)*Nu)/(m*n)^2;
%計算相同的比率KC
KC = (PRA-PRE)/(1-PRE);
參考文獻:
Unsupervised change detection in SAR images based on locally fitting model and semi-EM algorithm.
有什麼不對的地方歡迎指正,互相學習。
相關推薦
SAR變化檢測的效能指標(kappa係數)——簡化版
原來部落格中寫過比較複雜的一種計算kappa係數的方法,具體的細節可以看:http://blog.csdn.net/wyl1813240346/article/details/56843409。在這裡寫一下比較簡單的計算kappa係數的方法,並給出計算的程式碼。
效能指標(模型評估)之ROC與AUC
為什麼ROC 在前面已經介紹了mAP效能指標,用於評估模型的效能(查全&查準雙高)了。這裡為什麼還需要介紹ROC呢?他是何方妖孽? 通過前面的P-R曲線可以看出來,選取的top-N隨著N的不同,模型對查全和差準的重視程度各有不同,比如N較小時更看重“
效能指標(模型評估)之mAP
為什麼效能指標 用於評價模型的好壞,當然使用不同的效能指標對模型進行評價往往會有不同的結果,也就是說模型的好壞是“相對”的,什麼樣的模型好的,不僅取決於演算法和資料,還決定於任務需求。因此,選取一個合理的模型評價指標是非常有必要的。 錯誤率 &
機器學習效能指標(ROC、AUC、)
混淆矩陣 TP(真正樣本數): 預測是正樣本(positive),預測正確(ture)的個數,即實際是正樣本預測成正樣本的樣本數 FN(假負樣本數) TN(真負樣本數) FP(假正樣本數) ROC 橫軸:FPR(負正樣本率)=FP/(FP+TN) 即,預測錯的原本負樣本佔總體
伺服器效能指標(二)——CPU利用率分析及問題排查
平常的工作中,在衡量伺服器的效能時,經常會涉及到幾個指標,load、cpu、mem、qps、rt等。每個指標都有其獨特的意義,很多時候在線上出現問題時,往往會伴隨著某些指標的異常。大部分情況下,在問題發生之前,某些指標就會提前有異常顯示。 在上一篇文章中,我們介紹了一個
效能測試各效能指標(效能測試面試必問)
一.系統吞度量要素: 一個系統的吞吐量(承壓能力)與request對CPU的消耗、外部介面、IO等等緊密關聯。單個reqeust 對CPU消耗越高,外部系統介面、IO影響速度越慢,系統吞吐能力越低,反之越高。系統吞吐量幾個重要引數:QPS(TPS)、併發數、響應時間
伺服器效能指標(一)——負載(Load)分析及問題排查
平常的工作中,在衡量伺服器的效能時,經常會涉及到幾個指標,load、cpu、mem、qps、rt等。每個指標都有其獨特的意義,很多時候在線上出現問題時,往往會伴隨著某些指標的異常。大部分情況下,在問題發生之前,某些指標就會提前有異常顯示。對於這些指標的理解和檢視、異常解決等,
【轉載】C++ 智慧指標(shared_ptr/weak_ptr)原始碼分析
發現一篇對C++11智慧指標分析很透徹的文章,特轉載備忘! 以下轉載自:https://blog.csdn.net/ithiker/article/details/51532484?utm_source=blogxgwz1 C++11目前已經引入了unique_ptr, shared_pt
Unity NavMesh尋路檢測的bug(或者特性),爬坡卡住問題。(角色高度和網格高度不一致造成)
Unity專案,由於人物移動時一般用搖桿或者方向鍵控制, 需要有八方向方式控制朝向, 所以沒有用 NavMesh Agent, 而是自己控制人物方向移動,然後貼合地面。 用了NavMesh.CalculatePath只是用於目標點的尋路, 尋找出路經後自己計算實現移動。
C程式設計--指標(swap函式)
swap()函式 方法一:指標法 實參:&a 形參:*x #include<stdio.h> void MySwap(int *x,int *y); int main(){ int a=5,b=9; printf("交換前:a=%d,b=
初夏小談:野指標(隱形殺手):幹翻了多少英雄漢(乾貨!!!)
前言: 如果學習了C語言,沒有好好研究記憶體管理的話,恐怕C語言還是很模糊吧,當我跟著學校老師的步伐學完C語言之後,我可以說是和小白沒什麼兩樣。不是說老師教的不好,只是C語言真的太經典了。如果對它沒有精心的去好好研究,那真的入門都不算。當我第一次學完C語言時,感覺腦子很亂,傻傻地連指標
(轉載)準確率(accuracy),精確率(Precision),召回率(Recall)和綜合評價指標(F1-Measure )-絕對讓你完全搞懂這些概念
自然語言處理(ML),機器學習(NLP),資訊檢索(IR)等領域,評估(evaluation)是一個必要的工作,而其評價指標往往有如下幾點:準確率(accuracy),精確率(Precision),召回率(Recall)和F1-Measure。 本文將簡單介紹其中幾個概念。中文中這幾個評價指標翻譯各有不同,
SQL效能優化(不斷總結)
1.查詢的模糊匹配 儘量避免在一個複雜查詢裡面使用 LIKE '%parm1%'—— 紅色標識位置的百分號會導致相關列的索引無法使用,最好不要用. 解決辦法: 其實只需要對該指令碼略做改進,查詢速度便會提高近百倍。改進方法如下: &nbs
Android ConstraintLayout完全解析和效能分析(章節二)
這篇文章是基於Android ConstraintLayout完全解析和效能分析(章節一)基礎上對屬性的深入詳解,如果之前對Android ConstraintLayout不瞭解或者不會使用的,請檢視章節一的內容。若是有一定的瞭解,想深入對ConstraintLayout屬性的瞭解及效能的分
Android ConstraintLayout完全解析和效能分析(章節一)
一、說在前面的話 在這裡預祝大家2019年:豬事順利,青春永豬,豬圓玉潤,豬籠入水—八面來財 對於這個已經出現了兩年的新佈局ConstraintLayout,之前只是作為知識瞭解並未在真正的使用它,今天讓我們來從幾個方面解讀ConstraintLayout並對它的效能做細緻化分析。
轉:讓opencv輸出人臉檢測的得分(置信率)
讓opencv輸出人臉檢測的得分(置信率) 最近專案略多,其中一個需要找出一些和臉比較像但是不是臉的負樣本,想用opencv的人臉檢測器檢測到的錯誤臉作為這樣的負樣本。 但是國內(包括國外)居然幾乎沒有相關的資料如何輸出detectMultiScale()
實現智慧指標(Smart Pointer)
#ifndef SMARTPTR_H_ #define SMARTPTR_H_ template<typename T> struct SmartPtr { explicit Smart
準確率(Precision)、召回率(Recall)以及綜合評價指標(F1-Measure )
在資訊檢索和自然語言處理中經常會使用這些引數,下面簡單介紹如下: 準確率與召回率(Precision & Recall) 我們先看下面這張圖來加深對概念的理解,然後再具體分析。其中,用P代表Precision,R代表Recall 一般來說,Pre
Yolo目標檢測和識別(第二課)
引用地址: 承接上一章 由於上一章修改Makefile中的OPENCV=1重新make卻一直報錯,因此一直在網上查詢解決方案。最後重灌了opencv,並且嘗試了這個網站給出的解決方案,依然不能重新得到darknet的檔案(因為只有得到了這個檔案才算是make成
C++拾趣——STL容器的插入、刪除、遍歷和查詢操作效能對比(ubuntu g++)——遍歷和查詢
遍歷 從前往後 元素個數>15000 traversal_begin_16384_highest 表現最差的是unordered_multiset。其在遍歷到1000個左右的元素時發生較高的延時操作,然後又穩定下來。 除了