美文网首页
人脸识别---闭集测试评价指标CMC曲线(rank)

人脸识别---闭集测试评价指标CMC曲线(rank)

作者: 彩虹直至黑白_Joon | 来源:发表于2020-02-29 10:55 被阅读0次

    摘要:本文主要讲解如何得到CMC曲线。
    CMC曲线就是算一种top-k的击中概率,主要用闭集测试。比如有n个注册样本,现在想测试性能,测试样本依次和n个注册样本算取一个距离,然后排序,看类类样本位于前top-k,最后统计得到CMC曲线。计算CMC曲线的函数代码如下:

    function accuracy = calrank(distance,rankvalue,info)
    for k = 1:length(rankvalue)
        count = 0;
        for i = 1:size(distance,1)
            rankinfo = distance(:,i);
            %[score,position] = sort(rankinfo,'ascend');
            [score,position] = sort(rankinfo,info);
            for j = 1:rankvalue(k);
                if (position(j)==i)
                    count = count + 1;
                    break;
                end
            end
            accuracy(k) = count/size(distance,1);
        end
    end
    
    

    distance代表全比对的分数,那么对角线是类类样本的比对分数。info为排列顺序,升序为’ascend’,降序为’descend’。 rankvalue是我们需要选取的top-k的值,可以赋值为rankvalue=[1,2,3,4,5,…,k];
    下面由calrank函数得到的图例:


    Rank Score

    相关文章

      网友评论

          本文标题:人脸识别---闭集测试评价指标CMC曲线(rank)

          本文链接:https://www.haomeiwen.com/subject/haluoctx.html