3

検出アルゴリズムを使用して、100 個の画像からオブジェクトを検出しました。各画像には正確に 2 つの真実が含まれています。つまり、各画像には 2 つのオブジェクトが含まれています。次に、ノイズを追加して、最適なものを見つけました。検出結果とグラウンド トゥルース intArea の交差領域、および和集合領域 unionArea = rectA + rectB - intArea を計算しました。次に、これらの比率を使用して、次のように ROC 曲線を描くことを計画しました。

init TP, FP as 100X1 array.
for threshold = 0..1, step = 0.01
    curIdx = 1;
    for each ratio(i), i = 1..100
        if ratio(i) > threshold then
           TP(curIdx) = TP(curIdx) + 1;
        else
           FP(curIdx) = FP(curIdx) + 1;
     end
end

次に、TP/100 を Y 軸の値として使用し、TP/(TP+FP) を X 軸の値として使用して、ROC 曲線を描きました。しかし、結果は期待どおりではありません: (私は新しいユーザーなので、今は画像を投稿できません --- ) jpg

それで、誰かが私を助けて、どこが間違っていたのか教えてくれませんか? 皆さん、ありがとうございました!

4

2 に答える 2

1

VLFeatは、Matlab 環境で ROC 曲線を描画するための非常に簡単な方法を実装しています。このリンクを確認してください: http://www.vlfeat.org/overview/plots-rank.html

于 2013-01-02T07:44:43.407 に答える