利用LFW对人脸识别模型进行精度评测
本博記錄為鹵煮學習過程中的理解,作為備忘demo。其中有錯誤疏漏之處,還請大家幫忙指正。
鹵煮:非文藝小燕兒
本博地址:利用LFW對人臉識別模型進行精度評測
通過caffe進行人臉識別網絡訓練后,得到caffemodel。通常大家在LFW人臉數據集上對該模型進行精度驗證。以下梳理驗證過程:
(1)??????在原始LFW數據集中,截取人臉圖像并保存。(例如:可以使用開源人臉檢測對齊seetaface將人臉crop出來,并保存,建議以原圖像名稱加一個后綴命名人臉圖像)
(2)??????通過python,matlab,或者C++,構建訓練時的網絡結構并加載caffemodel。
(3)??????將截取的人臉送入網絡,每個人臉都可以得到網絡前向運算的最終結果,一般為一個N維向量,并保存,建議以原圖像名稱加一個后綴命名。
(4)??????LFW提供了6000對人臉驗證txt文件,lfw_pairs.txt,其中第1個300人是同一個人的兩幅人臉圖像;第2個300人是兩個不同人的人臉圖像。按照該list,在(3)保存的數據中,找到對比人臉對應的N維特征向量。
(5)??????通過cosine距離/歐式距離計算兩張人臉的相似度。同臉和異臉分別保存到各自對應的得分向量中。
(6) 同臉得分向量按照從小到大排序,異臉向量按照從大到小排序。
(7)? FAR(錯誤接受率)從0~1,按照萬分之一的單位,利用排序后的向量,求FRR(錯誤拒絕率)或者TPR(ture positive ratio)。
(8) 根據7可繪制ROC曲線。
閾值確定
(1)??????將測試人臉對分為10組,用來確定閾值并驗證精讀。
(2)??????自己擬定一個人臉識別相似度閾值范圍,在這個范圍內逐個確認在某一閾值下,選取其中1組數據統計同臉判斷錯誤和異臉判定錯誤的個數。
(3)??????選擇錯誤個數最少的那個閾值,用剩余9組,判斷識別精度。
(4)??????步驟(2)和(3)執行10次,將每次(3)獲取的精度進行累加并求平均,得到最終判定精度。
其中也可以用下述方式替換
自己擬定一個人臉識別相似度閾值范圍,在這個范圍內逐個確認在某一閾值下,針對所有人臉對統計同臉判斷錯誤和異臉判定錯誤的個數,從而計算得出判定精度。
總結
以上是生活随笔為你收集整理的利用LFW对人脸识别模型进行精度评测的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 日期 年数_java 日期加减
- 下一篇: DebugView使用笔记