• 大小: 5.92MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-09-24
  • 语言: 其他
  • 标签: MTCNN  FDDB  ROC  

资源简介

复现MTCNN在FDDB上的性能测试,绘制DiscROC和ContROC,已经将官网上的FDDB的makefile等环境设置好了,只需要在官网上下载FDDB源图片即可按照文档说明的顺序进行测试。

资源截图

代码片段和文件信息

#coding:utf-8
#!/usr/bin/env python2
# -*- coding: utf-8 -*-
“““
Created on Tue Aug 14 15:13:59 2018

@author: kepa
“““

import numpy as np
import matplotlib.pyplot as plt
#from sklearn.metrics import roc_curve auc  ###计算roc和auc
import align.align_dataset_mtcnn
#import align.detect_face

def main(args):
    align_dataset_mtcnn()
    
“““
def drawRoc(weightstestLabelstestSet):
    testSet= np.mat(testSet)   #list转换成矩阵类型
    m n = np.shape(testSet)   #训练集的行数和特征个数
    FPR = np.zeros((1011))    #1-specificity
    TPR = np.zeros((1011))    #sensitivity
    probability = np.zeros((m1))#每个样本的概率
    for j in range(101):      #求Roc图像的每一个点
        TP = 0  # true positive
        FN = 0  # ture negative
        FP = 0  # false positive
        TN = 0  # true negative
        threshold = float(j / 100.0)
        for i in range(m):
            dataSet = testSet[i]
            dataSet = dataSet.transpose()
            probability[i] = np.sigmoid(np.dot(weightsdataSet))#求每个样本的概率
            #print(‘pro = ‘probability[i])
            if probability[i] > threshold:
                value = 1
            else:
                value = 0
                
            ““““““
            predict_issame = np.less(dist threshold)
            tp = np.sum(np.logical_and(predict_issame actual_issame))
            fp = np.sum(np.logical_and(predict_issame np.logical_not(actual_issame)))
            tn = np.sum(np.logical_and(np.logical_not(predict_issame) np.logical_not(actual_issame)))
            fn = np.sum(np.logical_and(np.logical_not(predict_issame) actual_issame))
            ““““““
            
            if abs(testLabels[i]-1.0)<1e-7 and abs(value-1.0)<1e-7:#true positive
                TP = TP + 1
            elif abs(testLabels[i]-1.0)<1e-7 and abs(value-0.0)<1e-7:#false positive
                FN = FN + 1
            elif abs(testLabels[i]-0.0)<1e-7 and abs(value-0.0)<1e-7:#true negative
                TN = TN + 1
            elif abs(testLabels[i]-0.0)<1e-7 and abs(value-1.0)<1e-7:#false positive
                FP = FP + 1
        TPR[j] = float(TP/(TP+FN))
        FPR[j] = float(FP/(TN+FP))
    # print(TPR)
    # print(FPR)
    roc_auc = auc(FPR TPR)
    print(‘Auc=‘roc_auc)
    plt.plot([0 1] [0 1] ‘--‘ color=(0  0 1))#画对角线
    plt.plot([0 1] [0 0] ‘-‘ color=(0 0 1))#画x轴
    plt.plot([1 1] [0 1] ‘-‘ color=(0 0 1))#画边界
    plt.plot(FPR TPR “b“ linewidth=1)#在当前绘图对象绘图,蓝线
    plt.xlabel(‘False Positive Rate‘)
    plt.ylabel(‘True Positive Rate‘)
    plt.title(‘Receiver operating characteristic curve‘)
    plt.show()#显示图像
“““

“““
import numpy as np
from sklearn.metrics import roc_curve

y = np.array([1122])
pred = np.array([0.10.40.350.8])
fpr tpr thresholds = roc_curve(y pred pos_label=2)
print(fpr)
print(tpr)
print(thresholds)

from sklearn.metrics import auc
print(auc(fpr tpr))
“““

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件      334616  2017-07-16 22:49  31_8081_1500245370541_p_250183716133.jpg
     目录           0  2018-08-30 10:16  align\
     文件         160  2018-06-22 10:09  align\__init__.pyc
     文件       27368  2018-06-22 07:08  align\det1.npy
     文件        3226  2018-08-24 07:36  align\mtcnn_detect.py
     文件           0  2018-06-22 07:08  align\__init__.py
     文件        4146  2018-08-30 09:22  align\RunOnFDDBMTCNN.py
     文件       26681  2018-08-24 08:26  align\detect_face.pyc
     文件     1557360  2018-06-22 07:08  align\det3.npy
     文件      401681  2018-06-22 07:08  align\det2.npy
     文件        8615  2018-08-23 06:02  align\align_dataset_mtcnn.py
     文件       31694  2018-08-24 08:06  align\detect_face.py
     目录           0  2018-08-30 10:19  FDDB_evaluate\
     目录           0  2018-08-30 09:53  FDDB_evaluate\evaluation\
     文件        1544  2018-08-30 04:04  FDDB_evaluate\evaluation\MatchPair.o
     文件         750  2010-05-06 18:36  FDDB_evaluate\evaluation\RectangleR.cpp
     文件         171  2010-05-06 18:36  FDDB_evaluate\evaluation\._Results.cpp
     文件       11626  2018-08-30 04:04  FDDB_evaluate\evaluation\evaluate.cpp
     文件      102344  2018-08-30 04:04  FDDB_evaluate\evaluation\evaluate
     文件        1010  2010-05-06 18:36  FDDB_evaluate\evaluation\Region.hpp
     文件         171  2010-05-06 18:36  FDDB_evaluate\evaluation\._EllipseR.hpp
     文件         171  2010-05-06 18:36  FDDB_evaluate\evaluation\._OpenCVUtils.cpp
     文件         708  2010-05-06 18:36  FDDB_evaluate\evaluation\RectangleR.hpp
     文件        1541  2018-08-22 03:22  FDDB_evaluate\evaluation\RegionsSingleImage.hpp
     文件         171  2010-05-06 18:36  FDDB_evaluate\evaluation\._common.hpp
     文件         826  2010-05-06 18:36  FDDB_evaluate\evaluation\RectanglesSingleImage.hpp
     文件       20920  2018-08-30 04:04  FDDB_evaluate\evaluation\EllipsesSingleImage.o
     文件         171  2014-01-20 05:17  FDDB_evaluate\evaluation\._EllipseR.cpp
     文件         803  2010-05-06 18:36  FDDB_evaluate\evaluation\OpenCVUtils.hpp
     文件        1573  2018-08-22 09:33  FDDB_evaluate\evaluation\Makefile
     文件        4658  2018-08-30 09:24  FDDB_evaluate\evaluation\Results.cpp
............此处省略122个文件信息

评论

共有 条评论