📄 buildlocalfacerecogmodel.m
字号:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% function buildLocalFaceRecogModel()
% z.li, 06-14-2004
% build local face recog models from known faces specified by ids and
% poses, the radius is given by R.
% function dependency:
% - n/a
% input:
% fm1 - face models in d x n
% x1 - an unknown person
% R - local radius
% ids - known persons
% poses - known poses
% output:
% X - model in dxm
% Y - label in dx1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%function [X, Y, poseCnt] = buildLocalFaceRecogModel(fm1, x1, R, ids, poses);
function [X, Y, poseCnt] = buildLocalFaceRecogModel(fm1, x1, R, ids, poses);
dbg='n';
if dbg=='y'
fm1 = Fm1; x1 = Fm1(:,124); R= 600;
ids = [1:40]; poses=[1:8];
end
%var
nId = length(ids);
poseCnt = zeros(1, nId);
cnt = 0;
for j=1:length(ids)
cId = ids(j); % current person id
poseCnt(j) = 0;
for k=1:length(poses)
f1=getAttFaceProj(fm1, cId, poses(k));
if isnan(f1(1)) ~= 1 % proj exists
if norm(f1-x1, 2) <= R % within local neigbourhood
cnt=cnt+1;
poseCnt(j)=poseCnt(j)+1;
% insert a sample to the model
X(:,cnt)=f1; Y(:,cnt) = cId;
end %if norm
end %if isnan
end %for k
end %for j
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -