码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2017-03-13 17:45:36      阅读:1931      评论:0      收藏:0      [点我收藏+]

标签:position   keyword   code   hid   代码   距离   core   性能   sdn   

摘要:本文主要讲解如何得到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函数得到的图例:
技术分享

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

标签:position   keyword   code   hid   代码   距离   core   性能   sdn   

原文地址:http://blog.csdn.net/hlx371240/article/details/53482752

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!