本博記錄為鹵煮學習過程中的了解,作為備忘demo。其中有錯誤疏漏之處,還請大家幫忙指正。
鹵煮:非文藝小燕兒
本博位址:利用自己的人臉資料集對人臉識别模型進行精度評測
一般人臉識别模型的精度驗證都是用LFW,但是LFW的資料分布于我們實用階段有些差距,是以最好還是在我們自己實用環境下的人臉圖像進行測試評估。
LFW精度評測:利用LFW對人臉識别模型進行精度評測
以下使用的都是crop後的人臉彩色圖像,人臉的圖檔命名都是以name_****.jpg的格式存放(***的長度和内容随意)。以便區分同人(name相同)和異人*(name不同)。
(1)自己的圖檔分兩組,一組為ref_faces(M張),一組為test_faces(N張)。
(2)利用你的人臉識别模型和網絡,計算所有faces的特征。
(3)将ref_faces中每一個face,與test_faces中的所有face一一比對計算相似度。
将相似度存放在Similarity_file.txt中,每比對完一張ref_face,進行一次回車。最終會得到M行資料,每行N個相似度。也就是M*N的矩陣。
同時将真實比對結果(同人為1,異人為0),以相同的方式存放在Ref_file.txt中,也相當也得到一個M*N的矩陣。
(4)ref_file矩陣的和,就是同人比對對的個數S_n,則異人比對對的個數D_n=M*N-S_n。
(5)以ref_file為參照,将Similarity_file中的所有同人比對機率存放到Same_p向量中,所有異人比對機率存放到Diff_p向量中。
(6)由(5)的結果已經可以通過matlab繪制出機率密度figure,和累積分布figure。如下圖:
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2QvwVe0lmdhJ3ZvwFM38CXlZHbvN3cpR2Lc1TPB10QGtWUCpEMJ9CXsxWam9CXwADNvwVZ6l2c052bm9CXUJDT1wkNhVzLcRnbvZ2Lc1DNXlVN1clWzYlbaZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39TN0EzNxcTMxEDMycDM3EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
(7)對Same_p進行從小到大排序,Diff_p進行從大到小排序。指定一個錯誤接受率(FAR),根據異人比對總數D_n,可以計算出容錯個數Miss_n,在排序後Diff_p中第Miss_n+1個數值,便是判定門檻值。
(8)在排序後的Same_p中,從頭開始查找比判定門檻值大的數,找到第一個大于門檻值的數為止。由于找到這個數之前所排查的數都是小于門檻值的,是以這些就是同臉比對失敗的結果,用其總數除以S_n就可以得到錯誤拒絕率(FRR)。
備注:
FAR:False Accept Rate,錯誤接受率,指将身份不同的兩張照片,判别為相同身份,越低越好
FRR:False Reject Rate,錯誤拒絕率,指将身份相同的兩張照片,判别為不同身份,越低越好
這兩個名額有明确的實體意義,FAR決定了系統的安全性,FRR決定了系統的易用程度。