📄 multimodelfacerecognition.m
字号:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% function multiModelFaceRecognition()
% z.li, 09-09-2004
% demo face recognition.
% function dependency:
% - multiModeFaceRecognition()
% input:
% Fm1, Fm2, Fm3 - face models
% ids, poses - known persons' face image poses
% qId, qPose - unknown face
% output:
% recId - recognized person id
% recIds - recog results from all models
% modelErrs - model err rate estimates
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%function [recId, recIds, modelErrs]=multiModelFaceRecognition(Fm1, Fm2, Fm3, ids, poses, qId, qPose)
function [recId, recIds, modelErrs]=multiModelFaceRecognition(Fm1, Fm2, Fm3, ids, poses, qId, qPose)
% const
wt1=ones(16);R1=640; wt2=ones(12);R2=600; wt3=ones(20);R3=1000;
% recognition by each model
[recId1, nnId1, fdaId1, knlId1, recErr1, fdaErr1, knlErr1, m1]=multiModeFaceRecognition(Fm1, ids, poses, qId, qPose, wt1, R1);
[recId2, nnId2, fdaId2, knlId2, recErr2, fdaErr2, knlErr2, m2]=multiModeFaceRecognition(Fm2, ids, poses, qId, qPose, wt2, R2);
[recId3, nnId3, fdaId3, knlId3, recErr3, fdaErr3, knlErr3, m3]=multiModeFaceRecognition(Fm3, ids, poses, qId, qPose, wt3, R3);
% combine recog results
recIds = [recId1 recId2 recId3];
modelErrs=[recErr1, recErr2, recErr3];
[minErr, mink]=min(modelErrs);
recId =recIds(mink);
% force full face model if a tie on min err
if recErr3 == minErr
recId = recId3; mink=3;
end
fprintf('\n recId=%d recIds=[%d %d %d] modelErrs=[%1.4f %1.4f %1.4f]', recId, recIds, modelErrs);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -