Contents
download the code
Download the code here.
If you use this software, please cite the following paper:
N. Poh, D. Matsumoto and J. Kittler,
"Biometric Decision Landscape with Lifeness Detection",
(submitted).
check the option available
help replica_modeller_gen
Pr = ratios of [deliberate genuine zero-effort]
x = observation space of replication
e = likelihood of replica
e_ = likelihood of genuine P(genuine|e)
y = the verificaiton score space
f_ = likelihood of y given genuine
r = likelihood of y given replication
f = likelihood of y given impostor
show value
1: score densities
2: evidence densities
3: genuine densities in (y,e) space
4: replica densities in (y,e) space
5: impostor densities in (y,e) space
6: posterior prob in (y,e) space, try different values of Pr
E.g., Pr = [0.000001 1 1]
7: probability of error in P(error|y,e) space
8: probability of error P(error, y,e)
Use sum(sum(out)) to get the error
generate mixture
x=linspace(-6,10,200);
f=mvnpdf(x',0,1.5);
f_= .5 * mvnpdf(x',4,1) + .5 * mvnpdf(x',2,.5);
r = .5 * mvnpdf(x',3.5,1.3) + .5 * mvnpdf(x',1.8,.3);
e_=mvnpdf(x',0,1.5);
e=mvnpdf(x',3.5,2);
The following examples illustrate what will be plotted
replica_modeller_gen([.1 .4 .4], x, e, e_, x, f_,r,f, 1);
mkdir Pictures
fname = sprintf('Pictures/main_intrusion_modelling_llk_scores.eps');print('-depsc2',fname);
replica_modeller_gen([.1 .4 .4], x, e, e_, x, f_,r,f, 2);
fname = sprintf('Pictures/main_intrusion_modelling_llk_evi.eps');print('-depsc2',fname);
replica_modeller_gen([.1 .4 .4], x, e, e_, x, f_,r,f, 3); colorbar;
fname = sprintf('Pictures/main_intrusion_modelling_density_genuine.eps');print('-depsc2',fname);
replica_modeller_gen([.1 .4 .4], x, e, e_, x, f_,r,f, 4); colorbar;
fname = sprintf('Pictures/main_intrusion_modelling_density_replica.eps');print('-depsc2',fname);
replica_modeller_gen([.1 .4 .4], x, e, e_, x, f_,r,f, 5); colorbar;
fname = sprintf('Pictures/main_intrusion_modelling_density_impostor.eps');print('-depsc2',fname);
replica_modeller_gen([1 1 1], x, e, e_, x, f_,r,f, 6);
fname = sprintf('Pictures/main_intrusion_modelling_post_111.eps');print('-depsc2',fname);
replica_modeller_gen([1 5 4], x, e, e_, x, f_,r,f, 6);
fname = sprintf('Pictures/main_intrusion_modelling_post_154.eps');print('-depsc2',fname);
replica_modeller_gen([4 5 1], x, e, e_, x, f_,r,f, 6);
fname = sprintf('Pictures/main_intrusion_modelling_post_451.eps');print('-depsc2',fname);
replica_modeller_gen([4 1 5], x, e, e_, x, f_,r,f, 6);
fname = sprintf('Pictures/main_intrusion_modelling_post_415.eps');print('-depsc2',fname);
err=replica_modeller_gen([1 1 1], x, e, e_, x, f_,r,f, 7);
fname = sprintf('Pictures/main_intrusion_modelling_err_111.eps');print('-depsc2',fname);
err=replica_modeller_gen([1 1 1], x, e, e_, x, f_,r,f, 8);
fname = sprintf('Pictures/main_intrusion_modelling_err_joint_111.eps');print('-depsc2',fname);
replica_modeller_gen([1 1 1], x, e, e_, x, f_,r,f, 9);
fname = sprintf('Pictures/main_intrusion_modelling_uncond_111.eps');print('-depsc2',fname);
simulating a conventional system
replica_modeller([.0000000000001 1 1], x, e, e_, f_,r,f, 6);
fname = sprintf('Pictures/main_intrusion_modelling_post_011.eps');print('-depsc2',fname);