Anda di halaman 1dari 174

Universidad Carlos III de Madrid

Escuela Politcnica Superior


Diseo y Desarrollo
de un Sistema de
Reconocimiento de Caras
Proyecto Fin de Carrera
Ingeniera de Telecomunicacin
Autor: Carmen Virginia Gme! "imne!
Tutor: "ulio Villena #omn
$adrid% A&ril '(()
Proyecto: Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Autor: Carmen Virginia Gmez Jimnez
Tutor: Julio Villena Romn
TR!"#A$
Presidente: %rancisco Valera Pintor
Secretario: Jes&s Arias %isteus
Vocal: Jessica Ri'ero (s)inosa
Realizado el acto de de*ensa del Proyecto %in de Carrera el d+a ,- de A.ril
de ,//0 en $egans1 en la (scuela Politcnica Su)erior de la "ni'ersidad
Carlos de 2adrid1 acuerda otorgarle la CA$%CAC3# de:
%do4 Presidente %do4 Secretario %do4 Vocal
Nunca olvido una cara. Pero en su caso estar encantado de hacer una
excepcin.
Groucho Marx
Agradecimientos
Con este )royecto termina una eta)a de es*uerzo y tra.a5o1 en la 6ue 7a 7a.ido
.uenos y malos momentos1 )ero 6ue )ese a esos malos momentos 7a 'alido la )ena
'i'ir1 y de la 6ue s8lo recordar los .uenos4
9uiero mostrar mi agradecimiento a todos los 6ue 7an com)artido conmigo esta
eta)a1 a todos esos 6ue me 7an ayudado a su)erar todas las di*icultades1 6ue me 7an
dado su a)oyo y 7an tenido tanta )aciencia4
(n es)ecial 6uiero dar las gracias a mi *amilia1 a mis )adres y a mis 7ermanos1
6ue son los 6ue 7an 'i'ido ms cerca conmigo estos aos4 Al resto de mi *amilia1 a mi
cuada 6ue tam.in 7a 'i'ido gran )arte de esta eta)a desde cerca1 a mis a.uelos1 t+os1
)rimos1 etc4 6ue en la distancia siem)re me 7an dado su a)oyo4
A mis amigas y amigos1 tanto de Valdemoro1 como de Palenciana1 siem)re a mi
lado4
#o )uedo ol'idarme de mis com)aeros de uni'ersidad1 con los 6ue 7e )asado
tantos ratos dentro y *uera de las aulas4 Algunos de ellos se 7an con'ertido en amigos
)ara toda 'ida4
Tam.in 6uiero dar las gracias a mi tutor y al resto de )ro*esores 6ue me 7an
)ro)orcionado los conocimientos necesarios )ara mi *ormaci8n4
A todos1 GRACAS4
RESUMEN
(n este )royecto se )resenta un sistema .iomtrico de reconocimiento 6ue
utiliza como caracter+stica .iomtrica una imagen digital esttica del rostro 7umano4
Detectar y reconocer rostros 7umanos en *otogra*+as y secuencias de '+deo es un
)ro.lema cada 'ez ms en auge en el cam)o de la 'isi8n )or ordenador1 y son muc7as
las a)licaciones )rcticas tienen en la actualidad1 como la 'igilancia1 'ideocon*erencia1
control de acceso1 etc4
(l o.5eti'o ser de'ol'er como resultado las cinco )ersonas de la .ase de datos
6ue ms se )arecen a la )ersona de la imagen de )rue.a4
(l )ro.lema del reconocimiento de caras se )uede di'idir en dos *ases1 la de
detecci8n de la cara dentro de la imagen y la de reconocimiento1 y es as+ como se 7ace
en este )royecto4
$a *ase de detecci8n est .asada )rinci)almente1 en la detecci8n de )+:eles de
)iel en la imagen4 Posteriormente se realiza una selecci8n de regiones de )iel candidatas
a ser caras y su 'alidaci8n mediante ;ma)as< de o5os y .oca4 Adems se im)lementa un
sistema alternati'o de detecci8n de la cara1 )or si con el anterior mtodo no se detecta
ninguna4 =ste mtodo toma la mayor regi8n de )iel encontrada en la imagen y genera
una eli)se con sus caracter+sticas )ara de'ol'er como cara la )arte de la imagen 6ue
coincide con la eli)se4
(n la *ase de reconocimiento se tienen las zonas de las imgenes detectadas
como caras4 Se utiliza PCA )ara e:traer las caracter+sticas 6ue re)resentan a las
imgenes4 A continuaci8n1 estas caracter+sticas sir'en )ara entrenar y simular unas redes
neuronales4 Con las salidas de las redes neuronales se seleccionan las imgenes de la
.ase de datos 6ue ms se )arecen a la cara de la imagen de )rue.a4
(n la e'aluaci8n del sistema im)lementado se 'e la gran in*luencia del ti)o de
imgenes utilizadas )ara el reconocimiento1 siendo muc7o me5ores los resultados
cuando las imgenes cum)len unas ciertas caracter+sticas4
NDICE
>4#TR?D"CC3#4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>
>4>4C?#T(@T? A 2?TVAC3#44444444444444444444444444444444444444444444444444444444444444444444444444444>
>4,4?!J(TV?S D($ PR?A(CT?4444444444444444444444444444444444444444444444444444444444444444444444444444-
>4-4(STR"CT"RA D( $A 2(2?RA4444444444444444444444444444444444444444444444444444444444444444444444B
,4(STAD? D($ ART(44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444C
,4>4C?#C(PT?S G(#(RA$(S444444444444444444444444444444444444444444444444444444444444444444444444444444444C
,4>4>4P+:el44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444C
,4>4,4magen digital44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444C
,4>4-4Clasi*icaci8n de imgenes digitales4444444444444444444444444444444444444444444444444444444444444444D
,4>4B4(s)acios de color444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444E
,4>4B4>42odelo RG!4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444E
,4>4B4,42odelo FSV44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444G
,4>4B4-42odelo Ac.Cr444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440
,4>4B4B4?tros modelos4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440
,4>4C4Procesamiento de la imagen44444444444444444444444444444444444444444444444444444444444444444444444444>/
,4>4C4>4Tcnicas de modi*icaci8n del 7istograma444444444444444444444444444444444444444444444>/
,4>4C4,4%iltrado es)acial4444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,
,4>4C4-4%iltrado en *recuencia4444444444444444444444444444444444444444444444444444444444444444444444444444>C
,4>4C4B4%iltros mor*ol8gicos444444444444444444444444444444444444444444444444444444444444444444444444444444>D
,4>4C4C4%iltros de te:tura444444444444444444444444444444444444444444444444444444444444444444444444444444444444>0
,4,4D(T(CC3# D( CARAS44444444444444444444444444444444444444444444444444444444444444444444444444444444444,/
,4,4>4Tcnicas .asadas en rasgos444444444444444444444444444444444444444444444444444444444444444444444444444,>
,4,4>4>4Anlisis de .a5o ni'el4444444444444444444444444444444444444444444444444444444444444444444444444444,>
,4,4>4,4Anlisis de rasgos4444444444444444444444444444444444444444444444444444444444444444444444444444444444,,
,4,4>4-4Anlisis de *ormas acti'as444444444444444444444444444444444444444444444444444444444444444444444,-
,4,4,4Tcnicas .asadas en la imagen4444444444444444444444444444444444444444444444444444444444444444444444,-
,4,4,4>42todos .asados en su.es)acios44444444444444444444444444444444444444444444444444444444444,-
,4,4,4,4Redes neuronales44444444444444444444444444444444444444444444444444444444444444444444444444444444444,B
,4,4,4-42todos estad+sticos444444444444444444444444444444444444444444444444444444444444444444444444444444,C
,4-4R(C?#?C2(#T? D( CARAS4444444444444444444444444444444444444444444444444444444444444444444444,C
,4-4>42todos 7ol+sticos4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444,D
,4-4>4>4Princi)al Com)onent Analysis: PCA4444444444444444444444444444444444444444444444444444,D
,4-4>4,4nde)endent Com)onent Analysis: CA444444444444444444444444444444444444444444444444,0
,4-4>4-4$inear Discriminant Analysis: $DA444444444444444444444444444444444444444444444444444444-/
,4-4>4B42todos .asados en Hernels444444444444444444444444444444444444444444444444444444444444444444->
,4-4>4C4('olutionary Pursuit: (P44444444444444444444444444444444444444444444444444444444444444444444444->
,4-4>4D4Su))ort Vector 2ac7ine: SV24444444444444444444444444444444444444444444444444444444444444-,
,4-4,42todos .asados en caracter+sticas locales444444444444444444444444444444444444444444444444444-B
,4-4,4>4(lastic !unc7 Gra)7 2atc7ing: (!G2444444444444444444444444444444444444444444444444-B
,4-4,4,4$ocal !inary Pattern: $!P44444444444444444444444444444444444444444444444444444444444444444444-D
,4-4,4-4Acti'e A))earance 2odels: AA244444444444444444444444444444444444444444444444444444444-D
,4-4,4B4Fidden 2arHo' 2odels: F224444444444444444444444444444444444444444444444444444444444444-G
,4-4,4C42todos -D4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444-0
,4B4AP$CAC?#(S D($ R(C?#?C2(#T? D( CARAS4444444444444444444444444444444B/
,4B4>4denti*icaci8n de caras44444444444444444444444444444444444444444444444444444444444444444444444444444444444B/
,4B4,4Control de acceso444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444B/
i
,4B4-4Seguridad4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444B>
,4B4B4Vigilancia444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444B>
,4B4C4A)licaci8n a la ley44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444B>
,4B4D4!ases de datos de caras444444444444444444444444444444444444444444444444444444444444444444444444444444444B>
,4B4E4Gesti8n multimedia444444444444444444444444444444444444444444444444444444444444444444444444444444444444444B,
,4B4G4nteracci8n 7om.reIm6uina444444444444444444444444444444444444444444444444444444444444444444444444B,
,4B4G4>4Seguimiento de caras44444444444444444444444444444444444444444444444444444444444444444444444444444B,
,4B4G4,4Reconocimiento de e:)resiones444444444444444444444444444444444444444444444444444444444444B,
,4B4G4-4Videocon*erencia44444444444444444444444444444444444444444444444444444444444444444444444444444444444B,
,4C4R(D(S #("R?#A$(S ART%CA$(S44444444444444444444444444444444444444444444444444444444444B,
,4C4>4%uncionamiento444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444B-
,4C4,4Venta5as444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444BB
,4C4-4Ti)olog+as de las redes neuronales4444444444444444444444444444444444444444444444444444444444444444BB
-4DS(J? ( 2P$(2(#TAC3#4444444444444444444444444444444444444444444444444444444444444444444444444444444BD
-4>4AR9"T(CT"RA D($ SST(2A444444444444444444444444444444444444444444444444444444444444444444444BD
-4>4>4Ferramientas utilizadas444444444444444444444444444444444444444444444444444444444444444444444444444444444BE
-4,4!AS(S D( DAT?S4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444BE
-4,4>4!ase de datos A: %otogra*+as en am.iente controlado4444444444444444444444444444444444BE
-4,4,4!ase de datos !: Persona5es es)aoles *amosos4444444444444444444444444444444444444444444BG
-4-4PR(PR?C(SAD? D( $AS 2KG(#(S44444444444444444444444444444444444444444444444444444444444C/
-4-4>4A5uste de *ormato444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444C/
-4-4,4(liminaci8n de ruido4444444444444444444444444444444444444444444444444444444444444444444444444444444444444C>
-4-4-4Com)ensaci8n de iluminaci8n4444444444444444444444444444444444444444444444444444444444444444444444C-
-4-4B4Pre)rocesado en cascada4444444444444444444444444444444444444444444444444444444444444444444444444444444CC
-4B4D(T(CC3# D( CARAS44444444444444444444444444444444444444444444444444444444444444444444444444444444444CC
-4B4>4Detecci8n de )+:eles de )iel44444444444444444444444444444444444444444444444444444444444444444444444444CD
-4B4,4%iltrado y agru)amiento44444444444444444444444444444444444444444444444444444444444444444444444444444444CG
-4B4-4Selecci8n de candidatos a caras44444444444444444444444444444444444444444444444444444444444444444444D/
-4B4B4Validaci8n de candidatos4444444444444444444444444444444444444444444444444444444444444444444444444444444D,
-4B4B4>42a)a de o5os: (ye2a)44444444444444444444444444444444444444444444444444444444444444444444444444D,
-4B4B4,42a)a de .oca: 2out72a)444444444444444444444444444444444444444444444444444444444444444444444DC
-4B4B4-4Validaci8n4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444DE
-4B4C42todo de selecci8n de caras alternati'o444444444444444444444444444444444444444444444444444444D0
-4B4D4#ormalizaci8n de tamao44444444444444444444444444444444444444444444444444444444444444444444444444444E>
-4B4E4Selecci8n del con5unto de datos entrenamiento y datos de test44444444444444444444E>
-4C4(@TRACC3# D( CARACT(RLSTCAS444444444444444444444444444444444444444444444444444444444E,
-4C4>4ntroducci8n44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444E,
-4C4,4Princi)al Com)onent Analysis: PCA444444444444444444444444444444444444444444444444444444444444E-
-4D4C$AS%CAC3#444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444EE
-4D4>4Ar6uitectura de las redes neuronales4444444444444444444444444444444444444444444444444444444444444EE
-4D4,4(ntrenamiento de las redes neuronales444444444444444444444444444444444444444444444444444444444E0
-4D4-4Clasi*icaci8n44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444G/
-4E4#T(R%AM GRK%CA D( "S"AR?4444444444444444444444444444444444444444444444444444444444444444G>
B4R(S"$TAD?S D( $A (VA$"AC3#4444444444444444444444444444444444444444444444444444444444444444444444GD
B4>4%AS( D( D(T(CC3#444444444444444444444444444444444444444444444444444444444444444444444444444444444444444GD
B4>4>4Prue.a de detecci8n con selecci8n de candidatos y 'alidaci8n mediante
ma)as de o5os y .oca4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444GD
B4>4>4>4!ase de datos A4444444444444444444444444444444444444444444444444444444444444444444444444444444444444GD
ii
B4>4>4,4!ase de datos !4444444444444444444444444444444444444444444444444444444444444444444444444444444444444G0
B4>4,4Prue.as de detecci8n del sistema *inal Nselecci8n de regiones de )iel
candidatas y 'alidaci8n mediante ma)as de o5os y .oca O detecci8n alternati'a
con eli)seP444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440,
B4>4,4>4!ase de datos A44444444444444444444444444444444444444444444444444444444444444444444444444444444444440,
B4>4,4>4>4Tamao de los e5es de la eli)se igual al C/Q de los e5es de la
regi8n de )iel4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440-
B4>4,4>4,4Tamao de los e5es de la eli)se igual al ECQ de los e5es de la
regi8n de )iel4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440B
B4>4,4>4-4Tamao de los e5es de la eli)se igual al >//Q de los e5es de la
regi8n de )iel4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440C
B4>4,4,4!ase de datos !44444444444444444444444444444444444444444444444444444444444444444444444444444444444440D
B4>4,4,4>4Tamao de los e5es de la eli)se igual al C/Q de los e5es de la
regi8n de )iel4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440E
B4>4,4,4,4Tamao de los e5es de la eli)se igual al ECQ de los e5es de la
regi8n de )iel4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440G
B4>4,4,4-4Tamao de los e5es de la eli)se igual al >//Q de los e5es de la
regi8n de )iel4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440G
B4,4%AS( D( R(C?#?C2(#T?444444444444444444444444444444444444444444444444444444444444444444444444>//
B4,4>4!ase de datos A4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>//
B4,4>4>4mgenes sin )asar )or la *ase de detecci8n4444444444444444444444444444444444444444>//
B4,4>4,4mgenes 6ue )asan s8lo )or la )rimera *ase de la detecci8n4444444444444>/-
B4,4>4-4mgenes 6ue )asan )or el sistema de detecci8n com)leto44444444444444444>/C
B4,4>4-4>4mgenes detectadas con tamao e5es de la eli)se igual al C/Q4 >/C
B4,4>4-4,4mgenes detectadas con tamao e5es de la eli)se igual al ECQ4 >/D
B4,4>4-4-4mgenes detectadas con tamao e5es de la eli)se igual al >//Q
44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>/E
B4,4,4!ase de datos !4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>/G
B4,4,4>4mgenes 6ue )asan s8lo )or la )rimera *ase de la detecci8n4444444444444>/0
B4,4,4>4>4"so de PCA sin restar imagen )romedio4444444444444444444444444444444444444>>/
B4,4,4,4mgenes 6ue )asan )or el sistema de detecci8n com)leto44444444444444444>>,
B4,4,4,4>4mgenes detectadas con tamao e5es de la eli)se igual al C/Q44>>,
B4,4,4,4,4mgenes detectadas con tamao e5es de la eli)se igual al ECQ44>>-
B4,4,4,4-4mgenes detectadas con tamao e5es de la eli)se igual al >//Q>>C
B4,4,4,4B4Variaci8n del n&mero de neuronas internas444444444444444444444444444444444>>D
C4C?#C$"S?#(S A $L#(AS %"T"RAS4444444444444444444444444444444444444444444444444444444444444444>>G
C4>4C?#C$"S?#(S4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>>G
C4,4$L#(AS %"T"RAS D( TRA!AJ?444444444444444444444444444444444444444444444444444444444444444444>>0
D4A#(@?S44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,>
D4>4A#(@? : GRK%CAS D( (#TR(#A2(#T? D( $AS R(D(S
#("R?#A$(S44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,>
D4>4>4!ase de datos A: mgenes 6ue )asan s8lo )or la )rimera *ase de la
detecci8n44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,>
D4>4,4!ase de datos A: mgenes 6ue )asan )or el sistema de detecci8n com)leto
444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,>
D4>4,4>4mgenes detectadas con tamao de los e5es de la eli)se igual al C/Q
4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,>
D4>4,4,4mgenes detectadas con tamao de los e5es de la eli)se igual al ECQ
iii
4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,,
D4>4,4-4mgenes detectadas con tamao de los e5es de la eli)se igual al >//Q
4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,-
D4>4-4!ase de datos !: mgenes 6ue )asan s8lo )or la )rimera *ase de la
detecci8n44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,-
D4>4-4>4"so de PCA sin restar imagen )romedio444444444444444444444444444444444444444444444>,B
D4>4B4!ase de datos !: mgenes 6ue )asan )or el sistema de detecci8n com)leto
444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,B
D4>4B4>4mgenes detectadas con tamao de los e5es de la eli)se igual al C/Q
4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,B
D4>4B4,4mgenes detectadas con tamao de los e5es de la eli)se igual al ECQ
4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,C
D4>4B4-4mgenes detectadas con tamao de los e5es de la eli)se igual al >//Q
4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>,C
D4>4B4B4mgenes detectadas con tamao de los e5es de la eli)se igual al C/Q y
n&mero de neuronas de la ca)a interna igual a un cuarto de la suma de las
neuronas de entrada y salida4444444444444444444444444444444444444444444444444444444444444444444444444444>,D
D4>4B4C4mgenes detectadas con tamao de los e5es de la eli)se igual al C/Q y
n&mero de neuronas de la ca)a interna igual a un octa'o de la suma de las
neuronas de entrada y salida4444444444444444444444444444444444444444444444444444444444444444444444444444>,D
D4>4B4D4mgenes detectadas con tamao de los e5es de la eli)se igual al C/Q y
n&mero de neuronas de la ca)a interna igual a un dieciseisa'o de la suma de las
neuronas de entrada y salida4444444444444444444444444444444444444444444444444444444444444444444444444444>,E
D4,4A#(@? : 2A#"A$ D( "S"AR?44444444444444444444444444444444444444444444444444444444444444>,E
D4-4A#(@? : C3DG? 2AT$A!4444444444444444444444444444444444444444444444444444444444444444444444>,0
E4!!$?GRA%LA44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>CE
i'
ndice de tablas
Ta.la >4>: Caracter+sticas de los sistemas .iomtricos RSe.,T444444444444444444444444444444444444444444>
Ta.la >4,: (scenarios de a)licaci8n del reconocimiento de caras RStan et al4 ,//BT 4444444-
Ta.la -4>: %unciones de 2atla. )ara la im)lementaci8n del a5uste de *ormato44444444444444C>
Ta.la -4,: %unci8n de 2atla. )ara la im)lementaci8n del *iltro de medianas4444444444444444C,
Ta.la -4-: %unci8n de 2atla. utilizada en la com)ensaci8n de iluminaci8n444444444444444444CC
Ta.la -4B: Rendimiento de di*erentes detectores de )iel4444444444444444444444444444444444444444444444444CD
Ta.la -4C: %unciones de 2atla. utilizadas )ara el *iltrado y agru)amiento44444444444444444444D/
Ta.la -4D: %unci8n de 2atla. utilizada en la selecci8n de candidatos a caras4444444444444444D>
Ta.la -4E: %unciones de 2atla. utilizadas en la generaci8n del (ye2a)44444444444444444444444DC
Ta.la -4G: %unciones de 2atla. utilizadas en la generaci8n del 2out72a)444444444444444444DE
Ta.la -40: %unciones de 2atla. utilizadas en el mtodo de selecci8n de caras en la
imagen alternati'o44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444E>
Ta.la -4>/: %unci8n de 2atla. utilizada en la normalizaci8n44444444444444444444444444444444444444444E>
Ta.la -4>>: %unciones de 2atla. utilizadas en la e:tracci8n de caracter+sticas44444444444444EE
Ta.la -4>,: %unci8n de 2atla. utilizada )ara la generaci8n de la red neuronal4444444444444E0
Ta.la -4>-: %unci8n de 2atla. )ara el entrenamiento de redes neuronales44444444444444444444G/
Ta.la -4>B: %unci8n de 2atla. )ara la simulaci8n de una red neuronal4444444444444444444444444G>
Ta.la B4>: Resumen resultados detecci8n Nselecci8n de candidatosP .ase de datos A44 4 4GE
Ta.la B4,: (5em)lo resultado detecci8n con 'arios tamaos de radio del elemento
estructurante: aP a)ertura ,1 cierre ,U .P a)ertura ,1 cierre >/U cP a)ertura ,1 cierre ,/ 4 4GE
Ta.la B4-: #&mero de imgenes )ara las 6ue el detector de'uel'e ms de un resultado
en la .ase de datos A44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444GG
Ta.la B4B: Resumen resultados detecci8n Nselecci8n candidatosP .ase de datos !444444444G0
Ta.la B4C: #&mero de imgenes )ara las 6ue el detector de'uel'e ms de un resultado
en la .ase de datos !444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440>
Ta.la B4D: Resumen resultados detecci8n com)leta .ase de datos A Ne5es eli)se C/QP4 40-
Ta.la B4E: Resumen resultados detecci8n com)leta .ase de datos A Ne5es eli)se ECQP4 40B
Ta.la B4G: Resumen resultados detecci8n com)leta .ase de datos A Ne5es eli)se >//QP0C
Ta.la B40: Resumen resultados detecci8n com)leta .ase de datos ! Ne5es eli)se C/QP440E
Ta.la B4>/: Resumen resultados detecci8n com)leta .ase de datos ! Ne5es eli)se ECQP0G
Ta.la B4>>: Resumen resultados detecci8n com)leta .ase de datos ! Ne5es eli)se >//QP
444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440G
Ta.la B4>,: aP Valor de los auto'aloresU .P Varianza e:)licada en *unci8n del n&mero de
auto'alores444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>/>
Ta.la B4>-: Resultados datos de entrenamiento )ara CC )ersonas con >D auto'ectores>/-
Ta.la B4>B: Resultados datos de test )ara CC )ersonas con >D auto'ectores44444444444444444>/-
Ta.la B4>C: aP Valor de los auto'aloresU .P Varianza e:)licada en *unci8n del n&mero de
auto'alores444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>/B
Ta.la B4>D: Resultados datos de entrenamiento )ara ,- )ersonas con >/ auto'ectores>/B
Ta.la B4>E: Resultados datos de test )ara ,- )ersonas con >/ auto'ectores44444444444444444>/B
Ta.la B4>G: aP Valor de los auto'aloresU .P Varianza e:)licada en *unci8n del n&mero de
auto'alores444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>/C
Ta.la B4>0: Resultados datos de entrenamiento )ara CC )ersonas con >D auto'ectores>/D
Ta.la B4,/: Resultados datos de test )ara )ersonas CC con >D auto'ectores4444444444444444>/D
Ta.la B4,>: aP Valor de los auto'aloresU .P Varianza e:)licada en *unci8n del n&mero de
auto'alores444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>/D
'
Ta.la B4,,: Resultados datos de entrenamiento )ara CC )ersonas con >D auto'ectores>/E
Ta.la B4,-: Resultados datos de test )ara CC )ersonas con >D auto'ectores44444444444444444>/E
Ta.la B4,B: aP Valor de los auto'aloresU .P Varianza e:)licada en *unci8n del n&mero de
auto'alores444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>/G
Ta.la B4,C: Resultados datos de entrenamiento )ara CC )ersonas con >C auto'ectores>/G
Ta.la B4,D: Resultados datos de test )ara CC )ersonas con >C auto'ectores44444444444444444>/G
Ta.la B4,E: aP Valor de los auto'aloresU .P Varianza e:)licada en *unci8n del n&mero de
auto'alores444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>/0
Ta.la B4,G: Resultados datos de entrenamiento )ara ,- )ersonas con >- auto'ectores>/0
Ta.la B4,0: Resultados datos de test )ara ,- )ersonas con >- auto'ectores44444444444444444>>/
B4-/: Resultados datos de entrenamiento )ara ,- )ersonas con D auto'ectores444444444444>>>
Ta.la B4->: Resultados datos de test )ara ,- )ersonas con D auto'ectores4444444444444444444>>>
Ta.la B4-,: Resultados datos de entrenamiento )ara ,- )ersonas con ,E auto'ectores >>>
Ta.la B4--: Resultados datos de test )ara ,- )ersonas con ,E auto'ectores44444444444444444>>,
Ta.la B4-B: aP Valor de los auto'aloresU .P Varianza e:)licada en *unci8n del n&mero de
auto'alores444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>>-
Ta.la B4-C: Resultados datos de entrenamiento )ara CC )ersonas con >E auto'ectores>>-
Ta.la B4-D: Resultados datos de test )ara CC )ersonas con >E auto'ectores44444444444444444>>-
Ta.la B4-E: aP Valor de los auto'aloresU .P Varianza e:)licada en *unci8n del n&mero de
auto'alores444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>>B
Ta.la B4-G: Resultados datos de entrenamiento )ara CC )ersonas con >E auto'ectores>>B
Ta.la B4-0: Resultados datos de test )ara CC )ersonas con >E auto'ectores44444444444444444>>B
Ta.la B4B/: aP Valor de los auto'aloresU .P Varianza e:)licada en *unci8n del n&mero de
auto'alores444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>>C
Ta.la B4B>: Resultados datos de entrenamiento )ara CC )ersonas con >E auto'ectores>>C
Ta.la B4B,: Resultados datos de test )ara CC )ersonas con >E auto'ectores44444444444444444>>C
Ta.la B4B-: Resultados datos de entrenamiento )ara CC )ersonas con >E auto'ectores>>D
Ta.la B4BB: Resultados datos de test )ara CC )ersonas con >E auto'ectores44444444444444444>>D
Ta.la B4BC: Resultados datos de entrenamiento )ara CC )ersonas con >E auto'ectores>>E
Ta.la B4BD: Resultados datos de test )ara CC )ersonas con >E auto'ectores44444444444444444>>E
Ta.la B4BE: Resultados datos de entrenamiento )ara CC )ersonas con >E auto'ectores>>E
Ta.la B4BG: Resultados datos de test )ara CC )ersonas con >E auto'ectores44444444444444444>>E
'i
ndice de ilustraciones
lustraci8n ,4>: Re)resentaci8n de un )+:el44444444444444444444444444444444444444444444444444444444444444444444444C
lustraci8n ,4,: aP magen originalU .P (structura matricial de la imagen4444444444444444444444444C
lustraci8n ,4-: magen .inaria444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444D
lustraci8n ,4B: magen en escalas de grises4444444444444444444444444444444444444444444444444444444444444444444444D
lustraci8n ,4C: magen en color4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444E
lustraci8n ,4D: Re)resentaci8n gr*ica del modelo de color RG!44444444444444444444444444444444444E
lustraci8n ,4E: Re)resentaci8n gr*ica del modelo de color FSV44444444444444444444444444444444444G
lustraci8n ,4G: Re)resentaci8n gr*ica del modelo de color FS$4444444444444444444444444444444444440
lustraci8n ,40: aP magen originalU .P Fistograma imagen originalU cP magen estiradaU
dP Fistograma imagen estirada4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>>
lustraci8n ,4>/: aP magen con 7istograma ecualizadoU .P Fistograma ecualizado4444444>,
lustraci8n ,4>>: (5em)lo *iltro )aso .a5o: Hernel44444444444444444444444444444444444444444444444444444444444>-
lustraci8n ,4>,: aP magen originalU .P magen *iltrada )aso .a5o con el *iltro de la
ilustraci8n ,4>>4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>-
lustraci8n ,4>-: (5em)lo *iltro )aso alto: Hernel444444444444444444444444444444444444444444444444444444444444>B
lustraci8n ,4>B: aP magen originalU .Pmagen *iltrada )aso alto con el *iltro de la
ilustraci8n ,4>B4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>B
lustraci8n ,4>C: mgenes *iltradas con distintos *iltros detectores de .ordes: aP
Ro.ertsU .P So.elU cP $a)laciano4444444444444444444444444444444444444444444444444444444444444444444444444444444444444>C
lustraci8n ,4>D: (5em)lo de dilataci8n con elemento estructurante en el N/1/P4444444444444>D
lustraci8n ,4>E: aP magen original en escala de grisesU .P magen dilatada444444444444444444>E
lustraci8n ,4>G: aP magen .inaria originalU .P magen dilatada444444444444444444444444444444444444>E
lustraci8n ,4>0: (5em)lo de erosi8n con elemento estructurante en N/1/P444444444444444444444>G
lustraci8n ,4,/: aP magen original en escala de grisesU .P magen erosionada4444444444444>G
lustraci8n ,4,>: aP magen .inaria originalU .P magen erosionada44444444444444444444444444444444>G
lustraci8n ,4,,: aP magen .inaria originalU .P magen tras la a)ertura4444444444444444444444444>0
lustraci8n ,4,-: aP magen .inaria originalU .P magen tras el cierre4444444444444444444444444444>0
lustraci8n ,4,B: aP mgenes de carasU .P (igen*acesU cP A)ro:imaci8n de una cara
mediante com.inaci8n lineal de eigen*aces44444444444444444444444444444444444444444444444444444444444444444444,B
lustraci8n ,4,C: (s)acio de caras: D%%S NDistance *rom *aces s)aceP1 D%S NDistance
S7it7in *ace s)aceP4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444,B
lustraci8n ,4,D: Con5unto inicial de caras4444444444444444444444444444444444444444444444444444444444444444444444,E
lustraci8n ,4,E: (igen*aces calculados con las imgenes iniciales N2 V EP444444444444444444,G
lustraci8n ,4,G: (5em)lo resultado clasi*icaci8n444444444444444444444444444444444444444444444444444444444444,G
lustraci8n ,4,0: Fi)er)lanos de decisi8n )ara un )ro.lema de clasi*icaci8n de dos
clases RAguerre.ere et al4 ,//DT44444444444444444444444444444444444444444444444444444444444444444444444444444444444444--
lustraci8n ,4-/: Gra*o de )untos )rinci)ales444444444444444444444444444444444444444444444444444444444444444444-C
lustraci8n ,4->: ?)erador $!P .sico RA7onen et al4 ,//DT44444444444444444444444444444444444444444-D
lustraci8n ,4-,: F22 to)IdoSn R#e*ian et al4 >00GT444444444444444444444444444444444444444444444444444-G
lustraci8n ,4--: F22 em.e.idas RAguerre.ere et al4 ,//DT4444444444444444444444444444444444444444-0
lustraci8n ,4-B: (5em)lo de red neuronal: )erce)tr8n sim)le con n neuronas de entrada1
m neuronas en su ca)a oculta y una neurona a la salida44444444444444444444444444444444444444444444444444B-
lustraci8n ,4-C: (5em)lo de *unciones de trans*erencia4444444444444444444444444444444444444444444444444BB
lustraci8n -4>: Diagrama de .lo6ues del sistema44444444444444444444444444444444444444444444444444444444444BD
lustraci8n -4,: (5em)lo de imgenes de la .ase de datos A4444444444444444444444444444444444444444444BG
'ii
lustraci8n -4-: (5em)lo de imgenes de la .ase de datos !444444444444444444444444444444444444444444B0
lustraci8n -4B: %uncionamiento del *iltrado de mediana444444444444444444444444444444444444444444444444C,
lustraci8n -4C: (5em)lo *iltrado de mediana: aP cP mgenes originalesU .P dP mgenes
*iltradas4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444C,
lustraci8n -4D: (5em)lo com)ensaci8n de iluminaci8n: aP cP mgenes originalesU .P dP
mgenes con com)ensaci8n de iluminaci8n444444444444444444444444444444444444444444444444444444444444444444CB
lustraci8n -4E: (5em)lo de )re)rocesado: aP dP mgenes originalesU .P eP mgenes
*iltradasU cP *P mgenes resultado del )re)rocesado444444444444444444444444444444444444444444444444444444CC
lustraci8n -4G: (5em)lo detecci8n )+:eles de )iel: aP cP mgenes tras el )re)rocesadoU
.P dP magen .inaria resultado del detector de )+:eles de )iel4444444444444444444444444444444444444444CE
lustraci8n -40: aP cP mgenes .inarias de )+:eles de )ielU .P dP mgenes .inarias tras
la a)ertura con radio del elemento de estructurante igual a B44444444444444444444444444444444444444444CG
lustraci8n -4>/: aP cP mgenes .inarias tras la a)erturaU .P dP mgenes .inarias tras el
cierre con radio del elemento estructurante igual a B444444444444444444444444444444444444444444444444444444C0
lustraci8n -4>>: aP Candidato a caraU .P 2a)a de o5os de crominancia44444444444444444444444444D,
lustraci8n -4>,: aP 2a)a de o5os de crominanciaU .P 2a)a de o5os relleno4444444444444444444D-
lustraci8n -4>-: aP Candidato a caraU .P 2a)a de o5os de luminancia444444444444444444444444444DB
lustraci8n -4>B: aP Candidato a caraU .P 2a)a de o5os444444444444444444444444444444444444444444444444444DB
lustraci8n -4>C: aP Candidato a caraU .P 2a)a de o5osU cP ?5os encontrados44444444444444444DC
lustraci8n -4>D: aP Candidato a caraU .P 2a)a de .oca44444444444444444444444444444444444444444444444444DD
lustraci8n -4>E: aP Candidato a caraU .P 2a)a de .ocaU cP !ocas encontradas44444444444444DE
lustraci8n -4>G: Geometr+a del tringulo o5osI.oca4444444444444444444444444444444444444444444444444444444DG
lustraci8n -4>0: (5em)lo de o5os y .oca encontrados en una regi8n candidata a cara444D0
lustraci8n -4,/: (5em)lo imagen )romedio: aP !ase de datos AU .P !ase de datos !4 4 4EB
lustraci8n -4,>: aP (5em)lo de 'alor de los auto'alores1 .P (5em)lo de 'arianza
e:)licada44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444EC
lustraci8n -4,,: (5em)lo recu)eraci8n imagen a )artir de los auto'ectores .ase de
datos A: aP magen originalU .P >//Q 'arianza N>DC auto'ectoresPU cP 0/Q 'arianza N-C
auto'ectoresPU dP G/Q 'arianza N>D auto'ectoresPU eP E/Q 'arianza NG auto'ectoresP4444ED
lustraci8n -4,-: (5em)lo recu)eraci8n imagen a )artir de los auto'ectores .ase de
datos !: aP magen originalU .P >//Q 'arianza N>DC auto'ectoresPU cP 0/Q 'arianza NBG
auto'ectoresPU dP G/Q 'arianza N>E auto'ectoresPU eP E/Q 'arianza NE auto'ectoresP4444ED
lustraci8n -4,B: %unciones de trans*erencia utilizadas en las ca)as de la red neuronal4 E0
lustraci8n -4,C: Diagrama de .lo6ues del sistema detallado44444444444444444444444444444444444444444G>
lustraci8n -4,D: nter*az gr*ica de usuario44444444444444444444444444444444444444444444444444444444444444444444G,
lustraci8n -4,E: Selecci8n de la imagen4444444444444444444444444444444444444444444444444444444444444444444444444G,
lustraci8n -4,G: Detecci8n de la cara44444444444444444444444444444444444444444444444444444444444444444444444444444G-
lustraci8n -4,0: Resultado de la clasi*icaci8n4444444444444444444444444444444444444444444444444444444444444444G-
lustraci8n -4-/: 2ensa5e de error44444444444444444444444444444444444444444444444444444444444444444444444444444444444GB
lustraci8n -4->: magen en la 6ue se detectan 'arias caras: zona en la 6ue no 7ay caraGB
lustraci8n -4-,: magen en la 6ue se detectan 'arias caras: zona en la 6ue 7ay cara44444GC
lustraci8n B4>: (5em)lo resultado detecci8n no correcta .ase de datos A1 con radio
a)ertura , y cierre B444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444GG
lustraci8n B4,: (5em)lo de detecci8n incorrecta de 'arias caras en la misma imagen444GG
lustraci8n B4-: (5em)lo de cara incom)letas1 a)ertura radio , y cierre -/4444444444444444444G0
lustraci8n B4B: (5em)lo calidad detecci8n: aP cP a)ertura ,1 cierre BU .P dP a)ertura ,1
cierre ,/4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440/
lustraci8n B4C: (5em)lo detecci8n no correcta .ase de datos !44444444444444444444444444444444444440>
'iii
lustraci8n B4D: (5em)lo de detecci8n de 'arias caras en la misma imagen444444444444444444440>
lustraci8n B4E: (5em)lo de imgenes resultado del )roceso de detecci8n .ase de datos A
Nradio a)ertura ,1 radio cierre BP444444444444444444444444444444444444444444444444444444444444444444444444444444444444440-
lustraci8n B4G: (5em)lo de detecci8n de 'arias caras en la misma imagen .ase de datos
A444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440-
lustraci8n B40: (5em)lo resultado detecci8n alternati'a .ase de datos A: aP (5es eli)se
C/QU .P (5es eli)se ECQU cP (5es eli)se >//Q44444444444444444444444444444444444444444444444444444444444444440C
lustraci8n B4>/: (5em)lo resultado detecci8n alternati'a .ase de datos A: aP (5es eli)se
C/QU .P (5es eli)se ECQU cP (5es eli)se >//Q44444444444444444444444444444444444444444444444444444444444444440D
lustraci8n B4>>: (5em)lo de imgenes resultado del )roceso de detecci8n .ase de datos
! Nradio a)ertura ,1 radio cierre BP44444444444444444444444444444444444444444444444444444444444444444444444444444444440D
lustraci8n B4>,: (5em)lo de detecci8n de 'arias caras en la misma imagen .ase de
datos !444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444440D
lustraci8n B4>-: (5em)lo resultado detecci8n alternati'a .ase de datos !: aP dP (5es
eli)se C/QU .P eP (5es eli)se ECQU cP dP (5es eli)se >//Q44444444444444444444444444444444444444444444400
lustraci8n B4>B: (ntrenamiento de la red neuronal )ara NCC )ersonas .ase de datos A
sin )asar )or detector1 >D auto'ectores: aP (scala de grisU .P Canal RU cP Canal GU dP
Canal !44444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>/,
lustraci8n B4>C: aP Valor de los auto'aloresU .P Varianza e:)licada en *unci8n del
n&mero de auto'alores444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444>>>
lustraci8n D4>: (ntrenamiento red neuronal N,- )ersonas .ase de datos A1 )rimera *ase
del detector1 >/ auto'ectoresP: aP (scala de grisU .P Canal RU cP Canal GU dP Canal !4 >,>
lustraci8n D4,: (ntrenamiento red neuronal NCC )ersonas .ase de datos A1 detector
com)leto1 >D auto'ectoresP: aP (scala de grisU .P Canal RU cP Canal GU dP Canal !44444>,,
lustraci8n D4-: (ntrenamiento red neuronal NCC )ersonas1 .ase de datos A1 detector
com)leto1 >D auto'ectoresP: aP (scala de grisU .P Canal RU cP Canal GU dP Canal !44444>,,
lustraci8n D4B: (ntrenamiento red neuronal NCC )ersonas .ase de datos A1 detector
com)leto1 >C auto'ectoresP: aP (scala de grisU .P Canal RU cP Canal GU dP Canal !44444>,-
lustraci8n D4C: (ntrenamiento red neuronal N,- )ersonas .ase de datos !1 )rimera *ase
del detector1 >- auto'ectoresP: aP (scala de grisU .P Canal RU cP Canal GU dP Canal !4 >,-
lustraci8n D4D: (ntrenamiento red neuronal N,- )ersonas .ase de datos !1 )rimera *ase
del detector1 >- auto'ectores1 sin restar imagen )romedio en PCAP: aP (scala de grisU .P
Canal RU cP Canal GU dP Canal !44444444444444444444444444444444444444444444444444444444444444444444444444444444444>,B
lustraci8n D4E: (ntrenamiento red neuronal NCC )ersonas .ase de datos !1 detector
com)leto1 >E auto'ectoresP: aP (scala de grisU .P Canal RU cP Canal GU dP Canal !44444>,B
lustraci8n D4G: (ntrenamiento red neuronal NCC )ersonas .ase de datos !1 detector
com)leto1 >E auto'ectoresP: aP (scala de grisU .P Canal RU cP Canal GU dP Canal !44444>,C
lustraci8n D40: (ntrenamiento red neuronal NCC )ersonas .ase de datos !1 detector
com)leto1 >E auto'ectoresP: aP (scala de grisU .P Canal RU cP Canal GU dP Canal !44444>,C
lustraci8n D4>/: (ntrenamiento red neuronal NCC )ersonas .ase de datos !1 detector
com)leto1 >E auto'ectoresP: aP (scala de grisU .P Canal RU cP Canal GU dP Canal !44444>,D
lustraci8n D4>>: (ntrenamiento red neuronal NCC )ersonas .ase de datos !1 detector
com)leto1 >E auto'ectoresP: aP (scala de grisU .P Canal RU cP Canal GU dP Canal !44444>,D
lustraci8n D4>,: (ntrenamiento red neuronal NCC )ersonas .ase de datos !1 detector
com)leto1 >E auto'ectoresP: aP (scala de grisU .P Canal RU cP Canal GU dP Canal !44444>,E
i:
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
1. N!R"DUCC#N
1.1. C"N!E$!" % M"!&AC#N
Con la e'oluci8n de las tecnolog+as asociadas a la in*ormaci8n1 nuestra sociedad
est cada d+a ms conectada electr8nicamente4 $a.ores 6ue tradicionalmente eran
realizadas )or seres 7umanos son1 gracias a las me5oras tecnol8gicas1 realizadas )or
sistemas automatizados4 Dentro de la am)lia gama de )osi.les acti'idades 6ue )ueden
automatizarse1 a6uella relacionada con la ca)acidad )ara esta.lecer la identidad de los
indi'iduos 7a co.rado una gran im)ortancia y como consecuencia directa1 la .iometr+a
se 7a trans*ormado en un rea emergente4
$a .iometr+a es la ciencia 6ue se dedica a la identi*icaci8n de indi'iduos a )artir
de una caracter+stica anat8mica o un rasgo de su com)ortamiento4 !usca o.tener1
clasi*icar y utilizar la in*ormaci8n de estas caracter+sticas Nanat8micas o de
com)ortamientoP )ara reconocer e identi*icar a las )ersonas1 restringir el acceso a sitios
no )ermitidos1 controlar 7orarios en em)resas1 autenticar in*ormaci8n1 y muc7as otras
a)licaciones4 Para esto utiliza e6ui)os electr8nicos 6ue desarrollan las mediciones
.iomtricas1 y algoritmos 6ue )ermiten digitalizar1 clasi*icar y almacenar la in*ormaci8n
)ara )oder utilizarla des)us4
"na caracter+stica anat8mica tiene la cualidad de ser relati'amente esta.le en el
tiem)o1 tal como una 7uella dactilar1 la silueta de la mano1 )atrones de la retina o el iris4
"n rasgo del com)ortamiento es menos esta.le1 )ues de)ende de la dis)osici8n
)sicol8gica de la )ersona1 )or e5em)lo la *irma4
#o cual6uier caracter+stica anat8mica )uede ser utilizada con :ito )or un
sistema .iomtrico4 Para 6ue esto sea as+ de.e cum)lir con las siguientes caracter+sticas:
Universalidad, Unicidad, Permanencia y Cuantificacin RSe.>/T4
A continuaci8n se muestra una ta.la en la 6ue se recogen las di*erentes
caracter+sticas de algunos sistemas .iomtricos4
Tabla 1.1 Caracter!sticas de los sistemas biomtricos "#eb$%
&'o
(iris)
&'o
(retina)
*uellas
dactilares
+eometr!a
de la mano
,scritura
y firma
-o. Cara
/iabilidad
2uy
alta
2uy alta Alta Alta 2edia Alta Alta
/acilidad de
uso
2edia !a5a Alta Alta Alta Alta Alta
Prevencin
de ata0ues
2uy
alta
2uy alta Alta Alta 2edia 2edia 2edia
1ceptacin 2edia 2edia Alta Alta 2uy alta Alta 2uy Alta
,stabilidad Alta Alta Alta 2edia !a5a 2edia 2edia
"n cam)o im)ortante en el desarrollo de los sistemas .iomtricos es el de la
recu)eraci8n de in*ormaci8n1 ya 6ue al *in y al ca.o la .iometr+a consiste en recu)erar
>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
la in*ormaci8n so.re 6uin es una )ersona4 2s concretamente1 en relaci8n con el
reconocimiento de caras tiene gran im)ortancia la in'estigaci8n so.re la recu)eraci8n
de imgenes4
(n general1 la recu)eraci8n de imgenes )uede 7acerse tanto .asada en te:to
como .asada en contenido4 $a recu)eraci8n .asada en te:to re6uiere una descri)ci8n
manual de la imagen1 )ero esta descri)ci8n normalmente es am.igua1 incom)leta y
consume muc7o tiem)o4 De.ido a estos incon'enientes se desarrolla la recu)eraci8n de
imgenes .asada en contenido NC!RP1 6ue utiliza tcnicas 6ue )ermiten reconocer la
com)osici8n y el contenido de las imgenes1 y utilizar su )ro)io contenido )ara
conseguir la recu)eraci8n4
(l reconocimiento de caras es un sistema .iomtrico 6ue tiene im)ortantes
'enta5as so.re otros sistemas de este ti)o ya 6ue es un mtodo no intrusi'o1 el su5eto no
siente in'adida su intimidad1 no tiene 6ue realizar ninguna acci8n )ara identi*icarse o
someterse a ning&n ti)o de anlisis4 ?tra 'enta5a de este ti)o de sistemas es 6ue
)ermiten eliminar la memorizaci8n de c8digos y los consiguientes riesgos de )rdida1
ol'ido o su)lantaci8n4 Adems un sistema de este ti)o e'itar+a la necesidad de lle'ar
documentaci8n Ntar5eta1 )asa)orte1 D#1 etcU .astar+a con acercarse a una cmara
*otogr*ica4
(l ser 7umano desarrolla de *orma *cil y e*icaz el reconocimiento de caras1 est
acostum.rado a reconocer a otros seres 7umanos )or los rasgos *aciales1 )ero esta
a)arente sim)licidad no es traslada.le al reconocimiento automtico de caras1 ste es
a&n un )ro.lema di*+cil de resol'er4 Aun6ue desde 7ace ms de ,/ aos se 7an realizado
numerosas in'estigaciones1 se 7an )u.licado gran n&mero de art+culos y se 7an
cele.rado numerosas con*erencias1 a&n no se )uede a*irmar 6ue los resultados de los
sistemas de reconocimiento arti*iciales )uedan ser com)arados con los del
reconocimiento realizado )or 7umanos4
$os sistemas de reconocimiento automtico de caras s8lo *uncionan de *orma
razona.le cuando se dis)one de su5etos cola.orati'os1 es decir1 6ue *acilitan su
reconocimiento1 no enmascarando la cara4 $a )rctica totalidad de los sistemas s8lo
*uncionan .ien en condiciones de la.oratorio1 ya 6ue son muy sensi.les a cam.ios de
)unto de 'ista1 )osici8n del su5eto o de las cmaras1 iluminaci8n1 etc4 ?tro
incon'eniente de la mayor+a de sistemas automticos de reconocimiento de caras es 6ue
7an sido )ro.ados con .ases de datos 6ue contienen un n&mero .a5o de su5etos1 muy
)ocos en com)araci8n de los 6ue de.er+a ser ca)az de e:aminar un sistema 6ue
estu'iera en recintos con gran a*luencia de )ersonas1 como aero)uertos1 estadios o
similares4
A )esar de estas di*icultades1 el gran n&mero de )osi.les a)licaciones )rcticas
6ue )uede tener el reconocimiento automtico de caras 7a 7ec7o 6ue se in'estigue
con5untamente en distintas reas como la 'isi8n )or ordenador1 en el anlisis y
)rocesado de imgenes1 el reconocimiento de )atrones1 etc4 Como se 7a comentado
anteriormente1 un rea muy relacionada con el reconocimiento de caras es la
recu)eraci8n de imgenes Nms concretamente la recu)eraci8n de imgenes .asada en
contenidosP1 )or lo 6ue los a'ances 6ue se )roducen en am.os cam)os y las
in'estigaciones 6ue se realizan tienen una gran in*luencia de uno en el otro4
$as a)licaciones 6ue tiene el reconocimiento automtico de caras se )ueden
agru)ar en >/ escenarios1 aun6ue stos no son &nicos ni e:7austi'os4
,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Tabla 1.$ ,scenarios de aplicacin del reconocimiento de caras "2tan et al. $334%
Cate5or!a ,scenario de e'emplo
denti*icaci8n de cara
Carns de conducir1 )rogramas de derec7o1
inmigraci8n1 )asa)ortes1 registro de 'otos1
registro de la seguridad social
Control de acceso
Acceso de 'e7+culos1 *acilidad de acceso1
acceso a ordenadores1 acceso a )rogramas de
ordenador1 acceso a redes de ordenadores1
acceso a )rogramas online
Seguridad
Alerta terrorista1 sistemas de seguridad a
.ordo1 arc7i'os mdicos1 seguridad de
ordenadores1 seguridad en nternet
Vigilancia
Vigilancia en )lantas nucleares1 'igilancia en
)arHing1 'igilancia en los 'ecindarios
Smart cards Autenti*icaci8n de usuario
A)licaciones en la ley
Reconocimiento de criminales1 identi*icaci8n
de esta*adores en casinos1 *raude a la
seguridad social
!ases de datos
Catalogaci8n y recu)eraci8n de caras1
eti6uetado automtico de caras1 clasi*icaci8n
de caras
Gesti8n multimedia
!&s6ueda en .ases de caras1 resumen y
segmentaci8n de caras .asadas en '+deo
nteracci8n 7om.reIm6uina Juegos interacti'os
?tros
Veri*icaci8n de *otos antiguas1 transmisi8n de
imgenes de .a5a tasa de .it
1.'. "()E!&"S DE* +R"%EC!"
(l o.5eti'o de este )royecto es realizar el diseo y la im)lementaci8n de un
)rototi)o de un sistema de reconocimiento de caras 7umanas1 en concreto1 un sistema
.idimensional .asado en imgenes estticas a color4
(l o.5eti'o )rinci)al es1 dada una .ase de datos de *otogra*+as de )ersonas y una
*otogra*+a de )rue.a1 encontrar a la )ersona de la *otogra*+a de )rue.a entre las 6ue 7ay
en la .ase de datos1 dando como resultado las cinco )ersonas de la .ase de datos 6ue
ms se )arecen a la )ersona de la *otogra*+a de )rue.a4
Para alcanzar el o.5eti'o de este tra.a5o se estudian y se im)lementan los
algoritmos necesarios )ara lle'ar a ca.o el reconocimiento de caras4 (l )ro.lema del
reconocimiento de caras 7umanas se )uede di'idir en dos su.tareas 6ue de.en
resol'erse )or se)arado4
$a )rimera *ase es el )roceso de detecci8n de caras1 es decir1 dada una imagen
-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
determinar si en ella a)arecen su.imgenes 6ue re)resentan caras 7umanas y
localizarlas )ara su )osterior tratamiento4 Tras esta *ase 'iene la de reconocimiento de
caras 7umanas1 donde se trata de asignar una identidad a las caras o.tenidas en la *ase
anterior4 (stas dos *ases de.en ir siem)re unidas1 no es )osi.le un reconocimiento de
caras si stas no 7an sido )re'iamente detectadas4
(n este )royecto se utilizan dos .ases de datos distintas )ara )oder realizar una
com)araci8n entre los resultados o.tenidos con cada una de ellas4
"na .ase de datos est *ormada )or *otogra*+as tomadas .a5o condiciones
controladas4 (n la imagen a)arece una cara Ny s8lo unaP 6ue ocu)a la mayor )arte de la
imagen1 en general situada en el centro1 y adems la imagen de la cara es *rontal4 (l
*ondo de la imagen es el mismo )ara todas las *otogra*+as 6ue *orman la .ase de datos y
todas son del mismo tamao4
$a segunda .ase de *otogra*+as utilizada est *ormada )or imgenes de
)ersona5es *amosos tomadas de nternet1 en concreto de Google mage4 Se 7a )rocurado
6ue en las *otogra*+as seleccionas a)arezca una sola cara1 6ue ocu)e la mayor )arte de la
imagen y 6ue est lo ms centrada )osi.le1 )ero al ser imgenes 6ue no estn tomadas
en un am.iente controlado1 cada una )uede tener un tamao distinto1 adems de la cara
)ueden a)arecer )arte del cuer)o1 el *ondo de las imgenes no es uni*orme ni es igual
)ara todas1 etc4
Con estas dos .ases de datos distintas se )odr com)ro.ar las di*erencias de
e*iciencia del sistema de reconocimiento de caras ante situaciones *a'ora.les de
reconocimiento y situaciones com)licadas4
1.,. ES!RUC!URA DE *A MEM"RA
(l contenido de la )resente memoria est di'idido en los siguientes ca)+tulos4
Cap!tulo 1 6ntroduccin.
ntroducci8n general1 )resentaci8n de los o.5eti'os y descri)ci8n de la estructura de la
memoria del )royecto4
Cap!tulo $ ,stado del 1rte.
Desarrolla el estado del arte del reconocimiento *acial1 dando un re)aso a las distintas
tcnicas e:istentes tanto )ara la detecci8n de caras dentro de una imagen1 como )ara el
reconocimiento )ro)iamente dic7o4 Adems introduce algunos conce)tos so.re
imgenes digitales y su )rocesamiento4
Cap!tulo 7 8ise9o e 6mplementacin.
Descri.e los mtodos utilizados )ara el sistema de reconocimiento1 as+ como su
im)lementaci8n con 2atla.4
Cap!tulo 4 :esultados.
2uestra los resultados e:)erimentales o.tenidos en la e'aluaci8n del sistema4
Cap!tulo ; Conclusiones y <!neas /uturas.
Re'isi8n de los o.5eti'os )ro)uestos y )osi.les tra.a5os *uturos como continuaci8n a
este Proyecto %in de Carrera4
B
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
'. ES!AD" DE* AR!E
(n este ca)+tulo se 'an a introducir )rimeramente una serie de conce)tos
generales so.re la re)resentaci8n y )rocesado 6ue 7ay 6ue tener en cuenta a la 7ora de
tra.a5ar con imgenes4 Posteriormente se realizar una descri)ci8n de las tcnicas
e:istentes )ara la detecci8n y reconocimiento de caras en imgenes4 Tam.in se
e:)licarn algunos conce)tos .sicos so.re las redes neuronales ya 6ue sern utilizadas
en la *ase de reconocimiento4
'.1. C"NCE+!"S GENERA*ES
(l )royecto est enmarcado dentro del cam)o de la 'isi8n com)utacional1 )or lo
6ue se 'an a introducir algunos de los elementos .sicos de la re)resentaci8n de
imgenes4
'.1.1. +-xel
(s la a.re'iatura de las )ala.ras inglesas =picture element>4 (s el menor de los
elementos de una imagen al 6ue se )uede a)licar indi'idualmente un color o una
intensidad o 6ue se )uede di*erenciar de los otros mediante un determinado
)rocedimiento4
6lustracin $.1 :epresentacin de un p!xel
'.1.'. magen digital
"na imagen digital se com)one de una agru)aci8n de )+:eles1 cada uno con un
'alor de intensidad o .rillo asociado4 "na imagen digital se re)resenta mediante una
matriz .idimensional1 de *orma 6ue cada elemento de la matriz se corres)onde con cada
)+:el en la imagen N'er ilustraci8n ,4,P4
a) b)
6lustracin $.$ a) 6ma5en ori5inal? b) ,structura matricial de la ima5en
C
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
'.1.,. Clasi.icaci/n de im0genes digitales
De)endiendo del rango de los 'alores 6ue )ueda tomar cada )+:el )odemos
distinguir los siguientes ti)os de imgenes:
mgenes .inarias : el rango est *ormado )or los 'alores negro o .lanco R/ >T
&nicamente4 (n la ilustraci8n ,4- se muestra una imagen de este ti)o4
6lustracin $.7 6ma5en binaria
mgenes de intensidad : tam.in conocidas como imgenes en escala de grises1
e:isten 7asta ,CD ni'eles de grises1 )or lo 6ue su rango se encuentra entre
R/1,CCT4
6lustracin $.4 6ma5en en escalas de 5rises
mgenes en color : todo color se )uede com)oner a )artir de tres com)onentes
.sicas4 (l contenido de cada )+:el de la imagen es una terna de 'alores1 un
'alor )or cada com)onente de color .sico4
D
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6lustracin $.; 6ma5en en color
'.1.1. Es2acios de color
Para la im)lementaci8n del )royecto se 'an a utilizar imgenes en color y sus
caracter+sticas )or lo 6ue se 'a a dar una )e6uea introducci8n so.re los distintos
es)acios de color 6ue )ueden ser utilizados en el )rocesamiento de imgenes4
"n es)acio de color es la *orma )or la 6ue se )uede es)eci*icar1 crear y
'isualizar un color4
2.1.4.1. Modelo RGB
(l modelo RG! Ndel ingls :ed1 +reen1 @lueP est .asado en la s+ntesis aditi'a
de las intensidades de luz relati'as al ro5o1 al 'erde y al azul )ara conseguir los distintos
colores1 incluyendo el negro y el .lanco Rde 2iguel ,//CT4
$a re)resentaci8n gr*ica del modelo RG! N'er lustraci8n ,4DP se realiza
mediante un cu.o unitario con los e5es R1 G y !4
6lustracin $.A :epresentacin 5rBfica del modelo de color :+@
E
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
$as imgenes con modelo RG! contienen tres )lanos de imgenes
inde)endientes1 uno )ara cada color )rimario4 (l )rocesamiento de imgenes en color1
utilizando el modelo RG!1 toma sentido cuando las imgenes se e:)resan naturalmente
en trminos de estos tres )lanos4
Actualmente muc7as cmaras a color utilizadas )ara ad6uirir imgenes digitales1
utilizan el *ormato RG!4 (sto con'ierte al modelo RG! en un modelo de gran
im)ortancia )ara el )rocesamiento de imgenes4
2.1.4.2. Modelo HSV
$as siglas F1 S y V corres)onden a Tono NhueP1 Saturaci8n NsaturationP y 'alor
NvalueP res)ecti'amente4 Tam.in se denomina FS!1 siendo ! el .rillo Nbri5hnessP4
(l sistema coordenado es cil+ndrico1 y el su.con5unto de este es)acio donde se
de*ine el color es una )irmide de .ase 7e:agonal Rde 2iguel ,//CT4
6lustracin $.C :epresentacin 5rBfica del modelo de color *2-
(l rea 7e:agonal corres)onde a un 'alor de V V >1 conteniendo los colores ms
.rillantes4 (l tono se mide como el ngulo alrededor del e5e S4 (l ro5o se sit&a a /W1 el
'erde a los >,/W y el azul a los ,B/W4 $os colores com)lementarios son a6uellos 6ue se
encuentren a >G/W del sealado4 (l rango de S se e:tiende desde / Ncoincidiendo con el
e5e de la )irmideP 7asta >1 coincidiendo con el *inal del rea 7e:agonal de la )irmide4
$a o.tenci8n de este es)acio de color a )artir del RG! es la siguiente:
( ) ( ) ( )
( ) ( ) ( ) ( )
( )
( ) @ + : -
+ + :
@ + :
2
@ + @ : + :
@ : + :
ar *
+ +
+ +

+
+

-
>
1 1 min
- >
,
>
cos
,
donde R1 G y ! son los 'alores del canal ro5o1 'erde y azul res)ecti'amente4
G
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
2.1.4.3. Modelo YcbCr
AC.Cr es una codi*icaci8n no lineal del es)acio de color RG!1 usada
com&nmente en la com)resi8n de imgenes4 (l color es re)resentado )or la luminancia
NAP y )or dos 'alores di*erentes de color NC. y CrP 6ue son caracter+sticas
colorimtricas del color4
(l )armetro A indica la luminosidad o la claridad del color N6ue se )ueden 'er
como un tono de grisP1 los )armetros C. y Cr indican el tono del color: C. u.ica el
color en una escala entre el azul y el amarillo1 Cr indica la u.icaci8n del color entre el
ro5o y el 'erde4
$a o.tenci8n de este es)acio de color a )artir del RG! es la siguiente Rde 2iguel
,//CT:
D @ Cb
D : Cr
@ + : D


+ + >>B 4 / CGE 4 / ,00 4 /
siendo R1 G y ! son los 'alores del canal ro5o1 'erde y azul res)ecti'amente4
$a sencillez de la trans*ormaci8n y la se)araci8n e:)licita de las com)onentes
de luminancia y de crominancia del color1 7acen a este es)acio de color un mtodo
atracti'o )ara la modelizaci8n del color de la )iel4
2.1.4.4. Otros modelos
2odelo F$S : Corres)onde a un modelo de color de*inido )or el tono NFueP1 la
luminosidad N$uminosityP y la saturaci8n NSaturationP4 (l es)acio se de*ine
so.re una do.le )irmide 7e:agonal4 F es el ngulo alrededor del e5e 'ertical1
situndose el ro5o a /W4 $a saturaci8n se mide radialmente 'ariando desde / a >4
$a luminosidad es / )ara el negro Nen el 'rtice in*erior de la )irmideP y > )ara
el .lanco Nen el 'rtice su)erior de la )irmideP Rde 2iguel ,//CT4
6lustracin $.E :epresentacin 5rBfica del modelo de color *2<
0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
2odelo C2A : $as siglas C2A corres)onden a C+an1 2agenta y Amarillo
NDello#P 6ue son los com)lementarios del ro5o1 'erde y azul4 (l sistema
coordenado es el mismo 6ue en el modelo RG! )ero donde 7a.+a negro a7ora
e:iste .lanco y 'ice'ersa Rde 2iguel ,//CT4
2odelo T$S : $as siglas T$S corres)onden a Tinte1 Saturaci8n y $uminancia4 $a
o.tenci8n de este es)acio de color a )artir del RG!:
( ) [ ]
( )
( )
@ + : <
5 r
5 r
T
5 r 2
>BB 4 / CGE 4 / ,00 4 /
/ gX /1
/ gX 1 B Y - , Y X Y X arctan
/ gX 1 B Y > , Y X Y X arctan
X X C Y 0
, Y >
, ,
+ +

'

< +
> +

siendo r3 V r I >Y-1 g3 V g I >Y- U donde r y g son los 'alores normalizados de R y


G Rde 2iguel ,//CT:
!P G GYNR g y P YN + + + + @ + : : r
'.1.4. +rocesamiento de la imagen
(l )rinci)al o.5eti'o de las tcnicas de me5oramiento de imagen es )rocesar una
imagen con el *in de 7acerla ms adecuada )ara una determinada a)licaci8n o
)rocesamiento )osterior4 De)ende )or tanto del )ro.lema es)ec+*ico a resol'er el 6ue se
em)lee una u otra tcnica4 $os mtodos de me5ora de imagen se )ueden di'idir en dos
cam)os di*erentes: mtodos en el dominio *recuencial y mtodos en el dominio
es)acial4 $os )rimeros se .asan en modi*icar la trans*ormada de %ourier de la imagen1
mientras 6ue los segundos se .asan en mani)ulaciones directas so.re los )+:eles de la
imagen RSe.-T4
2.1.5.1. Tcnics de modi!icci"n del #isto$rm
(stas tcnicas 'an )rinci)almente en*ocadas a me5orar la 'isualizaci8n de una
imagen4 (l 7istograma de una imagen es un gr*ico 6ue o*rece una descri)ci8n glo.al
de la a)ariencia de la imagen4 (n el e5e de a.scisas se re)resenta el rango de 'alores de
)+:eles de la imagen1 mientras 6ue en el e5e de ordenadas se re)resenta el rango de
'alores 6ue )ueden tomar esos )+:eles4 $a e:)ansi8n del contraste es una de estas
tcnicas4 Consiste en 6ue1 dado un rango de 'alores de grises NNDmax 5 NDminP menor
6ue el rango dis)oni.le )or el dis)ositi'o de 'isualizaci8n NN&max 6 N7minP1 se est
)erdiendo contraste Nentendido ste como relaci8n entre los 'alores m:imo y m+nimo
de una imagenP4 Visualmente es claro el e*ecto1 al o.ser'ar 6ue no e:iste muc7a
di*erencia entre los tonos ms claros y ms oscuros4 2ediante distintas o)eraciones
matemticas se )ueden trans*ormar esos 'alores de grises en otros con un rango mayor
6ue se ada)te )lenamente a la ca)acidad del dis)ositi'o de 'isualizaci8n RSe.-T:
(stiramiento lineal : (s la *orma ms sencilla de e*ectuar el contraste4 Consiste
en .uscar una *unci8n lineal 6ue a5uste de *orma 6ue el rango #Dmin a #Dma:
se trans*orme en #Vmin a #Vma:1 )or lo tanto #Dma: V #Vma: y #Dmin V
#Vmin4 (l resto de 'alores #D sern trans*ormados en otros seg&n esa
>/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
trans*ormaci8n lineal4 De *orma general se )uede esta.lecer:
N8 b a N- +
donde a es un o**set y b una ganancia4 A como se conocen los 'alores de dos
)untos:
ma: ma: min min
N8 b a N- N8 b a N- + +
Por lo tanto los coe*icientes de la trans*ormaci8n 6uedan:
min ma:
min ma:
min ma:
ma:

N8 N8
N8 N-
a
N8 N8
N-
b

? e:)resando la trans*ormaci8n en un s8lo trmino:


N-
N8N8
min
N8
max
N8
min
N-
max
Como caso )articular de la trans*ormaci8n lineal1 ca.e destacar la
trans*ormaci8n lineal )or trozos1 6ue a)lica esta misma *8rmula no a todo el
rango de #D sino a un su.rango determinado 6ue se 6uiera en*atizar
es)ecialmenteU incluso se )ueden a)licar di*erentes estiramientos lineales1 con
di*erentes coe*icientes a distintos rangos de #D del 7istograma4
a) b)
c) d)
6lustracin $.F a) 6ma5en ori5inal? b) *isto5rama ima5en ori5inal? c) 6ma5en
estirada? d) *isto5rama ima5en estirada
>>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
(n este e5em)lo se )uede 'er como en el 7istograma de la imagen estirada 7ay
)+:eles en todo el rango de la ta.la de color1 mientras 6ue en el 7istograma de la
imagen original no se cu.re todo el rango4
(cualizaci8n del 7istograma : (l estiramiento lineal s8lo tiene en cuenta como
)armetros los 'alores m:imo y m+nimo del 7istograma original4 "na tcnica
ms de)urada )uede considerar tam.in la *orma de la distri.uci8n de
*recuencias4 As+1 el #V de cada #D est en )ro)orci8n no s8lo a su 'alor sino
tam.in a su *recuencia1 esto es1 al n&mero de )+:eles con ese determinado
'alor4 A6uellos #D con mayor n&mero de )+:eles sern los 6ue
)ro)orcionalmente ocu)en un mayor rango de 'isualizaci8n4
a) b)
6lustracin $.13 a) 6ma5en con histo5rama ecuali.ado? b) *isto5rama ecuali.ado
?.sr'ese c8mo los 'alores de los )+:eles se intentan distri.uir de *orma
uni*orme en todo el rango /I,CC4 Como no es )osi.le se)arar un 'alor
cual6uiera en dos di*erentes1 donde 7ay relati'amente gran n&mero de )+:eles se
se)ara del resto en )ro)orci8n del n&mero de )+:eles de ese 'alor4 (l resultado
'isual es muc7o ms ;.rusco<4
2.1.5.2. %iltrdo es&cil
(l *iltrado es)acial es la o)eraci8n 6ue se a)lica a las imgenes )ara me5orar o
su)rimir detalles es)aciales con el *in de me5orar la inter)retaci8n 'isual4 (5em)los
comunes incluyen a)licar *iltros )ara me5orar los detalles de .ordes en imgenes1 o )ara
reducir o eliminar )atrones de ruido4 (l *iltrado es)acial es una o)eraci8n ZlocalZ en
)rocesamiento de imagen en el sentido de 6ue modi*ica el 'alor de cada )+:el de
acuerdo con los 'alores de los )+:eles 6ue lo rodeanU se trata de trans*ormar los #D
originales de tal *orma 6ue se )arezcan o di*erencien ms de los corres)ondientes a los
)+:eles cercanos RSe.-T4
$a frecuencia espacial de*ine la magnitud de cam.ios de los datos )or unidad de
distancia en una determinada zona de la imagen4 Kreas de la imagen con )e6ueos
cam.ios o con transiciones graduales en los 'alores de los datos se denominan reas de
>,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
.a5as *recuencias4 Kreas de grandes cam.ios o r)idas transiciones se conocen como
reas de altas *recuencias4 As+1 los *iltros es)aciales se )ueden di'idir en tres categor+as:
1. /iltros paso ba'o
(n*atizan las .a5as *recuencias1 sua'izando las imgenes y su)rimiendo ruidos4
Se trata de aseme5ar el #D de cada )+:el al #D de los )+:eles 'ecinos1
reduciendo la 'aria.ilidad es)acial de la imagen4 (llo )roduce un
em.orronamiento de los .ordes1 )erdindose en nitidez 'isual de la imagen1 )ero
ganando en 7omogeneidad4
6lustracin $.11 ,'emplo filtro paso ba'o Gernel
Vemos 6ue lo 6ue se realiza es una media aritmtica de los nue'e )+:eles 6ue
com)onen la 'entana de *iltrado1 con lo 6ue se reducen los es)urios y la
'aria.ilidad de la imagen4
a) b)
6lustracin $.1$ a) 6ma5en ori5inal? b) 6ma5en filtrada paso ba'o con el filtro de la
ilustracin $.11
?tro ti)o de *iltro )asaI.a5o es el 6ue a)lica la mediana en 'ez de la media4 (s el
llamado filtro de mediana1 y )resenta la 'enta5a de 6ue como medida estad+stica1
la mediana es menos sensi.le a 'alores e:tremadamente des'iados y se
modi*ican menos los 'alores originales1 ya 6ue la mediana es en )rinci)io1 uno
de los 'alores concretos de la 'entana de *iltrado4
$. /iltros paso alto
(n*atizan las altas *recuencias1 )ara me5orar o a*ilar las caracter+sticas lineales
como carreteras1 *allas1 o l+mites en general4 Realizan )or tanto el e*ecto
contrario a los *iltros )asaI.a5os1 eliminando estos las .a5as *recuencias4
>-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6lustracin $.17 ,'emplo filtro paso alto Gernel
?tra *orma de o.tener una imagen as+ *iltrada es sustraer a la imagen original1 la
misma imagen *iltrada )asoI.a5os4 (s l8gico ya 6ue si a la imagen le restamos
los com)onentes de .a5a *recuencia1 nos 6uedaremos con las de alta *recuencia4
a) b)
6lustracin $.14 a) 6ma5en ori5inal? b)6ma5en filtrada paso alto con el filtro de la
ilustracin $.14
7. /iltros detectores de bordes
Realizan otro ti)o de o)eraciones con los datos1 )ero siem)re con el resultado de
en*atizar los .ordes 6ue rodean a un o.5eto en una imagen1 )ara 7acerlo ms
*cil de analizar4 (stos *iltros t+)icamente crean una imagen con *ondo gris y
l+neas .lancas y negras rodeando los .ordes de los o.5etos y caracter+sticas de la
imagen4
%iltro Ro.erts: (m)lea la di*erenciaci8n como mtodo )ara calcular el grado
de se)araci8n entre ni'eles de grises 'ecinos4 Concretamente1 y )ara realizar
una di*erenciaci8n .idimensional1 se e*ect&a la o)eraci8n:
%iltro So.el: (ste *iltro im)lementa la siguiente o)eraci8n:
donde:
Siendo Ai los )+:eles de la 'entana en las )osiciones:
>B
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
%iltro $a)laciano: (ste *iltro calcula la segunda deri'ada1 6ue a )artir de la
e:)resi8n del o)erador $a)laciano )odemos a)ro:imar:
$o 6ue es lo mismo 6ue usar el Hernel:
%iltro direccional: Seleccionando adecuadamente los 'alores del Hernel1
)odemos o.tener el e*ecto de e:traer .ordes en una determinada direcci8n1
mientras 6ue los .ordes en el resto de direcciones no se 'en tan resaltados4
a) b) c)
6lustracin $.1; 6mB5enes filtradas con distintos filtros detectores de bordes a)
:oberts? b) 2obel? c) <aplaciano
2.1.5.3. %iltrdo en !rec'enci
(n el dominio *recuencial tam.in )uede realizarse el )roceso de *iltrado1 con
mayor grado de com)rensi8n de lo 6ue se est 'iendo1 ya 6ue en una imagen en el
dominio *recuencial se sa.e d8nde se encuentran los distintos rangos de *recuencias4 De
esta *orma1 en 'ez de realizar la con'oluci8n1 se e*ect&a su o)eraci8n corres)ondiente
en el dominio *recuencial: el )roducto RSe.-T4
$os resultados 6ue se o.tienen son muy )arecidos a los 6ue se o.tienen con el
*iltrado es)acial Ncon'oluci8nP )ero en este caso se tra.a5a con otras 'aria.les y
conce)tos di*erentes4
>C
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
2.1.5.4. %iltros mor!ol"$icos
$a mor*olog+a matemtica es un mtodo no lineal de )rocesar imgenes digitales
.asndose en la *orma4 Su )rinci)al o.5eti'o es la cuanti*icaci8n de estructuras
geomtricas4 A6u+ los *iltros tam.in 'ienen de*inidos )or su Hernel1 )ero no es un
Hernel de con'oluci8n sino un elemento estructurante RSe.-T4
1. 8ilatacin
(ste o)erador es com&nmente conocido como ;relleno<1 ;e:)ansi8n< o
;crecimiento<4 Puede ser usado )ara rellenar ;7uecos< de tamao igual o menor
6ue el elemento estructurante con la 6ue se o)era la dilataci8n4
"sado con imgenes .inarias1 donde cada )+:el es > o /1 la dilataci8n es similar
a la con'oluci8n4 So.re cada )+:el de la imagen se su)er)one el origen del
elemento estructurante4 Si el )+:el de la imagen no es cero1 cada )+:el 6ue cae en
la estructura es aadido al resultado a)licando el o)erador XorX4
Con la notaci8n:
re)resentando la dilataci8n de una imagen A )or un elemento estructurante !1 se
)uede escri.ir:
Donde (1)b re)resenta la traslaci8n de A )or .4 ntuiti'amente1 )ara cada
elemento no cero .i15 de !1 A es trasladado i15 y sumado a C usando el o)erador
XorX4 Por e5em)lo:
6lustracin $.1A ,'emplo de dilatacin con elemento estructurante en el (3,3)
"sado con imgenes en escala de grises1 la dilataci8n se e*ect&a tomando el
m:imo de una serie de sumas4 Puede ser usado )ara im)lementar el o)erador de
;m:ima 'ecindad< con la *orma de la 'ecindad dada en el elemento
estructurante4
>D
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
a) b)
6lustracin $.1C a) 6ma5en ori5inal en escala de 5rises? b) 6ma5en dilatada
a) b)
6lustracin $.1E a) 6ma5en binaria ori5inal? b) 6ma5en dilatada
$. ,rosin
$a erosi8n es lo o)uesto a la dilataci8nU realiza con el *ondo lo 6ue la dilataci8n
al )rimer )lano4 Tam.in en este caso1 e:iste un elemento estructurante 6ue se
utiliza )ara o)erar con la imagen4 $os e*ectos son de ;encogimiento<1
;contracci8n< o ;reducci8n<4 Puede ser utilizado )ara eliminar islas menores en
tamao 6ue el elemento estructurante4
So.re cada )+:el de la imagen se su)er)one el origen del elemento estructurante4
Si cada elemento no cero de dic7o elemento est contenido en la imagen1
entonces el )+:el de salida es )uesto a >4 Faciendo como re)resentaci8n
de la erosi8n de una imagen A )or el elemento estructurante !1 como
re)resentaci8n de la erosi8n de una imagen A )or el elemento estructurante !1 se
)uede de*inir:
donde (1)Hb re)resenta la traslaci8n de A )or .4 ! )uede ser 'isto como una
;sonda< 6ue se desliza a lo largo de toda la imagen A1 testando la naturaleza
es)acial de A en cada )unto4 Si ! trasladado i15 )uede ser contenido en A
N)oniendo el origen de ! en i15P1 entonces i15 )ertenece a la erosi8n de A )or !4
Por e5em)lo:
>E
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6lustracin $.1F ,'emplo de erosin con elemento estructurante en (3,3)
"sado en imgenes en escala de grises1 la erosi8n se e*ect&a tomando el m+nimo
de una serie de di*erencias4 Puede ser usado )ara im)lementar el o)erador de
;m+nima 'ecindad< con la *orma de la ;'ecindad< dada )or el elemento
estructurante4
a) b)
6lustracin $.$3 a) 6ma5en ori5inal en escala de 5rises? b) 6ma5en erosionada
a) b)
6lustracin $.$1 a) 6ma5en binaria ori5inal? b) 6ma5en erosionada
7. 1pertura y cierre
$a ;a)ertura< No)eningP de una imagen ! )or un elemento estructurante [1 se
de*ine como:
>G
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
a) b)
6lustracin $.$$ a) 6ma5en binaria ori5inal? b) 6ma5en tras la apertura
(l ;cierre< NclosingP de la imagen ! )or elemento estructurante [ se de*ine
como:
a) b)
6lustracin $.$7 a) 6ma5en binaria ori5inal? b) 6ma5en tras el cierre
(l resultado de a)licar iterati'amente dilataciones y erosiones es la eliminaci8n
del detalle es)ec+*ico en la imagen menor 6ue el elemento estructurante1 sin la
distorsi8n geomtrica glo.al de caracter+sticas no su)rimidas4 Por e5em)lo1
;a.rir< una imagen con una estructura en disco1 sua'iza los contornos1 rom)e
istmos y elimina )e6ueas islas1 )icos y ca.os4 ;Cerrar< una imagen con un
elemento estructurante en *orma de disco1 elimina )e6ueos agu5eros y rellena
.rec7as en los contornos4
2.1.5.5. %iltros de te(t'r
2uc7as imgenes contienen regiones caracterizadas )or 'ariaciones del ni'el de
gris1 ms 6ue )or un 'alor &nico de grises4 $a ;te:tura< se re*iere )recisamente a la
'ariaci8n es)acial del ni'el de gris de una imagen como *unci8n de escala es)acial4 Para
6ue los )+:eles de una determinada rea )uedan ser de*inidos como te:turalmente
di*erentes1 sus ni'eles de gris de.en ser ms 7omogneos como unidad 6ue reas de
di*erente te:tura RSe.-T4
>0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
De todas *ormas1 el conce)to de te:tura es .astante intuiti'o4 (s tan di*+cil
de*inirlo como calcularlo4 2ientras 6ue el ni'el de gris de un )+:el est )er*ectamente
de*inido y localizado1 la te:tura es ms elusi'a4 $a de*inici8n 6ue se 7a dado es .uena1
)ero a la 'ez 'aga4 De todas *ormas no 7ay ninguna me5or1 y los *iltros 6ue se descri.en
a continuaci8n sir'en de a)ro:imaci8n )ara tra.a5ar con esta caracter+stica4
1. /iltro de recorrido
Tam.in llamados ;de rango<4 (ste *iltro sustituye el 'alor central de la 'entana
de )rocesamiento )or la di*erencia entre el 'alor m:imo y m+nimo Nel
recorrido1 estad+sticamente 7a.landoP de los )+:eles contenidos en esa 'entana4
(l recorrido ser un 'alor )e6ueo )ara zonas ;)lanas< o te:turalmente
uni*ormes1 y ser alto en zonas de alta 'aria.ilidad4 (l tamao de la 'entana
de.e ser su*icientemente grande como )ara incluir un n&mero su*iciente de
)untos1 seg&n la escala a la 6ue 6ueramos tra.a5ar1 esto signi*ica 6ue de.e ser
mayor 6ue el tamao de cual6uier )e6ueo detalle 6ue )ueda estar )resente4 (l
resultado es una imagen donde el 'alor de cada )unto re)resenta la te:tura1 y
di*erentes regiones )ueden ser distinguidas )or di*erentes ni'eles de gris4
$. /iltro :I2 (:ootHIeanH20uare)
(ste *iltro de te:tura calcula )rimero la 'arianza de los 'alores de la 'entana1 y
sustituye el 'alor central )or el R2S de los )+:eles de la 'entana de )roceso4
7. &peradores de momento
(l )rimer y segundo momento son sim)les medidas de te:tura1 utilizando los
;momentos< del 7istograma de la 'entana de )roceso4 (l )rimer momento es una
medida del contraste de la 'entana4 (l segundo momento es una medida de la
7omogeneidad de la misma4 $as imgenes resultantes )ueden ser escaladas )ara
crear una imagen 6ue discrimina entre 'arias te:turas4
'.'. DE!ECC#N DE CARAS
A continuaci8n se 'a a realizar una .re'e descri)ci8n de los mtodos 6ue )ueden
utilizarse )ara la detecci8n de caras en una imagen1 de manera 6ue una 'ez detectada la
cara se )uedan a)licar los algoritmos de reconocimiento 6ue se 'an a 'er
)osteriormente4
Como se coment8 anteriormente el )ro.lema del reconocimiento de caras
7umanas se )uede di'idir en dos su.tareas 6ue de.en resol'erse )or se)arado4
$a )rimera *ase es el )roceso de detecci8n de caras1 es decir1 dada una imagen
determinar si en ella a)arecen su.imgenes 6ue re)resentan caras 7umanas y
localizarlas )ara su )osterior tratamiento4 Tras esta *ase 'iene la de reconocimiento de
caras 7umanas1 donde se trata de asignar una identidad a las caras o.tenidas en la *ase
anterior4 (stas dos *ases de.en ir siem)re unidas1 no es )osi.le un reconocimiento de
caras si stas no 7an sido )re'iamente detectadas4
,/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
'.'.1. !8cnicas 9asadas en rasgos
(stas tcnicas e:)lotan )ro)iedades a)arentes de la cara tal como el color de la
)iel y la geometr+a *acial4 $a detecci8n de la cara se resuel'e mani)ulando medidas de
distancia1 ngulos y reas de los rasgos 'isuales en la imagen4 $o ms im)ortante en
este ti)o de tcnicas es decidir 6u rasgos de la cara interesan )ara su estudio4
(l )ro.lema de detectar caras en una imagen tiene di*erentes as)ectos
)ro.lemticos4 Algunas de ellas son las siguientes RAguerre.ere et al4 ,//DT:
\ Pose y orientaci8n de la cara4
\ Presencia de ga*as1 .ar.a1 gorro1 etc4
\ (:)resi8n de la cara4
\ Pro.lemas de iluminaci8n Nno uni*ormidadP4
\ Condiciones generales de la imagen Nruido1 *ondo com)le5oP4
\ Cantidad desconocida de caras en la imagen4
2.2.1.1. )n*lisis de b+o ni,el
Son tcnicas 6ue tra.a5an a ni'el de )+:el4 Fay di'ersas tcnicas dentro de este
a)artado1 las ms caracter+sticas son:
Detecci8n de .ordes: $a idea se .asa en analizar las l+neas 6ue com)onen los
.ordes de una cara y utilizarlas )ara detectar los rasgos *aciales4 (l algoritmo sigue los
siguientes )asos RArmengot ,//DT:
\ Detectar los .ordes de la imagen4
\ "na 'ez o.tenidos los .ordes1 se )rocede a e*ectuar un adelgazamiento a *in de
o.tener )ara cada .orde una l+nea de un )+:el de anc7o 6ue lo re)resente4
\ %iltrado de com)onentes4 (l algoritmo se 6ueda a7ora s8lo con las com)onentes
6ue sean ms susce)ti.les de *ormar )arte de una cara4 Por e5em)lo1 .uscando
l+neas 6ue en con5unto se aseme5en a una eli)se de determinadas )ro)orciones
de anc7o y alto4
\ (ti6uetado4 "na 'ez o.tenidas dic7as com)onentes1 se eti6uetan como lado
derec7o de la cara1 lado iz6uierdo1 l+nea del )elo1 etc4
$as com)onentes eti6uetadas se com.inan )ara *ormar )osi.les candidatos )ara
ser una cara1 decisi8n 6ue toma una *unci8n de coste1 6ue utiliza la )ro)orci8n urea
)ara sus clculos4 (ste algoritmo es ine*iciente si la cara no est de *rente4
n*ormaci8n de grises: Tra.a5a so.re la idea de 6ue rasgos *aciales tales como las
ce5as1 las )u)ilas y los la.ios a)arecen como zonas ms oscuras de la imagen 6ue las
zonas 6ue corres)onden a las regiones *aciales 6ue los rodean4 (ste algoritmo se
com)one de las siguientes )artes RArmengot ,//DT:
\ Aumentar el contraste de la imagen4 De esta *orma se resalta a&n ms la
di*erencia de luminosidad entre las citadas )artes de la cara4
\ "m.ralizaci8n NThresholdin5)4 (l algoritmo se 6ueda s8lo con las zonas de la
imagen cuyo 'alor de gris su)ere un cierto um.ral4
,>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
\ Detecci8n de caras mediante el uso de )lantillas )onderadas4 Fasta a6u+ se 7a
o.tenido una imagen com)uesta )or multitud de ;manc7as< negras4 (ste )aso
trata de com)arar la distri.uci8n de esas manc7as con las manc7as ;ti)o< de una
cara1 usando )lantillas4 Fay 'arias )ro)uestas de )lantillas1 algunas se .asan en
detectar )rimero las zonas de los o5os y a )artir de a7+ intentar detectar el resto
de com)onentes4 ?tros mtodos tratan de .uscar m:imos locales1 como la
)unta de la nariz4
(ste algoritmo )roduce di*erentes resultados en *unci8n del color de la )iel del
su5eto 6ue a)arece en la imagen4 Para corregir este )ro.lema1 e:iste una tcnica similar
aun6ue ms )otente 6ue usa la in*ormaci8n del color4
(n este )royecto se 'an a utilizar tcnicas de este ti)o )ara la detecci8n de la
cara4 Como se 7a dic7o1 las tcnicas 6ue usan la in*ormaci8n del color son ms
)otentes1 as+ 6ue a)ro'ec7ando 6ue las imgenes de las 6ue se dis)one son en color1 se
utilizar esa in*ormaci8n4
Posteriormente en el ca)+tulo de Diseo e m)lementaci8n se e:)licar con ms
detalle las tcnicas concretas utilizadas )ara la detecci8n1 tanto de zonas de )iel como
de zonas como los o5os y la .oca1 y su a)licaci8n4
V+deo: (n una secuencia de '+deo es ms *acti.le la localizaci8n de o.5etos en la
imagen RArmengot ,//DT4 "na de las me5ores *ormas es mediante di*erencia de
*otogramas4 (:isten tcnicas 6ue miden 'ariaciones 'erticales y 7orizontales )ara
encontrar los o5os4 Detectar contornos de una escena en mo'imiento es ms sencillo4 Se
utilizan *iltros es)acio tem)orales de gaussiana )ara encontrar los .ordes de la cara y el
cuer)o4
2edidas generalizadas: Se .asan en el 7ec7o de 6ue la *orma de la cara es
simtrica y se utilizan medidas de simetr+a de la imagen RArmengot ,//DT4
2.2.1.2. )n*lisis de rs$os
(l )ro.lema del anlisis a .a5o ni'el es 6ue )uede )ro)orcionar in*ormaci8n
am.igua1 )or e5em)lo1 si a)arecen en la imagen o.5etos 6ue tengan un color similar al
del modelo de color de )iel utilizado4
(l anlisis de rasgos se .asa en la geometr+a de la cara )ara caracterizar y
)osteriormente 'eri*icar rasgos a *in de e'itar dic7a am.ig]edad4
!&s6ueda de rasgos: "no de los )osi.les algoritmos es el siguiente RArmengot
,//DT:
\ !&s6ueda de la )arte su)erior de la ca.eza4 Se e*ect&a una 7i)8tesis so.re lo 6ue
)uede ser una )osi.le l+nea del )elo en lo alto de la *rente4 Puede ser di*+cil si la
)ersona tiene )elo cu.riendo zonas de la *rente4
\ !&s6ueda de los o5os4 A )artir de dic7a l+nea e*ect&a un .arrido 7acia a.a5o
tratando de .uscar zonas donde la densidad de gris aumente y disminuya
.ruscamente en el )lano 7orizontal4 Dic7as zonas corres)onden con las )u)ilas4
,,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
%alla si el indi'iduo usa ga*as1 si uno de los o5os no a)arece )or cual6uier
moti'o1 o si la imagen est rotada4
\ "so de )lantillas *le:i.les4 $a distancia entre la l+nea del )elo y el )lano de los
o5os se usa como medida de re*erencia )ara inicializar una )lantilla *le:i.le 6ue
cu.re el resto de rasgos1 como la nariz y la .oca4 $a )lantilla trata entonces de
a5ustarse a dic7os rasgos usando una *unci8n de costes .asada en .ordes4
Anlisis de constelaciones: Se .asa en el uso de un modelo )ro.a.il+stico 6ue
estudia la )osici8n es)acial de los rasgos *aciales1 intentando .uscar )atrones 6ue se
aseme5en a una cara RArmengot ,//DT4
2.2.1.3. )n*lisis de !orms cti,s
Se .asan en re)resentar la imagen en rasgos de alto ni'el )ara )osteriormente
interactuar con rasgos locales de la imagen No5os1 .rilloP y gradualmente de*ormarla
7asta ada)tarla a la *orma de los rasgos4
2naGes: Se usan com&nmente )ara localizar el contorno de la cara4 Se .asan en
la minimizaci8n de una *unci8n de energ+a )ara ada)tar el modelo4 Se inicializa una
snaGe ante una cara inminente1 y )osteriormente se 'a cerrando a los contornos de la
imagen asumiendo la *orma de la cara RAguerre.ere et al4 ,//DT4
Plantillas de*orma.les: (s el siguiente )aso1 usando las snaGes )ara encontrar
ms rasgos *aciales adems del contorno de la cara4 Por e5em)lo1 se )ueden encontrar
los o5os usando )ara las snaGes un mecanismo de de*ormaci8n 6ue incluye el clculo de
gradientes de una *unci8n de energ+a4
'.'.'. !8cnicas 9asadas en la imagen
(n estas tcnicas el o.5eto de estudio es la imagen misma4 (l conocimiento
)re'io se incor)ora im)l+citamente en es6uemas de entrenamiento4 Se tra.a5a
directamente con una re)resentaci8n de la imagen a la 6ue se le a)lican algoritmos de
entrenamiento y anlisis4
2.2.2.1. Mtodos bsdos en s'bes&cios
Consideran las imgenes de caras 7umanas como un su.es)acio lineal de un
es)acio mayor Nde todas las imgenesP4 $a .ase del mtodo es la siguiente RSe.>T:
\ Construir la .ase can8nica4 Partiendo de un con5unto de imgenes 6ue
re)resentan caras Ny s8lo carasP1 se encuentran los com)onentes )rinci)ales de
una cara1 e:)resados en trminos de auto'ectores1 a6u+ llamados ei5enfaces4
Cada cara del con5unto anterior )uede ser a)ro:imada )or una com.inaci8n
lineal de las ei5enfaces usando los )esos a)ro)iados4
,-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
a)
b)
c)
6lustracin $.$4 a) 6mB5enes de caras? b) ,i5enfaces? c) 1proximacin de una cara
mediante combinacin lineal de ei5enfaces
\ Detecci8n de caras4 Tomando la imagen glo.al como )unto de )artida1 se
intentan re)resentar todos los elementos de la imagen en el es)acio de las
ei5enfaces4 Cada *racci8n de la imagen re)resentada )roduce un error residual
llamado ;distancia desde el es)acio de las caras< ND%%S: 8istance from faces
spaceP4 ?.ser'ando los 'alores m+nimos de estas distancias se )uede determinar
la )osici8n de las caras en la imagen4
6lustracin $.$; ,spacio de caras 8//2 (8istance from faces space), 86/2 (8istance
#hithin face space)
2.2.2.2. Redes ne'ronles
$as redes neuronales se usan generalmente )ara la clasi*icaci8n de imgenes
seg&n )atrones esta.lecidos1 )or e5em)lo1 conseguir a'eriguar 6u re)resenta una
imagen .orrosa o incom)leta4 $a red neuronal se entrena usando un con5unto de
imgenes 6ue re)resentan caras de todo ti)o Nde 'arias razas1 tonos de )iel1 con y sin
,B
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
ga*as1 )endientes1 )osiciones de los la.ios y o5os1 ligeras rotaciones1 e incluso caras
7umanoidesP y otro con5unto de imgenes 6ue no re)resentan caras1 de *orma 6ue la red
neuronal )ueda esta.lecer el criterio adecuado acerca de lo 6ue es una cara y lo 6ue no
lo es4 $a res)uesta de la red neuronal ante una imagen de entrada es la de decidir si
dic7a imagen corres)onde o no a una cara1 es decir1 una res)uesta .inaria4
Cuando se trata de una imagen grande1 com)le5a1 en la 6ue )ueden a)arecer
'arios rostros1 se )rocede de la siguiente *orma RSe.>T:
>4 (sta.lecer el tamao de cara m+nimo reconoci.le en la imagen1 medido en
)+:eles4
,4 Crear una 'entana cuadrada de la imagen del tamao m+nimo esta.lecido en el
)aso anterior1 )artiendo de la es6uina su)erior iz6uierda4
-4 ntroducir la )orci8n o.tenida de la imagen en la red neuronal1 y determinar si
7ay una cara o no4
B4 Re)etir el )aso - )ara todas las )osiciones )osi.les de la 'entana de imagen1
des)lazndola 7orizontal y 'erticalmente4
C4 Re)etir desde el )aso ,1 aumentando en cada iteraci8n el tamao de la 'entana1
7asta 6ue la 'entana alcance el tamao de la imagen original4
(ste algoritmo tiene un alto )orcenta5e de aciertos4
A6u+ se 7a mostrado la utilizaci8n de las redes neuronales )ara la detecci8n de la
cara en la imagen1 como mtodo )ara determinar si en una imagen a)arece una cara o
no4 (n este )royecto se utilizarn redes neuronales en la *ase de reconocimiento Nen
lugar de en la *ase de detecci8nP como )arte de la *ase de clasi*icaci8n4 2s adelante se
darn algunas nociones .sicas so.re redes neuronales en general1 y en el ca)+tulo de
Diseo e m)lementaci8n se e:)licar su im)lementaci8n y a)licaci8n como
clasi*icador 6ue determina a 6u )ersona de la .ase se datos se corres)onden las
caracter+sticas 6ue reci.e como entrada4
2.2.2.3. Mtodos estd-sticos
Tam.in su)one un entrenamiento del algoritmo RSe.>T4 (l mtodo consiste en
calcular la 'arianza entre dos *unciones )ro.a.il+sticas de densidad Ncreadas durante el
entrenamientoP1 corres)ondientes a la )ro.a.ilidad de 6ue la imagen sea una cara1 y a la
)ro.a.ilidad de 6ue no lo sea4
'.,. REC"N"CMEN!" DE CARAS
(n este a)artado se 'a a realizar un .re'e estudio de di*erentes algoritmos
utilizados )ara el reconocimiento de caras4 $os algoritmos 6ue se 'an a 'er se )ueden
clasi*icar dentro de dos gru)os:
\ 2todos 7ol+sticos: utilizan toda la imagen de la cara como entrada al sistema de
reconocimiento1 siendo sta la unidad .sica de )rocesamiento4
\ 2todos .asados en caracter+sticas locales: Se e:traen caracter+sticas locales1
como o5os1 nariz1 .oca1 etc4 Sus )osiciones y estad+sticas locales constituyen la
,C
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
entrada al sistema de reconocimiento4
Tam.in e:isten mtodos 7+.ridos 6ue com.inan tcnicas 7ol+sticas y locales4
'.,.1. M8todos hol-sticos
Para )oder a)licar y entender muc7os de los mtodos 6ue se 'an a 'er a
continuaci8n es necesario tener unos conocimientos )re'ios so.re lge.ra y estad+stica
6ue se 'an a dar )or sa.idos4
2.3.1.1. .rinci&l Com&onent )nl/sis0 .C)
(l anlisis de com)onentes )rinci)ales es un mtodo t+)ico en el anlisis de
datos multi'ariantes cuyo o.5eti'o es la reducci8n de la dimensionalidad de los mismos4
$o 6ue trata de 7acer es analizar si dadas c muestras de un con5unto de n 'alores se
)uede re)resentar la in*ormaci8n )or un n&mero menor de 'aria.les1 construidas como
com.inaciones lineales de las originales4 (l *uncionamiento de este mtodo )uede
resumirse en el siguiente algoritmo RArmengot ,//DT:
>4 ?.tener un con5unto de datos de dimensi8n n4
,4 Calcular la media de los datos y restrsela a cada uno de ellos1 de esta *orma se
tiene unos datos cuya media es cero4
-4 Calcular la matriz de co'arianza4
B4 Calcular los ei5envectores N'ectores )ro)iosP y ei5envalores N'alores )ro)iosP de
la matriz de co'arianza4
C4 (legir las com)onentes y *ormar un 'ector caracter+stico4 Se ordenan los
eigen'alores de mayor a menor1 y se eligen los p eigen'ectores NpJnP
corres)ondientes a los mayores eigen'alores4 As+ se tiene un es)acio de menor
dimensi8n4
D4 ?.tener el nue'o con5unto de datos4 $os datos originales se multi)lican )or el
'ector caracter+stico1 as+ se tendrn los datos en trminos de los eigen'ectores
elegidos4
PCA es un mtodo general de anlisis de datos y se a)lica en el reconocimiento
de caras con alguna 'ariaci8n en el mtodo1 llamndolo ei5enfaces4 Por tanto el mtodo
6ue realmente se 'a a descri.ir en este a)artado es el de ei5enfaces4
"na imagen )uede considerarse como un 'ector de )+:eles donde el 'alor de
cada com)onente es un 'alor en escala de grises1 )or e5em)lo una imagen de ,CD:,CD
NNxNP ser un 'ector de dimensi8n DCC-D NN
$
P1 es decir la imagen estar en un es)acio
de dimensi8n DCC-D4 $as imgenes de caras no estn distri.uidas aleatoriamente en este
es)acio y )ueden ser descritas como un su.es)acio de menor dimensi8n4
$a idea del anlisis de com)onentes )rinci)ales es encontrar los 'ectores 6ue
me5or re)resentan las imgenes de caras dentro del es)acio com)leto de imgenes4
(stos 'ectores de*inen el su.es)acio de imgenes de caras NfacespaceP4
Cada 'ector de longitud N
$
es una com.inaci8n lineal de las imgenes originales4
(stos 'ectores son los eigen'ectores de la matriz de co'arianza del es)acio original de
imgenes de caras y se llaman ei5enfaces )or6ue son )arecidos a una cara4
,D
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Si se tiene un con5unto de imgenes de caras x
1
, x
$
, K, x
m
1 se )uede *ormar la
matriz L )oniendo como 'ectores columna cada imagen Ntendremos una matriz de
dimensi8n N
$
xmP4 Se calcula la media del con5unto de imgenes como:

m
i
i
x
m
>
>

1 y
se o.tiene la di*erencia entre cada 'ector y la media:

i i
x
4 A)licando PCA se
.usca un con5unto de m 'ectores ortonormales u
G
6ue descri.en la distri.uci8n de los
datos4
$os 'ectores u
G
son los eigen'ectores y los 'alores:


m
i
i
T
G G
u
m
>
P N
>

son los eigen'alores de la matriz de co'arianza:
T
m
i
T
i i
1 1
m
2

>
>

donde
[ ]
m
1 444
, >

4
(l clculo com)utacional 6ue esto im)lica es muy ele'ado1 )or eso si mJN
$
s8lo
7a.r mH1 eigen'ectores1 *acilitando as+ los clculos y )udiendo resol'er el )ro.lema
utilizando com.inaciones lineales de las imgenes4 Se calcula la matriz <M1N1
T
de
dimensi8n mxm y se .uscan los m eigen'ectores v
l
4 (stos 'ectores determinan la
com.inaci8n lineal de las m imgenes del con5unto de entrenamiento:

m
i
i li G
v u
>
^
Para el reconocimiento de una cara se de.e seguir el siguiente )rocedimiento
RTurH et al4 >00>T:
>4 ?.tener un con5unto inicial de imgenes de caras4
6lustracin $.$A Con'unto inicial de caras
,E
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
,4 Calcular la matriz <1 encontrar sus eigen'ectores y eigen'alores1 y elegir los I
Nen la )rctica se )uede utilizar IJmP eigen'ectores 6ue tienen mayores
eigen'alores4
-4 Com.inar las imgenes del con5unto de entrenamiento )ara o.tener los
eigen*aces:

m
i
i li G
v u
>
^
4
6lustracin $.$C ,i5enfaces calculados con las imB5enes iniciales (I M C)
B4 Para cada cara conocida calcular el 'ector clase [ ]
I
T
444
, >
1 donde
P N x u
T
G G
4
C4 Para una nue'a cara calcular su 'ector _ y calcular la distancia a cada clase:
, ,
P N
G G

4 "na cara es clasi*icada como )erteneciente a la clase G
cuando el m+nimo `
H
est )or de.a5o de un um.ral4 (n cual6uier otro caso la cara
es clasi*icada como desconocida4
H >/////// P minN clase cara 2i
G
<
> H D0GCE001 P minN
G
a clasi*icad no CE>GG/G/1 P minN
G

6lustracin $.$E ,'emplo resultado clasificacin


(n este )royecto se 'a a utilizar PCA como mtodo de reducci8n de
dimensionalidad4 #o se utilizar el algoritmo com)leto )ara el reconocimiento de caras1
,G
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
sino 6ue se a)licar )ara e:traer caracter+sticas de cada imagen1 y estas caracter+sticas
)asaran a una eta)a de clasi*icaci8n en la 6ue se usarn redes neuronales4 (n el ca)+tulo
de Diseo e m)lementaci8n se e:)licar y se a)licar esta e:tracci8n de caracter+sticas
mediante PCA4
2.3.1.2. 1nde&endent Com&onent )nl/sis0 1C)
CA es una generalizaci8n del mtodo PCA4 (ste mtodo trata de descom)oner
una seal o.ser'ada en una com.inaci8n lineal de *uentes inde)endientes4 2ientras 6ue
PCA decorrelaciona las seales de entrada utilizando estad+sticos de segundo orden1
CA minimiza mayores 8rdenes de de)endencia4
Se tiene una matriz de 'aria.les inde)endientes N*uentesP:
P 14441 N
> n
2 2 2
1 y una
matriz de o.ser'aciones L4 (n esta matriz de o.ser'aciones1 cada columna es el
resultado de un e:)erimento aleatorio1 y en cada *ila se tiene el 'alor de una )rue.a de
ese e:)erimento4 Como se 7a dic7o el mtodo CA trata de descom)oner la seal
o.ser'ada en una com.inaci8n de *uentes inde)endientes1 la matriz de com.inaci8n
NdesconocidaP se llamar 1: 2 1 L ^
Con el algoritmo CA se .usca la matriz de se)araci8n O1 6ue cum)le:
2 1 O L O U ^ ^ ^ 1 donde U es la estimaci8n de m:ima )ro.a.ilidad N2$P de las
com)onentes inde)endientes4
Fay dos *ormas de im)lementar el mtodo CA )ara el reconocimiento de caras:
\ Se )uede )oner en cada *ila de la matriz L una imagen di*erente1 as+ se tendr
6ue cada imagen es una 'aria.le aleatoria y los )+:eles son )rue.as4
\ ?tra o)ci8n es tras)oner la matriz L y tener en cada columna una imagen1 de
manera 6ue es este caso1 los )+:eles son 'aria.les aleatorias y cada imagen una
)rue.a4
Se 'a a 'er como se tra.a5ar+a si se decide o)tar )or la )rimera o)ci8n1 es decir1
en cada *ila de la matriz L 7ay una imagen1 y en las columnas estn los )+:eles4 Al
a)licar CA se encuentra una matriz O tal 6ue las columnas de U son tan
estad+sticamente inde)endientes como es )osi.le4 $as imgenes *uentes estimadas )or
las columnas de U son utilizadas como imgenes .ase )ara la re)resentaci8n de caras4
$o 6ue se suele 7acer )ara reducir la com)le5idad com)utacional es a)licar CA
so.re un con5unto de m Ncon manW *ilasP com.inaciones lineales de las imgenes
Na)licando )or e5em)lo PCAP1 o.teniendo una matriz de m imgenes *uente
inde)endientes en las columnas de U4 Para determinar los coe*icientes de la
com.inaci8n de las imgenes .ase se siguen los siguientes )asos R!artlett et al4 ,//DT:
P
m
b matriz 6ue contiene los m com)onentes )rinci)ales
:
m
MLNP
m
b re)resentaci8n de L en la .ase P
m
T
m m
P : L ^
c
b a)ro:imaci8n de m+nimo error cuadrtico
U O : L U P O
O O O L Cov O
6 m
T
m 6
. 6 .
^ ^
c
^
^ PP N ^N ,
>
P , Y > N



,0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
De esta manera se o.tienen los coe*icientes como @M:
m
NO
6
H1
4 Se )uede
reconocer una cara e'aluando los coe*icientes @1 utilizando )ara ello el algoritmo de
'ecinos ms cercanos Nnearest nei5hborP con el coseno como medida de similitud:
train test
train test
b b
b b
c
^
^

2.3.1.3. 2iner 3iscriminnt )nl/sis0 23)


(ste mtodo es una tcnica de a)rendiza5e su)er'isado )ara clasi*icar datos4 $a
idea central de $DA es o.tener una )royecci8n de los datos en un es)acio de menor No
incluso igualP dimensi8n 6ue los datos entrantes1 con el *in de 6ue la se)araci8n de las
clases sea la mayor )osi.le4 (s una tcnica su)er'isada ya 6ue )ara )oder .uscar esa
)royecci8n se de.e entrenar el sistema con )atrones eti6uetados4
(l escenario de tra.a5o necesario )ara a)licar este mtodo al reconocimiento de
caras se .asa en 6ue se dis)one de un con5unto de caras de entrenamiento Nx
i
P
com)uesto )or un gru)o de )ersonas con distintas e:)resiones *aciales y con di*erentes
'istas4 Por de*inici8n todas las instancias de caras de la misma )ersona estn en una
clase Nde tamao N
c
P1 y las caras de otras )ersonas di*erentes )ertenecen a distintas
clases N7a.r c clasesP1 teniendo as+ el es)acio de entrenamiento se)arado en gru)os4
Adems todas las instancias en el con5unto de entrenamiento de.en estar eti6uetadas
R(temad et al4 >00ET4
Se calcula la matriz de dis)ersi8n dentro de una clase N2
O
P y la matriz de
dis)ersi8n entre clases N2
@
P RArmengot ,//DT:
T
c i c
c c i
i @
T
c
c
c c O
x x 2
N 2
P PN N
P ^N P N




Siendo P
c
la media de cada clase y P la media total4
Se trata de o.tener un 'ector de )royecci8n #1 6ue 7aga 6ue la raz8n entre la
dis)ersi8n intraIclase y la dis)ersi8n interIclase sea m:ima4 Fa.r 6ue ma:imizar la
siguiente *unci8n o.5eti'o:
# 2 #
# 2 #
# Q
O
T
@
T
^ ^
^ ^
P N
(l 'ector # 6ue ma:imiza esta *unci8n ser a6uel 6ue cum)la la siguiente
ecuaci8n:
# 2 # 2
O @
^ ^ ^
Si la matriz 2
O
es no singular Ntiene in'ersaP se tiene un )ro.lema de 'alores
)ro)ios )ara la matriz 2
O
H1
N2
@
1 6ue )uede sustituirse en la *unci8n o.5eti'o:
G O
T
G
G @
T
G
G
O
T
@
T
@ O
# 2 #
# 2 #
# 2 #
# 2 #
# Q # # 2 2
^ ^
^ ^
^ ^
^ ^
P N ^ ^ ^
>

1 con GM1,K, d Nsiendo d la


dimensi8n de las imgenesP4
-/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
(n la e:)resi8n anterior se )uede 'er 6ue el 'ector )ro)io 6ue ma:imiza la
*unci8n es a6uel 6ue tenga un mayor 'alor )ro)io Nmayor R
G
P4
2.3.1.4. Mtodos bsdos en 4ernels
(stos mtodos son una generalizaci8n de los mtodos de anlisis de
com)onentes NPCA1 CA1 $DAP4
(n los mtodos de com)onentes se construye un su.es)acio 6ue cum)la
determinadas restricciones y luego se eli5e una .ase 6ue lo genere4 (n los mtodos de
[ernels se tienen en cuenta momentos de mayor orden sin tener un costo com)utacional
e:cesi'amente grande4
Se lle'a el )ro.lema de clasi*icaci8n a un es)acio de mayor dimensi8n donde las
clases sean linealmente se)ara.les4 Para esto se realiza lo siguiente RAguerre.ere et al4
,//DT:
>4 Se ma)ean los 'ectores de entrenamiento a tra's de una *unci8n no lineal 6ue
lle'a los )untos a un es)acio de mayor dimensi8n4
,4 Se )lantea un )ro.lema e6ui'alente al )ro.lema de PCA1 CA o $DA en dic7o
es)acio4
-4 Se resuel'e el )ro.lema e6ui'alente1 utilizando el Gernel tricG1 6ue es una
manera sim)li*icada de resol'er el )ro.lema de PCA1 CA o $DA en el es)acio
de mayor dimensi8n4 Si cum)len determinadas condiciones )articulares1 se
)ueden realizar todos los clculos de la resoluci8n del )ro.lema e6ui'alente sin
necesidad de ma)ear los 'ectores en el es)acio de mayor dimensi8n4 Para esto
e:isten di*erentes *unciones1 llamadas n&cleos NGernelsP1 6ue lo 7acen )osi.le4
2.3.1.5. 5,ol'tionr/ .'rs'it0 5.
(ste mtodo es un ti)o de algoritmo gentico 6ue trata de encontrar una .ase de
caras a tra's de la rotaci8n de e5es de*inidos en un es)acio .lanco PCA adecuado4 $a
e'oluci8n es conducida )or una *unci8n de fitness 6ue de)ende de la )recisi8n de la
clasi*icaci8n y de la 7a.ilidad )ara generalizar4
(l algoritmo (P se utiliza )ara .uscar entre las di*erentes rotaciones y 'ectores
.ase )ara encontrar un su.con5unto de 'ectores 8)timo N6ue tenga .uena )recisi8n en la
clasi*icaci8n y 7a.ilidad )ara generalizarP4
$a .ase 8)tima e'oluciona desde un con5unto R$iu et al4 ,///T de 'ectores de
una .ase (S
1
, S
$
, K, S
m
), )or un con5unto de ngulos de rotaci8n (T
1
, T
$
, K, T
m(mH1)U$
). $a
*unci8n de fitness gu+a al algoritmo so.re c8mo elegir los elementos 6ue *ormarn la
siguiente generaci8n4 Si / V T
1
, T
$
, K, T
m(mH1)U$
? a
1
, a
$
, K, a
m
re)resentan los )armetros
6ue son desarrollados )or el algoritmo1 entonces la *unci8n de fitness es:
P N P N P N / / /
s a
+
1 donde d
a
es el trmino de clasi*icaci8n1 d
s
es el trmino de
generalizaci8n y e es una constante )ositi'a 6ue determina la im)ortancia del segundo
trmino res)ecto al )rimero4
Dado un con5unto de ngulos de rotaci8n1 la .ase de 'ectores des)us de la
->
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
trans*ormaci8n es W
1
, W
$
, K, W
m
4 Si en el algoritmo se eligen l 'ectores1 X
1
, X
$
, K, X
l
1 de la
nue'a .ase1 el nue'o con5unto de caracter+sticas es: [ ] - O
T
l
444
, >
1 donde -
es el con5unto .lanco de caracter+sticas4 As+ se tienen #
1
, #
$
, K, #
l
clases con N
i
imgenes cada clase4
(l algoritmo 6ue se sigue )ara encontrar las ,PHfaces es RAguerre.ere et al4
,//DT:
>4 Reducir la dimensi8n de los datos mediante PCA4
,4 Trans*ormar el es)acio anterior )ara 6ue sea .lanco4
-4 Realizar el siguiente .ucle 7asta llegar a un n&mero m:imo de iteraciones o
encontrar la soluci8n .uscada:
aP Realizar 'arias rotaciones entre )ares de 'ectores de una .ase del es)acio y
luego seleccionar un con5unto de ellos4 Codi*icar cada rotaci8n mediante una
re)resentaci8n en )ala.ras de .its Nen los algoritmos genticos la
re)resentaci8n se 7ace en *unci8n de .itsP4
.P Calcular la *unci8n de fitness )ara medir la )recisi8n y generalizaci8n4
cP Calcular los ngulos y 'ectores 6ue ma:imizan la *unci8n4 Se guardan como
la me5or soluci8n 7asta el momento4
dP Se itera a un nue'o su.con5unto de ngulos y )or lo tanto de 'ectores
rotados4
B4 Con la .ase 8)tima 7allada se realiza el reconocimiento de caras mediante
alguna medida de similitud4
2.3.1.6. S'&&ort Vector Mc#ine0 SVM
SV2 es un mtodo genrico )ara resol'er )ro.lemas de reconocimiento de
)atrones4 Dado un con5unto de )untos en un determinado es)acio 6ue )ertenecen a dos
clases distintas1 SV2 encuentra el 7i)er)lano 6ue se)ara la mayor cantidad de )untos
de la misma clase del mismo lado4 (sto se realiza ma:imizando la distancia de cada
clase al 7i)er)lano de decisi8n1 denominado &2* N&ptimun 2eparatin5 *yperplaneP4
$os )untos ms cercanos al 7i)er)lano1 de cada con5unto en cuesti8n1 son los llamados
'ectores so)orte Nsupport vectorsP RAguerre.ere et al4 ,//DT4
-,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6lustracin $.$F *iperplanos de decisin para un problema de clasificacin de dos
clases "15uerrebere et al. $33A%
(l )ro.lema de distinguir o reconocer caras es com)licado4 $a *unci8n de
discriminaci8n 6ue se o.tiene con SV2 )ro)orciona una mayor )recisi8n en el
reconocimiento 6ue las a)ro:imaciones de ei5enfaces4 $os ei5enfaces se utilizan )ara
re)resentar las caras1 des)us se e:traen las caracter+sticas y la *unci8n de
discriminaci8n se a)rende con SV24
Se considera el )ro.lema de se)arar un con5unto de 'ectores de entrenamiento
)ertenecientes a dos clases1 (x
1
, y
1
), K, (x
<
, y
<
) RGuo et al4 ,///T. (l con5unto de 'ectores
se dice 6ue est 8)timamente se)arado )or un 7i)er)lano si est se)arado sin errores y
el margen es m:imo4 "n 7i)er)lano de se)araci8n de.e cum)lir la siguiente
restricci8n:
[ ] < i b x # y
i i
14441 > 1 > P ^ N +
$a distancia de un )unto x al 7i)er)lano es:
#
b x #
x b # d
+

^
P U 1 N
(l margen es
#
,
1 el 7i)er)lano 8)timo es uno 6ue minimiza:
,
,
>
P N # # 4
$a soluci8n al )ro.lema de o)timizaci8n1 .a5o las restricciones im)uestas1 est
dada )or el )unto de ensilladura de la *unci8n de $agrange:
[ ]

+
<
i
i i i
b x # y # b # <
>
,
f > P ^ N g
,
>
P 1 1 N
donde T
i
son los multi)licadores de $agrange4 #ormalmente se resuel'e el )ro.lema
dual 6ue es ms *cil de resol'er:
--
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
} { P 1 1 N min ma: P N ma:
1


b # < O
b #

$a soluci8n al )ro.lema dual es:





<
i
<
'
' i ' i ' i
<
i
i
x x y y
> > >
,
>
min arg

con las restricciones T


i
Y 3, i M 1, K, <U
/
>

<
i
i i
y
4 Resol'iendo la ecuaci8n1
cum)liendo las restricciones1 se determinan los multi)licadores de $agrange1 y el ?SF
est dado )or:
[ ]
s r
<
i
i i i
x x # b x y # +

^
,
>
>

donde x
r
y x
s
son los 'ectores so)orte 6ue satis*acen T
r
, T
s
Z 3, y
r
M 1, y
s
M H14
Para un nue'o dato x1 la clasi*icaci8n es: *N:P V sign NS^: O .P4
'.,.'. M8todos 9asados en caracter-sticas locales
2.3.2.1. 5lstic B'nc# Gr&# Mtc#in$0 5BGM
$a re)resentaci8n de una cara toma la *orma de gra*os eti6uetados4 $os gra*os
estn *ormados )or 'ectores y nodosU los 'ectores se eti6uetan con in*ormaci8n
geomtrica NdistanciasP y los nodos se eti6uetan con un con5unto de caracter+sticas
locales llamados 'ets4 $os 'ets se .asan en trans*ormaciones de Ga.or1 lo cual se )odr+a
tomar como un )rocedimiento de )re)rocesamiento de imgenes .asado en *en8menos
.iol8gicos4
Para una imagen 61 la trans*ormada Sa'elet de uno de sus )untos1 x1 ser
RhisHott et al >00ET:

,
_



, ,
,
,
,
,
,
,
P N

e e e
G
x
'Gx
x
G
G
Para ese )unto la trans*ormada ser una onda )lana donde G es el 'ector de onda
y [ es un )armetro 6ue relaciona el 'ector de onda con el tamao de la 'entana en la
cual est de*inida la onda )lana4 (l segundo trmino del )arntesis elimina la
com)onente continua4 "na onda1 centrada en la )osici8n x de la imagen1 se usa )ara
e:traer la com)onente Q
G
de la imagen 6(x):
G
'
G G
e a dx x x x 6 x Q

^ X P X N P X N P N

Donde a
G
es la am)litud y \
G
la *ase RCa.ello ,//BT4
(n un sistema de reconocimiento de caras 6ue utilice este mtodo1 las imgenes
de las caras de.en ser sometidas a un )roceso de normalizaci8n en el 6ue se centran los
'alores de los )+:eles en la media de la imagen original )ara o.tener una seal de media
nula4 Tam.in se realiza una normalizaci8n geomtrica1 de *orma 6ue las coordenadas
de los o5os )asan a tener un 'alor )redeterminado1 y se a5ustan los 'alores de los )+:eles
-B
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
)ara tener una seal de media nula y des'iaci8n estndar igual a uno4 Adems se
sua'izan los .ordes de la imagen4
A continuaci8n es necesario realizar la localizaci8n de los )untos )rinci)ales4
(stos )untos de*inen un gra*o so.re la cara cuyos nodos son )untos caracter+sticos 6ue
se )ueden 7a.er de*inido )re'iamente1 )or e5em)lo de *orma manual4 (n cada nodo del
gra*o se calcula la trans*ormada de Ga.or1 o.teniendo el 'et4 Cada nodo es eti6uetado
con el )unto caracter+stico y con el 'et1 mientras 6ue las aristas se identi*ican con la
distancia entre los nodos conectados4
6lustracin $.73 +rafo de puntos principales
Cuando se tiene una imagen nue'a de entrada se de.en encontrar los )untos
)rinci)ales 6ue 7acen 6ue se ma:imice la similitud entre el gra*o creado y un gra*o
modelo4 "na *orma de 7acerlo es colocando los nodos de *orma a)ro:imada en la
imagen1 luego se e:traen los 'ets de estos )untos y se calcula la similitud entre el gra*o
modelo y el gra*o imagen as+ construido4 (sta similitud se o)timiza 'ariando las
)osiciones de los nodos en la imagen4 $a *unci8n de similitud 6ue se )retende o)timizar
es:

G
G
G
G
G
G G
a a
a a
Q Q 2
, ,
X
X
P X 1 N
Con esta *unci8n de similitud1 gra*os y 'ets son atra+dos a sus )untos
corres)ondientes en la imagen utilizando el gradiente creciente de la *unci8n similitud4
Si se intenta encontrar una cara desconocida en una imagen y de*inir un gra*o
6ue la re)resente1 se usa una estructura llamada ;gra*o gru)o< Nbunch 5raphP4 (s similar
a los gra*os descritos anteriormente1 )ero en lugar de considerar un 'et )or nodo1 se une
un con5unto de 'ets1 cada uno de ellos deri'ado de una imagen *acial distinta4 Para
*ormar un gra*o gru)o1 se marcan en una colecci8n de imgenes de caras las )osiciones
de los nodos4 Se denominan )untos caracter+sticos a estas )osiciones de los nodos4 (sta
marcaci8n se realiza de *orma semiautomtica4 Cuando se em)are5a un gra*o gru)o con
una imagen1 el 'et e:tra+do de la imagen se com)ara con todos los 'ets en el
corres)ondiente gru)o 6ue *orma el gra*o gru)oU el 6ue lle'e a ca.o la me5or
corres)ondencia es seleccionado4 Si la selecci8n de imgenes es adecuada1 el gra*o
-C
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
gru)o es ca)az de re)resentar una gran 'ariedad de caras con )ro)iedades locales en
entornos reducidos4
2.3.2.2. 2ocl Binr/ .ttern0 2B.
(l o)erador $!P es una 7erramienta interesante como descri)tor de te:tura4 (ste
o)erador recorre la imagen y eti6ueta los )+:eles de la misma mediante un um.ral de la
di*erencia entre el )+:el central y sus 'ecinos1 considerando el resultado como un
n&mero .inario4 $a concatenaci8n de las eti6uetas de los 'ecinos )uede utilizarse como
descri)tor RA7onen et al4 ,//DT4
6lustracin $.71 &perador <@P bBsico "1honen et al. $33A%
$!P se utiliza )ara la descri)ci8n de la imagen de una cara4 Se construyen 'arios
descri)tores locales 6ue se com.inan en un descri)tor glo.al4
Para el caso de la imagen de una cara es im)ortante mantener in*ormaci8n so.re
la relaci8n es)acial4 Se di'ide la imagen en 'arias regiones y se e:traen los descri)tores
de cada regi8n inde)endientemente4 (stos descri)tores son concatenados )ara *ormar un
descri)tor glo.al de la cara4
(l 7istograma .sico )uede ser e:tendido a un 7istograma es)acial aumentado
6ue codi*ica la a)ariencia y la relaci8n es)acial de las regiones de la imagen4 Si tenemos
m regiones1 7ay m descri)tores 6ue se com.inan en el 7istograma es)acial aumentado1
dando como resultado un 7istograma de tamao mxn Ndonde n es la longitud del
descri)tor .sicoP4 (n este 7istograma tenemos la siguiente in*ormaci8n de la imagen:
las eti6uetas $!P )ara el 7istograma contienen in*ormaci8n so.re el )atr8n a ni'el de
)+:el1 la suma de las eti6uetas de )e6ueas regiones dan in*ormaci8n a ni'el local1 y la
concatenaci8n de los 7istogramas locales )roducen un descri)tor glo.al4
Con la com)araci8n del 7istograma es)acial aumentado se )uede realizar el
reconocimiento de imgenes de caras4
2.3.2.3. )cti,e )&&ernce Models0 ))M
Acti'e A))earance 2odel es un modelo estad+stico de la *orma y la a)ariencia
en ni'eles de gris del o.5eto de inters 6ue se )uede generalizar a casi cual6uier e5em)lo
'lido de dic7o o.5eto RAguerre.ere et al4 ,//DT4
$os modelos son entrenados con imgenes de caras en un rango de )untos de
'ista4 As+ )or e5em)lo )ara cu.rir una rotaci8n de >G/W se necesitan s8lo cinco modelos1
)ara I0/W1 IBCW1 /W N'ista *rontalP1 BCW y 0/W4 Como los modelos de iBCW y i0/W son el
re*le5o el uno del otro Nasumiendo 6ue las caras son simtricasP1 en realidad es su*iciente
con tres modelos4 "tilizando el algoritmo AA2 se )uede enca5ar una nue'a imagen en
-D
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
cual6uiera de los modelos4
(n las imgenes del con5unto de entrenamiento se marcan unos )untos de
re*erencia4 (stos )untos se re)resentan en un 'ector y se les a)lica PCA1 de manera 6ue
el modelo 6ue 6ueda es:
b P x x ^ +
1 donde x M (x
1
, K,x
n,
y
1, K,
y
n
), P es una matriz cuyas
columnas son los 'ectores unitarios corres)ondientes a los e5es de m:ima 'ariaci8n1 y
b es el 'ector de )esos Nauto'aloresP4
(:isten dos ti)os de modelos AA2 R!ergasa ,//ET:
AA2s inde)endientes
$os modelos de *orma y a)ariencia se tratan inde)endientemente4
$a *orma1 s M (x
1
, y
1,
K,x
v,
y
v
), se de*ine )or las coordenadas de los )untos 'rtice
y se )uede modelar como una *orma .ase Ns
3
P ms una com.inaci8n lineal de n 'ectores
de *orma:

+
n
i
i i
s p s s
>
/
^
4 AA2s se calculan utilizando imgenes de entrenamiento
eti6uetadas so.re las 6ue se a)lica PCA des)us de ser normalizadas4
$a a)ariencia se de*ine dentro de la *orma .ase1 s
3
1 es una imagen 1(x) de*inida
so.re los )+:eles x ] s
3
:
/
>
/
1 P N P N P N s x x 1 x 1 x 1
m
i
i i
+

AA2s com.inados
$os modelos de *orma y a)ariencia se )arametrizan con un &nico modelo4
2ientras 6ue )ara el caso de AA2s inde)endientes se usan distintos )armetros )ara la
*orma y la a)ariencia Np y RP1 en este caso se utiliza un &nico )armetro1 c M (c
1
, c
$
, K,
c
l
)


+ +
l
i
i i
l
i
i i
x 1 c x 1 x 1 s c s s
>
/
>
/
P N P N P N ^
Se calculan usando un AA2 inde)endiente y a)licando PCA so.re los
)armetros de *orma y a)ariencia a la 'ez4
#ormalmente en el caso de AA2 com.inado se necesitan menos )armetros
)ara re)resentar con igual e:actitud una imagen4
Dada una imagen de una cara se a5usta un modelo de *orma y a)ariencia y los
coe*icientes resultantes se toman como re)resentantes de la identidad )ara el
reconocimiento4 Se utiliza )ara dic7o a5uste in*ormaci8n e:tra1 )ro'eniente de la
relaci8n e:istente entre la imagen error y el error en los )armetros del modelo4
Si x es un )+:el en s
3
el )+:el corres)ondiente en la imagen de entrada 6 es
O(x?p). Para cada )+:el O(x?p) la imagen tiene una intensidad 6(O(x?p)). Se tiene una
imagen de error:

+
m
i
i i
p x O 6 x 1 x 1 x ,
>
/
PP U N N P N P N P N
Se trata de minimizar la suma de los errores al cuadrado:

/
,
PP N N
s x
x ,
-E
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
2.3.2.4. Hidden Mr4o, Models0 HMM
F22 es un con5unto de modelos estad+sticos utilizados )ara caracterizar las
)ro)iedades estad+sticas de una seal4 F22 consiste en dos )rocesos interrelacionados
RAguerre.ere et al4 ,//DT:
\ "na cadena de FarHo' su.yacente con un n&mero *inito de estados1 una matriz
de )ro.a.ilidad de transici8n de estados y una distri.uci8n de )ro.a.ilidad de
estados inicial4
\ "n con5unto de densidades de )ro.a.ilidad asociadas con cada estado4
$os elementos de F22 son R#e*ian et al4 >00GT:
N b n&mero de estados del modelo4 Si 2 es el con5unto de estados: 2 M ^2
1
, 2
$
,
K,2
N
_. (l estado del modelo en el tiem)o t est dado )or 0
t
] 2, 1 ` t ` T1 donde T es la
longitud de la secuencia de o.ser'aci8n4
I b n&mero de s+m.olos de o.ser'aci8n di*erentes4 Si - es el con5unto de
todos los )osi.les s+m.olos de o.ser'aci8n: - M ^v
1
, v
$
, K, v
I
_.
1 b matriz de )ro.a.ilidad de transici8n de estados: 1 M ^a
i'
_, donde
a
i5
V PR6
t
V S
5
j 6
tI>
V S
i
T1 > k i15 k #1
con la restricci8n 3 ` a
i'
` 11 y
N i a
N
'
i'

> 1 >
>
@ b matriz de )ro.a.ilidad de o.ser'aci8n del s+m.olo: @ M ^b
'
(G)_, donde
b
'
(G) M P"&
t
M v
G
a 0
t
M 2
'
%, 1 ` ' ` N, 1 ` G ` I,
y &
t
es el s+m.olo o.ser'ado en el instante t4
b b distri.uci8n inicial de estados: b M ^c
i
_, donde
c
i
M P"0
t
M 2
i
%, 1 ` i` N
"sando una notaci8n corta1 F22 est de*inido )or R M (1, @, b).
$a cara se modela )or una cadena de 2arHo'4 (:isten distintos modelos )ara
re)resentar la cara1 a los e*ectos de recorrer la seal .idimensional RAguerre.ere et al4
,//DT:
F22 topHdo#n : se toman .lo6ues 6ue se corres)onden con las distintas
regiones 7orizontales de la cara desde arri.a 7acia a.a5o4 De esta manera los
.lo6ues corres)onden al )elo1 la *rente1 los o5os1 la nariz y la .oca4
6lustracin $.7$ *II topHdo#n "Nefian et al. 1FFE%
-G
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
F22 em.e.idas : se 7ace una cadena de cadenas1 donde una de ni'el in*erior
recorre la imagen en sentido 7orizontal y luego una de ni'el su)erior recorre la
imagen en sentido 'ertical4
6lustracin $.77 *II embebidas "15uerrebere et al. $33A%
Para el reconocimiento de caras1 lo 6ue se 7ace es a)licar la DCT N8iscrete
Cosine TransformP o la [$T NdarhunenH<ove TransformP a cada uno de los .lo6ues4
$uego ciertos coe*icientes de la trans*ormada del .lo6ue se utilizan como los 'ectores
de o.ser'aci8n4
$a cadena de 2arHo' se entrena )ara encontrar los )armetros1 utilizando el
algoritmo (2 Nma:imizaci8n del 'alor es)eradoP1 ma:imizando P(& a R)4 De esta *orma
se o.tiene una cadena R )ara cada indi'iduo de la .ase4 $uego )ara tomar la decisi8n se
eli5e la cadena R
e
6ue ma:imice P(& a Ri). "na imagen t es reconocida como la cara G si
P(&
t
a R
G
) M max
n
P(&
t
a R
n
) R#e*ian et al4 >00GT.
2.3.2.5. Mtodos 33
Dentro de los mtodo .asados en caracter+sticas locales1 los mtodos de
reconocimiento de caras de dos dimensiones son sensi.les a las condiciones de
iluminaci8n1 a la orientaci8n1 a la e:)resi8n *acial1 etc4 (stas limitaciones )ro'ienen de
la limitaci8n de la in*ormaci8n 6ue 7ay en una imagen en dos dimensiones4 (sto 7a
7ec7o 6ue aumente el uso de datos de caras en tres dimensiones1 ya 6ue )ro)orcionan
mayor in*ormaci8n de la orientaci8n y las condiciones luminosas4
$a idea general de los mtodos -D es .uscar un modelo general de una cara 6ue
luego de.e a5ustarse a cada cara )articular4
$as caras se tratan como su)er*icies tridimensionales1 7ay mtodos 6ue se .asan
en )roducir gradientes de la su)er*icie y )ara los 6ue no es necesario reconstruir
-0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
des)us la su)er*icie de la cara4 $os mtodos clsicos )ara 'er la corres)ondencia de
dos su)er*icies se .asan en encontrar una trans*ormaci8n (ucl+dea 6ue ma:imice un
criterio de similitud4
Se 7a com)ro.ado 6ue las trans*ormaciones de una su)er*icie *acial )ueden
modelarse como trans*ormaciones isomtricas4 De.e encontrarse una re)resentaci8n
)ara las su)er*icies isomtricas y )ara el caso de reconocimiento de caras suele
utilizarse 2DS N2ulti8imensional 2calin5P )ara o.tener unas *ormas llamadas
bendin5Hinvariant canonical R!ronstein et al4 ,//BT4 "no de los )asos ms im)ortantes
en la construcci8n de la *orma can8nica es el clculo de la distancia en la su)er*icie1
)ara lo 6ue se usa el algoritmo %2TD N/ase Iarchin5 Iethod on Trian5ulates
8omainsP4
(l )rimer )aso )ara el reconocimiento de caras es o.tener el gradiente de la
su)er*icie4 A continuaci8n los datos son )re)rocesados mediante mtodos de
concordancia de )atrones 6ue )ueden utilizar los o5os como )rinci)al caracter+stica de la
cara4 (l contorno de la cara tam.in de.e ser e:tra+do )ara limitar el )rocesado de
su)er*icie s8lo a la cara4
Des)us se crea un matriz nxn de geodistancias a)licando %2TD )ara cada uno
de los n 'rtices seleccionados4 Se a)lica 2DS a la matriz1 )roduciendo una *orma
can8nica de la cara en un es)acio (ucl+deo de .a5a dimensi8n4
$a *orma can8nica se com)ara con los modelos de una .ase de datos4 Si la
com)araci8n de las *ormas can8nicas cae dentro de un cierto rango estad+stico de
'alores1 se )uede considerar el reconocimiento 'lido4
'.1. A+*CAC"NES DE* REC"N"CMEN!" DE CARAS
"na de las razones )or las 6ue el estudio del reconocimiento de caras 7a tenido
tanto inters en los &ltimos aos es su gran )otencial en numerosas a)licaciones
gu.ernamentales y comerciales4 A continuaci8n se mostrarn algunas de las
a)licaciones )ara las 6ue se utiliza el reconocimiento automtico de caras4
'.1.1. denti.icaci/n de caras
(n contraste con otros sistemas de identi*icaci8n tradicionales1 el
reconocimiento de caras esta.lece la )resencia de una )ersona autorizada1 ms 6ue s8lo
com)ro.ar si la identi*icaci8n es 'lida1 o si la cla'e est siendo utilizada
correctamente1 o si el usuario conoce la )assSord4 $as 'enta5as de seguridad con el uso
de la .iometr+a son: elimina el uso incorrecto o ro.o de tar5etas1 7ace el acceso a
a)licaciones ms seguro1 el acceso controlado a edi*icios o 7a.itaciones es automtico
RStan et al4 ,//BT 4
'.1.'. Control de acceso
(n muc7as a)licaciones de control de acceso1 como acceso a o*icinas o acceso a
un ordenador1 el n&mero de )ersonas 6ue necesitan ser reconocidas es relati'amente
)e6ueo4 $as imgenes de las caras son ca)turadas .a5o determinadas condiciones1
B/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
como 'ista *rontal y una determinada iluminaci8n4 $os sistemas de reconocimiento de
caras )ueden alcanzar una )recisi8n alta sin la necesidad de 6ue 7aya muc7a
coo)eraci8n )or )arte de los usuarios4 Por e5em)lo1 no es necesario 6ue el usuario to6ue
un o.5eto con los dedos o las )almas de la mano y no es necesario 6ue )onga el o5o ante
un detector4
Cuando el reconocimiento de caras se com.ina con otros mecanismos de
autenti*icaci8n como las 7uellas dactilares o el reconocimiento )or la )u)ila1 se o.tiene
una alta )recisi8n RStan et al4 ,//BT 4
'.1.,. Seguridad
Foy ms 6ue nunca la seguridad es )rimordial en los aero)uertos y )ara el
)ersonal de las aerol+neas y los )asa5eros4 $os sistemas de seguridad 6ue utilizan el
reconocimiento de caras 7an sido im)lementados en muc7os aero)uertos en todo el
mundo4
Aun6ue es )osi.le controlar las condiciones luminosas y la orientaci8n de la
cara en algunas de las a)licaciones de seguridad1 uno de los grandes cam.ios del
reconocimiento de caras en sitios )&.licos es la gran cantidad de caras 6ue es necesario
e:aminar1 lo 6ue )uede )roducir un ni'el alto de *alsas alarmas RStan et al4 ,//BT 4
'.1.1. &igilancia
!uscar a un indi'iduo )erseguido )or la 5usticia4 $ocalizarle en m.itos
)&.licos1 aduanas1 aero)uertos4 Vigilancia domstica1 6uien entra )uede ser conocido o
desconocido: detecci8n de intrusos4
gual 6ue ocurre con las a)licaciones de seguridad en sitios )&.licos1 la
a)licaci8n del reconocimiento de caras )ara sistemas de 'igilancia se encuentra con
)ro.lemas de cam.ios de iluminaci8n1 de orientaci8n de la cara1 etc4 RStan et al4 ,//BT 4
'.1.4. A2licaci/n a la ley
"n sistema de reconocimiento de caras )uede ayudar a los in'estigadores a
encontrar a un sos)ec7oso r)idamente4 (l reconocimiento de caras )ermite .uscar e
identi*icar sos)ec7osos incluso con in*ormaci8n incom)leta de su identidad1 incluso
s8lo con la in*ormaci8n 6ue se )uede o.tener de testigos4
(l )ro.lema es la di*icultad de o.tener una .uena calidad de la imagen de la cara
de los criminales RStan et al4 ,//BT 4
'.1.:. (ases de datos de caras
ContentHbased ima5e retrieval NC!RP es una a)licaci8n )ara recu)eraci8n de
imgenes4 Con esta a)licaci8n se trata de solucionar las di*icultades 6ue )resenta la
recu)eraci8n de imgenes .asada en te:to4 (n sistemas con .i.liotecas digitales de
B>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
tera.ytes de '+deo y audio la clasi*icaci8n de las imgenes cum)le un )a)el
*undamental4
$as tcnicas de reconocimiento de caras se 7an utilizado )rinci)almente )ara
recu)erar y catalogar caras en .ases de datos e:clusi'amente de caras1 aun6ue
&ltimamente se estn utilizando estas tcnicas tam.in con otras .ases de datos 6ue no
s8lo contienen caras RStan et al4 ,//BT 4
'.1.;. Gesti/n multimedia
$as caras *recuentemente se 'en en noticias1 de)ortes1 )el+culas1 '+deos caseros1
y otros contenidos multimedia4 Catalogar estos contenidos mediante la detecci8n y
reconocimiento de caras es im)ortante )ara generar segmentos de '+deo co7erentes )ara
7o5ear o )ara res&menes4
"na di*icultad de utilizar directamente el reconocimiento de caras en las
a)licaciones multimedia es 6ue normalmente el con5unto de entrenamiento no est
dis)oni.le1 la identidad de la )ersona cuya cara 7a sido detectada de.e o.tenerse a
tra's del mismo contenido multimedia4
'.1.<. nteracci/n hom9re5m0=uina
2.4.7.1. Se$'imiento de crs
(l o.5eti'o de algunos dis)ositi'os es reconocer y com)render el mo'imiento
del cuer)o 7umano4 Para ello lo )rimero de.e ser conseguir localizar y seguir algunas
)artes del cuer)o1 como las manos o la cara4 (l color de la )iel de la cara es una
indicaci8n )ara la localizaci8n y seguimiento de )artes del cuer)o en secuencias de
'+deo4
2.4.7.2. Reconocimiento de e(&resiones
"so en inter*aces inteligentes1 detectores de cansancio )ara conductores1
a)licaciones mdicas4
2.4.7.3. Videocon!erenci
Tiene 6ue 'er con localizar la imagen del indi'iduo en una secuencia de Se.cam
)ara )oder 7acer un seguimiento4 Tam.in sa.er si est o no est1 y 6uin es4
'.4. REDES NEUR"NA*ES AR!>CA*ES
$as redes neuronales arti*iciales N1rtificial Neuronal Net, 1NNP son un mtodo
de resol'er )ro.lemas1 de *orma indi'idual o com.inadas con otros mtodos1 )ara tareas
de clasi*icaci8n1 identi*icaci8n1 diagn8stico1 o)timizaci8n o )redicci8n4
B,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
$as redes neuronales son modelos 6ue intentan re)roducir el com)ortamiento
del sistema ner'ioso de los animales4 Se trata de un sistema de intercone:i8n de
neuronas en una red 6ue cola.ora )ara )roducir un est+mulo de salida4
"na red neuronal se com)one de un con5unto masi'amente )aralelo de unidades
de )roceso muy sim)les1 llamadas neuronas1 y es en las cone:iones entre estas unidades
donde reside la inteligencia de la red4 !iol8gicamente1 un cere.ro a)rende mediante la
reorganizaci8n de las cone:iones sin)ticas entre las neuronas 6ue lo com)onen4 De la
misma manera1 las redes neuronales tienen un gran n&mero de )rocesadores 'irtuales
interconectados 6ue de *orma sim)li*icada simulan la *uncionalidad de las neuronas
.iol8gicas4 (n esta simulaci8n1 la reorganizaci8n de las cone:iones sin)ticas .iol8gicas
se modela mediante un mecanismos de )esos1 6ue son a5ustados durante la *ase de
a)rendiza5e4 (n una red neuronal entrenada1 el con5unto de los )esos determina el
conocimiento de esa red y tiene la )ro)iedad de resol'er el )ro.lema )ara el 6ue 7a sido
entrenada R%lores ,//GT4
6lustracin $.74 ,'emplo de red neuronal perceptrn simple con n neuronas de
entrada, m neuronas en su capa oculta y una neurona a la salida
'.4.1. >uncionamiento
"na red neuronal se com)one de unidades llamadas neuronas4 Cada neurona
reci.e una serie de entradas a tra's de intercone:iones y emite una salida4 (sta salida
'iene dada )or tres *unciones R%lores ,//GT:
>4 "na *unci8n de )ro)agaci8n Ntam.in conocida como *unci8n de e:citaci8nP1
6ue )or lo general consiste en el sumatorio de cada entrada multi)licada )or el
)eso de su intercone:i8n N'alor netoP4 Si el )eso es )ositi'o1 la cone:i8n se
denomina e:citatoria1 si es negati'o se denomina in7i.itoria4

i
i i
x # f
,4 "na *unci8n de acti'aci8n1 6ue modi*ica a la anterior4 Puede no e:istir1 siendo
en este caso la salida la misma *unci8n de )ro)agaci8n4
-4 "na *unci8n de trans*erencia1 6ue se a)lica al 'alor de'uelto )or la *unci8n de
B-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
acti'aci8n4 Se utiliza )ara acotar la salida de la neurona y generalmente 'iene
dada )or la inter)retaci8n 6ue se 6uiera dar a dic7as salidas4 Algunas de las ms
utilizadas son la *unci8n sigmoide N)ara o.tener 'alores en el inter'alo R/1>TP y
la tangente 7i)er.8lica N)ara o.tener 'alores en el inter'alo RI>1>TP 4
6lustracin $.7; ,'emplo de funciones de transferencia
'.4.'. &enta?as
$as )rinci)ales 'enta5as del uso de redes neuronales son R%lores ,//GT:
A)rendiza5e ada)tati'o: es una de las caracter+sticas ms atracti'as de las redes
neuronales1 es la ca)acidad de a)render a realizar tareas .asadas en un
entrenamiento o una e:)eriencia inicial4
Auto organizaci8n: la red crea su )ro)ia re)resentaci8n de la in*ormaci8n en su
interior1 descargando al usuario de esto4
Tolerancia a *allos: De.ido a 6ue una red neuronal almacena la in*ormaci8n de
*orma redundante1 sta )uede seguir res)ondiendo ace)ta.lemente a&n si los
datos de entrada son ruidosos4
%le:i.ilidad: una red )uede mane5ar cam.ios no im)ortantes en la in*ormaci8n
de entrada1 como seales con ruido u otros cam.ios en la entrada N)or e5em)lo si
la in*ormaci8n de entrada es la imagen de un o.5eto1 la res)uesta
corres)ondiente no su*re cam.ios si la imagen cam.ia un )oco su .rillo o el
o.5eto cam.ia ligeramenteP4
'.4.,. !i2olog-as de las redes neuronales
>4 To)olog+a
"na )rimera clasi*icaci8n de las redes neuronales 6ue se suele 7acer es en
*unci8n del )atr8n de cone:iones 6ue )resentan4 As+ se de*inen tres ti)os .sicos de
redes:
Dos ti)os de redes de )ro)agaci8n 7acia delante o ac+clicas en la 6ue todas las
seales 'an desde la ca)a de entrada 7acia la salida sin e:istir ciclos1 ni
cone:iones entre neuronas de la misma ca)a4
\ 2onoca)a: S8lo e:iste una ca)a de neuronas de entrada y otra de salida4 Por
e5em)lo el )erce)tr8n y Adaline4
\ 2ultica)a: (:iste un con5unto de ca)as intermedias entre la ca)a de entrada
BB
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
y la de salida Nca)as ocultasP4 Por e5em)lo1 el )erce)tr8n multica)a4
$as redes recurrentes 6ue )resentan al menos un ciclo cerrado de acti'aci8n
neuronal4 Por e5em)lo la red de (lman1 la red de Fo)*iel y la m6uina de
!olzman4
,4 A)rendiza5e
"na segunda clasi*icaci8n 6ue se suele 7acer es en *unci8n del ti)o de
a)rendiza5e de 6ue es ca)az Nsi necesita o no un con5unto de entrenamiento
su)er'isadoP4 Para cada ti)o de a)rendiza5e se encuentran 'arios modelos )ro)uestos:
A)rendiza5e su)er'isado: necesitan un con5unto de datos de entrada )re'iamente
clasi*icado o cuya res)uesta o.5eti'o se conoce4 (5em)los de este ti)o de redes
son el )erce)tr8n Nsim)le y multica)aP1 la red Adaline y la memoria asociati'a
.idireccional4
A)rendiza5e no su)er'isado o autoorganizado: no necesitan de tal con5unto
)re'io4 (5em)los de estas redes son las memorias asociati'as1 redes de Fo)*iel1
m6uina de !olzman y las redes de [o7onen4
Redes 7+.ridas: son un en*o6ue mi:to en el 6ue se utiliza una *unci8n de me5ora
)ara *acilitar la con'ergencia4 "n e5em)lo de estas redes son las *unciones de
.ase radial NR!%P4
A)rendiza5e re*orzado: se sit&a a medio camino entre el su)er'isado y el
autoorganizado4
-4 Ti)o de entrada
%inalmente tam.in se )ueden clasi*icar las redes neuronales seg&n sean ca)aces
de )rocesar in*ormaci8n de distinto ti)o en:
Redes anal8gicas: )rocesan datos de entrada con 'alores continuos y1
7a.itualmente acotados4 (5em)los son la red de Fo)*ield1 de [o7onen y redes
de a)rendiza5e com)etiti'o4
Redes discretas: )rocesan datos de entrada de naturaleza discretaU 7a.itualmente
'alores l8gicos .ooleanos4 (5em)los de este ti)o de redes son las m6uinas de
!olzman y Cauc7y4
BC
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
,. DSE@" E M+*EMEN!AC#N
,.1. ARAU!EC!URA DE* SS!EMA
(l o.5eti'o de este )royecto es la im)lementaci8n de un sistema automtico de
detecci8n y reconocimiento de caras en imgenes estticas4
(l em)leo de imgenes estticas tiene el incon'eniente de 6ue se estn
utilizando )royecciones en dos dimensiones NimgenesP de un o.5eto 6ue es
intr+nsecamente tridimensionales Ncara 7umanaP4 (sto im)lica una ine'ita.le )rdida de
in*ormaci8n4 A cam.io1 se logra una mayor sencillez en los algoritmos necesarios )ara
el reconocimiento de caras4
(n este )royecto se trata de 7acer la im)lementaci8n de un sistema de
reconocimiento de caras )ara com)arar su e*icacia ante dos situaciones distintas4 Se 'an
a com)arar los resultados 6ue se o.tienen cuando se est en un am.iente controlado y
las *otogra*+as cum)len unos criterios 6ue *a'orecen el reconocimiento1 *rente a una
situaci8n en la 6ue las *otogra*+as son menos )ro)icias )ara la tarea de reconocimiento4
(n general1 todos los sistemas de reconocimiento de caras utilizan la misma
secuencia de eta)as:
>4 Detecci8n de la cara en la imagen4
,4 Re)resentaci8n de la cara Nrasgos 'isualesP4
-4 Clasi*icaci8n de la cara NreconocimientoP4
(l sistema desarrollado en este )royecto l8gicamente 'a a seguir tam.in estas
tres eta)as generales4 A continuaci8n de muestra un diagrama de .lo6ues en el 6ue se
re)resentan de *orma ms detallada las eta)as im)lementadas4
6lustracin 7.1 8ia5rama de blo0ues del sistema
+re2rocesado
Reci.e como entrada una imagen de la .ase de datos y de'uel'e la imagen tras
a)licarle un *iltro )ara eliminar ruido y realizar una com)ensaci8n de luz4
Detecci/n
Reci.e como entrada la imagen )re)rocesada y de'uel'e la cara detectada en la
imagen1 si es 6ue la 7ay1 en *orma de 'entana seleccionada4 (l algoritmo de detecci8n1
seg&n se comentar a continuaci8n1 se .asa en el color de la )iel4
Extracci/n de caracter-sticas
Reci.e como entrada la cara detectada y de'uel'e un 'ector de caracter+sticas4
(stas caracter+sticas se o.tienen mediante la a)licaci8n de PCA a las imgenes de las
BD
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
caras4
Clasi.icaci/n
Reci.e como entrada el 'ector de caracter+sticas de la imagen y de'uel'e las 2
N)or de*ecto 2 V CP caras de la .ase de datos a las 6ue ms se )arece4 Como clasi*icador
se utiliza una red neuronal4
,.1.1. Berramientas utiliCadas
$a 7erramienta de so*tSare utilizada )ara lle'ar a ca.o la im)lementaci8n de
este )royecto es 2atla. E4C4
2AT$A! Na.re'iatura de I1Trix <1@oratory1 Zla.oratorio de matricesZP es un
so*tSare matemtico 6ue o*rece un entorno de desarrollo integrado ND(P con un
lengua5e de )rogramaci8n )ro)io Nlengua5e 2P4
(ntre sus )restaciones .sicas se 7allan: la mani)ulaci8n de matrices1 la
re)resentaci8n de datos y *unciones1 la im)lementaci8n de algoritmos1 la creaci8n de
inter*aces de usuario NG"P y la comunicaci8n con )rogramas en otros lengua5es y con
otros dis)ositi'os 7ardSare4 (l )a6uete 2AT$A! dis)one de dos 7erramientas
adicionales 6ue e:)anden sus )restaciones1 a sa.er1 SimulinH N)lata*orma de simulaci8n
multidominioP y G"D( Neditor de inter*aces de usuario l G"P4
Adems1 se )ueden am)liar las ca)acidades de 2AT$A! con )rogramas de
a)oyo es)ecializados1 denominados toolboxes4 (ntre los toolboxes dis)oni.les ca.e
destacar el de )rocesado de imagen1 )or el inters 6ue tiene )ara este )royecto4
,.'. (ASES DE DA!"S
Como se 7a comentado con anterioridad1 en este )royecto se 'an a utilizar dos
.ases de datos de imgenes distintas )ara com)arar los resultados 6ue o*rece el sistema
de reconocimiento de caras im)lementado4
,.'.1. (ase de datos AD >otogra.-as en am9iente controlado
(n este caso la .ase de datos est *ormada )or imgenes de una .ase de datos
)&.lica ya e:istente1 o.tenidas )or el -ision +roup of ,ssex University RSe.BT4 (n
concreto se 7a seleccionado la .ase de datos facesF44
(sta .ase de datos est *ormada )or >C- indi'iduos1 con ,/ imgenes )or cada
indi'iduo4 (l nom.re de las imgenes )ara cada indi'iduo tiene una )arte com&n y un
n&mero 6ue indica la imagen 6ue es dentro del gru)o de imgenes de una )ersona4
$as imgenes estn tomadas en un am.iente controlado1 todas las )ersonas se
encuentran a una distancia *i5a de la cmara1 el *ondo es )lano de color 'erde1 las
'ariaciones en la iluminaci8n son muy )e6ueas y todas las imgenes tienen el mismo
tamao N>G/:,//P4 (n cada *otogra*+a a)arece una sola cara 6ue ocu)a la mayor )arte
de la imagen y est centrada en ella1 adems las 'ariaciones entre las imgenes de un
mismo indi'iduo son )e6ueas1 se reducen a 'ariaciones en la e:)resi8n de la cara4
BE
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6lustracin 7.$ ,'emplo de imB5enes de la base de datos 1
Para este )royecto s8lo se 7an seleccionado >,/ indi'iduos de los >C- 6ue tiene
la .ase de datos original1 ya 6ue se 7a considerado 6ue este n&mero de indi'iduos es
su*iciente )ara com)ro.ar el *uncionamiento del sistema4 $a elecci8n de los >,/
indi'iduos se realiza de manera aleatoria4
Con este ti)o de imgenes el reconocimiento de caras )uede ser realizado
directamente1 sin )asar )or una *ase )re'ia de detecci8n de la cara dentro de la imagen4
(n este )royecto se )ro.arn am.os casos1 7aciendo )asar las imgenes )or una *ase de
detecci8n )re'ia y sin )asar )or esa *ase1 )ara as+ com)arar los resultados o.tenidos4
,.'.'. (ase de datos (D +ersona?es es2aoles .amosos
(sta .ase de datos est *ormada )or imgenes o.tenidas de Google mage4 Se
com)one de B// *otogra*+as de ;)ersona5es< es)aoles *amosos1 teniendo >//
;)ersona5es< *amosos y B *otogra*+as )or cada uno de los ;)ersona5es<4 Se trata de
;)ersona5es< es)aoles conocidos en el mundo )or cuales6uiera moti'os1 ya sean
)ol+ticos1 actores1 m&sicos1 de)ortistas1 em)resarios1 etc4 (l nom.re de cada imagen ser
el nom.re del )ersona5e seguido de un n&mero 6ue indica la imagen 6ue es4
(ntre los >// ;)ersona5es< *amosos se 7an tomado imgenes de 0G )ersonas y
los dos restantes son imgenes de c7u)ac7u)s y *regonas1 es decir1 6ue no contienen
BG
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
caras 7umanas4
Para el caso de las imgenes de )ersonas se )uede 'er 6ue estas imgenes no 7an
sido ad6uiridas .a5o un am.iente controlado1 a&n as+ se 7a )rocurado 6ue en cada
imagen a)arezca una &nica cara1 6ue sta ocu)e la mayor )arte )osi.le de la imagen1
6ue la cara est lo ms centrada )osi.le y la *otogra*+a sea mirando al *rente4
a) b)
c) d)
e) f)
5) h)
6lustracin 7.7 ,'emplo de imB5enes de la base de datos @
B0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
(l incon'eniente de esta .ase de datos es 6ue no todas las *otos cum)len los
re6uisitos deseados )ara )oder tener un me5or *uncionamiento del sistema de
reconocimiento de caras4
#o siem)re se cum)le la condici8n de 6ue a)arezca una &nica cara en el imagen1
como ocurre en el caso de la imagen cP de la lustraci8n -4-1 en la 6ue )odemos a)reciar
6ue a)arece en segundo )lano otra cara aun6ue no com)leta4
Tam.in 7ay casos en los 6ue ademas de la cara a)arece )arte del cuer)o1 como
)or e5em)lo en la imagen eP de la lustraci8n -4-1 en la 6ue adems de la cara a)arecen
)arte del .razo y la es)alda4
?tro de los incon'enientes 6ue )uede a)arecer es 6ue la imagen de la cara no sea
totalmente *rontal1 si no 6ue est algo girada1 como en la imagen dP de la lustraci8n -4-4
Dentro de la .ase de datos tam.in )odemos encontrar *otogra*+as 6ue se
ada)tan muc7o me5or a los re6uisitos deseados como la imagen *P de la lustraci8n -4-4
Por &ltimo ca.e destacar 6ue las *otogra*+as no tienen todas el mismo tamao1
como se )uede 'er en la lustraci8n -4- cada una es de un tamao distinto Nalguna 7a
sido reducida )ara incluirla en esta memoriaP4 A la 7ora de de e:traer las caracter+sticas
mediante PCA todas las caras de.en tener el mismo tamao1 )or lo 6ue 7a.r 6ue
a5ustar el tamao y esto )uede 7acer 6ue alguna cara 6uede un )oco de*ormada4 (l
7ec7o de tener *otogra*+as de di*erentes tamaos1 unido a los incon'enientes
mencionados con anterioridad1 )uede su)oner un em)eoramiento en el )roceso de
reconocimiento4
,.,. +RE+R"CESAD" DE *AS MEGENES
$as tcnicas de )re)rocesado )retenden me5orar o realzar las )ro)iedades de la
imagen )ara *acilitar las siguientes o)eraciones1 tales como la eta)a de detecci8n1
e:tracci8n de caracter+sticas y la clasi*icaci8n4
$as tcnicas de )re)rocesado se )ueden di'idir1 en general1 en *unci8n de las
)retensiones de sus trans*ormaciones1 en algunas de las siguientes *acetas RSe.CT:
Realce o aumento del contraste NenhancementP
Sua'izado o eliminaci8n del ruido Ndenoisin5P
Detecci8n de .ordes Ned5esP
A continuaci8n se e:)ondrn las tcnicas de )re)rocesado desarrolladas en este
)royecto4
,.,.1. A?uste de .ormato
(n 2atla. se )ueden tener los siguientes ti)os de imgenes RSe.DT:
mgenes inde:adas : R6, I1PT
$a matriz 6 contiene la imagen inde:ada y la matriz I1P la )aleta de colores
RG! asociada4 Si la imagen es de >//:>//:,CD colores1 la matriz 6 es de >//:>// con
rango de 'alores en R>444,CDT y la matriz I1P es de ,CD:- con rango de 'alores en R/1>T
)ara datos de )recisi8n double1 R/1,CCT )ara datos de )recisi8n EHbit y R/1DCC-CT )ara
C/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
datos de )recisi8n 1AHbit4 (n el caso de imgenes en ni'eles de gris1 la )aleta de colores
suele tener todos los ni'eles de gris ordenados1 de *orma tal 6ue en la )osici8n i de la
)aleta est el iIsimo ni'el de gris4
mgenes de ni'eles de gris : 6
$a matriz 6 contiene la imagen en ni'eles de gris1 donde el rango de 'alores es
de R/1>T )ara datos de )recisi8n double4 #o necesita una )aleta de colores4 $as imgenes
en .lanco y negro son un caso es)ecial de este ti)o1 donde s8lo estn los 'alores / y >4
mgenes RG! : : + @
Cada matriz :1 +1 @ contiene las intensidades en ro5o1 'erde y azul
res)ecti'amente de la imagen4
Al em)ezar a tra.a5ar con la .ase de datos ! se 'io 6ue algunas de ellas ten+an el
*ormato de imgenes inde:adas1 lo 6ue 7acia necesario una trans*ormaci8n ya 6ue las
imgenes de.en estar en *ormato RG! )ara *acilitar su )osterior tratamiento4 Para
solucionar este )ro.lema lo )rimero 6ue se 7ace al leer una imagen es com)ro.ar si est
en *ormato inde:ado1 y si es as+ trans*ormarla a *ormato RG!4
1m&lementci"n
Para la im)lementaci8n de este a5uste de *ormato se 7an utilizado *unciones de
2atla.4
Tabla 7.1 /unciones de Iatlab para la implementacin del a'uste de formato
Nom9re Descri2ci/n Entrada Salida
isind
De'uel'e > si la imagen de entrada es
inde:ada y / si no lo es4
2atriz %lag
ind'rg9
Con'ierte la matriz de entrada al *ormato
RG! con el ma)a de colores Colormap
2atriz1 Colorma) 2atriz magen RG!
,.,.'. Eliminaci/n de ruido
(n imgenes digitales se considera ruido a cual6uier 'alor de un )+:el de una
imagen 6ue no se corres)onde con la realidad4
Como se coment8 en el a)artado de (stado del Arte1 una *orma de eliminar el
ruido de una imagen es mediante la utilizaci8n de *iltros )aso .a5o4 (l )ro.lema de
utilizar *iltros )aso .a5o )ara la eliminaci8n de ruido es 6ue los .ordes de los o.5etos se
'uel'en .orrosos4 $os .ordes de una imagen tienen una cantidad enorme de
in*ormaci8n de la imagen1 )or lo 6ue se 7a decidido utilizar un *iltro de mediana 6ue
7ace un me5or tra.a5o conser'ando los .ordes4
(n el *iltrado de mediana1 el ni'el de gris de cada )+:el se reem)laza )or la
C>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
mediana de los ni'eles de gris en un entorno de este )+:el1 en lugar de )or la media4 $a
mediana 2 de un con5unto de 'alores es tal 6ue la mitad de los 'alores del con5unto son
menores 6ue 2 y la mitad de los 'alores mayores 6ue 21 es decir en un con5unto
ordenado de mayor a menor o 'ice'ersa1 ser+a el 'alor de la )osici8n central RSe.ET4
6lustracin 7.4 /uncionamiento del filtrado de mediana
A continuaci8n se muestra el e*ecto del *iltro de mediana so.re una imagen de
cada una de las .ases de datos utilizadas4
a) b)
c) d)
6lustracin 7.; ,'emplo filtrado de mediana a) c) 6mB5enes ori5inales? b) d)
6mB5enes filtradas
1m&lementci"n
Para la im)lementaci8n del *iltro se utiliza la siguiente *unci8n de 2atla.4
Tabla 7.$ /uncin de Iatlab para la implementacin del filtro de medianas
Nom9re Descri2ci/n Entrada Salida
med.ilt'
Realiza el *iltro de mediana de una matriz
de datos en dos dimensiones
2atriz y dimensi8n
de la 'entana
2atriz *iltrada
C,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
,.,.,. Com2ensaci/n de iluminaci/n
(sta )arte del )re)rocesado de las imgenes se lle'a a ca.o de.ido al 7ec7o de
6ue la a)ariencia del color de)ende de las condiciones luminosas1 y con este mtodo se
trata de normalizar este e*ecto4
(:isten numerosas tcnicas y algoritmos )ara la com)ensaci8n de la
iluminaci8n1 y cada uno realiza unas 7i)8tesis di*erentes de la imagen y )or lo tanto
realiza un .alance de color seg&n las mismas4 A continuaci8n se muestran algunos de
estos algoritmos RSe.GT:
+ray Oorld
(ste mtodo se .asa en la 7i)8tesis de 6ue en una imagen los canales de color R1
G y ! tienen el mismo 'alor medio4 Para im)lementar esta 7i)8tesis se calcula la media
de los canales R1 G y ! y se a5ustan )ara 6ue la media de los canales R y ! sea igual a la
del canal G1 ya 6ue el o5o 7umano es ms sensi.le a esta regi8n del es)ectro4 De esta
*orma la intensidad media de cada uno de los canales se 7ace gris4
Ohite Oorld (Perfect :eflector)
(ste algoritmo toma una imagen1 determina cual es su mayor intensidad y de*ine
esta intensidad como el ;.lanco<4 Para calcular el )unto de mayor intensidad lo 6ue se
7ace es .uscar el )unto de menor distancia (ucl+dea al .lanco R,CC1,CC1,CCT4 Cada uno
de los canales de color R1 G y ! son normalizados con res)ecto el )unto de ;.lanco<
encontrado4
2cale by Iax
(s un algoritmo muy )arecido al de Ohite Oorld1 s8lo 6ue en este caso se
considera cada canal de color )or se)arado4 Se determina el 'alor m:imo de cada canal
Ncomo en el caso del Ohite OorldP y se escala cada 'alor en el canal con res)ecto a ese
m:imo4
Des'iaci8n estndar
Algunas imgenes tienen 7istogramas 6ue se concentran )rinci)almente
alrededor de un )e6ueo rango de 'alores1 se decide 6ue ser+a me5or aumentar el rango
dinmico de las intensidades de color4 (ste algoritmo calcula la des'iaci8n estndar de
cada canal de color y lo rea5usta )ara 6ue tome un 'alor deseado4 Se 7a com)ro.ado
6ue el 'alor /4,E No el 'alor E/ en una escala de ,CDP da unos resultados ace)ta.les4
2edia y des'iaci8n estndar
Fay imgenes 6ue carecen de contraste1 lo 6ue les 7ace )arecer como con una
cierta ne.lina4 Tam.in )arecen oscuras1 lo 6ue indica una media .a5a de los 'alores de
los canales4 Por lo tanto1 adems de a5ustar los 'alores de la des'iaci8n estndar se
)uede a5ustar la media de cada canal4 "nos 'alores ace)ta.les )ara el a5uste )ueden ser
/4C No >,G en una escala de ,CDP )ara la media y /4,E No E/P )ara la des'iaci8n estndar4
C-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
$os mtodos +ray Oorld y Ohite Oorld utilizan el com)ortamiento del o5o
7umano1 es decir1 toman un .lanco de re*erencia y luego reescalan es resto de elementos
de la imagen a ese .lanco de re*erencia4 (n este )royecto se 'a a utilizar un mtodo 6ue
tam.in utiliza este com)ortamiento del o5o 7umano4
(l algoritmo de com)ensaci8n de iluminaci8n 6ue se utiliza es el )ro)uesto en el
art+culo RFsu et al4 ,//>T4 Como se 7a dic7o esta tcnica usa un ;.lanco de re*erencia<
)ara normalizar la a)ariencia del color4
Seg&n el art+culo1 se consideran )+:eles 6ue estn en el CQ del 'alor su)erior de
la luminancia como ;.lanco de re*erencia<1 s8lo si el n&mero de estos )+:eles es
su*icientemente grande Nm>//P4 $as com)onentes R1 G y ! de la imagen se a5ustan de
*orma 6ue el 'alor medio de esos )+:eles del ;.lanco de re*erencia< es escalado
linealmente a ,CC4 $a imagen no se cam.ia si no se detecta un n&mero su*iciente de
)+:eles de ;.lanco de re*erencia<4
(n este )royecto1 igual 6ue en art+culo RFsu et al4 ,//>T1 se toman como )+:eles
de ;.lanco de re*erencia< a6uellos 6ue estn en el CQ del 'alor su)erior de la
luminancia1 cuyo rango es R>D1,-CT4 Se a)lica la com)ensaci8n si el n&mero de estos
)+:eles de ;.lanco de re*erencia< es su)erior al >Q del total de )+:eles de la imagen1 se
realiza este )e6ueo cam.io res)ecto a lo )ro)uesto en el art+culo )or6ue se considera
ms l8gico tener en cuenta el tamao de la imagen en lugar de utilizar un n&mero *i5o de
)+:eles1 ya 6ue en la .ase de datos ! se tienen imgenes de di*erentes tamaos4
a) b)
c) d)
6lustracin 7.A ,'emplo compensacin de iluminacin a) c) 6mB5enes ori5inales? b) d)
6mB5enes con compensacin de iluminacin
1m&lementci"n
Para la im)lementaci8n de la com)ensaci8n de iluminaci8n se utilizan *unciones
.sicas de 2atla.4 Ca.e destacar el uso de la siguiente *unci8n4
CB
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Tabla 7.7 /uncin de Iatlab utili.ada en la compensacin de iluminacin
Nom9re Descri2ci/n Entrada Salida
rg9'yc9cr
Con'ierte la imagen RG! en la imagen
e6ui'alente en el es)acio de color AC.Cr
magen RG!:
matriz R21#1-T
magen Ac.Cr:
matriz R24#1-T
,.,.1. +re2rocesado en cascada
$as imgenes son sometidas a una *ase de )re)rocesado )ara me5orar sus
)ro)iedades y *acilitar las siguientes o)eraciones4 (n )rimer lugar se realiza el a5uste de
*ormato )ara asegurar 6ue todas las imgenes son RG!1 una 'ez realizado este a5uste se
)asa la imagen )or un *iltro )ara eliminar ruido1 y *inalmente se realiza una
com)ensaci8n de iluminaci8n4
(n la siguiente *igura )uede 'erse la e'oluci8n de la imagen en el )re)rocesado:
a) b) c)
d) e) f)
6lustracin 7.C ,'emplo de preprocesado a) d) 6mB5enes ori5inales? b) e) 6mB5enes
filtradas? c) f) 6mB5enes resultado del preprocesado
,.1. DE!ECC#N DE CARAS
$a *ase de detecci8n consiste en la segmentaci8n de la imagen en regiones de
inters con*orme a alg&n criterio de 7omogeneidad4 (n este )royecto se trata de
encontrar la regi8n de la imagen en la 6ue a)arece una cara 7umana4
$as )rinci)ales tcnicas de detecci8n de caras 7umanas en imgenes se 7an
e:)uesto en el ca)+tulo , del (stado del Arte4 A6u+ se 'a a )resentar la tcnica
im)lementada )ara el desarrollo del )royecto4
(n este )royecto se 'an a utilizar tcnicas .asadas en rasgos1 ms concretamente
CC
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
se 'a a utilizar un anlisis a .a5o ni'el1 es decir a ni'el de )+:el1 .asado en el color de la
)iel4
(ste ti)o de detecci8n )uede tener el )ro.lema de 6ue zonas de la imagen 6ue no
contengan caras )ero con un color )arecido al de la )iel 7umana tam.in son marcadas
como zonas de )iel4 Para intentar determinar 6u )arte de la imagen es realmente una
cara se trata de localizar caracter+sticas )ro)ias de una cara como los o5os y la .oca4
,.1.1. Detecci/n de 2-xeles de 2iel
Se 7an realizado numerosos estudios so.re la detecci8n de )iel a ni'el de )+:el1
algunos de ellos son:
I RMarit et al4 >000T: realizan una com)araci8n de cinco es)acios de color y dos
mtodos no )aramtricos de modelado de )iel NlooGup table y modelo de )ro.a.ilidad
de !ayesP4
I RTerrillon et al4 ,///T: com)aran nue'e es)acios de color y dos mtodos
)aramtricos Nmodelo de gaussianas y mezcla de gaussianasP4
I R!rand et al4 ,///T: e'al&an tres estrategias di*erentes de modelado del color
de )iel4
I R$ee et al4 ,//,T: com)aran dos de los ms )o)ulares modelos de )iel
)aramtricos en di*erentes es)acios de color y )ro)onen un modelo )ro)io4
A modo de resumen en la siguiente ta.la se muestran los resultados de algunos
de los mtodos utilizados en los art+culos anteriores RVez7ne'ets et al4 ,//CT4
Tabla 7.4 :endimiento de diferentes detectores de piel
Itodo :eferencia
TP (True
Positives)
/P (/alse
Positives)
!ayes SP2 NSHin Pro.a.ility
2a)P in RG!
R!rand et al4 ,///T 0-4BQ >04GQ
(lli)tical .oundary model in
C(I:y
R$ee et al4 ,//,T 0/4/Q ,/40Q
Single Gaussian in C.Cr R$ee et al4 ,//,T 0/4/Q --4-Q
Gaussian 2i:ture in 9 R$ee et al4 ,//,T 0/4/Q -/4/Q
T7res7oldin o* a:is in A9 R!rand et al4 ,///T 0B4EQ -/4,Q
A6u+ se 7a o)tado )or la utilizaci8n del es)acio de color RG!4 Varios
in'estigadores consideran 6ue el color de la )iel est descrito )or las crominancias y no
de)ende de la luminancia1 esto 7ar+a 6ue el es)acio de color RG! 6uizs no *uera el
ms adecuado )ara la detecci8n de )iel1 ya 6ue mezcla la crominancia y la luminancia4
A )esar de esto1 se o)ta )or su utilizaci8n de.ido a su gran sencillez y los resultados
ace)ta.les 'istos en la .i.liogr*ica consultada1 como RPerez et al4 ,//-T y R!rand et al4
,///T4
$a detecci8n de )+:eles de )iel consiste sim)lemente en com)ro.ar si cada uno
de los )+:eles de la imagen cum)le unas determinadas condiciones4 Si las cum)le 6uiere
CD
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
decir 6ue es un )+:el de )iel 7umana4 $as condiciones 6ue de.en cum)lirse )ara 6ue un
)+:el sea considerado como de )iel 7umana se muestran a continuaci8n R[o'ac et al4
,//-TU
} { { }
! R G R
A#D
>C G I R
A#D
>C 1 1 min 1 1 ma:
A#D
,/ B/ 0C
> >
>
>
> > >
1N8
@ + : @ + :
@ 1N8 + 1N8 :
(l resultado de la detecci8n de )iel es una imagen .inaria N*ormada )or /s y >sP
en la 6ue cada )+:el )uesto a > es un )+:el de )iel detectado en la imagen original1 y el
resto son )uestos a cero4
$a )rinci)al 'enta5a de este mtodo es la sim)licidad en las reglas de detecci8n
de )iel1 lo 6ue lle'a a la construcci8n de un clasi*icador r)ido4 $a mayor di*icultad est
en utilizar el es)acio de color y las reglas em)+ricas adecuadas4
A continuaci8n se muestra un e5em)lo del resultado de la detecci8n de )+:eles de
)iel en imgenes de las .ases de datos4
a) b)
c) d)
6lustracin 7.E ,'emplo deteccin p!xeles de piel a) c) 6mB5enes tras el
preprocesado? b) d) 6ma5en binaria resultado del detector de p!xeles de piel
CE
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Como se )uede 'er en el caso de las imgenes aP y .P de la lustraci8n -4G1 este
detector de )iel tiene el incon'eniente de 6ue )uede )oner como )+:eles de )iel zonas
de la imagen 6ue no lo son1 )ero 6ue tienen un color )arecido4
1m&lementci"n
Para la im)lementaci8n del detector de )+:eles de )iel se utilizan *unciones
.sicas de 2atla.4
,.1.'. >iltrado y agru2amiento
"na 'ez 6ue se tiene la imagen .inaria se )rocede a eliminar y agru)ar regiones
de )iel )ara crear las zonas 6ue 'an a ser candidatas a ser una cara4
Se realiza una lim)ieza de la misma )ara el )osterior eti6uetado de regiones
cone:as4 (sto se realiza con o)eradores .asados en mor*olog+a .inaria4 (ste ti)o de
o)eradores ya se 'ieron en el ca)+tulo , del (stado del Arte4
(n )rimer lugar se realiza una a)ertura de la imagen4 $a a)ertura consiste en una
erosi8n seguida de una dilataci8n4 $a erosi8n elimina )e6ueos gru)os de )+:eles
irrele'antes1 6ue tienen )oca )ro.a.ilidad de ser una cara1 y 6ue )ueden ser
considerados como ruido4 $a dilataci8n es una o)eraci8n e:tensi'a1 aade )untos del
*ondo 6ue tocan los .ordes de un o.5eto1 es decir recom)one las com)onentes 6ue no
7an sido eliminadas4
a) b)
c) d)
6lustracin 7.F a) c) 6mB5enes binarias de p!xeles de piel? b) d) 6mB5enes binarias tras
la apertura con radio del elemento de estructurante i5ual a 4
CG
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Posteriormente se realiza un cierre de la imagen4 (l cierre es una dilataci8n
seguida de una erosi8n4 (sta *unci8n se utiliza )ara cerrar 7uecos 6ue 7aya de5ado la
a)ertura en zonas 6ue tienen )ro.a.ilidad de ser una cara4
a) b)
c) d)
6lustracin 7.13 a) c) 6mB5enes binarias tras la apertura? b) d) 6mB5enes binarias tras
el cierre con radio del elemento estructurante i5ual a 4
(s im)ortante resaltar la elecci8n del elemento estructurante elegido )ara las
o)eraciones mor*ol8gicas4 (n cuanto a su *orma1 se 7a elegido un disco1 6ue tiene la
'enta5a de 6ue el *iltro tenga un com)ortamiento isotr8)ico1 lo cual es necesario si no
conocemos la orientaci8n de la cara1 aun6ue esto en )rinci)io no in*luir+a ya 6ue las
caras de las imgenes estn en 'ertical4
(n cuanto al tamao del elemento estructurante seleccionado se 7a com)ro.ado
e:)erimentalmente 6ue in*luye el )orcenta5e 6ue ocu)a la cara dentro de la imagen4 (n
general1 )ara la .ase de datos A el )orcenta5e de la imagen 6ue ocu)a la cara es mayor
6ue )ara la .ase de datos !4 $a )ro.a.ilidad de 6ue los )+:eles de )iel detectados
)ertenezcan a la cara tam.in in*luye en el tamao del elemento estructurante1 y esta
)ro.a.ilidad es mayor )ara la .ase de datos A 6ue )ara la !1 ya 6ue las imgenes de la
.ase de datos ! no estn tomadas en un am.iente controlado y 7ay ms )osi.ilidades de
encontrar )+:eles 6ue son detectados como )+:eles de )iel )ero 6ue no )ertenecen a la
cara4
Se realizan )rue.as con distintos tamaos de radio del disco del elemento
estructurante1 tanto )ara la o)eraci8n de a)ertura como )ara la de cierre4
Se 7a com)ro.ado 6ue )ara la a)ertura en el caso de la .ase de datos A se
o.tienen .uenos resultados con un radio del disco de tamao ,4 Para la .ase datos ! los
resultados tam.in son .uenos si el radio del disco es algo mayor ya 6ue 7ay ms
)ro.a.ilidad de 6ue en la imagen se detecten )e6ueas zonas de )iel 6ue realmente no
C0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
lo son y 6ue es con'iene 6ue sean eliminadas4 Por eso los resultado 6ue se o.tiene )ara
la .ase de datos ! son .uenos si se toma un radio de B )ara el disco 6ue *orma el
elemento estructurante4
Con la o)eraci8n de cierre se cierran 7uecos 6ue 7aya de5ado la a)ertura en
zonas 6ue tienen )ro.a.ilidad de ser una cara4 (n la .ase de datos A la mayor )arte de
las zonas de )iel detectadas tienen una alta )ro.a.ilidad de )ertenecer a la cara1 )or lo
6ue interesa 6ue estas zonas se unan mediante el cierre1 as+ 6ue interesa 6ue el radio del
disco sea grande4 Se 7an realizado )rue.as con 'arios tamaos de radio4
Para la .ase de datos ! el radio del disco )ara el cierre no interesa 6ue sea tan
grande ya 6ue en general la cara ocu)a un menor )orcenta5e de la imagen y 7ay ms
)ro.a.ilidad de encontrar zonas 6ue son detectadas como )iel )ero 6ue no )ertenecen a
la cara4 Se 7a com)ro.ado 6ue con un radio de tamao B los resultados o.tenidos son
.uenos4
Des)us de realizar las o)eraciones de a)ertura y cierre se )rocede al eti6uetado
de las com)onentes o.tenidas1 6ue )asarn a la selecci8n de candidatas a caras4
1m&lementci"n
Se utilizan las *unciones de 2atla. descritas en la siguiente ta.la4
Tabla 7.; /unciones de Iatlab utili.adas para el filtrado y a5rupamiento
Nom9re Descri2ci/n Entrada Salida
strel
Crea un elemento estructurante S(1 del
ti)o es)eci*icado )or s7a)e
Ti)o de elemento estructurante
Ns7a)eP y )armetros necesarios
)ara generarlo N)arametersP
(lemento
estructurante
S(
imo2en
(5ecuta una a)ertura mor*ol8gica so.re
una imagen en escala de gris o .inaria
magen y elemento estructurante
con el 6ue se realiza la a)ertura
magen con la
a)ertura
imclose
(5ecuta un cierre mor*ol8gico so.re una
imagen en escala de gris o .inaria
magen y elemento estructurante
con el 6ue se realiza el cierre
magen con el
cierre
9Fla9el
De'uel'e una matriz 6ue contiene las
eti6uetas )ara los o.5etos encontrados en
!h
2atriz a eti6uetar
2atriz con las
eti6uetas
,.1.,. Selecci/n de candidatos a caras
Con las com)onentes ya eti6uetadas se )asa a la )arte de selecci8n de candidatos
a caras4 (sta selecci8n se 'a a realizar en *unci8n de unas ciertas caracter+sticas m+nimas
6ue de.en tener las regiones de )iel )ara )oder ser consideradas como candidatos a
caras4
$as caracter+sticas 6ue se 'an a utilizar )ara seleccionar los candidatos a caras
estn relacionadas con las dimensiones y la *orma de la regi8n1 teniendo en cuenta 6ue
lo 6ue se desea detectar es una cara 7umana y 6ue stas tienen una cierta *orma circular
o el+)tica4
(:isten muc7as caracter+sticas 6ue )ueden ser tenidas en cuenta a la 7ora de
seleccionar candidatos a caras1 algunas se )ueden 'er en el art+culo R[uc7i et al4 ,//,T4
D/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
(n este )royecto las )ro)iedades 6ue se 'an a utilizar son:
\ Krea : las regiones candidatas a cara de.en tener un rea m+nimo de D// )+:eles4
Se elige este 'alor )ara )oder eliminar regiones e:cesi'amente )e6ueas como
)ara ser una cara4 (ste 'alor se elige ar.itrariamente1 )ero teniendo en cuenta
6ue las imgenes de la .ase de datos ! tienen distintos tamaos y la cara no
siem)re ocu)a la mayor )arte de la imagen1 ya 6ue si s8lo se tu'iera la .ase de
datos A es )osi.le 6ue se )udiera *i5ar un rea m+nimo mayor4
\ %actor de *orma : mide la regularidad de una regi8n4 $as caras son ms o menos
circulares1 )or lo 6ue su *actor de *orma de.er+a tender a >1 )ero al detectar los
)+:eles de )iel es muy )ro.a.le 6ue tam.in se detecten zonas de cuello )or lo
6ue la *orma de la regi8n ser ms alargada1 ms )arecida a una eli)se1 )or lo
6ue el *actor de *orma se reduce4 Se 7an realizado )rue.as modi*icando el 'alor
del *actor de *orma m+nimo 6ue de.en tener las regiones )ara ser consideraras
candidatos a caras y *inalmente se 7a *i5ado ar.itrariamente en /4>4
,
B
Perimetro
1rea
ff
\ Relaci8n de as)ecto : es la relaci8n entre el dimetro mayor y el dimetro menor
de la regi8n4 Se 7a determinado ar.itrariamente 6ue el 'alor m+nimo de esta
)ro)iedad de.e ser /4- )ara las regiones candidatas a ser una cara4
mayor ,'e
menor ,'e
ra

\ Solidez : indica 6u )orcenta5e de la regi8n est dentro del cerco con'e:o de la


misma4 (l cerco con'e:o es la m+nima regi8n con'e:a 6ue contiene a la regi8n4
Se asume 6ue su 'alor de.e ser alto )ara regiones candidatas a cara1 )or lo 6ue
su 'alor m+nimo se *i5a ar.itrariamente en /4C,4
Si una regi8n de la imagen cum)le todas las condiciones anteriores ser un
candidato a ser una cara y )asar a la siguiente *ase en la 6ue se com)rue.a si las
regiones candidatas realmente son caras o no4
1m&lementci"n
Se utilizan *unciones .sicas de 2atla.1 adems ca.e destacar el uso de la
*unci8n de la siguiente ta.la4
Tabla 7.A /uncin de Iatlab utili.ada en la seleccin de candidatos a caras
Nom9re Descri2ci/n Entrada Salida
region2ro2s
2ide un con5unto de )ro)iedades
)ara cada regi8n eti6uetada en la
matriz $
2atriz eti6uetada N$P y
lista de )ro)iedades
Array con las medidas
realizadas en cada regi8n
D>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
,.1.1. &alidaci/n de candidatos
"na 'ez o.tenidos los candidatos a caras se )rocede a la 'alidaci8n de los
mismos a tra's de la .&s6ueda de elementos caracter+sticos1 como son los o5os y la
.oca4
Para encontrar la u.icaci8n de los o5os y la .oca en un candidato se realizan
mapas deri'ados directamente de la luminancia y las crominancias de la imagen4 "n
ma)a es una imagen en tonos de gris 6ue resalta determinadas caracter+sticas rele'antes
de la imagen )ara *acilitar la detecci8n de elementos concretos1 en este caso o5os y .oca4
Como los ma)as de o5os y .oca 6ue se 'an a utilizar estn deri'ados de la
luminancia y las crominancias se considera ms adecuado tra.a5ar en el es)acio de color
Ac.Cr1 )or lo 6ue cada uno de los candidatos a cara es trans*ormado a este es)acio4
3.4.4.1. M& de o+os0 5/eM&
$a construcci8n del ma)a de o5os se .asa *undamentalmente en dos as)ectos:
\ $os o5os )resentan .a5a intensidad de ro5o N.a5o CrP y alta intensidad de azul
Nalto CbP4
\ $os o5os )resentan )+:eles muy claros as+ como )+:eles muy oscuros4
(n *unci8n a estas dos caracter+sticas se generan dos ma)as de o5os1 uno )ara la
crominancia y otro )ara la luminancia1 6ue )osteriormente se com.inan en uno solo4
2a)a de o5os de crominancia
Para generar este ma)a se sigue la siguiente *8rmula RFsu et al4 ,//>T:
( ) ( ) ( ) { }
r b
r
b
C C C C ,yeIapC Y
-
> ,
,
+ +
donde
,
b
C 1
( )
,
r C
1
r b
C C Y
estn normalizados al rango R/1,CCT y
r C
es el negati'o de
r
C Nes decir ,CCICrP4
a) b)
6lustracin 7.11 a) Candidato a cara? b) Iapa de o'os de crominancia
"na 'ez 6ue se tiene el ma)a de o5os de crominancia se enmascara con la
mscara del candidato a cara4 A continuaci8n se rellena la imagen *uera de la mscara
con el 'alor medio de la luminancia de )iel4 (n la siguiente imagen se )uede 'er este
D,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
e*ecto4
a) b)
6lustracin 7.1$ a) Iapa de o'os de crominancia? b) Iapa de o'os relleno
Por &ltimo se le a)lica una dilataci8n )ara resaltar las zonas en las 6ue 7ay o5os4
2a)a de o5os de luminancia
Para generar este ma)a de o5os se utilizan o)eradores mor*ol8gicos en escala de
grises Ncomo )or e5em)lo la dilataci8n y la erosi8nP 6ue )ueden ser diseados )ara
en*atizar los )+:eles .rillantes y oscuros en la com)onente de luminancia4
Se utilizan la dilataci8n y la erosi8n con un elemento estructurante 7emis*rico
g
n
4 (l ma)a se construye de la siguiente *orma RFsu et al4 ,//>T:
> P 1 N P 1 N
P 1 N P 1 N
+

y x 5 y x D
y x 5 y x D
,yeIap<

donde es la o)eraci8n de dilataci8n y la o)eraci8n de erosi8n4 (l elemento


estructurante utilizado se o.tiene con RFsu et al4 ,//>T:
( )
,
/
* O
y x y x :
:
: y x :
y x 5

'

>

,
_

,
P 1 N

> Y P 1 N >
P 1 N
, ,
, Y >
,

siendo
O: anc7o de la imagen
*: alto de la imagen
/e: cociente m:imo del tamao medio de la cara entre el tamao medio de o5o4
Se toma %e V >, )+:eles Nar.itrariamenteP4
Antes de a)licar esta *8rmula )ara generar el ma)a de o5os de la luminancia1 se
D-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
rellena el *ondo de la imagen *uera de la mscara con el 'alor medio de la luminancia de
la )iel4
$a idea es resaltar a6uellas zonas 6ue tienen alto contenido de A y 6ue a su 'ez
tienen 'ecinos cercanos con .a5o contenido de A4 Para esto se dilata la com)onente A1
o.teniendo as+ una imagen 6ue resalta las zonas donde 7ay alto contenido de luminancia
N.rillosP4 Por otro lado se erosiona la A1 resaltando las zonas donde 7ay )oco
com)onente de luminancia4 Si el elemento estructurante es lo su*icientemente grande1
las zonas 6ue tienen alto y .a5o com)onente de luminancia 'an a a)arecer en las dos
imgenes resaltadas4 Posteriormente se realiza la di'isi8n entre la imagen dilatada y la
erosionada o.teniendo as+ el ma)a de o5os de luminancia RSe.0T4
a) b)
6lustracin 7.17 a) Candidato a cara? b) Iapa de o'os de luminancia
Com.inaci8n de ma)as de o5os y detecci8n de o5os
Tanto el ma)a de o5os de crominancia como el de luminancia son normalizados
al rango R/1,CCT antes de ser com.inados mediante la o)eraci8n A#D4 (l resultado es
nue'amente enmascarado y normalizado al rango R/1,CCT4
a) b)
6lustracin 7.14 a) Candidato a cara? b) Iapa de o'os
Para decidir 6u regiones son o5os se realiza un um.ralizado4 (l um.ral de
decisi8n es una com.inaci8n lineal entre el )romedio del ma)a y el m:imo 'alor del
ma)a:
menteP ar.itraria ado Nseleccion G 4 /
P ma:N P > N P N


donde
,yeIap ,yeIap promedio Umbral
DB
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
(l resultado de este )roceso de um.ralizado es una imagen .inaria en la 6ue
toman 'alor > todos los )+:eles 6ue estn )or encima del um.ral1 y 'alor / a6uellos 6ue
estn )or de.a5o4
Posteriormente se a)lica un *iltrado mor*ol8gico a la imagen .inaria o.tenida1
a)licndole )rimero a)ertura y luego cierre4 De esta *orma se eliminan a6uellas regiones
6ue no tienen un tamao m+nimo4 A continuaci8n se realiza un eti6uetado de las zonas
detectadas como o5os4
a) b) c)
6lustracin 7.1; a) Candidato a cara? b) Iapa de o'os? c) &'os encontrados
1m&lementci"n
(n la im)lementaci8n1 adems de la utilizaci8n de *unciones .sicas de 2atla.1
ca.e destacar la utilizaci8n de las siguientes *unciones4
Tabla 7.C /unciones de Iatlab utili.adas en la 5eneracin del ,yeIap
Nom9re Descri2ci/n Entrada Salida
imdilate
Dilata la imagen de entrada utilizando
el elemento estructurante S(
magen .inaria o en escala de
grises1 elemento estructurante
S(
magen dilatada
imerode
Realiza la erosi8n de la imagen de
entrada con el elemento estructurante
S(
magen .inaria o en escala de
grises1 elemento estructurante
S(
magen
erosionada
imo2en
(5ecuta una a)ertura mor*ol8gica
so.re una imagen en escala de gris o
.inaria
magen y elemento
estructurante con el 6ue se
realiza la a)ertura
magen con la
a)ertura
imclose
(5ecuta un cierre mor*ol8gico so.re
una imagen en escala de gris o .inaria
magen y elemento
estructurante con el 6ue se
realiza el cierre
magen con el
cierre
region2ro2s
2ide un con5unto de )ro)iedades
)ara cada regi8n eti6uetada en la
matriz $
2atriz eti6uetada N$P y lista de
)ro)iedades
Array con las
medidas
realizadas en
cada regi8n
,.1.1.'. Ma2a de 9ocaD MouthMa2
(l color de la regi8n de la .oca tiene una com)onente de ro5o ms *uerte y una
com)onente de azul ms d.il 6ue otras regiones de la cara4 De.ido a esto la
DC
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
com)onente de la crominancia Cr es mayor 6ue la com)onente Cb en la .oca4 Se
o.ser'a adems 6ue en la .oca 7ay una res)uesta .a5a en la caracter+stica CrUCb1
mientras 6ue la res)uesta es alta )ara la caracter+stica Cr
$
4
(n *unci8n a estas )ro)iedades se genera el ma)a de la .oca de la siguiente
manera RFsu et al4 ,//>T:
( )



/+ y x
b r
/+ y x
r
b r r r
y x C y x C
n
y x C
n
C C C C IouthIap
P 1 N
P 1 N
,
,
, ,
P 1 N Y P 1 N
>
P 1 N
>
0C 4 /
Y

donde Cr
$
y CrUCb estn normalizados en el rango R/1,CCT1 y n es el n&mero de )+:eles
dentro de la mscara del candidato a cara /+4 (l )armetro o es estimado como el ratio
entre la media de Cr
$
y la media de CrUCb4
"na 'ez 6ue se tiene el ma)a de o5os de crominancia se enmascara con la
mscara del candidato a cara y se le a)lica una dilataci8n )ara resaltar las zonas en las
6ue 7ay o5os4 Adems se normaliza al rango R/1,CCT4
a) b)
6lustracin 7.1A a) Candidato a cara? b) Iapa de boca
Detecci8n de .ocas
Para decidir 6u regiones son .ocas se 7ace un um.ralizado igual 6ue el 6ue se
7ace )ara el ma)a de o5os:
menteP ar.itraria ado Nseleccion G 4 /
P ma:N P > N P N


donde
IouthIap IouthIap promedio Umbral
Como en el ma)a de o5os1 el resultado de este um.ralizado es una imagen
.inaria en la 6ue toman 'alor > todos los )+:eles 6ue estn )or encima del um.ral1 y
'alor / a6uellos 6ue estn )or de.a5o4
Tam.in en este caso se a)lica un *iltrado mor*ol8gico a la imagen .inaria
o.tenida1 a)licndole )rimero a)ertura y luego cerradura1 )ara eliminar a6uellas
regiones 6ue no tienen un tamao m+nimo4 A continuaci8n se realiza un eti6uetado de
las zonas detectadas como .ocas4
DD
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
a) b) c)
6lustracin 7.1C a) Candidato a cara? b) Iapa de boca? c) @ocas encontradas
1m&lementci"n
(n la im)lementaci8n se utilizan *unciones .sicas de 2atla.1 as+ como algunas
caracter+sticas del tratamiento de imgenes como las incluidas en la ta.la siguiente4
Tabla 7.E /unciones de Iatlab utili.adas en la 5eneracin del IouthIap
Nom9re Descri2ci/n Entrada Salida
imdilate
Dilata la imagen de entrada
utilizando el elemento estructurante
S(
magen .inaria o en escala de
grises1 elemento estructurante S(
magen
dilatada
imo2en
(5ecuta una a)ertura mor*ol8gica
so.re una imagen en escala de gris o
.inaria
magen y elemento estructurante
con el 6ue se realiza la a)ertura
magen con la
a)ertura
imclose
(5ecuta un cierre mor*ol8gico so.re
una imagen en escala de gris o
.inaria
magen y elemento estructurante
con el 6ue se realiza el cierre
magen con el
cierre
region2ro2s
2ide un con5unto de )ro)iedades
)ara cada regi8n eti6uetada en la
matriz $
2atriz eti6uetada N$P y lista de
)ro)iedades
Array con las
medidas
realizadas en
cada regi8n
,.1.1.,. &alidaci/n
"na 'ez 6ue se 7an generado los ma)as de o5os y .oca de.en com.inarse )ara
determinar si una regi8n candidata es realmente una cara o no4 Para realizar esta
com)ro.aci8n se *orman todas las com.inaciones )osi.les entre los o5os y .oca
encontrados en sus res)ecti'os ma)as4
Cogiendo dos o5os y una .oca se crean ;candidatos< 6ue de.en ser e'aluados1 y
a los 6ue se asigna una )untuaci8n1 de *orma 6ue el ;candidato< 6ue tenga mayor
)untuaci8n Nsiem)re 6ue so.re)ase un um.ralP ser de'uelto como cara4
(l )rimer re6uisito 6ue de.e cum)lir la regi8n de )iel candidata a ser una cara es
tener como m+nimo dos o5os y una .oca1 si esto no se cum)le la regi8n no )uede ser
considerada una cara4
Con cada ;candidato< *ormado )or dos o5os y una .oca se crea un tringulo
DE
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
cuyos 'rtices son los centroides de las regiones asociadas a los o5os y .oca4
(ste tringulo de.e cum)lir unas condiciones m+nimas )ara 6ue )ueda ser
considerado una cara4 (stas condiciones son:
\ (l tringulo de.e ser agudo1 es decir1 todos sus ngulos de.en ser agudos )or lo
6ue no )uede tener ning&n ngulo mayor a pY,4
\ (l rea del tringulo de.e tener un n&mero m+nimo de )+:eles4 (ste n&mero de
)+:eles est relacionado con el tamao m+nimo de cara a detectar4 Para este
)royecto se 7a decidido ar.itrariamente 6ue el rea m+nima sea de >// )+:eles4
\ (l ngulo m+nimo del tringulo *ormado )or los o5os y la .oca tendr un 'alor
de pYE1 seleccionado ar.itrariamente4
Si se cum)len estas condiciones se )asan a calcular unas )untuaciones NscoresP
6ue )remian los tringulos simtricos y .ien orientados1 o5os con similar rea y rea del
tringulo cercana al >/Q del rea de la mscara del candidato a cara RSe.0T4
2core de simetr+a y orientaci8n
(n este score se tienen en cuenta dos as)ectos1 la simetr+a de la cara y su
'erticalidad4
6lustracin 7.1E +eometr!a del triBn5ulo o'osHboca
(l as)ecto de la simetr+a de la cara est relacionado con el ngulo q
>
mientras
6ue el de la 'erticalidad se relaciona con el ngulo q
,
4 (l caso ideal ser+a cuando q
>
V q
,
V /1 es decir cuando los o5os y la .oca *orman una ;T<4
Para calcular este score se utiliza la siguiente *8rmula RSe.0T:

, 1 >
P N -
,
G
sen
G
e 2core2im

2core o5os de rea similar
Se contem)la )ositi'amente el 7ec7o de 6ue las regiones *ormadas )or cada o5o
tengan reas similares RSe.0T:
DG
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
{ }
' i
' i
area area
area area
e 2core,yes
1 min

2core rea del tringulo


2ediante un .re'e estudio estad+stico se lleg8 a la conclusi8n de 6ue el rea del
tringulo *ormado )or los o5os y la .oca es el >/Q del rea total de la cara4 Si se
a)ro:ima el rea de la cara a la de la mscara de la regi8n candidata a cara1 se )uede
im)lementar el score 6ue *a'orezca a los tringulos 6ue cum)lan esto RSe.0T:
> 4 /

mascara area
trian5ulo area
e 2core1rea
"na 'ez 6ue se tienen todos los scores calculados se agru)an en un &nico score1
en el 6ue se da mayor im)ortancia al score 6ue mide la simetr+a y orientaci8n del
tringulo 6ue al resto RSe.0T4
2core1rea 2core,yes 2core2im 2core + + ,C 4 / ,C 4 / C 4 /
(ste score se calcula )ara todos los tringulos o5osI.oca )osi.les y se selecciona
el tringulo 6ue o.tiene un resultado mayor como )osi.le cara4 A continuaci8n se
com)rue.a si el mayor de los scores su)era un um.ral m+nimo1 6ue se 7a *i5ado de
*orma ar.itraria en /4B1 y si es as+ se considera 6ue la regi8n de )iel candidata realmente
es una cara4
(n la siguiente *igura se muestra un e5em)lo de o5os y .oca con el me5or score
en una regi8n candidata a cara4 $os o5os y la .oca a)arecen marcados con )untos ro5os
Nestas marcas se incluyen s8lo )ara mostrar esta imagen de e5em)loP:
6lustracin 7.1F ,'emplo de o'os y boca encontrados en una re5in candidata a cara
1m&lementci"n
Para la im)lementaci8n se utilizan *unciones .sicas de 2atla.4
,.1.4. M8todo de selecci/n de caras alternati7o
$a selecci8n de candidatos a caras y la 'alidaci8n 6ue se 7an e:)uesto
anteriormente tiene la 'enta5a de 6ue )uede ser utilizada en imgenes en las 6ue a)arece
ms de una )ersona1 no a)arece &nicamente la cara de la )ersona1 o no a)arece centrada1
D0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
etc4 Por otro lado tiene el incon'eniente de 6ue es com)le5a4
Como en este )royecto se utilizan imgenes 6ue ms o menos se a5ustan a unos
criterios1 se decide im)lementar adicionalmente un mtodo de selecci8n de la cara en la
imagen alternati'o1 muc7o ms sencillo 6ue el anterior y .asado en 6ue en las imgenes
a)arece una sola cara1 6ue ocu)a la mayor )arte de la imagen y 6ue est centrada en
ella4
(sta *orma de seleccionar la cara dentro de la imagen se a)lica en el caso de 6ue
con la selecci8n y 'alidaci8n de candidatos a caras 6ue se 7a descrito anteriormente no
se encuentre ninguna cara en la imagen4
Para este ti)o de detecci8n se )arte de la imagen con las regiones de )iel
agru)adas1 )or tanto las *ases de detecci8n de )+:eles de )iel y de *iltrado y
agru)amiento son comunes4
Se selecciona la regi8n de )iel 6ue tenga un rea mayor1 ya 6ue como se 7a
dic7o anteriormente se tra.a5a .a5o el su)uesto de 6ue en las imgenes 6ue se tienen1 la
cara ocu)a la mayor )arte4 Se com)rue.a si esta regi8n tiene un rea mayor a D//
)+:eles1 ya 6ue esta es la condici8n m+nima 6ue de.e cum)lir )ara )oder ser
considerada como cara1 si no se cum)le esta condici8n no se detecta la cara en la
imagen4
Si la mayor regi8n de )iel encontrada en la imagen cum)le la condici8n del rea
m+nima se utilizan sus caracter+sticas )ara crear una eli)se1 es decir1 se genera una eli)se
6ue est centrada en el centro de la mayor regi8n de )iel N)ro)iedad CentroidP y las
dimensiones de sus e5es estn en *unci8n de las dimensiones de los e5es de esa regi8n de
)iel N)ro)iedades Iinor1xis<en5th y Ia'or1xis<en5thP4
$as ecuaciones de una eli)se son:
as )aramtric
cos
s cartesiana coord4 >
P X N P X N
,
,
,
,

'

bsen b
a x
b
y y
a
x x
donde (xf,yf) es el )unto en el 6ue se encuentra centrada la eli)se1 a y b los semie5es1 y q
el ngulo )olar en el rango R/1,pP4
Con estas ecuaciones se crea una imagen .inaria del mismo tamao 6ue la
imagen original1 en la 6ue los )untos )ertenecientes a la eli)se son >s y el resto son /s4
(sta imagen .inaria es eti6uetada1 o.tenindose una &nica regi8n
corres)ondiente a la eli)se4 Se o.tienen las caracter+sticas de las regiones1 en concreto
interesa o.tener el @oundin5@ox 6ue es el menor rectngulo 6ue contiene la regi8n1 es
decir1 6ue contiene a la eli)se generada4 A continuaci8n se toma de la imagen original la
zona corres)ondiente al @oundin5@ox de la eli)se y esa zona es la 6ue se de'uel'e
como cara4
(n este caso1 el mtodo de detecci8n tiene un mal *uncionamiento )ara
*otogra*+as en las 6ue no a)arece una &nica cara o sta no ocu)a la mayor )arte de la
imagen4 Adems los resultados de)enden de las dimensiones de los e5es 6ue se den a la
eli)se4
E/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
1m&lementci"n
Adems de la utilizaci8n de *unciones .sicas de 2atla.1 ca.e destacar el uso de
las siguientes *unciones4
Tabla 7.F /unciones de Iatlab utili.adas en el mtodo de seleccin de caras en la
ima5en alternativo
Nom9re Descri2ci/n Entrada Salida
9Fla9el
De'uel'e una matriz 6ue contiene
las eti6uetas )ara los o.5etos
encontrados en !h4
2atriz a eti6uetar 2atriz con las eti6uetas
region2ro2s
2ide un con5unto de )ro)iedades
)ara cada regi8n eti6uetada en la
matriz $
2atriz eti6uetada N$P y
lista de )ro)iedades
Array con las medidas
realizadas en cada regi8n
,.1.:. NormaliCaci/n de tamao
(sta eta)a )retende uni*ormar las imgenes de entrada a la *ase de
reconocimiento4 (n este )roceso se a)lica una normalizaci8n del tamao de las
imgenes resultantes de la eta)a de detecci8n )ara 6ue todas tengan las mismas
dimensiones cuando entren en la eta)a de e:tracci8n de caracter+sticas4
(sta normalizaci8n del tamao es necesaria ya 6ue como se 7a comentado
anteriormente la .ase de datos ! contiene imgenes de distintos tamaos )or lo 6ue las
imgenes 6ue se o.tienen tras la detecci8n de la cara1 tam.in tienen distinto tamao4
ncluso si todas las imgenes originales tu'ieran el mismo tamao1 como ocurre en la
.ase de datos A1 ser+a necesaria esta normalizaci8n ya 6ue las dimensiones de las caras
detectadas )ueden tener 'ariaciones4
(l tamao elegido )ara normalizar las imgenes es de >//:>,/4 (stos 'alores
7an sido seleccionados ar.itrariamente4
1m&lementci"n
Se utiliza la siguiente *unci8n de 2atla. )ara realizar la normalizaci8n de
tamao4
Tabla 7.13 /uncin de Iatlab utili.ada en la normali.acin
Nom9re Descri2ci/n Entrada Salida
imresiCe
De'uel'e la imagen de entrada con
el n&mero de *ilas y columnas
es)eci*icado
magen de entrada1 6ue )uede ser
.inaria1 en escala de grises o
RG!4 Dimensiones de la imagen
de salida RmroSs ncolsT
magen con las
dimensiones
es)eci*icadas
,.1.;. Selecci/n del con?unto de datos entrenamiento y datos de test
A )artir de este momento se utilizan B imgenes de cada )ersona1 tanto de la
.ase de datos A1 como de la .ase de datos !4 (n la .ase de datos A se seleccionan B
E>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
imgenes de cada )ersona5e de las 6ue 7ayan resultado de la *ase de detecci8n1 en la
.ase de datos ! ya se ten+an B imgenes )or )ersona5e4 Puede ocurrir 6ue 7aya )ersonas
de alguna de las .ases de datos 6ue no )asen a la *ase de reconocimiento )or6ue en la
*ase de detecci8n no 7ayan resultado B imgenes en las 6ue se 7aya detectado
correctamente la cara4
"na 'ez 6ue se tienen B imgenes de la cara )or )ersona1 y todas tienen el
mismo tamao1 se di'iden en dos gru)os1 el de entrenamiento y el de test4 Para el
entrenamiento se utilizan tres de las cuatro *otos 6ue 7ay de cada )ersona1 y se de5a una
*oto de cada )ersona )ara el test4
,.4. E$!RACC#N DE CARAC!ERGS!CAS
,.4.1. ntroducci/n
$a e:tracci8n de caracter+sticas )retende o.tener una serie de rasgos esenciales
de una imagen1 de tal *orma 6ue1 imgenes similares a ella1 )uedan ser reconocidas y
con'enientemente clasi*icadas4 (n este )royecto la e:tracci8n de caracter+sticas consiste
en o.tener la in*ormaci8n necesaria )ara identi*icar la cara 6ue a)arece en la imagen4
Posteriormente estas caracter+sticas )asan a la eta)a de clasi*icaci8n4
Como se coment8 en el ca)+tulo > de ntroducci8n1 en el a)artado de ?.5eti'os1
el )ro.lema del reconocimiento de caras 7umanas se )uede di'idir en dos grandes *ases:
la detecci8n de caras y el reconocimiento de caras4
$a eta)a de e:tracci8n de caracter+sticas se incluye dentro de la *ase del
reconocimiento de caras1 las eta)as descritas anteriormente corres)onder+an a la *ase de
detecci8n de caras4 Por tanto se su)one 6ue las imgenes con las 6ue se 'a a tra.a5ar a
)artir de este momento &nicamente contienen una cara1 aun6ue esto tam.in de)ende
del *uncionamiento de la *ase de detecci8n1 ya 6ue )uede ocurrir 6ue el *uncionamiento
no sea tan .ueno como se desea y a)arezcan otras zonas del cuer)o o )arte del *ondo de
la imagen1 adems de la cara4
(n el ca)+tulo , del (stado del Arte se descri.en di*erentes mtodos utilizados
en la *ase de reconocimiento de caras4 All+ se mencion8 la e:istencia de dos ti)os de
mtodos 6ue eran utilizados en la *ase de reconocimiento de caras:
\ 2todos 7ol+sticos: utilizan toda la imagen de la cara como entrada al sistema de
reconocimiento1 siendo sta la unidad .sica de )rocesamiento4
\ 2todos .asados en caracter+sticas locales: Se e:traen caracter+sticas locales1
como o5os1 nariz1 .oca1 etc4 Sus )osiciones y estad+sticas locales constituyen la
entrada al sistema de reconocimiento4
A )esar de 6ue en la *ase de detecci8n se .uscan los o5os y la .oca y se tienen
sus )osiciones1 algo 6ue )odr+a ser a)ro'ec7ado )ara la utilizaci8n de mtodos .asados
en caracter+sticas locales1 en este )royecto se 'an a utilizar &nicamente mtodos
7ol+sticos )ara la *ase de reconocimiento4
Se decide utilizar este ti)o de reconocedores ya 6ue se considera 6ue son ms
sencillos de im)lementar 6ue los mtodos .asados en caracter+sticas locales4 Adems en
este )royecto se utiliza una detecci8n de la cara en la imagen alternati'a1 en la 6ue no se
E,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
calcula la )osici8n de los o5os y la .oca1 )or lo 6ue 7ay ocasiones en los 6ue no se tiene
esa in*ormaci8n4
Para la e:tracci8n de caracter+sticas se utiliza el algoritmo PCA4 (n el ca)+tulo ,
del (stado del Arte se 'io la utilizaci8n de este algoritmo )ara la *ase de
reconocimiento1 dando lugar a un mtodo llamado ei5enfaces4 Por sim)licidad1 en este
)royecto no se 'a a im)lementar este mtodo )or com)leto1 s8lo se utiliza el PCA )ara
e:traer ciertas caracter+sticas de la imagen 6ue )asan a la eta)a de clasi*icaci8n4
Como se estn utilizando imgenes en color1 se 'a a a)ro'ec7ar este 7ec7o )ara
tener una mayor in*ormaci8n de cada imagen1 de *orma 6ue )aralelamente se 'an a
e:traer las caracter+sticas mediante PCA )ara la imagen trans*ormada en escala de grises
y )ara cada uno de los canales de color RG!4 (n la eta)a de clasi*icaci8n tam.in se
tienen B clasi*icadores1 uno )ara la imagen en escala de gris y otro )or cada canal de
color RG!1 cuyos resultados se com.inan )ara dar un resultado *inal4
Adems 7ay 6ue tener en cuenta 6ue no todas las )ersonas 6ue inicialmente se
tienen en las .ases de datos se 'an a utilizar )ara la *ase de reconocimiento4 (l n&mero
de )ersonas de cada .ase de datos 6ue se 'an a utilizar en la eta)a de e:tracci8n de
caracter+sticas y en la eta)a de clasi*icaci8n1 'iene limitado )or el n&mero de )ersonas
)ara las 6ue se tienen B imgenes de la cara1 resultado de la *ase de detecci8n4
,.4.'. +rinci2al Com2onent AnalysisD +CA
PCA es una tcnica de )royecci8n so.re un su.es)acio )ara reconocimiento de
caras1 y )ro.a.lemente una de las ms utilizadas4
Se tiene un con5unto de imgenes de entrenamiento1 en este )royecto - imgenes
de entrenamiento )or cada )ersona5e1 seleccionadas aleatoriamente4 Como )rimer )aso
se genera la .ase de datos 6ue se 'a a utilizar )ara el reconocimiento1 se tiene una .ase
de datos )ara las imgenes en escala de gris NT5P1 y otra )or cada canal de color RG!
NT:1 T+ y T@P4
Para crear esta .ase de datos1 cada imagen N6ue tiene la *orma de una matrizP es
trans*ormada en un 'ector columna4 $os 'ectores columna de cada una de las imgenes
*orman la matriz T4 Si se tienen m )ersona5es1 y cada imagen es de tamao (r x c)1 las
dimensiones de esta matriz sern (rcem)4
A continuaci8n se calcula la imagen )romedio del con5unto de entrenamiento:

m
i
i
t
m
>
>

1 y se le resta a cada una de las imgenes de este con5unto:



i i
t
1
teniendo as+ la matriz T 4444 R
m , >
1 4
E-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
a) b)
6lustracin 7.$3 ,'emplo ima5en promedio a) @ase de datos 1? b) @ase de datos @
Seguidamente 7a.r+a 6ue calcular la matriz de co'arianza
T
m
i
T
i i
1 1
m
C

>
>

1 )ara des)us o.tener los auto'alores y auto'ectores4 (l
)ro.lema de este clculo es 6ue es muy costoso com)utacionalmente de.ido a las
grandes dimensiones de 1N1
T
4 Por eso se decide calcular los auto'ectores de la matriz
1
T
N11 6ue es de menor tamao4 Se muestra a continuaci8n la relaci8n entre am.as
matrices:
i i
i i i
i i i i i i
T
i i i
T
1v u
u Cu
1v C1v 1v 1v 11 v 1v 1


donde u
i
son los auto'ectores de C1 v
i
son los auto'ectores de 1
T
N14 De esta *orma se
tiene 6ue 1N1
T
y 1
T
N1 tienen los mismos auto'alores y los auto'alores estn relacionados
)or u
i
M 1v
i
4 As+ calculando los auto'ectores de 1
T
N1 se )ueden o.tener de una manera
ms sencilla los de la matriz de co'arianza4
A continuaci8n se seleccionan los # auto'ectores de la matriz de co'arianza 6ue
tienen mayores auto'alores asociados4 $a elecci8n del n&mero de auto'alores 6ue se
6uiere conser'ar es cr+tica1 un n&mero muy alto su)one un tiem)o de )rocesamiento
grande y una mayor necesidad de memoria en la eta)a de clasi*icaci8n4 "n n&mero muy
.a5o su)one 6ue se )uede )erder muc7a in*ormaci8n4 Se trata )or lo tanto de encontrar
un e6uili.rio1 )ara lo cual se o.ser'a el 'alor de los auto'alores1 )ara 'er c8mo
e'oluciona1 y adems se trata de mantener la mayor )arte )osi.le de la 'arianza inicial
de la .ase de datos4
(n la imagen aP de la lustraci8n -4,> se muestra un e5em)lo en el 6ue 7ay >DC
auto'alores y en el 6ue se )uede 'er sus 'alores4 Se )uede o.ser'ar 6ue los auto'alores
de mayor 'alor son los &ltimos1 adems tam.in se )uede 'er como su 'alor su*re un
r)ido aumento a )artir de los >C &ltimos a)ro:imadamente4
(n la imagen .P de la lustraci8n -4,> se muestra el )orcenta5e de la 'arianza
e:)licada en *unci8n del n&mero de auto'alores utilizados4 A la 7ora de 7acer la gr*ica1
)ara 6ue sta sea ms com)rensi.le se 7a in'ertido el orden de los auto'alores1 de
*orma 6ue los 6ue tienen mayor 'alor son los )rimeros4 (n esta gr*ica se 'e 6ue )ara
mantener alrededor del 0/Q de la 'arianza son necesarios BB auto'alores1 y )ara
mantener alrededor del G/Q se necesitan >E auto'alores4
(n este e5em)lo se 'e como la reducci8n de auto'alores necesarios )ara
mantener el G/Q de la 'arianza1 con res)ecto a los necesarios )ara mantener el 0/Q1 es
im)ortante4 Por eso )ara realizar las )rue.as )osteriores se toma como criterio de
EB
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
selecci8n de auto'ectores el n&mero 6ue 7ace 6ue se mantenga el G/Q de la 'arianza1
ya 6ue se considera 6ue este )orcenta5e es su*iciente1 y se corres)onde
a)ro:imadamente con el n&mero de auto'alores 6ue tienen mayor 'alor4
a)
b)
6lustracin 7.$1 a) ,'emplo de valor de los autovalores, b) ,'emplo de varian.a
explicada
Aun6ue estas gr*icas de e5em)lo 7an sido 7ec7as )ara una .ase de datos de CC
)ersonas de la .ase de datos ! NCCr- V >DC imgenes de entrenamientoP1 y )ara las
imgenes en escala de grises1 se 7a com)ro.ado 6ue los resultados )ara la .ase de datos
EC
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
en los canales RG! y )ara )ersonas de la .ase de datos A o*recen unos resultados muy
similares4
(n la siguiente imagen se muestra un e5em)lo de recu)eraci8n de una imagen en
escala de grises a )artir de los auto'ectores 'ariando su n&mero Nel n&mero total de
auto'ectores es >DCP:
a) b) c) d) e)
6lustracin 7.$$ ,'emplo recuperacin ima5en a partir de los autovectores base de
datos 1 a) 6ma5en ori5inal? b) 133g varian.a (1A; autovectores)? c) F3g varian.a
(7; autovectores)? d) E3g varian.a (1A autovectores)? e) C3g varian.a (E
autovectores)
a) b) c) d) e)
6lustracin 7.$7 ,'emplo recuperacin ima5en a partir de los autovectores base de
datos @ a) 6ma5en ori5inal? b) 133g varian.a (1A; autovectores)? c) F3g varian.a
(4E autovectores)? d) E3g varian.a (1C autovectores)? e) C3g varian.a (C
autovectores)
"na 'ez 6ue se 7an seleccionado los auto'ectores 6ue 'an a ser utilizados1 se
)royectan todas las imgenes de la .ase en el nue'o es)acio reducido1 teniendo as+ los
coe*icientes de la re)resentaci8n de la imagen1 6ue sern las caracter+sticas 6ue se estn
.uscando y 6ue )asan al clasi*icador4
Cuando se tiene una nue'a imagen de una cara 6ue de.e ser reconocida se sigue
el mismo )roceso4 $a imagen nue'a es trans*ormada en un 'ector columna1 a
continuaci8n se le resta la media de las imgenes de entrenamiento y )or &ltimo se
calcula su )royecci8n en el es)acio reducido calculado con las imgenes de
entrenamiento4 As+ se o.tienen los coe*icientes de la nue'a imagen a reconocer1 estos
coe*icientes )asan a la eta)a de clasi*icaci8n4
(ste )roceso se realiza )ara las imgenes en escala de grises y )ara cada uno de
los canales de color RG!1 tanto en el caso de las imgenes de entrenamiento como )ara
las de test4 De esta *orma )asan a la eta)a de clasi*icaci8n un con5unto de caracter+sticas
de la imagen en escala de grises1 otro con5unto de caracter+sticas )ara el canal R1 otro
)ara el canal G y otro )ara el canal !4
ED
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
1m&lementci"n
Para la im)lementaci8n de la e:tracci8n de caracter+sticas mediante PCA se 7an
utilizado *unciones .sicas de 2atla.1 adems ca.e destacar el uso de las siguientes
*unciones adicionales4
Tabla 7.11 /unciones de Iatlab utili.adas en la extraccin de caracter!sticas
Nom9re Descri2ci/n Entrada Salida
rg9'gray
Con'ierte una imagen RG! en una
imagen en escala de grises
magen en *ormato RG!
magen en escala
de grises
resha2e
De'uel'e una matriz de las
dimensiones indicadas1 cuyos
elementos se toman de la matriz de
entrada )or columnas
2atriz de la 6ue se toman los
elementos )or columnas4
Dimensiones de la matriz de
salida
2atriz con las
dimensiones
es)eci*icadas
eig
Produce la matriz de auto'alores NDP
y auto'ectores NVP de la matriz de
entrada
2atriz
2atrices de
auto'ectores y
auto'alores
,.:. C*AS>CAC#N
"na 'ez conseguido un con5unto de caracter+sticas 6ue re)resentan la cara
7umana 6ue a)arece en una imagen1 la siguiente eta)a es la clasi*icaci8n4 (n este
)royecto se 7a decidido utilizar como elemento )rinci)al de la eta)a de clasi*icaci8n la
red neuronal4
Como se 7a mencionado en el a)artado de (:tracci8n de Caracter+sticas1 en este
)royecto se 'an a utilizar imgenes en color y de cada imagen se e:traen B con5untos de
caracter+sticas1 uno )ara la imagen trans*ormada en escala de grises y uno )ara cada uno
de los canales de color RG!4 (n esta eta)a de clasi*icaci8n se crea una red neuronal
)ara cada uno de los con5untos de caracter+sticas y los resultados de cada red son
com.inados )ara dar como resultado las 2 caras de la .ase de datos 6ue ms se
;)arecen< a la cara de la imagen de )rue.a4
Para 6ue el sistema sea ca)az de clasi*icar correctamente1 )re'iamente de.e
7a.erse sometido a un )roceso de entrenamiento4 (n esta *ase se le o*recen al sistema
un con5unto de datos eti6uetados1 )ara 6ue el sistema sea ca)az de e:traer las
caracter+sticas 6ue de*inen cada clase de datos a )artir de ellos4 (ste ti)o de
entrenamiento se conoce como ;su)er'isado<4
,.:.1. Ar=uitectura de las redes neuronales
(l )rimer )aso )ara la creaci8n del sistema de clasi*icaci8n es el diseo de las
redes neuronales 6ue se 'an a utilizar4 (ntre los distintos ti)os de redes neuronales 6ue
)ueden im)lementarse con 2atla. se decide utilizar una red neuronal alimentada 7acia
delante en cascada NCascade /or#ard Neuronal Net#orGs C/NNP1 con a)rendiza5e
bacGpropa5ation1 6ue es un ti)o de )erce)tr8n multica)a4 (n este ti)o de redes 7ay dos
)asos de las seales a tra's de la red1 en el )aso 7acia delante la seal de entrada es
)ro)agada desde la ca)a de entrada 7acia la de salida1 mientras se *i5an los )esos de
cada ca)a y se )roduce la salida4 (l error entre la salida real y la deseada es calculada y
en el )aso 7acia atrs este error es )ro)agado y los )esos se actualizan )or segunda 'ez4
EE
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
$a red C/NN incluye una cone:i8n desde la entrada a cada una de las ca)as1 y
desde cada ca)a a la ca)a siguiente1 es decir1 si )or e5em)lo se tiene una red con tres
ca)as 7a.r cone:iones de la ca)a > a la ca)a ,1 de la ca)a , a la ca)a - y de la ca)a > a
la ca)a -4 (stas cone:iones adicionales )ueden me5orar la 'elocidad a la 6ue la red
a)rende las relaciones deseadas4
$as redes 6ue se 'an a crear tienen - ca)as: una ca)a de entrada1 una ca)a oculta
y una ca)a de salida4 $as cuatro redes neuronales 6ue se generan tienen las mismas
caracter+sticas1 lo 6ue las di*erencia son los datos 6ue se utilizan )ara entrenarlas4 "na
de ellas utiliza las caracter+sticas e:tra+das de la imagen en escala de grises1 y las otras
tres las caracter+sticas e:tra+das de cada uno de los canales de color RG!4
Para todos los resultados 6ue se 'an a )resentar1 el n&mero de neuronas de la
ca)a de entrada de cada red es igual al tamao del 'ector de caracter+sticas 6ue se
o.tiene en la eta)a anterior1 6ue como se di5o 'ar+a en *unci8n del n&mero de
auto'ectores 6ue se utilizan )ara re)resentar las imgenes4 $a ca)a de salida tiene un
n&mero de neuronas igual al n&mero de indi'iduos 6ue 7ay en la .ase de datos y 6ue
de.en ser reconocidos1 es decir1 cada neurona de salida se corres)onde con una )ersona4
Como se di5o tam.in anteriormente1 el n&mero de )ersonas 6ue se utilizan en la *ase de
reconocimiento de)ende de las limitaciones dadas )or la *ase de detecci8n4
(n cuanto a las neuronas de la ca)a oculta1 no e:iste una regla *i5a 6ue determine
su n&mero1 )ero si 7ay algunos criterios 6ue 7an sido muy utilizados4 Seg&n uno de
estos criterios1 el n&mero necesario de neuronas )ara la ca)a oculta es la mitad de la
suma de las neuronas utilizadas en las ca)as de entrada y salida RSe.>>T4 Tam.in suele
a)licarse el criterio seg&n el cual el n&mero de neuronas de la ca)a oculta no )uede ser
su)erior al do.le del n&mero de neuronas de entrada R%lorez et al4 ,//GT4
(n este )royecto se 7a tratado de utilizar un n&mero de neuronas de la ca)a
oculta 6ue se a)ro:ime a los dos criterios mencionados anteriormente4 Tras realizar un
estudio de las situaciones 6ue se 'an a tener )ara realizar las )rue.as se determina 6ue
el n&mero de neuronas de la ca)a oculta es el siguiente4
,
,
s s
s
+

output neuronas input neuronas


hidden neuronas
Se tiene un n&mero de neuronas 6ue es la mitad de la suma de las neuronas de
entrada y salida1 )ero se le resta , )ara ada)tarse al segundo criterio 6ue dice 6ue el
n&mero de neuronas de la ca)a oculta no )uede su)erar el do.le del n&mero de neuronas
de la ca)a de entrada4 (n las )rue.as Ncomo se 'er ms adelante en el ca)+tulo de
Resultados de la ('aluaci8nP el caso en el 6ue el n&mero de neuronas de la ca)a de
entrada y salida es mayor es en el 6ue se tienen >E neuronas de entrada y CC de salida4
Seg&n el )rimer criterio se tendr+an -D NN>EOCCPY,P neuronas1 y seg&n el segundo
criterio el n&mero de neuronas no )uede ser mayor a -B N>Er,P1 )or eso se le resta dos4
Para cada una de las ca)as de la red neuronal de.e de*inirse una *unci8n de
trans*erencia4 Se decide 6ue )ara la ca)a de entrada se utilice la *unci8n tansi51 )ara la
ca)a oculta la *unci8n tansi5 y )ara la ca)a de salida la *unci8n purelin4
EG
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6lustracin 7.$4 /unciones de transferencia utili.adas en las capas de la red neuronal
Adems se de*ine como *unci8n de a)rendiza5e la *unci8n learn5dm 6ue realiza
el a)rendiza5e mediante bacGpropa5ation )or descenso de gradiente1 y como *unci8n de
actualizaci8n trainlm1 6ue actualiza los )esos de acuerdo a la o)timizaci8n de
$e'en.ergI2ar6uardt4
1m&lementci"n
Para generar la ar6uitectura de cada una de las redes neuronales 6ue se 'an a
utilizar )ara la *ase de reconocimiento se em)lea la siguiente *unci8n de 2atla.4
Tabla 7.1$ /uncin de Iatlab utili.ada para la 5eneracin de la red neuronal
Nom9re Descri2ci/n Entrada Salida
neFc.
Crea una red C%##
con .acH)ro)agation
2atriz de entradas1 matriz de salidas deseadas1 tamao
de cada ca)a1 *unci8n de trans*erencia de cada ca)a1
*unci8n de entrenamiento1 *unci8n de a)rendiza5e
Red C%##
,.:.'. Entrenamiento de las redes neuronales
"na 'ez 6ue se tiene de*inida la ar6uitectura de las redes neuronales 6ue se 'an a
utilizar1 el siguiente )aso es su entrenamiento4 Para ello se entregan a la red los 'ectores
de caracter+sticas de las imgenes de entrenamiento N- imgenes )or cada )ersona de la
.ase de datosP1 es decir1 las imgenes re)resentadas en el es)acio reducido *ormado )or
los auto'ectores seleccionados4 Tam.in es necesario )ro)orcionar a la red las salidas
corres)ondientes a cada una de las imgenes de entrenamiento1 ya 6ue se 'a a realizar
un a)rendiza5e su)er'isado4 $a salida )ara cada imagen de entrenamiento ser un 'ector
.inario1 *ormado )or un > en la neurona corres)ondiente al )ersona5e de la imagen1 y
cero en el resto de neuronas4
Para el entrenamiento se de*ine ar.itrariamente un error o.5eti'o de /4/> y un
n&mero m:imo de )ocas de C// Naun6ue como se 'er en el ca)+tulo de Resultados de
la ('aluaci8n el n&mero de )ocas )ara las 6ue con'ergen las redes es muc7o menorP4
1m&lementci"n
Para realizar el entrenamiento de las redes neuronales se utiliza la *unci8n de
E0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
2atla. de la siguiente ta.la4
Tabla 7.17 /uncin de Iatlab para el entrenamiento de redes neuronales
Nom9re Descri2ci/n Entrada Salida
train
Realiza el
entrenamiento de la red
neuronal
Red neuronal a entrenar1
entradas )ara el entrenamiento1
salidas )ara el entrenamiento
Red entrenada1 registro del
)roceso de entrenamiento1 salida
de la red1 errores de la red
,.:.,. Clasi.icaci/n
Con las redes neuronales entrenadas ya es )osi.le realizar el reconocimiento4
Para ello se )ro)orciona al sistema de la *ase de reconocimiento una imagen de las del
con5unto de )rue.a y se e:traen sus caracter+sticas4 Cada 'ector de caracter+sticas es
introducido en la red corres)ondiente Nen la de la imagen en escala de grises y en cada
una de las redes de los canales de color RG!P de manera 6ue se o.tiene un 'ector de
salida )or cada red neuronal1 en total cuatro4
A continuaci8n se o.tiene la di*erencia entre el 'ector de salida de cada red
neuronal y un 'ector *ormado )or >s4 De esta manera se tiene una idea del ;)arecido< de
la imagen de )rue.a a cada una de los )ersonas 6ue *orman la .ase de datos )ara el
reconocimiento4
Para la imagen en escala de grises y )ara cada uno de los canales de color RG!
se seleccionan las 2 Ncon 2 V CP )ersonas de la .ase de datos a las 6ue ms se )arece la
)ersona de la imagen de )rue.a1 es decir1 se seleccionan a6uellas )ersonas de la .ase de
datos )ara las 6ue la di*erencia calculada es menor4 Se .uscan las 2 di*erencias
menores y se de'uel'e el )ersona5e de la .ase de datos a las 6ue corres)onden4 As+ se
tienen en total 2rB )ersonas de la .ase de datos 6ue )odr+an ser la )ersona de la imagen
de )rue.a1 de estas 2rB )ersonas se 'uel'en a seleccionar las 2 )ara las 6ue la
di*erencia calculada es menor1 y estas 2 )ersonas de la .ase de datos sern el resultado
del sistema de reconocimiento4
Fay 6ue tener en cuenta 6ue al estar tra.a5ando en )aralelo con la imagen en
escala de grises y con cada uno de los canales de color RG! )uede ocurrir 6ue entre las
2 )ersonas de la .ase de datos seleccionadas en cada caso 7aya coincidencias1 es decir1
6ue )or e5em)lo una )ersona de la .ase de datos seleccionada )ara la imagen en escala
de grises tam.in sea seleccionada )ara el canal de color G4 Al .uscar las 2 di*erencias
m+nimas entre las 2rB )reseleccionadas se com)rue.a 6ue no 7ay ning&n )ersona5e de
la .ase de datos re)etido1 si 7ay alguno se descarta el corres)ondiente a la di*erencia
mayor entre las coincidencias1 y se .usca la siguiente di*erencia m+nima4
(l resultado se muestra ordenado1 es decir1 la )rimera )ersona del resultado es la
6ue tiene un mayor )arecido con la de la imagen de )rue.a1 o lo 6ue es lo mismo1 la 6ue
tiene una menor di*erencia4
(l diagrama de .lo6ues del sistema com)leto con la es)eci*icaci8n del
clasi*icador es el siguiente:
G/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6lustracin 7.$; 8ia5rama de blo0ues del sistema detallado
1m&lementci"n
Para la clasi*icaci8n se utilizan *unciones .sicas de 2atla.1 adems ca.e
destacar el uso de la siguiente *unci8n4
Tabla 7.14 /uncin de Iatlab para la simulacin de una red neuronal
Nom9re Descri2ci/n Entrada Salida
sim Simula una red neuronal Red neuronal1 entradas de la red Salidas de la red
,.;. N!ER>AH GRE>CA DE USUAR"
Para mostrar el *uncionamiento del sistema de reconocimiento de caras
im)lementado se 7a creado una sim)le inter*az gr*ica de usuario con la ayuda de
G"D( de 2atla.4
$as redes neuronales de la eta)a de clasi*icaci8n tienen 6ue ser entrenadas antes
de )oder utilizar la inter*az gr*ica4 Adems 7ay 6ue introducir determinadas
'ariaciones en algunas de las *unciones de 2atla. 6ue im)lementan el sistema1 )ara
)oder adecuarlas al caso )ara el 6ue se 'a 7a utilizar la inter*az gr*ica4 (s decir1 7ay
6ue )oner el tamao del elemento estructurante de las o)eraciones de a)ertura y cierre
)ara el *iltrado y agru)amiento4 Para re)resentar la imagen de )rue.a 7ay 6ue utilizar el
mismo n&mero de auto'ectores 6ue se 7an utilizado )ara re)resentar las imgenes 6ue
7an ser'ido )ara entrenar las redes neuronales4 Tam.in 7ay 6ue indicar el n&mero de
indi'iduos 6ue *orma la .ase de datos )ara el caso 6ue se est )ro.ando e indicar si se
est tra.a5ando con una .ase de imgenes de la .ase de datos A o !4
$as redes neuronales entrenadas y las .ases de datos Tg1 TR1 TG y T! de.en
estar en el mismo directorio 6ue las *unciones de 2atla.1
(n la imagen 6ue se muestra a continuaci8n se )uede 'er como la inter*az consta
de un .ot8n ;Selecci8n de imagen<1 un .ot8n ;!uscar<1 y siete es)acios en los 6ue
a)arecen las imgenes4
(n los dos es)acios de arri.a se muestran1 a la iz6uierda en el es)acio ;magen
seleccionada<1 la imagen original seleccionada )ara realizar la )rue.a de
reconocimiento1 y a la derec7a en el es)acio ;Cara detectada<1 la zona de la imagen
G>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
original en la 6ue se 7a detectado una cara4 (n los es)acios de a.a5o N;Personas
resultado del reconocimiento<P se muestran las imgenes de la .ase de datos
corres)ondientes a los indi'iduos 6ue son el resultado del )roceso de reconocimiento4
(n este caso a)arecen cinco es)acios )or6ue se est tra.a5ando con 2 V C4
6lustracin 7.$A 6nterfa. 5rBfica de usuario
Cuando el usuario )ulsa el .ot8n ;Selecci8n de imagen<1 se accede a un
.uscador de arc7i'os donde el usuario de.e .uscar la car)eta en la 6ue se encuentran las
imgenes de )rue.a1 es decir a6uellas 6ue se 6uieren reconocer1 y seleccionar una de
estas imgenes4
6lustracin 7.$C 2eleccin de la ima5en
G,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Al seleccionar unas de las imgenes a)arece en el recuadro de imagen su)erior
iz6uierdo y en el recuadro de al lado la zona de esa imagen detectada como cara4
6lustracin 7.$E 8eteccin de la cara
"na 'ez 6ue se 7a seleccionado la imagen 6ue se 6uiere reconocer el usuario
de.e )ulsar el .ot8n ;!uscar<4 Al 7acerlo se )ondr en marc7a el sistema de
reconocimiento1 y en los cinco recuadros 6ue 7ay de.a5o de este .ot8n a)arecern las
cinco imgenes de la .ase de datos 6ue el sistema de'uel'e como resultado4
6lustracin 7.$F :esultado de la clasificacin
G-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Si el usuario )ulsa el .ot8n ;!uscar< sin 7a.er seleccionado antes una imagen de
)rue.a se muestra un mensa5e de error indicndole 6ue de.e 7acerlo4
6lustracin 7.73 Iensa'e de error
Fay casos en los 6ue )ara una misma imagen se de'uel'en 'arias zonas 6ue se
7an detectado como caras4 Cuando se selecciona una de estas imgenes1 en las 6ue 7ay
'arios resultados en la *ase de detecci8n1 inicialmente se muestra uno de ellos en la zona
;Cara detectada<4
6lustracin 7.71 6ma5en en la 0ue se detectan varias caras .ona en la 0ue no hay cara
GB
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Si en esa zona no a)arece ninguna cara el usuario )uede 'ol'er a )ulsar el .ot8n
;Selecci8n de imagen< y a)arece otro de los resultados de la detecci8n4 Cuando se
muestra la zona en la 6ue a)arece la cara el usuario de.e )ulsar el .ot8n ;!uscar< )ara
o.tener los resultados del reconocimiento4
6lustracin 7.7$ 6ma5en en la 0ue se detectan varias caras .ona en la 0ue hay cara
GC
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
1. RESU*!AD"S DE *A E&A*UAC#N
(n este ca)+tulo se 'an a mostrar y analizar los resultados o.tenidos en la
e'aluaci8n del sistema tanto en la *ase de detecci8n como en la *ase de reconocimiento4
Para la *ase de detecci8n se analizan los resultados 6ue se o.tienen cuando se
utiliza s8lo la )arte de selecci8n y 'alidaci8n de regiones candidatas a caras1 y cuando
se le aade el mtodo alternati'o de selecci8n de caras dentro de la imagen1 )udiendo
'er as+ el )orcenta5e de caras 6ue se detectan )or un mtodo u otro4
Para la *ase de reconocimiento se realizan 'arias )rue.as en las 6ue se 'ariarn
algunos )armetros del sistema1 )ara intentar llegar a tener una con*iguraci8n 8)tima4
1.1. >ASE DE DE!ECC#N
(n el ca)+tulo anterior se detall8 la im)lementaci8n de la )arte del sistema de
reconocimiento de caras 6ue esta.a dedicada a la detecci8n de la cara dentro de una
imagen4 A7ora se 'an a mostrar los resultados o.tenidos al a)licar dic7a
im)lementaci8n tanto a la .ase de datos A como a la .ase de datos !4
Se recuerda 6ue la .ase de datos A est *ormada )or >,/ )ersonas1 con ,/
imgenes )or cada )ersona1 teniendo en total ,B// imgenes4 (stas imgenes 7an sido
tomadas en un am.iente controlado y en ellas a)arece una &nica cara1 centrada y 6ue
ocu)a la mayor )arte de la imagen4
Por otro lado1 la .ase de datos ! contiene un total de B// imgenes1 estando
*ormada )or >// ;)ersona5es< y B imgenes )or ;)ersona5e<4 (n este caso las imgenes
no 7an sido tomadas en un am.iente controlado y no siem)re contienen una cara
centrada en la imagen y 6ue ocu)a la mayor )arte de sta4
Para analizar los resultados o.tenidos se im)one la condici8n de 6ue )ara 6ue se
considere 6ue una cara 7a sido detectada correctamente de.en a)arecer los dos o5os y la
.oca4
(n la im)lementaci8n de la *ase de detecci8n se e'al&an dos o)ciones4 "na de
ellas est .asada en lo e:)uesto en el art+culo RFsu et al4 ,//>T1 6ue como se e:)lic8 en
el ca)+tulo de Diseo e m)lementaci8n est .asada en la selecci8n de regiones de )iel
candidatas a ser caras y su 'alidaci8n mediante ma)as de o5os y .oca4 $a otra o)ci8n
consiste en aadir al mtodo de detecci8n anterior un )rocedimiento alternati'o 6ue se
utiliza en el caso de 6ue el )rimero no detecte ninguna cara en la imagen4
Adems se realizan )rue.as con distintos tamaos de radio del elemento
estructurante 6ue se utiliza en las o)eraciones de a)ertura y cierre en la )arte de *iltrado
y agru)amiento de los )+:eles de )iel encontrados en una imagen4
1.1.1. +rue9a de detecci/n con selecci/n de candidatos y 7alidaci/n
mediante ma2as de o?os y 9oca
4.1.1.1. Bse de dtos )
Realizando la )rue.a de detecci8n )ara la .ase de datos A se o.ser'a 6ue )uede
7a.er 'arias situaciones 6ue se dan )ara todos los tamaos de radio del elemento
estructurante utilizados4 Puede ocurrir 6ue se detecte correctamente la cara dentro de la
GD
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
imagen1 tam.in )uede ser 6ue se de'uel'a como cara )arte de la imagen en la 6ue
a)arece la cara )ero no la cara com)leta o 6ue se de'uel'a como cara )arte de la imagen
6ue no lo es4 Por &ltimo1 )uede 6ue no se detecte ninguna cara dentro de la imagen4
Tabla 4.1 :esumen resultados deteccin (seleccin de candidatos) base de datos 1
A2ertura '
Cierre 1
A2ertura 1
Cierre 1
A2ertura '
Cierre 1I
A2ertura '
Cierre 'I
A2ertura '
Cierre ,I
Cara detectada
correctamente
-B/
N>B4,QP
,DG
N>>4,QP
GGE
N-D40QP
>,E0
NC-4-QP
>BC/
ND/4BQP
Cara detectada
incorrectamente
GEB
N-D4BQP
>/DC
NBB4CQP
D/0
N,C4-QP
B,C
N>E4EQP
-CB
N>B4EQP
#o se detecta
cara
>->-
NCB4EQP
>,,D
NC>4>QP
>BC,
ND/4CQP
E//
N,04,QP
C0D
N,B4GQP
#&mero de
)ersonas )ara
*ase de
reconocimiento
,-
N>04,QP
,/
N>D4EQP
C0
NB04,QP
G-
ND04,QP
0,
NED4EQP
(n la ta.la anterior se )uede 'er como el n&mero de caras detectadas
correctamente aumenta con*orme se incrementa el tamao del radio del elemento
estructurante )ara la o)eraci8n de cierre4 (n cuanto al tamao del radio )ara la
o)eraci8n de a)ertura1 se )uede 'er Ncom)arando los dos casos en los 6ue el tamao
)ara el cierre es el mismoP 6ue los resultados son me5ores )ara el caso en 6ue el radio es
menor4
(sta me5ora con el aumento del tamao del radio )ara el cierre se de.e
)rinci)almente a 6ue 7ay imgenes en las 6ue las zonas de )iel de la cara detectadas no
estn conectadas1 )or lo 6ue )uede ocurrir 6ue no se de'uel'a la cara com)leta4 Al
aumentar el radio del cierre se *acilita la cone:i8n de esas zonas1 de manera 6ue el
detector de'uel'e la cara com)leta4
a) b) c)
Tabla 4.$ ,'emplo resultado deteccin con varios tama9os de radio del
elemento estructurante a) apertura $, cierre $? b) apertura $, cierre 13? c) apertura $,
cierre $3
(n todos los casos se tienen imgenes en las 6ue la detecci8n no se 7ace
correctamente1 se de'uel'en )artes de la imagen 6ue no contienen ninguna cara1 o la
zona de'uelta no contiene la cara com)leta4 A continuaci8n se muestran algunos
e5em)los de detecciones no correctas:
GE
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6lustracin 4.1 ,'emplo resultado deteccin no correcta base de datos 1, con radio
apertura $ y cierre 4
Si se 7ace la suma de los datos de las tres )rimeras *ilas )ara cada columna de la
ta.la B4>1 se o.tiene un n&mero su)erior al de imgenes de la .ase de datos N,B//P4 (sto
se de.e a 6ue 7ay imgenes en las 6ue el detector de'uel'e 'arios resultados como caras
)ara una misma imagen1 e:ce)to )ara el caso de radio , )ara la a)ertura y -/ )ara el
cierre1 en el 6ue esto no ocurre4
Tabla 4.7 Nhmero de imB5enes para las 0ue el detector devuelve mBs de un resultado
en la base de datos 1
A2ertura '
Cierre 1
A2ertura 1
Cierre 1
A2ertura '
Cierre 1I
A2ertura '
Cierre 'I
A2ertura '
Cierre ,I
>,C >C0 BB B /
(sto se )uede 'er en el e5em)lo siguiente1 en el 6ue se muestra la misma imagen
y dos zonas distintas 6ue el detector considera 6ue son caras Nlas zonas a)arecen
recuadradas en ro5oP:
6lustracin 4.$ ,'emplo de deteccin incorrecta de varias caras en la misma ima5en
(n la ta.la B4, de nue'o se )uede 'er 6ue los resultados me5oran al aumentar el
tamao del radio )ara la o)eraci8n de cierre1 y 6ue son me5ores con una radio )ara la
a)ertura menor4 Como se 7a dic7o al aumenta el radio del cierre se conectan ms zonas
de )iel detectadas1 )or lo 6ue la )ro.a.ilidad de 6ue 6ueden 'arias zonas 6ue se
de'uel'en como caras es menor4
(n los resultados o.tenidos )ara la esta .ase de datos se 7a o.ser'ado 6ue 7ay
muc7as imgenes de'ueltas )or el detector en las 6ue la cara a)arece )rcticamente
GG
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
entera1 )ero no cum)len el re6uisito de 6ue a)arezcan los dos o5os y la .oca com)letos1
)ara )oder considerar 6ue se 7a realizado la detecci8n correctamente4
6lustracin 4.7 ,'emplo de cara incompletas, apertura radio $ y cierre 73
4.1.1.2. Bse de dtos B
Al realizar la )rue.a de la detecci8n )ara la .ase de datos ! se o.ser'a 6ue se
tienen los mismos casos 6ue )ara la .ase de datos A1 6ue se detecte correctamente la
cara dentro de la imagen1 tam.in )uede ser 6ue se de'uel'a como cara )arte de la
imagen en la 6ue a)arece la cara )ero no la cara com)leta o 6ue se de'uel'a como cara
)arte de la imagen 6ue no lo es4 (n &ltimo caso1 )uede ocurrir 6ue no se detecte ninguna
cara dentro de la imagen4 Adems con esta .ase de datos se )uede dar un caso nue'o1 y
es 6ue se detecte una cara en una imagen en la 6ue no a)arece ninguna cara 7umana1 ya
6ue en esta .ase de datos 7ay G imgenes en las 6ue no a)arecen caras 7umanas4
Tabla 4.4 :esumen resultados deteccin (seleccin candidatos) base de datos @
A2ertura '
Cierre 1
A2ertura 1
Cierre 1
A2ertura '
Cierre 1I
A2ertura '
Cierre 'I
A2ertura '
Cierre ,I
Cara detectada
correctamente
,0D
NEC4CQP
-/G
NEG4CQP
->B
NG/4>QP
-,-
NG,4BQP
-,,
NG,4>QP
Cara detectada
incorrectamente
Nimagen con
carasP
B,
N>/4EQP
BB
N>>4,QP
,-
NC4GQP
>,
N-4>QP
>/
N,4CQP
#o se detecta
cara Nimagen
con carasP
GB
N,>4BQP
EB
N>G40QP
E-
N>G4DQP
DD
N>D4GQP
DC
N>D4CQP
Cara detectada
incorrectamente
Nimagen sin
carasP
,
N,CQP
-
N-E4CQP
,
N,CQP
-
N-E4CQP
B
NC/QP
#o se detecta
cara Nimagen
sin carasP
D
NECQP
C
ND,4CQP
D
NECQP
C
ND,4CQP
B
NC/QP
#&mero de
)ersonas )ara
*ase de
reconocimiento
-E
N-E4EQP
-0
N-04GQP
B/
NB/4GQP
B-
NB-40QP
B,
NB,4GQP
G0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Para esta .ase de datos el )orcenta5e de caras detectadas correctamente es mayor
6ue )ara la .ase de datos A en todos los casos4 (n )rinci)io se es)era.a 6ue los
resultado )ara la .ase de datos A *ueran me5ores 6ue )ara la .ase de datos !1 ya 6ue las
imgenes estn tomadas en un am.iente controlado y cum)len muc7o me5or los
re6uisitos desea.les )ara el me5or *uncionamiento del sistema de reconocimiento de
caras1 )ero como se 7a dic7o anteriormente1 7ay muc7as imgenes de la .ase de datos A
en las 6ue los o5os y la .oca no a)arecen com)letos y la detecci8n no se considera
correcta1 lo 6ue 7ace 6ue los n&meros de los resultados sean ms .a5os de lo es)erado4
(n la ta.la B4B se )uede 'er como el n&mero de caras detectadas correctamente
aumenta al incrementar el tamao del radio del elemento estructurante )ara el cierre1 el
)ro.lema es 6ue tam.in aumenta el n&mero de imgenes en las 6ue se de'uel'e un
resultado cuando no a)arece ninguna cara 7umana4
$os resultados )ara los casos en los 6ue se tiene el mismo tamao de radio )ara
la o)eraci8n de cierre y se 'ar+a el de la a)ertura N6ue toma 'alores , y BP son muy
)arecidos4
Para la .ase de datos ! es im)ortante tener en cuenta la calidad de la detecci8n1
adems de los n&meros de caras detectadas1 ya 6ue las imgenes de esta .ase de datos
no estn tomadas en un am.iente controlado y es ms *cil 6ue se detecten como )+:eles
de )iel zonas de la imagen 6ue no )ertenecen a la cara y 6ue )ueden in*luir
negati'amente en la *ase de reconocimiento4
a) b)
c) d)
6lustracin 4.4 ,'emplo calidad deteccin a) c) apertura $, cierre 4? b) d) apertura $,
cierre $3
Como se )uede 'er en la lustraci8n B4B al aumentar el tamao del radio )ara el
0/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
cierre se unen zonas de la imagen 6ue no )ertenecen a la cara4 Por eso )ara esta .ase de
datos se considera 6ue los resultado son me5ores cuando el radio 'ale , o B )ara la
a)ertura y B )ara el cierre1 aun6ue el n&mero de caras detectadas sea menor4
gual 6ue ocurr+a )ara la .ase de datos A1 se tienen imgenes en las 6ue la
detecci8n no se 7ace correctamente1 y en las 6ue se de'uel'en )artes de la imagen 6ue
no contienen ninguna cara o la zona de'uelta no contiene la cara com)leta y tam.in se
de'uel'en resultados en imgenes 6ue no contienen cara 7umanas4 A continuaci8n se
muestran algunos e5em)los de detecciones no correctas:
6lustracin 4.; ,'emplo deteccin no correcta base de datos @
Tam.in en este caso al 7acer la suma de los datos de la ta.la B4B )ara las cinco
)rimeras *ilas de cada columna se o.tiene un n&mero mayor al n&mero de imgenes de
la .ase de datos1 igual 6ue ocurr+a en la .ase de datos A1 esto se de.e a 6ue 7ay
imgenes en las 6ue el detector de'uel'e 'arias zonas como caras4
Tabla 4.; Nhmero de imB5enes para las 0ue el detector devuelve mBs de un resultado
en la base de datos @
A2ertura '
Cierre 1
A2ertura 1
Cierre 1
A2ertura '
Cierre 1I
A2ertura '
Cierre 'I
A2ertura '
Cierre ,I
-- -B >0 0 C
A continuaci8n se muestra un e5em)lo Nlas zonas de'ueltas como caras a)arecen
recuadradas en ro5oP:
6lustracin 4.A ,'emplo de deteccin de varias caras en la misma ima5en
0>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
(n la ta.la B4C se )uede 'er como el n&mero de imgenes )ara las 6ue se
de'uel'e ms de un resultado disminuye al aumentar el radio del elemento estructurante
)ara la o)eraci8n de cierre1 igual 6ue ocurr+a )ara la .ase de datos A4
1.1.'. +rue9as de detecci/n del sistema .inal Jselecci/n de regiones de 2iel
candidatas y 7alidaci/n mediante ma2as de o?os y 9oca K detecci/n
alternati7a con eli2seL
Para tratar de me5orar los resultados o.tenidos con la .ase de datos A se decide
im)lementar el mtodo alternati'o de detecci8n1 6ue se utilizar en el caso de 6ue el
mtodo anterior no detecte ninguna cara en una imagen4
Se 7a decidido mantener la detecci8n mediante la selecci8n de candidatos y
'alidaci8n )or ma)as de o5os y .oca ya 6ue como se 7a 'isto )ro)orciona .uenos
resultados )ara la .ase de datos !4 Adems como se 7a comentado en 'arias ocasiones
este mtodo de detecci8n es ms general y )uede a)licarse a imgenes en las 6ue
a)arecen 'arias caras1 la cara no est centrada1 etc4
Como se di5o en el ca)+tulo de Diseo e m)lementaci8n1 cuando es necesario
utilizar la detecci8n alternati'a se utilizan las caracter+sticas de la mayor regi8n de )iel
de la imagen Nsiem)re 6ue esta regi8n tenga un rea mayor a D// )+:elesP )ara generar
una eli)se4 (sta segunda )arte de la detecci8n est .asada en el su)uesto de 6ue las
imgenes utilizadas tienen una &nica cara y 6ue ocu)a la mayor )arte de sta1 el
re6uisito 6ue de.e cum)lirse es 6ue 7aya una regi8n de )iel de rea mayor de D//
)+:eles1 si esto se cum)le se de'ol'er una cara detectada4
$a eli)se estar centrada en el centro de la regi8n de )iel y el tamao de sus e5es
estar en *unci8n de los e5es de esa regi8n4 Se 7an realizado )rue.as tomando como
tamao de los e5es de la eli)se el C/Q1 el ECQ y el >//Q del tamao de los e5es de la
regi8n de )iel4
(l n&mero de imgenes resultantes de la detecci8n ser el mismo )ara todas las
)rue.as realizadas1 ya 6ue este n&mero de)ende de la )rimera *ase de la detecci8n Ncon
selecci8n de candidatos y 'alidaci8n con ma)as de o5os y .ocaP1 y del tamao de las
regiones de )iel en caso de ser necesaria la detecci8n alternati'a1 y stos no 'ar+an4 $o
6ue )odr 'ariar ser el n&mero de caras detectadas correctamente1 ya 6ue en *unci8n
del tamao de e5es 6ue se est utilizando )uede ser 6ue se de'uel'a como cara una zona
en la 6ue a)arece la cara com)leta1 y )or lo tanto la detecci8n sea correcta1 o )uede ser
6ue se de'uel'a una zona en la 6ue la cara no sea com)leta1 y la detecci8n sea
incorrecta4
4.1.2.1. Bse de dtos )
"tilizando el sistema de detecci8n com)leto se )ueden encontrar las mismas
situaciones1 en cuanto a los resultados de'ueltos )or el detector1 6ue en el caso de
utilizar s8lo la )arte de selecci8n de candidatos a caras y 'alidaci8n mediante ma)as de
o5os y .oca4 Puede ser 6ue se detecte correctamente la cara dentro de la imagen1
tam.in )uede ser 6ue se de'uel'a como cara )arte de la imagen en la 6ue a)arece la
cara )ero no la cara com)leta o 6ue se de'uel'a como cara )arte de la imagen 6ue no lo
0,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
es y )or &ltimo 6ue no se detecte una cara dentro de la imagen4
A continuaci8n se muestran algunos e5em)los de imgenes de'ueltas )or el
detector4
6lustracin 4.C ,'emplo de imB5enes resultado del proceso de deteccin base de datos
1 (radio apertura $, radio cierre 4)
Como el sistema de detecci8n com)leto utiliza la detecci8n mediante selecci8n
de regiones candidatas y 'alidaci8n )or ma)as de o5os y .oca1 al realizar las )rue.as se
o.ser'a 6ue 7ay imgenes )ara las 6ue el detector de'uel'e 'arios resultados1 igual 6ue
ocurre al realizar la )rue.a de la )rimera *ase de la detecci8n de *orma aislada4 (s esa
)arte de la detecci8n la 6ue )uede )roducir esos resultados1 ya 6ue si se utiliza la
detecci8n alternati'a s8lo se selecciona una regi8n1 la regi8n de )+:eles de )iel 6ue
tenga mayor rea4
Por tanto )ara todos los tamaos de eli)se se o.tienen el mismo n&mero de
imgenes )ara las 6ue se de'uel'e ms de un resultado 6ue cuando se utiliza s8lo la
)rimera )arte de la detecci8n4
6lustracin 4.E ,'emplo de deteccin de varias caras en la misma ima5en base de
datos 1
4.1.2.1.1. Tm8o de los e+es de l eli&se i$'l l 59: de los e+es de l re$i"n de &iel
Tabla 4.A :esumen resultados deteccin completa base de datos 1 (e'es elipse ;3g)
A2ertura '
Cierre 1
A2ertura 1
Cierre 1
A2ertura '
Cierre 1I
A2ertura '
Cierre 'I
A2ertura '
Cierre ,I
Cara detectada
correctamente
EE-
N-,4-QP
C,B
N,>4GQP
>,->
NC>4-QP
>C0-
NDD4-QP
>E-B
NE,4,QP
Cara detectada
incorrectamente
>D-0 >0/0 >>,> E-> D/,
0-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
NDG4,QP NE04CQP NBD4EQP N-/4BQP N,C4>QP
#o se detecta
cara
>>-
NB4EQP
>,D
NC4,QP
0,
N-4GQP
G/
N-4-QP
DB
N,4EQP
#&mero de
)ersonas )ara
*ase de
reconocimiento
CC
NBC4GQP
-C
N,04>QP
ED
ND-4-QP
0>
NEC4GQP
00
NG,4CQP
Como ocurr+a en el caso de la )rimera )arte de la detecci8n se 'e como al
aumentar el radio del elemento estructurante )ara la o)eraci8n de cierre me5oran los
resultados1 aumenta el n&mero de imgenes en las 6ue se detecta correctamente la cara1
disminuye el n&mero de detecciones incorrectas y el n&mero de imgenes en las 6ue no
se de detecta ninguna cara4
(n com)araci8n con los resultados o.tenidos con la )rimera )arte de la
detecci8n se reduce muc7+simo el n&mero de imgenes )ara el 6ue no se detecta
ninguna cara en la imagen4 (sto es de.ido a 6ue todas las imgenes de la .ase contienen
una cara1 y es *cil )or tanto 6ue se cum)la el re6uisito m+nimo de encontrar una regi8n
de )iel de rea mayor a D// )+:eles4 Por otro lado esto tam.in )roduce un aumento en
el n&mero de detecciones err8neas1 ya 6ue la eli)se 6ue se utiliza )ara seleccionar la
regi8n de la imagen de'uelta1 )uede no a.arcar la cara com)leta4
4.1.2.1.2. Tm8o de los e+es de l eli&se i$'l l ;5: de los e+es de l re$i"n de &iel
Tabla 4.C :esumen resultados deteccin completa base de datos 1 (e'es elipse C;g)
A2ertura '
Cierre 1
A2ertura 1
Cierre 1
A2ertura '
Cierre 1I
A2ertura '
Cierre 'I
A2ertura '
Cierre ,I
Cara detectada
correctamente
0E-
NB/4CQP
D0C
N,G40QP
>B,B
NC04-QP
>E0/
NEB4DQP
>GEE
NEG4,QP
Cara detectada
incorrectamente
>B-0
NC040QP
>E-G
NE,4BQP
0,G
N-G4EQP
C-B
N,,4,QP
BC0
N>04>QP
#o se detecta
cara
>>-
NB4EQP
>,D
NC4,QP
0,
N-4GQP
G/
N-4-QP
DB
N,4EQP
#&mero de
)ersonas )ara
*ase de
reconocimiento
DE
NCC4GQP
C/
NB>4EQP
GE
NE,4CQP
>/B
NGD4EQP
>/G
N0/QP
Se 'e como el n&mero de imgenes en las 6ue se detecta la cara correctamente
aumenta con res)ecto al caso anterior1 y el de imgenes incorrectas se reduce4 (sto se
de.e al 7ec7o de 6ue a7ora1 cuando se utiliza la detecci8n alternati'a1 al ser los e5es de
la eli)se mayores se de'uel'e una mayor regi8n de la imagen como resultado4 Al dar
como resultado una zona mayor1 7ay imgenes en las 6ue a7ora a)arece la cara
com)leta mientras 6ue antes s8lo a)arec+a )arte de ella4
0B
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
(n cuanto a la 'ariaci8n de los resultados con el tamao del radio de las
o)eraciones de a)ertura y cierre1 el com)ortamiento es igual 6ue en los casos anteriores4
4.1.2.1.3. Tm8o de los e+es de l eli&se i$'l l 199: de los e+es de l re$i"n de &iel
Tabla 4.E :esumen resultados deteccin completa base de datos 1 (e'es elipse 133g)
A2ertura '
Cierre 1
A2ertura 1
Cierre 1
A2ertura '
Cierre 1I
A2ertura '
Cierre 'I
A2ertura '
Cierre ,I
Cara detectada
correctamente
>,G/
NC-4-QP
0BC
N-04-QP
>C00
NDD4DQP
>GC>
NEE4>QP
>0>,
NE04DQP
Cara detectada
incorrectamente
>>-,
NBE4>QP
>BGG
ND,QP
EC-
N->4BQP
BE-
N>04EQP
B,-
N>E4DQP
#o se detecta
cara
>>-
NB4EQP
>,D
NC4,QP
0,
N-4GQP
G/
N-4-QP
DB
N,4EQP
#&mero de
)ersonas )ara
*ase de
reconocimiento
GB
NE/QP
D0
NCE4CQP
00
NG,4CQP
>/E
NG04,QP
>/G
N0/QP
$os resultados )ara este tamao de e5es de la eli)se tienen el mismo
com)ortamiento 6ue )ara los casos anteriores en cuanto al tamao del radio del
elemento estructurante4
Al utilizar un tamao de los e5es de la eli)se mayor 6ue en los dos casos
anteriores se de'uel'en regiones mayores1 lo 6ue *a'orece 6ue en la imagen resultado
de la detecci8n )ueda a)arecer la cara com)leta en ms ocasiones 6ue cuando los e5es
son ms )e6ueos4 Por este moti'o con este tamao de e5es se o.tiene el mayor n&mero
de imgenes en las 6ue la cara se detecta correctamente1 ya 6ue muc7as de las imgenes
detectadas incorrectamente son una )arte de la cara1 )ero sta no a)arece
com)letamente4
a) b) c)
6lustracin 4.F ,'emplo resultado deteccin alternativa base de datos 1 a) ,'es elipse
;3g? b) ,'es elipse C;g? c) ,'es elipse 133g
(l aumentar el tamao de los e5es tam.in )uede su)oner 6ue en la imagen
resultado a)arezca ms )arte del *ondo de la imagen1 algo 6ue )uede in*luir
negati'amente en la *ase de reconocimiento ya 6ue aumenta la 'aria.ilidad1 aun6ue en
esta .ase de datos )uede no ser tan im)ortante ya 6ue el *ondo es uni*orme y el mismo
0C
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
)ara todas las imgenes4
a) b) c)
6lustracin 4.13 ,'emplo resultado deteccin alternativa base de datos 1 a) ,'es
elipse ;3g? b) ,'es elipse C;g? c) ,'es elipse 133g
4.1.2.2. Bse de dtos B
Al realizar las )rue.as de detecci8n con esta .ase de datos se o.ser'a una 'ez
ms 6ue a)arecen los mismos casos de resultados 6ue en las )rue.as anteriores4
6lustracin 4.11 ,'emplo de imB5enes resultado del proceso de deteccin base de datos
@ (radio apertura $, radio cierre 4)
Para todos los tamaos de eli)se se tienen el mismo n&mero de imgenes )ara
las 6ue se de'uel'e ms de un resultado 6ue con )rimera )arte de la detecci8n4
6lustracin 4.1$ ,'emplo de deteccin de varias caras en la misma ima5en base de
datos @
0D
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
4.1.2.2.1. Tm8o de los e+es de l eli&se i$'l l 59: de los e+es de l re$i"n de &iel
Tabla 4.F :esumen resultados deteccin completa base de datos @ (e'es elipse ;3g)
A2ertura '
Cierre 1
A2ertura 1
Cierre 1
A2ertura '
Cierre 1I
A2ertura '
Cierre 'I
A2ertura '
Cierre ,I
Cara detectada
correctamente
-EG
N0D4BQP
-EG
N0D4BQP
-GC
N0G4,QP
-GE
N0G4EQP
-GD
N0G4BP
Cara detectada
incorrectamente
Nimagen con
carasP
BE
N>>40QP
BE
N>>40QP
,C
ND4-QP
>B
N-4CQP
>>
N,4GQP
#o se detecta
cara Nimagen
con carasP
/
N/QP
/
N/QP
/
N/QP
/
N/QP
/
N/QP
Cara detectada
incorrectamente
Nimagen sin
carasP
B
NC/QP
B
NC/QP
C
ND,4CQP
D
NECQP
D
NECQP
#o se detecta
cara Nimagen
sin carasP
B
NC/QP
B
NC/QP
-
N-E4CQP
,
N,CQP
,
N,CQP
#&mero de
)ersonas )ara
*ase de
reconocimiento
GG
NG04GQP
GB
NGC4EQP
0>
N0,4GQP
0-
N0B40QP
0,
N0-4GQP
Se )roduce un aumento en el n&mero de imgenes en las 6ue la detecci8n es
err8nea4 Como se coment81 esto se de.e a 6ue la restricci8n im)uesta )ara detectar la
cara en caso de utilizarse la )arte de detecci8n alternati'a es muy le'e1 y 7ace 6ue
aumente el n&mero de caras detectadas correctamente1 )ero tam.in )roduce resultados
en los 6ue la cara no a)arece com)leta1 y aumenta el n&mero de casos en los 6ue se
detecta una cara en imgenes 6ue no contienen caras4
(l com)ortamiento res)ecto a la 'ariaci8n del radio del elemento estructurante
es igual 6ue cuando s8lo se utiliza la )rimera )arte de la detecci8n4 Al aumentar el radio
)ara la o)eraci8n de a)ertura aumenta el n&mero de imgenes en las 6ue la cara se
detecta correctamente1 )ero la calidad de la detecci8n em)eora4 Por eso con el sistema
de detecci8n com)leto tam.in se )re*ieren los resultados con radio )ara la a)ertura , o
B1 y radio )ara el cierre B4
Si se com)aran estos resultados con los o.tenidos )ara la .ase de datos A1 'emos
6ue los )orcenta5es de detecciones correctas son me5ores )ara esta .ase de datos1 igual
6ue ocurre al utilizar s8lo la )rimera )arte de la detecci8n4
0E
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
4.1.2.2.2. Tm8o de los e+es de l eli&se i$'l l ;5: de los e+es de l re$i"n de &iel
Tabla 4.13 :esumen resultados deteccin completa base de datos @ (e'es elipse C;g)
A2ertura '
Cierre 1
A2ertura 1
Cierre 1
A2ertura '
Cierre 1I
A2ertura '
Cierre 'I
A2ertura '
Cierre ,I
Cara detectada
correctamente
-G-
N0E4EQP
-E0
N0D4EQP
-GE
N0G4EQP
-G0
N004,QP
-GE
N0G4EQP
Cara detectada
incorrectamente
Nimagen con
carasP
B-
N>/40QP
BD
N>>4EQP
,-
NC4GQP
>,
N-4>QP
>/
N,4CQP
#o se detecta
cara Nimagen
con carasP
/
N/QP
/
N/QP
/
N/QP
/
N/QP
/
N/QP
Cara detectada
incorrectamente
Nimagen sin
carasP
B
NC/QP
B
NC/QP
C
ND,4CQP
D
NECQP
D
NECQP
#o se detecta
cara Nimagen
sin carasP
B
NC/QP
B
NC/QP
-
N-E4CP
,
N,CQP
,
N,CQP
#&mero de
)ersonas )ara
*ase de
reconocimiento
0>
N0,4GQP
GG
NG04EQP
0-
N0B40QP
0C
N0D40QP
0-
N0B40QP
Aumenta el n&mero de imgenes en las 6ue la detecci8n es correcta4 (sto se
de.e a 6ue a7ora cuando se utiliza la detecci8n alternati'a1 al ser los e5es de la eli)se
mayores se de'uel'e una mayor regi8n de la imagen como resultado4 Al dar como
resultado una zona mayor1 7ay imgenes en las 6ue a7ora a)arece la cara com)leta
mientras 6ue antes s8lo a)arec+a )arte de ella4
Res)ecto al cam.io de radio )ara las o)eraciones de a)ertura y cierre se cum)le
lo mismo 6ue )ara los casos anteriores de esta .ase de datos4
4.1.2.2.3. Tm8o de los e+es de l eli&se i$'l l 199: de los e+es de l re$i"n de &iel
Tabla 4.11 :esumen resultados deteccin completa base de datos @ (e'es elipse 133g)
A2ertura '
Cierre 1
A2ertura 1
Cierre 1
A2ertura '
Cierre 1I
A2ertura '
Cierre 'I
A2ertura '
Cierre ,I
Cara detectada
correctamente
-G-
N0E4EQP
-E0
N0D4EQP
-GE
N0G4EQP
-G0
N004,QP
-GE
N0G4EQP
Cara detectada
incorrectamente
Nimagen con
carasP
B-
N>/40QP
BD
N>>4EQP
,-
NC4GQP
>,
N-4>QP
>/
N,4CQP
0G
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
#o se detecta
cara Nimagen
con carasP
/
N/QP
/
N/QP
/
N/QP
/
N/QP
/
N/QP
Cara detectada
incorrectamente
Nimagen sin
carasP
B
NC/QP
B
NC/QP
C
ND,4CQP
D
NECQP
D
NECQP
#o se detecta
cara Nimagen
sin carasP
B
NC/QP
B
NC/QP
-
N-E4CQP
,
N,CQP
,
N,CQP
#&mero de
)ersonas )ara
*ase de
reconocimiento
0>
N0,4GQP
GG
NG04EQP
0-
N0B40QP
0C
N0D40QP
0-
N0B40QP
$os resultados 6ue se o.tienen son iguales 6ue )ara un tamao de la eli)se del
ECQ del tamao de los e5es de la regi8n de )iel4
Al utilizar un tamao de los e5es de la eli)se mayor la regi8n de imagen 6ue es
de'uelta como resultado cuando se utilice la detecci8n alternati'a es mayor1 )or lo 6ue
)uede *a'orecer la detecci8n correcta de un mayor n&mero de imgenes1 )ero tam.in
)uede su)oner 6ue a)arezca ms )arte del *ondo de la imagen4 Aa se 7a comentado
anteriormente 6ue el 7ec7o de 6ue a)arezca mayor )arte del *ondo en la imagen
resultado de la detecci8n )uede in*luir negati'amente al introducir mayor 'aria.ilidad1 y
en esta .ase de datos esto es ms acentuado ya 6ue las imgenes tienen *ondos
di*erentes4
a) b) c)
d) e) f)
6lustracin 4.17 ,'emplo resultado deteccin alternativa base de datos @ a) d) ,'es
elipse ;3g? b) e) ,'es elipse C;g? c) d) ,'es elipse 133g
00
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
1.'. >ASE DE REC"N"CMEN!"
(n el ca)+tulo de Diseo e m)lementaci8n se 'io 6ue el )rimer )aso tras la *ase
de detecci8n de.e ser el a5uste del tamao de las imgenes )ara 6ue todas tengan el
mismo tamao cuando )asan a la *ase de reconocimiento4
Tam.in se coment8 en el ca)+tulo de Diseo e m)lementaci8n 6ue un *actor
im)ortante )ara el reconocimiento es el n&mero de auto'ectores 6ue se utilizan )ara
re)resentar las imgenes4 Tal y como se di5o1 se toma como criterio de selecci8n de
auto'ectores el n&mero 6ue 7ace 6ue se mantenga el G/Q de la 'arianza1 ya 6ue se
considera 6ue este )orcenta5e es su*iciente1 y se corres)onde a)ro:imadamente con el
n&mero de auto'alores 6ue tienen mayor 'alor4
(n las )rue.as de la *ase de detecci8n se 7a 'isto el n&mero de )ersonas 6ue
)ueden )asar a la *ase de reconocimiento en cada caso1 )ara 6ue eso sea )osi.le )or
cada )ersona de.e 7a.er B imgenes en las 6ue el detector 7a detectado correctamente la
cara4 De las B imgenes1 - se utilizan )ara el entrenamiento de las redes neuronales 6ue
se utilizan y otra )ara la com)ro.aci8n del *uncionamiento del sistema4
$as )rue.as de la *ase de reconocimiento se 'an a realizar con los resultados
o.tenidos en la *ase de detecci8n )ara el caso en el 6ue se utiliza un radio )ara el
elemento estructurante de tamao , )ara la o)eraci8n de a)ertura1 y tamao B )ara la
o)eraci8n de cierre1 tanto )ara la .ase de datos A como )ara la !4
Se utilizan estos datos )or6ue1 como se 7a comentado1 )ara ese caso es )ara el
6ue se o.tiene una me5or calidad de la detecci8n )ara la .ase de datos !1 5unto con el
caso de radio B )ara la a)ertura y )ara el cierre4 $a calidad de la detecci8n es muy
im)ortante )ara )oder o.tener unos .uenos resultados en la *ase de reconocimiento1
so.re todo )ara el caso de la .ase de datos !1 en la 6ue las imgenes no 7an sido
tomadas en un am.iente controlado4
(ntre los dos casos en los 6ue la calidad es me5or )ara la .ase de datos ! se elige
el de radio , )ara la o)eraci8n de a)ertura y B )ara la de cierre )or6ue es el 6ue o*rece
me5ores resultados )ara la .ase de datos A4
(l n&mero de )ersonas 6ue *orman la .ase de datos )ara el reconocimiento
'endr limitado )or los resultados o.tenidos )ara la .ase de datos A4
1.'.1. (ase de datos A
Como esta .ase de datos est *ormada )or imgenes tomadas .a5o condiciones
controladas1 la )rimera )rue.a 6ue se 'a a realizar es )asando las imgenes originales a
la *ase de reconocimiento directamente1 sin )asar )re'iamente )or la *ase de detecci8n4
4.2.1.1. 1m*$enes sin &sr &or l !se de detecci"n
Como esta .ase de datos est *ormada )or imgenes tomadas .a5o condiciones
controladas1 la )rimera )rue.a 6ue se 'a a realizar es )asando las imgenes originales a
la *ase de reconocimiento directamente1 sin )asar )re'iamente )or la *ase de detecci8n4
(n )rinci)io estas imgenes no necesitar+an a5uste de tamao ya 6ue todas tienen
las mismas dimensiones4 Para las )rue.as )osteriores las imgenes se 'an a a5ustar a un
tamao de >//:>,/1 )or lo 6ue se decide )asar estas imgenes tam.in a esas
dimensiones4 (l tamao de a5uste de las imgenes es elegido ar.itrariamente4
>//
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
$a .ase de datos )ara el reconocimiento est *ormada )or las mismas CC
)ersonas 6ue se utilizan )ara las )rue.as del sistema com)leto4 (ste n&mero 'iene
determinado )or el n&mero de )ersonas 6ue )ueden )asar a la *ase de reconocimiento
tras la *ase de detecci8n4 Se cogen adems las mismas imgenes 6ue *orman la .ase de
datos )ara el reconocimiento en las )rue.as )osteriores4
(l con5unto de entrenamiento estar *ormado )or >DC imgenes1 y ste ser el
n&mero m:imo de auto'ectores4 Como se di5o en el ca)+tulo de Diseo e
m)lementaci8n el n&mero de auto'ectores 6ue se seleccionan )ara re)resentar las
imgenes es cr+tico1 y )ara determinarlo en este )royecto se tiene en cuenta el 'alor de
los auto'alores y de la 'arianza e:)licada4
A continuaci8n se muestra una gr*ica con el 'alor de los auto'alores y otra con
el )orcenta5e de la 'arianza e:)licada en *unci8n del n&mero de auto'alores N)ara
realizar dic7a gr*ica los auto'alores se ordenan de menor a mayorP )ara las imgenes
en escala de gris4
a) b)
Tabla 4.1$ a) -alor de los autovalores? b) -arian.a explicada en funcin del nhmero
de autovalores
(n la gr*ica aP se )uede 'er 6ue )ara los &ltimos 6uince o 'einte auto'alores es
cuando se )roduce el mayor aumento de 'alor4
(n la gr*ica .P se o.ser'a 6ue )ara mantener alrededor del G/Q de la 'arianza
es necesario seleccionar >D auto'alores4 Se recuerda 6ue )ara realizar estar gr*ica de
manera ms com)rensi.le se ordenan los auto'alores de mayor a menor1 es decir1 de
*orma in'ersa a como a)arecen en la gr*ica aP4
$as gr*icas 6ue se o.tienen )ara cada uno de los canales de color RG! son muy
similares a estas y los n&mero 6ue se )ueden e:traer de ellas son )rcticamente los
mismos 6ue se e:traen de estas4 (n todas las )rue.as realizadas ocurre lo mismo1 )or lo
6ue se s8lo se mostrarn las gr*icas o.tenidas )ara las imgenes en escala de gris4
Como se di5o en el ca)+tulo de Diseo e m)lementaci8n el criterio 6ue se utiliza
)ara seleccionar el n&mero de auto'ectores 6ue 'an a re)resentar las imgenes es coger
a6uellos 6ue 7acen 6ue se mantenga el G/Q de la 'arianza e:)licada de los auto'alores4
(n este caso se seleccionan los >D auto'ectores corres)ondientes a los auto'alores de
>/>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
mayor 'alor1 )ara mantener ese )orcenta5e de 'arianza e:)licada4
"na 'ez 6ue se 7a seleccionado el n&mero de auto'ectores1 se re)resentan las
imgenes en *unci8n de los mismos y se )asa a la *ase de clasi*icaci8n4 $a
re)resentaci8n de las imgenes sern las entradas de cada una de las redes neuronales1 la
de escala de gris y cada una de los canales de color RG!4 Cada una de estas redes
neuronales tendr >D entradas y CC salidas4
Al realizar el entrenamiento 2atla. di'ide los datos 6ue se le )ro)orcionan
tomando el D/Q como datos de entrenamiento1 el ,/Q como datos de 'alidaci8n )ara
realizar un seguimiento mientras se realiza el entrenamiento1 y el ,/Q como datos de
test4
(l com)ortamiento t+)ico del error de entrenamiento es decrecer durante la *ase
de entrenamiento1 mientras 6ue el error de 'alidaci8n decrece 7asta un )unto a )artir del
cual crece1 esto indica 6ue a )artir de ese momento el clasi*icador realiza un so.rea5uste4
Por eso normalmente el error de 'alidaci8n se utiliza )ara detener el entrenamiento de la
red y e'itar )ro.lemas de so.reentrenamiento4
2atla. muestra en una gr*ica la e'oluci8n de los errores de entrenamiento1
'alidaci8n y test4
(n las gr*icas de entrenamiento 6ue se o.tienen )ara este caso se )uede 'er 6ue
el entrenamiento aca.a )or6ue se llega al error o.5eti'o 6ue se im)uso en el diseo de
las redes1 sin 6ue el error de 'alidaci8n em)iece a crecer antes1 )or lo tanto las redes no
tendrn )ro.lemas de so.reentrenamiento4
a) b)
c) d)
6lustracin 4.14 ,ntrenamiento de la red neuronal para (;; personas base de datos 1
sin pasar por detector, 1A autovectores a) ,scala de 5ris? b) Canal :? c) Canal +? d)
Canal @
>/,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
"na 'ez 6ue las redes estn entrenadas ya se )uede )ro.ar el *uncionamiento del
sistema introduciendo imgenes de )rue.a y o.ser'ando los resultados de la
clasi*icaci8n4
Tal y como se comento en el ca)+tulo de Diseo e m)lementaci8n el resultado
dado )or el sistema consiste en las cinco )ersonas de la .ase de datos 6ue ms se
)arecen a la )ersona de la imagen de )rue.a4 Como se o*recen 'arias )ersonas como
)osi.les resultados se )uede calcular la )recisi8n en # del sistema:
\ $a )recisi8n en uno es el n&mero de imgenes en las 6ue se acierta a la )rimera1
es decir1 el clasi*icador la de'uel'e en la )rimera )osici8n
\ $a )recisi8n en dos es el n&mero de imgenes en las 6ue se acierta en una de las
dos )rimeras o)ciones4 (l clasi*icador la sit&an en )rimera o segunda )osici8n4
\ $a )recisi8n en tres es el n&mero de imgenes en las 6ue se acierta en una de las
tres )rimeras o)ciones4
\ $a )recisi8n en cuatro es el n&mero de imgenes en las 6ue se acierta en una de
las cuatro )rimeras o)ciones4
\ $a )recisi8n en cinto es el n&mero de imgenes en las 6ue se acierta en una de
las cinco )rimeras o)ciones4
$os resultados 6ue se o.tienen tanto )ara los datos de entrenamiento como )ara
los de test son4
Tabla 4.17 :esultados datos de entrenamiento para ;; personas con 1A autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
>CC
N0-40QP
>D,
N0G4,QP
>D-
N0G4GQP
>D-
N0G4GQP
>DB
N004BQP
Tabla 4.14 :esultados datos de test para ;; personas con 1A autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
BE
NGC4BQP
C/
N0/40QP
C/
N0/40QP
C>
N0,4EQP
C>
N0,4EQP
A )esar de 6ue se utilizan las *otos originales1 sin 6ue )asen )or la *ase de
detecci8n1 los resultados o.tenidos son .uenos1 tanto )ara los datos de entrenamiento
como )ara los de test4 (stos .uenos resultados se de.en a 6ue las *otos de esta .ase de
datos estn tomadas en una am.iente controlado1 y en ellas a)arece una sola cara 6ue
ocu)a la mayor )arte de la imagen1 est centrada en ella y con un *ondo uni*orme4
4.2.1.2. 1m*$enes <'e &sn s"lo &or l &rimer !se de l detecci"n
Se 6uiere com)ro.ar con esta )rue.a cuales ser+an los resultados del sistema
com)leto si &nicamente se utilizara en la *ase de detecci8n la )arte .asada en la
selecci8n de regiones de )iel candidatas a cara y su 'alidaci8n mediante ma)as de o5os
>/-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
y .oca4
Se utilizan los ,- )ersona5es 6ue )asan de la *ase de detecci8n )ara *ormar la
.ase de datos )ara el reconocimiento4 (l con5unto de entrenamiento estar *ormado )or
D0 imgenes1 y ste ser el n&mero m:imo de auto'ectores4
a) b)
Tabla 4.1; a) -alor de los autovalores? b) -arian.a explicada en funcin del nhmero
de autovalores
(n la gr*ica aP se )uede 'er 6ue )ara los &ltimos diez o 6uince auto'alores1
a)ro:imadamente1 es cuando se )roduce el mayor aumento de 'alor4
(n la gr*ica .P se o.ser'a 6ue )ara mantener alrededor del G/Q de la 'arianza
es necesario seleccionar >/ auto'alores4
Se realiza el entrenamiento seleccionando los >/ auto'ectores corres)ondientes a
los auto'alores de mayor 'alor4 Cada una de las redes neuronales tendr >/ entradas y
,- salidas4 $as gr*icas resultantes del entrenamiento se muestran en el Ane:o 4
$os resultados 6ue se o.tienen tanto )ara los datos de entrenamiento como )ara
los de test son4
Tabla 4.1A :esultados datos de entrenamiento para $7 personas con 13 autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
DG
N0G4CQP
D0
N>//QP
D0
N>//QP
D0
N>//QP
D0
N>//QP
Tabla 4.1C :esultados datos de test para $7 personas con 13 autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
,>
N0>4-QP
,-
N>//QP
,-
N>//QP
,-
N>//QP
,-
N>//QP
(n esta )rue.a tienen es)ecial im)ortancia los resultados o.tenidos )ara la
)recisi8n en > y la )recisi8n en ,1 ya 6ue el n&mero de imgenes 6ue se utilizan es
>/B
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
)e6ueo y las )recisiones mayores su)onen de'ol'er como resultado un )orcenta5e alto
de )ersonas de la .ase de datos4
(n los resultados se 'e 6ue )ara )recisi8n en , ya se tiene un )orcenta5e de
reconocimiento1 tanto )ara los datos de entrenamiento como )ara los de test4
4.2.1.3. 1m*$enes <'e &sn &or el sistem de detecci"n com&leto
Se 6uiere com)ro.ar con esta )rue.a cuales ser+an los resultados del sistema
com)leto1 'iendo las di*erencias entre los distintos tamaos de los e5es de la eli)se
seleccionados en el caso de 6ue sea necesario utilizar la detecci8n alternati'a a la
detecci8n .asada en la selecci8n de regiones de )iel candidatas a cara y su 'alidaci8n
mediante ma)as de o5os y .oca4
4.2.1.3.1. 1m*$enes detectds con tm8o e+es de l eli&se i$'l l 59:
(l n&mero de )ersonas 6ue mantienen como m+nimo cuatro imgenes tras la *ase
de detecci8n en este caso son CC4 (l con5unto de entrenamiento est *ormado )or >DC
imgenes1 y ste ser el n&mero m:imo de auto'ectores4
a) b)
Tabla 4.1E a) -alor de los autovalores? b) -arian.a explicada en funcin del nhmero
de autovalores
(n la gr*ica aP se )uede 'er 6ue )ara los &ltimos diez o 6uince auto'alores1
a)ro:imadamente1 es cuando se )roduce el mayor aumento de 'alor4
(n la gr*ica .P se o.ser'a 6ue )ara mantener alrededor del G/Q de la 'arianza
es necesario seleccionar >D auto'alores4
Cada una de las redes neuronales tendr >D entradas y CC salidas4 $as gr*icas
resultantes del entrenamiento se muestran en el Ane:o 4
$os resultados 6ue se o.tienen tanto )ara los datos de entrenamiento como )ara
los de test son4
>/C
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Tabla 4.1F :esultados datos de entrenamiento para ;; personas con 1A autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
>C/
N0/40QP
>C0
N0D4-QP
>D-
N0G4GQP
>DB
N004BQP
>DC
N>//QP
Tabla 4.$3 :esultados datos de test para personas ;; con 1A autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
BB
NG/QP
BG
NGE4,QP
B0
NG040QP
C/
N0/40QP
C/
N0/40QP
$os )orcenta5es de reconocimiento .a5an ligeramente res)ecto al caso en el 6ue
s8lo se utiliza la )rimara )arte de la detecci8n4 (n esta .a5ada )uede in*luir el 6ue a6u+
el n&mero de )ersonas 6ue *orman la .ase de datos es mayor1 )or lo 6ue 7ay una mayor
'aria.ilidad4 A&n as+ los resultados son .uenos1 estando el )orcenta5e de reconocimiento
)or encima del 0/Q )ara los datos de entrenamiento1 y )or encima del G/Q )ara los de
test4
4.2.1.3.2. 1m*$enes detectds con tm8o e+es de l eli&se i$'l l ;5:
(l n&mero de )ersonas 6ue mantienen como m+nimo cuatro imgenes tras la *ase
de detecci8n en este caso son DE1 aun6ue )ara la .ase de datos de reconocimiento se
seleccionan CC igual 6ue el caso anterior )ara )oder com)arar los resultados4 (l
con5unto de entrenamiento )or tanto est *ormado )or >DC imgenes1 y ste ser el
n&mero m:imo de auto'ectores4
a) b)
Tabla 4.$1 a) -alor de los autovalores? b) -arian.a explicada en funcin del nhmero
de autovalores
(n la gr*ica aP se )uede 'er 6ue )ara los &ltimos diez o 6uince auto'alores1
a)ro:imadamente1 es cuando se )roduce el mayor aumento de 'alor4
>/D
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
(n la gr*ica .P se o.ser'a 6ue )ara mantener alrededor del G/Q de la 'arianza
es necesario seleccionar >D auto'alores4
Cada una de las redes neuronales tendr >D entradas y CC salidas4 $as gr*icas
resultantes del entrenamiento se muestran en el Ane:o 4
$os resultados 6ue se o.tienen tanto )ara los datos de entrenamiento como )ara
los de test son4
Tabla 4.$$ :esultados datos de entrenamiento para ;; personas con 1A autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
>C-
N0,4EQP
>D>
N0E4DQP
>DB
N004BQP
>DB
N004BQP
>DB
N004BQP
Tabla 4.$7 :esultados datos de test para ;; personas con 1A autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
B,
NED4-QP
BE
NGB4BQP
C/
N0/40QP
C/
N0/40QP
C/
N0/40QP
Para esta )rue.a los resultados de los datos de entrenamiento no llegan a
alcanzar un )orcenta5e de reconocimiento del >//Q1 aun6ue est muy cerca4 (sta
di*erencia con el caso anterior )uede de.erse sim)lemente a la inicializaci8n de los
)armetros de las redes neuronales 6ue se 7ace de *orma aleatoria4
Para los datos de test1 el )orcenta5e de reconocimiento .a5a ligeramente )ara la
)recisi8n en >1 )ero al *inal1 )ara la )recisi8n en C se o.tiene el mismo 'alor4
4.2.1.3.3. 1m*$enes detectds con tm8o e+es de l eli&se i$'l l 199:
(l n&mero de )ersonas 6ue mantienen como m+nimo cuatro imgenes tras la *ase
de detecci8n en este caso son GB1 aun6ue igual 6ue en el Caso 1 )ara la .ase de datos
de reconocimiento se seleccionan CC )ara )oder com)arar los resultados4
(n la gr*ica aP 6ue se muestra a continuaci8n se )uede 'er 6ue )ara los &ltimos
diez o 6uince auto'alores1 a)ro:imadamente1 es cuando se )roduce el mayor aumento
de 'alor4
(n la gr*ica .P se o.ser'a 6ue )ara mantener alrededor del G/Q de la 'arianza
es necesario seleccionar >C auto'alores4
>/E
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
a) b)
Tabla 4.$4 a) -alor de los autovalores? b) -arian.a explicada en funcin del nhmero
de autovalores
$as redes neuronales en este caso tienen >C neuronas de entrada y CC de salida4
Tabla 4.$; :esultados datos de entrenamiento para ;; personas con 1; autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
>C>
N0>4CQP
>D/
N0D40QP
>D-
N0G4GQP
>DC
N>//QP
>DC
N>//QP
Tabla 4.$A :esultados datos de test para ;; personas con 1; autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
BC
NG>4GQP
BG
NGE4-QP
C/
N0/40QP
C>
N0,4EQP
C-
N0D4-QP
De nue'o los resultados 6ue se o.tienen son muy )arecidos a los o.tenidos con
los tamaos de eli)se anteriores4 $os )orcenta5es de reconocimiento son altos tanto )ara
los datos de entrenamiento como )ara los de test4
Como se 7a comentado anteriormente las 'ariaciones de los resultados entre
unos casos y otro )ueden ser de.idos a la inicializaci8n aleatoria de los )armetros de
las redes neuronales4
1.'.'. (ase de datos (
Para la .ase de datos ! no se realiza ninguna )rue.a con las imgenes originales1
es decir1 sin )asar )or la *ase de detecci8n1 ya 6ue la imgenes de esta .ase de datos no
estn tomadas en un am.iente controlado4
Se realiza es una )rue.a 'ariando ligeramente el algoritmo de PCA4 $a 'ariaci8n
6ue se introduce es 6ue de5a de restarse la imagen )romedio antes de calcular la matriz
>/G
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
de co'arianza4 (ste cam.io se realiza )or6ue como se 'io en el e5em)lo )uesto en el
ca)+tulo de Diseo e m)lementaci8n1 la imagen )romedio )ara la .ase de datos ! es
)rcticamente ruido y se 6uiere 'er si restar este ruido in*luye en el *uncionamiento del
sistema4
4.2.2.1. 1m*$enes <'e &sn s"lo &or l &rimer !se de l detecci"n
Se 6uiere com)ro.ar con esta )rue.a cuales ser+an los resultados del sistema
com)leto si &nicamente se utilizara en la *ase de detecci8n la )arte .asada en la
selecci8n de regiones de )iel candidatas a cara y su 'alidaci8n mediante ma)as de o5os
y .oca4
(l n&mero de )ersona5es 6ue )asan de la *ase de detecci8n es de -E1 )ero )ara
*ormar la .ase de datos )ara el reconocimiento s8lo se seleccionan ,- )ara tener el
mismo n&mero de )ersonas 6ue en la .ase de datos A4 $a selecci8n de las ,- )ersonas
se 7ace *orma aleatoria4
(l con5unto de entrenamiento est *ormado )or tanto )or D0 imgenes4
a) b)
Tabla 4.$C a) -alor de los autovalores? b) -arian.a explicada en funcin del nhmero
de autovalores
(n la gr*ica aP se )uede 'er 6ue )ara los &ltimos diez o 6uince auto'alores1
a)ro:imadamente1 es cuando se )roduce el mayor aumento de 'alor4
(n la gr*ica .P se o.ser'a 6ue )ara mantener alrededor del G/Q de la 'arianza
es necesario seleccionar >- auto'alores4
$as redes neuronales tienen >- neuronas de entrada y ,- de salida4
Tabla 4.$E :esultados datos de entrenamiento para $7 personas con 17 autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
,/
N,G40QP
->
NBB40QP
B/
NCE40QP
BG
ND04CQP
C>
NE-40QP
>/0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Tabla 4.$F :esultados datos de test para $7 personas con 17 autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
,
NG4EQP
-
N>-QP
B
N>EQP
C
N,>4EQP
D
N,D4>QP
gual 6ue )ara la .ase de datos A1 en esta )rue.a tienen es)ecial im)ortancia los
resultados )ara la )recisi8n en > y la )recisi8n en ,4
Para esta .ase de datos los resultados em)eoran muc7o con res)ecto a la .ase de
datos A4 (n este caso )ara la )recisi8n en > el )orcenta5e de reconocimientos )ara los
datos de entrenamiento no llega al -/Q1 mientras 6ue )ara la .ase de datos A era del
0GQ1 y )ara los datos de test no se llega al >/Q4
Se com)rue.a la gran in*luencia 6ue tiene el ti)o de imgenes 6ue se utilizan en
el sistema de reconocimiento4 Para la .ase datos A1 en la 6ue las imgenes estn
tomadas en un am.iente controlado1 y tienen unas determinadas caracter+sticas1 los
resultados alcanzan unos )orcenta5es muy .uenos4 Por otro lado1 cuando las imgenes
de5an de cum)lir esas caracter+sticas1 el reconocimiento se com)lica muc7+simo y los
resultados em)eoran nota.lemente4
4.2.2.1.1. =so de .C) sin restr im$en &romedio
(n el ca)+tulo de Diseo e m)lementaci8n1 en la lustraci8n -4,/1 se muestra un
e5em)lo de la imagen )romedio )ara la .ase de datos A y )ara la ! con las imgenes en
escala de grises4 (n ese e5em)lo se )uede 'er como )ara la .ase de datos A esa imagen
)romedio se aseme5a en cierta medida a una cara1 mientras 6ue )ara la .ase de datos !
no )arece tener ninguna relaci8n con una cara4
Por este moti'o1 )ara la .ase de datos ! se realiza una )rue.a en la 6ue se a)lica
la reducci8n de dimensiones del es)acio de tra.a5o mediante PCA )ara re)resentar las
distintas imgenes1 )ero sin restar la imagen )romedio de la .ase de datos4
Con esta )rue.e se trata de 'er si en este caso1 en el 6ue la imagen )romedio no
se a)ro:ima a una cara1 se )ueden tener me5ores resultados si no se resta al calcular la
re)resentaci8n de las imgenes4
(sta )rue.a se 7ace )ara la .ase de datos 6ue se tiene cuando s8lo se utiliza la
)rimera )arte de la detecci8n1 )or tanto se tienen ,- )ersonas en la .ase de datos y D0
imgenes )ara el entrenamiento4
(n la gr*ica aP 6ue se muestra a continuaci8n se )uede 'er como el aumento de
'alor de los auto'alores se )roduce )ara un menor n&mero de stos 6ue en el caso en
6ue se resta la imagen )romedio4 (n este caso el mayor aumente de 'alor se )roduce
)ara los &ltimos dos o tres auto'alores a)ro:imadamente4
(n la gr*ica .P se o.ser'a 6ue con un solo auto'alor ya se tiene el G,4>CQ de la
'arianza4 $a )rue.a se realiza seleccionando los auto'ectores cuyos auto'alores
mantienen el 0/Q de la 'arianza1 esto signi*ica 6ue 7ay 6ue tomar los D &ltimos
auto'ectores )ara re)resentar las imgenes4
>>/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
a) b)
6lustracin 4.1; a) -alor de los autovalores? b) -arian.a explicada en funcin del
nhmero de autovalores
$os resultados tanto )ara los datos de entrenamiento como )ara los de test se
muestran a continuaci8n4
B4-/: Resultados datos de entrenamiento )ara ,- )ersonas con D auto'ectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
-D
NC,4,QP
C,
NEC4-QP
CE
NG,4DQP
C0
NGC4CQP
D/
NGD40QP
Tabla 4.71 :esultados datos de test para $7 personas con A autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
-
N>-QP
C
N,>4EQP
D
N,DQP
E
N-/4BQP
>>
NBE4GQP
$a )rue.a realizada con el *uncionamiento normal de PCA est 7ec7a tomando
los auto'ectores cuyos auto'alores mantienen el G/Q de la 'arianza1 )or lo 6ue resulta
ms com)licado 7acer una com)araci8n4 Por eso )ara 7acer la com)araci8n se realiza
una nue'a )rue.a en la 6ue se utiliza el PCA normal y s8lo se tiene la )rimera )arte de
la detecci8n1 seleccionando los auto'ectores cuyos auto'alores mantienen el 0/Q de la
'arianza4 Son necesarios )or tanto ,E auto'ectores4
$os resultados o.tenidos )ara los datos de entrenamiento y test son los
siguientes4
Tabla 4.7$ :esultados datos de entrenamiento para $7 personas con $C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
C0
NGC4CQP
DG
N0G4CQP
D0
N>//QP
D0
N>//QP
D0
N>//QP
>>>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Tabla 4.77 :esultados datos de test para $7 personas con $C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
,
NG4DQP
B
N>E4BQP
D
N,D4>QP
>/
NB-4CQP
>/
NB-4CQP
Com)arando am.os casos se 'e 6ue los resultados )ara los datos de
entrenamiento son me5ores utilizando el PCA normal4
(n cuanto a los datos de test los )orcenta5es son me5ores cuando no se resta la
media en el clculo de las com)onentes )rinci)ales4 A )esar de esta me5or+a )ara el resto
de las )rue.as se utiliza el PCA con'encional )ara el clculo de la re)resentaci8n de las
imgenes4
4.2.2.2. 1m*$enes <'e &sn &or el sistem de detecci"n com&leto
gual 6ue se 7a 7ec7o con la .ase de datos A1 se 6uiere com)ro.ar cuales ser+an
los resultados del sistema com)leto1 'iendo las di*erencias entre los distintos tamaos
de los e5es de la eli)se seleccionados en el caso de 6ue sea necesario utilizar la
detecci8n alternati'a a la detecci8n .asada en la selecci8n de regiones de )iel candidatas
a cara y su 'alidaci8n mediante ma)as de o5os y .oca4
4.2.2.2.1. 1m*$enes detectds con tm8o e+es de l eli&se i$'l l 59:
(l n&mero de )ersonas 6ue mantienen las cuatro imgenes tras la *ase de
detecci8n son GG4 Para )oder realizar com)araciones con los resultados o.tenidos )ara
la .ase de datos A1 se seleccionan aleatoriamente CC )ersona5es )ara *ormar la .ase de
datos )ara el reconocimiento1 ya 6ue este es el n&mero de )ersonas 6ue se tienen )ar la
.ase de datos A4
Para las )rue.as realizadas con los distintos tamaos de la eli)se se seleccionan
siem)re las mismas CC )ersonas )ara tam.in )oder com)arar los resultados
(l con5unto de entrenamiento est *ormado )or >DC imgenes1 siendo ste el
n&mero m:imo de auto'ectores4
(n la gr*ica aP de la ilustraci8n 6ue se muestra a continuaci8n se )uede 'er 6ue
)ara los &ltimos 6uince o 'einte auto'alores1 a)ro:imadamente1 es cuando se )roduce el
mayor aumento de 'alor4
(n la gr*ica .P de la siguiente ilustraci8n se o.ser'a 6ue )ara mantener
alrededor del G/Q de la 'arianza es necesario seleccionar >E auto'alores4
>>,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
a) b)
Tabla 4.74 a) -alor de los autovalores? b) -arian.a explicada en funcin del nhmero
de autovalores
Se tienen redes neuronales con >E neuronas de entrada y CC de salida4
Tabla 4.7; :esultados datos de entrenamiento para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
D,
N-E4DQP
0,
NCC4EQP
>/G
NDC4BQP
>>G
NE>4CQP
>,B
NEC4>QP
Tabla 4.7A :esultados datos de test para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
B
NE4,QP
D
N>/40QP
D
N>/40QP
>/
N>G4,QP
>,
N,>4GQP
Com)arando estos resultados con los o.tenidos )ara la .ase de datos A se 'e de
nue'o el im)ortante descenso en el )orcenta5e de reconocimiento4 (ste descenso se
)uede o.ser'ar en todas la )rue.as realizadas4
Si se o.ser'an las gr*icas del entrenamiento generadas )or 2atla.1 se )uede 'er
6ue los errores de 'alidaci8n y test son1 en general1 mayores )ara la .ase de datos ! 6ue
)ara la A1 lo 6ue 7ace su)oner 6ue los resultados sern )eores1 tal y como se )uede
com)ro.ar4
4.2.2.2.2. 1m*$enes detectds con tm8o e+es de l eli&se i$'l l ;5:
(l n&mero de )ersonas 6ue mantienen las cuatro imgenes tras la *ase de
detecci8n son 0>4
gual 6ue se 7izo en el caso anterior se reduce el n&mero de )ersonas 6ue *orman
la .ase de datos de5ndolo en CC4
>>-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
(l con5unto de entrenamiento est *ormado )or >DC imgenes1 siendo ste el
n&mero m:imo de auto'ectores4
a) b)
Tabla 4.7C a) -alor de los autovalores? b) -arian.a explicada en funcin del nhmero
de autovalores
(n la gr*ica aP se )uede 'er 6ue )ara los &ltimos 6uince o 'einte auto'alores1
a)ro:imadamente1 es cuando se )roduce el mayor aumento de 'alor4
(n la gr*ica .P se o.ser'a 6ue )ara mantener alrededor del G/Q de la 'arianza
es necesario seleccionar >E auto'alores4
$as redes neuronales tiene )or tanto >E neuronas de entrada y CC de salida4
Tabla 4.7E :esultados datos de entrenamiento para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
C>
N-/40QP
EE
NBD4EQP
0,
NCC4EQP
>/-
ND,4BQP
>>E
NE/40QP
Tabla 4.7F :esultados datos de test para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
>
N>4GQP
C
N04>QP
E
N>,4EQP
0
N>D4BQP
>/
N>G4,QP
(n estos resultados se o.ser'a un em)eoramiento res)ecto a los o.tenidos con
un tamao de e5es de la eli)se igual al C/Q4
Se )iensa 6ue este em)eoramiento se )uede de.er al aumento de los e5es de la
eli)se 6ue 7ace 6ue en algunas imgenes a)arezca mayor )arte del *ondo1 6ue al no ser
uni*orme y 'ariar de unas imgenes a otra in*luye negati'amente en las tareas de
reconocimiento4 Para la .ase de datos A esta in*luencia es menor ya 6ue el *ondo de las
imgenes s+ es uni*orme en ese caso4
>>B
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
4.2.2.2.3. 1m*$enes detectds con tm8o e+es de l eli&se i$'l l 199:
(l n&mero de )ersonas 6ue mantienen las cuatro imgenes tras la *ase de
detecci8n son 0>4
gual 6ue en los casos anteriores se reduce el n&mero de )ersonas 6ue *orman la
.ase de datos de5ndolo en CC4
(l con5unto de entrenamiento est *ormado )or >DC imgenes1 siendo ste el
n&mero m:imo de auto'ectores4
a) b)
Tabla 4.43 a) -alor de los autovalores? b) -arian.a explicada en funcin del nhmero
de autovalores
(n la gr*ica aP se )uede 'er 6ue )ara los &ltimos diez o 6uince auto'alores1
a)ro:imadamente1 es cuando se )roduce el mayor aumento de 'alor4
(n la gr*ica .P se o.ser'a 6ue )ara mantener alrededor del G/Q de la 'arianza
es necesario seleccionar >E auto'alores4
$as redes neuronales tienen >E neuronas de entrada y CC de salida4
$os resultados )ara los datos de entrenamiento y de test son los siguientes4
Tabla 4.41 :esultados datos de entrenamiento para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
CE
N-B4CQP
0C
NCE4DQP
>/0
NDD4>QP
>,/
NE,4EQP
>,0
NEG4,QP
Tabla 4.4$ :esultados datos de test para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
/
N/QP
-
NC4BQP
B
NE4,QP
C
N04>QP
D
N>/40QP
(n esta )rue.a de nue'o se 'e un em)eoramiento en los datos de test con
>>C
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
res)ecto al caso en el 6ue el tamao de la eli)se es del ECQ4
4.2.2.2.4. Vrici"n del n>mero de ne'rons interns
A la 'ista de los resultados o.tenidos en las )rue.as realizadas se o.ser'a 6ue
)ara la .ase de datos ! e:isten im)ortantes di*erencias en los resultados o.tenidos )ara
los datos de entrenamiento y los datos de test4 Para la .ase de datos de A los resultados
de am.os con5untos de datos son ms similares4
(n la .ase de datos ! se o.tienen resultados muc7o me5ores )ara los datos de
entrenamiento 6ue )ara los datos de test1 lo 6ue )uede ser s+ntoma de un so.rea5uste de
las redes neuronales1 es decir1 el modelo se a5usta demasiado a las )articularidades de
los datos de entrenamiento )erdiendo ca)acidad )ara generalizar ante casos nue'os4
(ste so.rea5uste suele darse cuando 7ay demasiadas neuronas en la ca)a oculta4
Como se 7a comentado anteriormente1 otro s+ntoma 6ue )uede ser'ir )ara
detectar el so.rea5uste de las redes neuronales es el crecimiento del error de 'alidaci8n
durante el entrenamiento4 (n el Ane:o se )ueden 'er todas las gr*icas de
entrenamiento de las redes neuronales utilizadas1 y en ellas se o.ser'a 6ue el error de
'alidaci8n no em)ieza a aumentar durante el entrenamiento )or eso en un )rimer
momento no se 7a tenido en cuenta la )osi.ilidad de un )osi.le so.rea5uste de las redes
neuronales4
Ante la )osi.ilidad de un so.rea5uste de las redes neuronales se realizan algunas
)rue.as en las 6ue se utilizan un n&mero menor de neuronas en la ca)a oculta4 Para
realizar estas )rue.as se 'a a utilizar la .ase de datos )ara reconocimiento 6ue se usa
)ara la )rue.a de la .ase de datos ! en el caso en 6ue se utiliza el sistema de detecci8n
com)leto y el tamao de los e5es de la eli)se son el C/Q de los e5es de la regi8n de )iel4
Se recuerda 6ue )ara este caso el n&mero de auto'ectores 6ue se utilizan )ara
re)resentar las imgenes es de >E4
#&mero de neuronas de la ca)a oculta igual a un cuarto de la suma de las
neuronas de entrada y salida
Tabla 4.47 :esultados datos de entrenamiento para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
CE
N-B4CQP
G/
NBG4CQP
GE
NC,4EQP
00
ND/QP
>/G
NDC4BQP
Tabla 4.44 :esultados datos de test para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
>
N>4GQP
C
N04>QP
D
N>/40QP
E
N>,4EQP
G
N>B4CQP
>>D
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
#&mero de neuronas de la ca)a oculta igual a un octa'o de la suma de las
neuronas de entrada y salida
Tabla 4.4; :esultados datos de entrenamiento para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
DC
N-04BQP
0G
NC04BQP
>>E
NE/40QP
>,0
NEG4,QP
>-0
NGB4,QP
Tabla 4.4A :esultados datos de test para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
/
N/QP
-
NC4BQP
C
N04>QP
E
N>,4EQP
0
N>D4-QP
#&mero de neuronas de la ca)a oculta igual a un dieciseisa'o de la suma de las
neuronas de entrada y salida
Tabla 4.4C :esultados datos de entrenamiento para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
GC
NC>4CQP
>/D
NDB4,QP
>,/
NE,4EQP
>-/
NEG4GQP
>-D
NG,4BQP
Tabla 4.4E :esultados datos de test para ;; personas con 1C autovectores
+recisi/n en 1 +recisi/n en ' +recisi/n en , +recisi/n en 1 +recisi/n en 4
-
NC4BQP
B
NE4,QP
C
N04>QP
D
N>/40QP
G
N>B4CQP
(n estas )rue.as en las 6ue se 'ar+a el n&mero de neuronas de la ca)a interna se
siguen teniendo unos resultados en los 6ue las di*erencias son grandes )ara los datos de
entrenamiento y )ara los de test4 Adems no se o.tiene ninguna me5ora en los
)orcenta5es 6ue se o.tienen )ara los datos de test4
(sto 7ace )ensar 6ue con el n&mero de neuronas internas 6ue se utiliza
inicialmente no se )roduce un so.rea5uste1 sino 6ue los malos resultados o.tenidos )ara
los datos de test son )roducto del uso de unas imgenes com)licadas 6ue tienen
caracter+sticas 6ue in*luyen negati'amente en el reconocimiento4
>>E
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
4. C"NC*US"NES % *GNEAS >U!URAS
4.1. C"NC*US"NES
Gracias a las me5oras tecnol8gicas1 cada d+a ms1 la.ores 6ue tradicionalmente
eran realizadas )or seres 7umanos son a7ora realizadas )or sistemas automatizados4 "na
de las acti'idades 6ue )ueden automatizarse y 6ue 7a co.rado gran im)ortancia1 es la
ca)acidad de esta.lecer la identidad de los indi'iduos4 (n relaci8n con esta tarea se
estn desarrollando grandes a'ances en distintos cam)os como la .iometr+a1
reconocimiento de )atrones1 )rocesado y clasi*icaci8n de imgenes1 etc4
$a moti'aci8n general 6ue 7a guiado este )royecto 7a sido )ro*undizar en el
estudio de las tcnicas 6ue )ermiten realizar un reconocimiento automtico de caras e
im)lementar un sistema 6ue realice esta tarea4
Se 7a desarrollado un Sistema de Reconocimiento de Caras 6ue resuel'e la
detecci8n de la cara dentro de la imagen1 la e:tracci8n de caracter+sticas y *inalmente el
reconocimiento del indi'iduo4 Todo ello se 7a im)lementado utilizando 2atla.4
(n este )royecto se 7an utilizado imgenes estticas en color4 Se 7a tra.a5ado
con las imgenes en el es)acio de color RG! Naun6ue tam.in se utiliza el Ac.Cr )ara
la creaci8n de ma)as y o5osP y con su trans*ormaci8n en escala de grises4 Se )retende
conseguir de esta manera una mayor in*ormaci8n a cerca de las imgenes )ara )oder
*acilitar el reconocimiento4
(n )rimer lugar las imgenes son sometidas a un )re)rocesado 6ue trata de
me5orar sus caracter+sticas )ara *acilitar as+ la detecci8n de la cara dentro de la imagen4
A continuaci8n se )roduce la detecci8n de la cara dentro de la imagen4 (sta *ase
es determinante a la 7ora del correcto *uncionamiento del sistema1 ya 6ue una correcta
detecci8n *a'orece un me5or reconocimiento4 Por eso se 7a com)ro.ado 6ue en esta *ase
no s8lo son im)ortantes el n&mero de imgenes en las 6ue se detecta una cara1 sino 6ue
tam.in im)orta la calidad de esa detecci8n4
$os resultados 6ue se o.tienen )ara esta *ase de detecci8n de)enden en gran
medida de la correcta detecci8n de los )+:eles de )iel en la imagen y del )roceso de
*iltrado y agru)amiento )osterior4 Tanto )ara la .ase de datos A como )ara la ! la
detecci8n de los )+:eles es .astante .uena4 (n cuanto al *iltrado y agru)amiento los
me5ores resultados se o.tienen )ara distintos )armetros de los *iltros mor*ol8gicos 6ue
se utilizan4 (n esta di*erencia in*luye la )ro)orci8n de la imagen 6ue ocu)a la cara en la
imagen1 y el ti)o de imgenes 6ue se estn utilizando Ncon un *ondo uni*orme o no1
a)arece s8lo la cara o ms )artes del cuer)o1 etc4P4
Para la *ase de reconocimiento se 7a )ro)uesto la e:tracci8n de las
caracter+sticas 6ue re)resentan las imgenes mediante PCA4 (l n&mero de auto'ectores
6ue re)resentan las imgenes 'iene dado )or el n&mero de auto'alores 6ue mantienen el
G/Q de la 'arianza4 (ste n&mero no tiene )or6ue ser el mismo )ara las distintas )rue.as
realizadas con cada una de las .ase de datos4 $o 6ue se 7a o.ser'ado es 6ue este n&mero
es mayor )ara la .ase de datos ! 6ue )ara la A1 lo 6ue )uede e:)licarse )or la mayor
'ariaci8n de las imgenes )ara esta .ase de datos4
(n la .ase de datos !1 adems se 7a )ro.ado a realizar la e:tracci8n de
>>G
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
caracter+sticas introduciendo una )e6uea 'ariaci8n en el PCA 6ue consiste en no restar
la imagen )romedio antes de calcular los auto'alores y los auto'ectores4 $os resultados
6ue se 7an o.tenido en este caso no su)onen ninguna me5ora res)ecto a los o.tenidos
con el PCA normal4
$as caracter+sticas e:tra+das de las imgenes de entrenamiento sir'en )ara
entrenar las redes neuronales 6ue *orman )arte de la eta)a de clasi*icaci8n4
(n la eta)a de clasi*icaci8n se 7an o.tenido unos resultados muc7o me5ores )ara
la .ase de datos A 6ue )ara la !4
De.ido a los malos resultados o.tenidos )ara la .ase de datos ! se realizan
nue'as )rue.as modi*icando el n&mero neuronas de la ca)a interna de las redes
neuronales 6ue se utilizan1 )ero los resultados no )ro)orcionan me5or+as4
(n este )royecto se 7a com)ro.ado como el ti)o de imgenes 6ue se utilizan en
el sistema de reconocimiento in*luyen de manera determinante en los resultados 6ue se
o.tienen1 y en la elecci8n de determinados )armetros4
Viendo los resultados *inales de )orcenta5e de reconocimiento se 'e como el
*uncionamiento del sistema im)lementado es .ueno s8lo cuando las imgenes 6ue se
utilizan estn tomadas en un am.iente controlado4
4.'. *GNEAS >U!URAS DE !RA(A)"
A la 'ista de los resultados y de los e:)erimentos realizados 7an surgido 'arias
l+neas de continuaci8n de las tcnicas utilizadas en este )royecto4
!ases de datos de imgenes
(n las .ases de datos 6ue se usan )ara el reconocimiento se tienen B imgenes
)or indi'iduo1 - )ara entrenar el sistema y > )ara )ro.arlo4 Podr+a aumentarse el
n&mero de imgenes 6ue se utiliza )ara el entrenamiento4 De esta manera 7a.r+a 6ue
seleccionar ms imgenes de entre las ,/ dis)oni.les )ara la .ase de datos A1 y )ara la
.ase de datos ! o.tener ms imgenes de nternet4
?tra me5ora 6ue )uede introducirse )ara la .ase de datos ! es o.tener imgenes
6ue se ada)ten me5or a los re6uisitos desea.les )ara un me5or reconocimiento4
Pre)rocesado
(n la eta)a de )re)rocesado )odr+an utilizarse ms *iltros )ara eliminar ruido
adems del *iltro de mediana utilizado a6u+4
Para la com)ensaci8n de iluminaci8n se 7a elegido el mtodo )ro)uesto en RFsu
et al4 ,//>T4 Podr+a realizarse un estudio de los di*erentes mtodos e:)licados )ara 'er
cul o*rece me5ores )restaciones4
Detecci8n de )+:eles de )iel
Para la detecci8n de )+:eles de )iel se utiliza el es)acio de color RG!4 Podr+a
utilizarse otro es)acio de color 6ue *uera ms adecuado )ara la detecci8n de )iel en el
>>0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6ue no se mezclara la crominancia y la luminancia1 )or e5em)lo el color AC.Cr4
Selecci8n de candidatos a caras
Podr+a realizarse un estudio )ara com)ro.ar si e:isten otros )armetros 6ue
de.an ser tenidos en cuenta a la 7ora de seleccionar las regiones de )iel candidatas a ser
caras4
Validaci8n de candidatos
(n esta )arte del sistema )odr+an 'ariarse determinados )armetros )ara intentar
me5orar los ma)as de o5os y .oca4 Algunos de los )armetros 6ue )ueden ser
modi*icados son los cocientes caraIo5o y caraI.oca1 y el )armetro de um.ralizaci8n4
Adems )odr+a )ro)onerse el uso de otros scores )ara 'alidar el tringulo o5os
.oca4
#ormalizaci8n de tamao
$as imgenes resultantes de la *ase de detecci8n su*ren un a5uste de tamao )ara
6ue todas tengan las mismas dimensiones cuando )asan a la *ase de reconocimiento4 (n
este )royecto se 7an tomado unas dimensiones de >//:>,/ )ero )odr+an 'ariarse y
realizar una com)araci8n entre di*erentes tamaos4
(:tracci8n de caracter+sticas
Para la e:tracci8n de caracter+sticas en este )royecto se utiliza PCA1 )ero
)odr+an utilizarse otro mtodos similares como $DA o AC4
Tam.in )odr+a 'ariarse el criterio )or el 6ue se selecciona el n&mero de
auto'ectores 6ue se utilizan )ara re)resentar las imgenes4 Se )odr+a usar otro
)orcenta5e de 'arianza e:)licada )ara determinar el n&mero de auto'ectores1 )or
e5em)lo aumentarlo al 0/Q4
Clasi*icaci8n
Podr+a 7acerse un estudio del n&mero 8)timo de neuronas 6ue de.e la ca)a
oculta de las redes neuronales 6ue se utilizan en la eta)a de clasi*icaci8n4
(n este )royecto se tiene como resultado del )roceso de reconocimiento las
cinco )ersonas de la .ase de datos 6ue ms se )arecen a la imagen de )rue.a4 De esta
manera siem)re se da alg&n resultado )ara el reconocimiento4 Podr+a aadirse la
)osi.ilidad de 6ue se o.tu'iera como resultado 6ue no se 7a reconocido al indi'iduo de
la imagen de )rue.a4 Para ello )or e5em)lo )uede )onerse un m:imo a la 7ora de
calcular las di*erencias m+nimas 6ue determinan el resultado4
>,/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
:. ANE$"S
:.1. ANE$" D GRE>CAS DE EN!RENAMEN!" DE *AS REDES
NEUR"NA*ES
A continuaci8n se muestran las gr*icas 6ue 2atla. )ro)orciona del
entrenamiento de las redes neuronales )ara las distintas )rue.as realizadas en la
e'aluaci8n del sistema4
:.1.1. (ase de datos AD m0genes =ue 2asan s/lo 2or la 2rimera .ase de la
detecci/n
a) b)
c) d)
6lustracin A.1 ,ntrenamiento red neuronal ($7 personas base de datos 1, primera fase
del detector, 13 autovectores) a) ,scala de 5ris? b) Canal :? c) Canal +? d) Canal @
:.1.'. (ase de datos AD m0genes =ue 2asan 2or el sistema de detecci/n
com2leto
6.1.2.1. 1m*$enes detectds con tm8o de los e+es de l eli&se i$'l l 59:
>,>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
a) b)
c) d)
6lustracin A.$ ,ntrenamiento red neuronal (;; personas base de datos 1, detector
completo, 1A autovectores) a) ,scala de 5ris? b) Canal :? c) Canal +? d) Canal @
6.1.2.2. 1m*$enes detectds con tm8o de los e+es de l eli&se i$'l l ;5:
a) b)
c) d)
6lustracin A.7 ,ntrenamiento red neuronal (;; personas, base de datos 1, detector
completo, 1A autovectores) a) ,scala de 5ris? b) Canal :? c) Canal +? d) Canal @
>,,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6.1.2.3. 1m*$enes detectds con tm8o de los e+es de l eli&se i$'l l 199:
a) b)
c) d)
6lustracin A.4 ,ntrenamiento red neuronal (;; personas base de datos 1, detector
completo, 1; autovectores) a) ,scala de 5ris? b) Canal :? c) Canal +? d) Canal @
:.1.,. (ase de datos (D m0genes =ue 2asan s/lo 2or la 2rimera .ase de la
detecci/n
a) b)
c) d)
6lustracin A.; ,ntrenamiento red neuronal ($7 personas base de datos @, primera fase
del detector, 17 autovectores) a) ,scala de 5ris? b) Canal :? c) Canal +? d) Canal @
>,-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6.1.3.1. =so de .C) sin restr im$en &romedio
6lustracin A.A ,ntrenamiento red neuronal ($7 personas base de datos @, primera fase
del detector, 17 autovectores, sin restar ima5en promedio en PC1) a) ,scala de 5ris?
b) Canal :? c) Canal +? d) Canal @
:.1.1. (ase de datos (D m0genes =ue 2asan 2or el sistema de detecci/n
com2leto
6.1.4.1. 1m*$enes detectds con tm8o de los e+es de l eli&se i$'l l 59:
6lustracin A.C ,ntrenamiento red neuronal (;; personas base de datos @, detector
completo, 1C autovectores) a) ,scala de 5ris? b) Canal :? c) Canal +? d) Canal @
>,B
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6.1.4.2. 1m*$enes detectds con tm8o de los e+es de l eli&se i$'l l ;5:
6lustracin A.E ,ntrenamiento red neuronal (;; personas base de datos @, detector
completo, 1C autovectores) a) ,scala de 5ris? b) Canal :? c) Canal +? d) Canal @
6.1.4.3. 1m*$enes detectds con tm8o de los e+es de l eli&se i$'l l 199:
6lustracin A.F ,ntrenamiento red neuronal (;; personas base de datos @, detector
completo, 1C autovectores) a) ,scala de 5ris? b) Canal :? c) Canal +? d) Canal @
>,C
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6.1.4.4. 1m*$enes detectds con tm8o de los e+es de l eli&se i$'l l 59: /
n>mero de ne'rons de l c& intern i$'l 'n c'rto de l s'm de ls
ne'rons de entrd / slid
6lustracin A.13 ,ntrenamiento red neuronal (;; personas base de datos @, detector
completo, 1C autovectores) a) ,scala de 5ris? b) Canal :? c) Canal +? d) Canal @
6.1.4.5. 1m*$enes detectds con tm8o de los e+es de l eli&se i$'l l 59: /
n>mero de ne'rons de l c& intern i$'l 'n oct,o de l s'm de ls
ne'rons de entrd / slid
6lustracin A.11 ,ntrenamiento red neuronal (;; personas base de datos @, detector
completo, 1C autovectores) a) ,scala de 5ris? b) Canal :? c) Canal +? d) Canal @
>,D
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
6.1.4.6. 1m*$enes detectds con tm8o de los e+es de l eli&se i$'l l 59: /
n>mero de ne'rons de l c& intern i$'l 'n dieciseis,o de l s'm de
ls ne'rons de entrd / slid
6lustracin A.1$ ,ntrenamiento red neuronal (;; personas base de datos @, detector
completo, 1C autovectores) a) ,scala de 5ris? b) Canal :? c) Canal +? d) Canal @
:.'. ANE$" D MANUA* DE USUAR"
Para la utilizaci8n del sistema im)lementado el )rimer )aso 6ue de.e darse es la
o.tenci8n de imgenes de )ersonas4 Para 6ue una )ersona 6ue a)arece en una imagen
)ueda ser reconocida es necesario 6ue el sistema sea entrenado con tres imgenes de su
cara4
Se necesita )or tanto dis)oner de una .ase de datos de imgenes de )ersonas
)ara )oder reconocerlas )osteriormente4 (sta .ase de datos de imgenes de.e )asar
inicialmente )or la *ase de detecci8n de la cara dentro de la imagen4 Si se tienen las
imgenes en una determinada car)eta1 )or e5em)lo llamada ;!!DD<1 se )uede 7acer
uso de la *unci8n evaluacionideteccion1 6ue coge las imgenes de la car)eta y las )asa
)or el detector de caras N*unci8n faceidetectionP almacenando las zonas de cada imagen
de'ueltas como cara en otra car)eta1 llamada )or e5em)lo ;caras detectadas<1 con el
mismo nom.re 6ue la imagen original y aadiendo un n&mero 6ue indica el n&mero de
la zona detectada como cara Nya 6ue en una imagen )uede 7a.er ms de una zona
detectada como caraP4 Adems se almacenan con el mismo nom.re las imgenes
originales con las zonas en las 6ue se 7a detectado una cara recuadradas en ro5o en otra
car)eta1 6ue se )uede llamar ;imagenes con caras detectadas<4
"na 'ez realizada la detecci8n de la cara 7ay 6ue 'er los resultados y com)ro.ar
si se tienen tres caras detectadas )ara cada )ersona5e de la .ase de datos 6ue se 6uiera
utilizar )ara el reconocimiento4 Si es as+1 se seleccionan y se almacenan en una car)eta
distinta ya 6ue en la car)eta ;caras detectadas< )uede 7a.er imgenes 6ue no
corres)ondan a caras )or6ue se 7aya *allado en la detecci8n4
>,E
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
Con las tres imgenes detectadas )or cada )ersona de la .ase de datos
almacenadas en una car)eta el siguiente )aso de.e ser realizar el a5uste de tamao )ara
6ue todas las imgenes tengan las mismas dimensiones4 Para eso se utiliza la *unci8n
a'ustaritamano4 As+ se tienen )re)aradas las imgenes )ara el entrenamiento de la *ase
de reconocimiento4
A continuaci8n se crea la .ase de datos )ara el reconocimiento4 Se realiza la
llamada a la *unci8n loadidatabase )asando como )armetro / )ara generar la .ase de
datos )ara las imgenes en escala de grises1 > el canal de color R1 , )ara el canal de
color G y - )ara el canal de color !4 Se almacenan con los nom.res T51 T:1 T+ y T@
utilizando el comando save de 2atla.4
(l siguiente )aso es el entrenamiento de las redes neuronales4 Se llama a la
*unci8n netitrain con los mismos )armetros 6ue antes1 / )ara la red de las imgenes en
escala de grises1 > )ara la red del canal de color R1 , )ara la red del canal de color G y -
)ara la red del canal de color !4 Con la ayuda del comando sa'e de 2atla. se guardan
las redes entrenadas con los nom.res net1 net:1 net+ y net@4 Se de.e seleccionar el
n&mero de auto'ectores 6ue se utilizan )ara re)resentar las imgenes y esto se indica
con la 'aria.le # 6ue se encuentra en la *unci8n netitrain4
Si se 6uieren aadir nue'as )ersonas a la .ase de datos 7ay 6ue o.tener
imgenes suyas1 )asarlas )or la *ase de detecci8n1 y una 'ez 6ue se tienen las imgenes
de las caras con el tamao a)ro)iado 'ol'er a generar la .ase de datos NT51 T:1 T+ y
T@P y 'ol'er a entrenar las redes neuronales4
A7ora ya se )uede realizar el reconocimiento de nue'as imgenes4 $a nue'a
imagen de.e )asar )or la *ase de detecci8n1 )ara ello se realizar la llamada a la *unci8n
faceidetection1 )asndole como )armetro la ruta com)leta donde se encuentra la
imagen de test4 (l resultado de la detecci8n se com)rue.a )ara 'er si la cara se 7a
detectado correctamente1 o si adems de la cara se 7a de'uelto alguna otra zona de la
imagen )or una detecci8n incorrecta4
Con la cara detectada correctamente se realiza el a5uste de tamao1 )ara 6ue la
imagen de test tenga el mismo tamao 6ue las imgenes 6ue se utilizaron )ara el
entrenamiento4 A continuaci8n1 se e5ecuta la *unci8n reconocimiento a la 6ue se le )asa
como )armetro la ruta en la 6ue se encuentra la imagen de test con el tamao
adecuado4 (l resultado sern cinco n&meros 6ue indican los )ersona5es de la .ase de
datos a los 6ue ms se )arece la imagen de test Nlos )ersona5es de la .ase de datos estn
ordenados al*a.ticamente y los n&meros indican su orden en la .aseP4
Si se 6uiere utilizar la inter*az gr*ica )ara 'er el *uncionamiento del sistema se
de.e e5ecutar la *unci8n interfa.i5rafica4 $a inter*az sir'e )ara com)ro.ar el
*uncionamiento del sistema de una manera ms sencilla4 $a *ase de detecci8n de la cara
en las imgenes de entrenamiento y el entrenamiento del sistema de.en 7acerse
manualmente como se 7a e:)licado con anterioridad4
Al )ulsar el .ot8n ;Selecci8n de imagen< de la inter*az el usuario de.e acceder a
la car)eta en la 6ue se encuentran las imgenes de test originales y seleccionar una de
ellas4 Al 7acerlo a)arece en la inter*az la imagen seleccionada y la zona de'uelta como
cara en la *ase de detecci8n4 A continuaci8n de.e )ulsar el .ot8n ;!uscar<1 entonces la
*unci8n de la inter*az coge la imagen 6ue corres)onde a la zona de'uelta )or el detector
como cara y se la )asa a la *unci8n reconocimiento4 $a inter*az coge los n&meros
resultados de la *unci8n reconocimiento y selecciona las imgenes de las )ersonas
>,G
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
corres)ondientes de la .ase de datos )ara mostrarlas4
:.,. ANE$" D C#DG" MA!*A(
A continuaci8n se muestra el c8digo de las *unciones im)lementadas en 2atla.
)ara este )royecto4 Parte del c8digo utilizado est .asado en *unciones ya e:istentes 6ue
7an sido modi*icadas adecuadamente )ara a5ustarlas a las necesidades y re6uerimientos
es)ec+*icos de este )royecto4
$as *unciones a)arecen ordenadas al*a.ticamente4
a?ustarMtamano
function ajustar_tamano(rows,columns,path,path2)
%% Funcin que realiza el ajuste de tamao de imenes
% !rumentos de entrada"
% # rows" filas de salida
% # columns" columnas de salida
% # path" ruta de la carpeta en la que se encuentran las
% imenes cu$o tamao se quiere modificar
% # path2" ruta de la carpeta en la que se almacenan las
% imenes con el nue%o tamao

files&dir(path)'
for i&("lenth(files)
nom)re&files(i)*name'
total&strcat(path,nom)re)'
+im,mapa,&imread(total)'
% -e comprue)a si la imaen es inde.ada $ si es as/ se transforma
% en 012
if(isind(im))
im&ind2r)(im,mapa)'
im&uint3(round(im4255))'
end
im2&imresize(im,+rows columns,)'
total2&strcat(path2,nom)re)'
imwrite(im2,total2)'
end
angleMdegM'd
function %alue & anle_de_2d ( p6, p2, p( )
%% Funcin que calcula el %alor del nulo comprendido entre dos
% l/neas
% !rumentos de entrada"
% # p6" punto que define una de las l/neas junto con el p2
% # p2" punto de unin de las dos l/neas
% # p(" punto que define la otra l/nea junto con el p2
% !rumentos de salida"
% # %alue" %alor del nulo en radianes

p(6) & ( p((6) # p2(6) ) 4 ( p6(6) # p2(6) ) 7 ( p((2) # p2(2) ) 4
( p6(2) # p2(2) )'
p(2) & ( p((6) # p2(6) ) 4 ( p6(2) # p2(2) ) # ( p((2) # p2(2) ) 4
( p6(6) # p2(6) )'

>,0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
if ( p(6) && 8*8 9 p(2) && 8*8 )
%alue & 8*8'
return
end

%alue & atan2 ( p(2), p(6) )'

if ( %alue : 8*8 )
%alue & %alue 7 2*8 4 pi'
end
arcMcosine
function %alue & arc_cosine ( c )
%% Funcin que calcula el arco coseno para %alores que estn fuera del
rano
% +#6 6,
% !rumentos de entrada
% # c" coseno del anulo
% !rumentos de salida
% # %alue" anulo cu$o coseno es c

% -e comprue)a el %alor de c $ si esta fuera del rano +#6 6, se
% trunca su %alor para que este dentro de este rano
c2 & c'
c2 & ma. ( c2, #6*8 )'
c2 & min ( c2, 76*8 )'

%alue & acos ( c2 )'
(estCan
function +)est;,cand, & 2est;and(cand)
% Funcin que a partir de la lista de candidatos a trianulo ojos#)oca
% de%uel%e el mejor candidato se<n ponderaciones eom=tricas*
% !rumentos de entrada"
% # cand" candidatos a trianulo ojos#)oca
% !rumentos de salida"
% )est;" mejor trianulo ojos#)oca se<n un score calculado
% cand" estructura con los trinulos candidatos $ sus scores

p & lenth(cand)'
a & +,'

% -e calcula el scores
for i & 6"p
cand(i)*-c & 8*54cand(i)*-c-im 7 8*254cand(i)*-c!rea 7
8*254cand(i)*-c>$es'
a & +a,cand(i)*-c,'
end

+%al,ind, & ma.(a)'
)est; & cand(ind)'
com2ensacionMluC
function correct&compensacion_luz(im)
>-/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
%% -e compensa la iluminacion usando el 5% de ma$or luma si se
% encuentra cantidad suficiente de ?)lanco referencia? (mas del 6% del
% total)*
% !rumentos de entrada"
% # im" imaen en formato 012
% !rumentos de salida"
% # correct" imaen en formato 012 con la compensacin de
% iluminacin

%@ransformacin de la imaen al espacio A;);r
imA&dou)le(r)2$c)cr(im))'
+a,),c,&size(im)'
%-eleccin de la componente A* >st en el rano +6B 2(5,
luma&dou)le(imA(",",6))'
cont&8'
au.&8'
im&dou)le(im)'

% ;orreccin de ama (para calcular referencia)
for i&6"a,
for j&6"),
if luma(i,j)C*D54(2(5#6B),
cont&cont76'
au.&au.7luma(i,j)'
end
end
end

ref&au.Econt'% %alor medio p/.eles )lanco de referencia,nue%o %alor de
% referencia

if contC&*864a4),%reescalado de los canales*
for i&6"a,
for j&6"),
if imA(i,j,6):ref,
im(i,j,")&im(i,j,")4255Eref'
else
im(i,j,")&255'
end
end
end
end

correct&uint3(im)'
con7MmasN
function masF_au. & con%_masF(masF)
%% ! partir de la mascara oriinal, de%uel%e una mascara
% pseudocon%e.a*
% !rumentos de entrada
% # masF" mascara oriinal
% !rumentos de salida
% # masF_au." mascara pseudocon%e.a

+m,n, & size(masF)'
masF_au. & masF'

>->
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
for h & 6"m,
F & 6'
while GmasF_au.(h,F) 9 F:n %)usco el primer p/.el que %ale 6 de la
% fila h
F & F76'
end
if masF_au.(h,F)
j & F'
finalh & F'
final% & h'
while j:n
if masF_au.(h,j76)
finalh & j76'
end
j & j76'
end
masF_au.(h,F"finalh) & 6'
for z & F"finalh
i & h'
final% & h'
while i:m
if masF_au.(i76,z)
final% & i76'
end
i & i76'
end
masF_au.(h"final%,z) & 6'
end
end
end

DetectMEye
function +e$emapH;,ela)el, & Ietect_>$e(emap,masF,s,alfa,ro)
%% Funcin que procesa el mapa de ojos $ de%uel%e las reiones
% candidatas a ojo etiquetadas*
% !rumentos de entrada"
% # emap" mapa de ojos
% # masF" mascara del candidato
% # s" factor de escala
% # alfa" factor para um)ralizacin
% # ro" factor para la morfolo/a
% !rumentos de salida"
% # e$emapH;" ojos detectados
% # ela)el" ojos detectados etiquetados

ma.imo & 255'

% ;alcula el %alor medio del mapa de ojos
emedio & mean_masF(emap,masF)'

% Jaturalizacin
um) & alfa 4 emedio 7 (6#alfa) 4 ma.imo'
e$emap2 & )oolean(zeros(size(emap)))'
e$emap2(find(emapCum))) & 6'

% Filtrado morfolico
se( & strel(KdisFK,floor(ro4s))'
>-,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
e$emapHL & imopen(e$emap2,se()'
e$emapH; & imclose(e$emapHL,se()'

% >tiquetado de zonas detectadas como ojos
+ela)el,cantidad, & )wla)el(e$emapH;)'
DetectMmouth
function +HmapH;,mla)el, & Ietect_mouth(Hmap,masF,s,alfa,ro)
%% Funcin que procesa el mapa de )oca $ de%uel%e las reiones
% candidatas a )oca etiquetadas*
% !rumentos de entrada"
% # Hmap" mapa de )oca
% # masF" mascara del candidato
% # s" factor de escala
% # alfa" factor para um)ralizacin
% # ro" factor para la morfolo/a
% !rumentos de salida"
% # HmapH;" )ocas detectadas
% # mla)el" )ocas detectadas etiquetadas

ma.imo & 255'

% ;alcula el %alor medio del mapa de ojos
Hmedio & mean_masF(Hmap,masF)'

% Mm)ralizacin
um) & alfa 4 Hmedio 7 (6#alfa) 4 ma.imo'
Hmap2 & )oolean(zeros(size(Hmap)))'
Hmap2(find(HmapCum))) & 6'

% Filtrado morfolico
se( & strel(KdisFK,round(ro4s))'
HmapHL & imopen(Hmap2,se()'
HmapH; & imclose(HmapHL,se()'

% >tiquetado de zonas detectadas como )ocas
+mla)el,cantidad, & )wla)el(HmapH;)'
elementoMestructura
function 1 & elemento_estructura(s)
%% Funcin que enera un elemento de estructura hemisf=rico de radio
% s*
% !rumentos de entrada"
% # s" radio
% !rumentos de salida"
% # 1" elemento estructura

if s C 3
F & floor(sE2)'
else
F & s'
end

& #inf4ones(24F76,24F76)'
nhood & ones(24F76,24F76)'

>--
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
for i & #F"F
for j & #F"F
if iN27jN2 : sN2
(i7F76,j7F76) & a)s(s)4(sqrt(a)s(6#(iN27jN2)EsN2))#6)'
end
end
end

1 & strel(nhood,)'
e7aluacionMdeteccion
function e%aluacion_deteccion
%% Funcin au.iliar que lee todas las imenes contenidas en una
% carpeta $ las pasa por la fase de deteccin de caras, uardando el
% resultado en otra carpeta

% ;arpeta con las imenes en las que se quiere detectar la cara
path&K***O22IIOK'

% ;arpeta en la que se almacenan las reiones detectadas como cara
path2&K***Ocaras detectadasOK'

% ;arpeta en la que se almacenan las imenes oriinales con las zonas
% detectadas como caras recuadradas en rojo
path(&K***Oimenes con caras detectadasOK'


files&dir(path)'
F&6'
for i&("lenth(files)
nom)re&files(i)*name'
nom)re_completo&strcat(path,nom)re)'
+imaen_final,imaen_cara,fla_cara,&face_detection3(nom)re_comple
to)'
for j&6"lenth(imaen_cara)
+toFen,remain,&strtoF(nom)re,K*K)'
num&num2str(j)'
nom)re2&strcat(toFen,K_K,num,remain)'
total&strcat(path2,nom)re2)'
total2&strcat(path(,nom)re2)'
if(fla_cara)
imwrite(imaen_cara(j)*cara,total)'
imwrite(imaen_final(j)*imaen,total2)'
end
end
F&F76'
end
EyeMa2
function +e$eHap,s, & >$eHap(imaen,masF,Fe)
%% Funcin que encuentra el mapa de ojos a partir de los mapas de
% crominancias $ luminancia*
% !rumentos de entrada"
% # imaen" rein candidata a cara en el espacio A;);r
% # masF" mascara del candidato a cara
% # Fe" proporcin caraEojo
>-B
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
% !rumentos de salida"
% # e$eHap" mapa de ojos normalizado
% # s" factor de escala

imaen & dou)le(imaen)'
+m,n, & size(imaen)'

%% Factor de esparcimiento o escala para eliminar ruido de tamao
% menor al dado por s*
s & floor(sqrt(m4n)E(24Fe))'

% -e enera el mapa de crominancias
emap; & dou)le(>$eHap;(imaen(",",2),imaen(",",(),masF,s))'

% -e enera el mapa de luminancia
emapP & dou)le(>$eHapP(medfilt2(imaen(",",6)),masF,s))'

% !JI entre los mapas de crominancias $ de luminancia
e$eHap & emap; *4 emapP'

% -e enmascara $ se normaliza
e$eHap & e$eHap *4 masF'
e$eHap & uint3((e$eHap # min(min(e$eHap)))4255E(ma.(ma.(e$eHap))))'
EyeMa2C
function emap; & >$eHap;(im;),im;r,im_masF,s)
%% Funcin que enera el mapa de ojos de crominancia de una imaen*
% !rumentos de entrada"
% # im;)" componente de crominancia ;) del candidato*
% # im;r" componente de crominancia ;r del candidato*
% # im_masF" mascara del candidato*
% # s" Factor de escala para morfolo/a*
% !rumentos de salida"
% # emap;" mapa de crominancia normalizado*

ma.imo & 255'
+m,n, & size(im;))'
im;) & dou)le(im;))'
im;r & dou)le(im;r)'

% -e calcula ;)N2 normalizado
;) & im;) # min(min(im;)))'
;)2 & ;)*N2 E ma.(ma.(;)*N2)) 4 ma.imo'
if(;)&&zeros(m,n))
;)2&zeros(m,n)'
end

% -e calcula ;r_neadoN2 normalizado
;r_neado & ma.imo # im;r # min(min(ma.imo#im;r))'
;r2 & ;r_neado*N2 E ma.(ma.(;r_neado*N2)) 4 ma.imo'
if(;r_neado&&zeros(m,n))
;r2&zeros(m,n)'
end

% 2usca ceros de ;r para e%itar pro)lemas al calcular ;)E;r
indice & find(im;r&&8)'

>-C
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
% -e sustitu$en los ceros por unos a los efectos de la di%isin
im;r(indice) & 6'

% -e calcula ;)E;r
;);r & im;) *E im;r'

% -e adjudica el ma.imo %alor a los puntos donde ;r %ale cero $ se
% normaliza
;);r(indice) & ma.imo'
;);r & (;);r # min(min(;);r)) E ma.(ma.(;);r))) 4 ma.imo'

% -e enera el mapa de ojos de crominancias
emap; & (;)2 7 ;r2 7 ;);r) E ('

% -e enmascara $ se rellena el mapa
emap; & emap; *4 )oolean(im_masF)'
emap; & round(emap;)'
emap; & fill_>$e(emap;,im_masF)'

% -e dilata
1 & elemento_estructura(s)'
emap; & imdilate(emap;,1)'

% -e normaliza el e$emap
emap; & (emap; # min(min(emap;))) E ma.(ma.(emap;)) 4 ma.imo'
emap; & uint3(round(emap;))'
EyeMa2*
function emapP & >$eHapP(imA,im_masF,s)
%% Funcin que enera el mapa de ojos de luma de una imaen*
% !rumentos de entrada"
% # imA" componente de luma del candidato*
% # im_masF" mascara del candidato*
% # s" factor de escala para morfolo/a*
% !rumentos de salida"
% # emapP" mapa de luma normalizado*

ma.imo&255'
+m,n,c,&size(imA)'

% -e rellena el fondo de la mascara con el %alor medio de esta*
A & fill_>$e(imA,im_masF)'

% -e enera el mapa $ se normaliza
1 & elemento_estructura(s)'
emapP & imdilate(A,1)*E(imerode(A,1)76)'
emapP & (emapP # min(min(emapP))) E ma.(ma.(emapP)) 4 ma.imo'
.aceMdetection
function +imaen_final,imaen_cara,fla_cara,&face_detection(imaen)
%% Funcin principal de la fase de deteccin*
% !rumentos de entrada"
% # imaen" 0uta completa de la imaen en la que se quiere
% detectar la cara
% !rumentos de salida"
% # imaen_final" >structura que contiene la imaen oriinal con
>-D
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
% la cara detectada recuadrada en rojo* @endr tantos elementos como
% caras se ha$an detectado en la imaen
% # imaen_cara" >structura que contiene la zona de la imaen
% de%uelta como cara* @endr tantos elementos como caras se ha$an
% detectado en la imaen
% # fla_cara" Fla que indica si en la imaen se ha detectado
% una cara o no* -er 6 si se ha detectado aluna cara en la imaen, $
% 8 en caso contrario

%Pectura de la imaen
+ima_r),map,&imread(imaen)'

%% -e comprue)a si la imaen es inde.ada, para en ese caso
% transformarla a 012
if(isind(ima_r)))
ima_r)&ind2r)(ima_r),map)'
ima_r)&uint3(round(ima_r)4255))'
end

% >liminacin de ruido mediante filtro de mediana
ima_filtrada(",",6)&medfilt2(ima_r)(",",6))'
ima_filtrada(",",2)&medfilt2(ima_r)(",",2))'
ima_filtrada(",",()&medfilt2(ima_r)(",",())'

% ;ompensacin de la luz
ima_compensada&compensacion_luz(ima_filtrada)'

ima_piel&zeros(size(ima_compensada(",",6)))'
ima_compensada&dou)le(ima_compensada)'

% -eparacin de cada uno de los colores
0&ima_compensada(",",6)' % ;olor rojo
1&ima_compensada(",",2)' % ;olor %erde
2&ima_compensada(",",()' % ;olor azul
ma.i&ma.(ima_compensada,+,,()' % Ha.imo en los ( colores
mini&min(ima_compensada,+,,()' % H/nimo en los ( colores

%% -e o)tiene a partir de una imaen color#012 una imaen )inaria
% donde los %alores 6 corresponden a la presencia de p/.eles de piel*
%
% ;ondiciones
c6&(0CD5)9(1CQ8)9(2C28)9((ma.i#mini)C65)'
c2&a)s(0#1)C65'
c(&(0C1)9(0C2)'

% Ieteccin p/.eles de piel
ima_piel&(c69c29c()'

%% Filtrado $ arupamiento
% !pertura de la imaen
ee&strel(KdisFK,Q)'
ima_a)ierta&imopen(ima_piel,ee)'

% ;ierre de la imaen
ee&strel(KdisFK,Q)'
ima_cerrada&imclose(ima_a)ierta,ee)'

% >tiquetado de la distintas reiones
+ima_etiquetada,num,&)wla)el(ima_cerrada)'
>-E
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras

%% -e o)tienen las reiones de piel candidatas a ser caras
% L)tencin de las caracter/sticas de las reiones de piel
propiedades_ima&reionprops(ima_etiquetada,K2oundin2o.K,KHinor!.isP
enthK,KHajor!.isPenthK,K!reaK,K;entroidK,K-olidit$K,KRmaeK,KSi.elPi
stK)'

fla_cara&8'
imaen_final&+,'
imaen_cara&+,'
num_caras&8'
candidatos&+,'
cara&ima_r)'
caras_detectadas&8'

%% -e comprue)a si cada rein cumple las condiciones para ser
% candidata a cara
for i & 6"num
ima&(ima_etiquetada&&i)' %-eleccin de una rein
%;alculo del per/metro, relacin de aspecto $ factor de forma
ima2 & )wperim(ima)'
perimetro&)warea(ima2)'
relacion_aspecto(i)&propiedades_ima(i)*Hinor!.isPenthEpropiedade
s_ima(i)*Hajor!.isPenth'
factor_forma(i)&(Q4pi)4(propiedades_ima(i)*!reaEperimetroN2)'

%;ondiciones
condicion&(factor_forma(i)C8*6)9(propiedades_ima(i)*!reaCB88)9(re
lacion_aspecto(i)C8*()9(propiedades_ima(i)*-olidit$C8*52)'
if condicion
num_caras&num_caras76'
% >structura que almacena los datos de los candidatos a cara
candidatos(num_caras)*mascara&propiedades_ima(i)*Rmae'
candidatos(num_caras)*posicion&propiedades_ima(i)*2oundin2o.
'
end
end

%% -e comprue)a si los candidatos son realmente caras (%alidacin)
for i&6"lenth(candidatos)
% Sosicin $ mscara pseudocon%e.a del candidato
)o. & round((candidatos(i)*posicion))'
mascara&candidatos(i)*mascara'
mascara&con%_masF(mascara)'

% 2usca el mejor trinulo ojos#)oca de la rein candidata
mejor_candidato&features(ima_r),mascara,)o.)'

% -i se tiene un mejor candidato se de%uel%e la rein de piel
% como cara detectada
if Gisempt$(mejor_candidato)
caras_detectadas&caras_detectadas76'
cara&ima_r)()o.(2)")o.(2)7)o.(Q)#6,)o.(6)")o.(6)7)o.(()#
6,")'
imaen_cara(caras_detectadas)*cara&cara'
% >n la imaen oriinal se recuadra en rojo la zona detectada
% como cara
imaen_final(caras_detectadas)*imaen&show_result(ima_r),)o.
)'
>-G
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
fla_cara&6'
end
end

%% -i con el m=todo anterior no se detecta ninuna cara en la imaen
% se utiliza una forma de deteccin alternati%a usando una elipse
+rows,columns,&size(ima_r)(",",6))'

if(fla_cara&&8)
if(numC8)
for i&6"num
areas(i)&propiedades_ima(i)*!rea'
end
% -e selecciona la ma$or rein de piel que ha$ en la imaen
+area_ma.ima,reion_ma$or,&ma.(areas)'

% Pa rein seleccionada de)e tener un area m/nima de B88
% p/.eles
if(area_ma.imaCB88)
% -e coe el centroide de la rein como centro de la
% elipse
.8&propiedades_ima(reion_ma$or)*;entroid(6)'
$8&propiedades_ima(reion_ma$or)*;entroid(2)'

% -e coe el tamao de los ejes de la elipse en funcin de
% los ejes de la rein
a&(propiedades_ima(reion_ma$or)*Hinor!.isPenth)'
)&(propiedades_ima(reion_ma$or)*Hajor!.isPenth)'

%a&(propiedades_ima(reion_ma$or)*Hinor!.isPenth)48*T5'
%)&(propiedades_ima(reion_ma$or)*Hajor!.isPenth)48*T5'

%a&(propiedades_ima(reion_ma$or)*Hinor!.isPenth)48*5'
%)&(propiedades_ima(reion_ma$or)*Hajor!.isPenth)48*5'

inter%alo&(24pi)Ecolumns'
theta&+8"inter%alo"24pi#inter%alo,'

% -e aplican las ecuaciones de la elipse para calcular los
% puntos que pertenecen a ella
.&a4cos(theta)7.8'
$&)4sin(theta)7$8'
.&round(.)'
$&round($)'

.&sort(.)'
l&6'
for F&6"lenth(.)
if ((.(F)C&(.8#a))99(.(F):&(.87a)))
._)o.(l)&.(F)'
if (.(F):&8)
._)o.(l)&6'
end
if (.(F)Ccolumns)
._)o.(l)&columns'
end
l&l76'
end
end
>-0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras

elipse&zeros(rows,columns)'

for F&6"lenth(._)o.)#6
$6&floor($87sqrt()N2#(((._)o.(F)#.8)N2)4()N2EaN2))))'
$2&floor($8#sqrt()N2#(((._)o.(F)#.8)N2)4()N2EaN2))))'
for h&min($6,$2)"ma.($6,$2)
if(h:&8)
h&6'
end
if(hCrows)
h&rows'
end
elipse(h,._)o.(F)"._)o.(F76))&6'
end
end

% -e etiqueta la imaen )inaria en la que los 6s son
% puntos pertenecientes a la elipse $ los 8s puntos que no pertenecen
% a % la elipse
elipse_etiquetada&)wla)el(elipse)'
propiedades_elipse&reionprops(elipse_etiquetada,K2oundin
2o.K,KHinor!.isPenthK,KHajor!.isPenthK,K!reaK,K;entroidK,K-olidit$K,
KRmaeK,KSi.elPistK)'
)o._cara&round(propiedades_elipse(6)*2oundin2o.)'
% -e selecciona en la imaen la rein con las mismas
% propiedades que la elipse
cara&ima_r)()o._cara(2)")o._cara(2)7)o._cara(Q)#
6,)o._cara(6)")o._cara(6)7)o._cara(()#6,")'
imaen_final(6)*imaen&show_result(ima_r),)o._cara)'
imaen_cara(6)*cara&cara'
fla_cara&6'
end
end
end
.eatures
function )est;and & features (imaen,im_masF,)o.)
%% Funcin que a partir de los candidatos a cara de%uel%e el mejor
% trianulo ojos#)oca correspondiente o %ac/o en caso de no e.istir
% uno*
% !rumentos de entrada"
% # imaen" imaen en el espacio 012 en la que est el candidato
% a cara
% # ima_masF" mascara del candidato a cara
% # )o." posicin dentro de imaen del candidato a cara
% !rumento de salida"
% # )est;and" coordenadas de los ojos $ )oca del mejor trianulo
% ojos#)oca del candidato

% -e pasa la parte de la imaen dentro del )o. (es decir el candidato
% a cara) al espacio de color A;);r
im & r)2$c)cr(imaen()o.(2)")o.(2)7)o.(Q)#6,)o.(6)")o.(6)7)o.(()#
6,"))'
im2&imaen()o.(2)")o.(2)7)o.(Q)#6,)o.(6)")o.(6)7)o.(()#6,")'

>B/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
im_masF & )wmorph(im_masF,KthinK,()'

%% -e calcula el mapa de ojos $ )oca para %er si se encuentran en la
% imaen
+e$eHap,s, & >$eHap(dou)le(im),im_masF,62)'
+e$emapH;,ela)el, & Ietect_>$e(dou)le(e$eHap),im_masF,s,8*3,8*2)'

+Hmap,s, & HouthHap(im,im_masF,6Q)'
+mmap,mla)el,&Ietect_mouth(Hmap,im_masF,s,8*3,8*T)'

)est;and & +,'

% -i se tienen como m/nimo dos ojos $ una )oca se calculan sus
% propiedades $ se )usca el mejor trianulo ojos#)oca
if (ma.(ma.(mla)el)) : 6) UU (ma.(ma.(ela)el)) : 2)
)est;and & +,'
else
%-e hallan las propiedades de los ojos $ )oca candidatos
mouth & reionprops(mla)el,K;entroidK,K!reaK)'
e$e & reionprops(ela)el,K;entroidK,K!reaK)'

area_masF & sum(sum(im_masF))'

% -e calculan los trinulos ojos#)oca candidatos
cand & eom(e$e,mouth,area_masF)'

if isfield(cand,KcoordK)
+2est;,cand, & 2est;and(cand)'
if 2est;*-c C 8*Q
% -e de%uel%en las coordenadas de los ojos $ )oca del
% mejor candidato
)est;and & 2est;*coord'
end
end
end
.illMEye
function imA_e$e & fill_>$e(imA,im_masF)'
%% Funcin que toma la componente A de la imaen de una cara $ la
% mascara de donde ha$ piel* Ie%uel%e la imaen rellena fuera de la
% mascara con el %alor medio de luma de piel*Rmaen en formato A 8#255
% !rumentos de entrada"
% # imA" componente A de la imaen
% # ima_masF" mascara del candidato
% !rumentos de salida"
% # imA_e$e" imaen rellena

+m,n, & size(im_masF)'

A_medio & mean_masF(imA,im_masF)'

imA_e$e & imA'

for i & 6"m
for j & 6"n
if Gim_masF(i,j)
imA_e$e(i,j) & A_medio'
>B>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
end
end
end
geom
function cand & eom(e$e,mouth,area_masF)
%% Funcin que elimina los candidatos (2 ojos 6 )oca) cu$o trianulo
% no es audo* @am)i=n calcula %arios -cores ponderando diferentes
% situaciones, se premia aquellos trinulos sim=tricos, )ien
% orientados (hacia arri)a),ojos de area similar $ area de trianulo
% cercana al 68% del area de la mascara* -e de%uel%e una estructura
% con los posi)les candidatos*
%
% !rumentos de entrada"
% # e$e" ojos detectados
% # mouth" )ocas detectadas
% # area_masF" area de la mascara del candidato
% !rumentos de salida"
% # cand" estructura con los candidatos a trianulo ojos#)oca $
% sus scores

n & lenth(e$e)'
m & lenth(mouth)'

% !nulo m.imo, anulo m/nimo $ area m/nima del trianulo ojos#)oca
an_ma. & piE2'
an_min & piET'
area_min & 688'


ind & 6'
for i & 6"n
for j & i76"n
for F & 6"m
% -e %an seleccionando dos ojos $ una )oca
t &
+e$e(i)*;entroidK,e$e(j)*;entroidK,mouth(F)*;entroidK,'
% ;alculo de los nulos
anle & trianle_anles_2d ( t )'
% ;alculo del area
area & trianle_area_2d ( t )'
% -i el trianulo cumple las condiciones de area $ nulos
% se calculan unos scores
if isempt$(find(anle C an_ma.)) 9 area C area_min 9
isempt$(find(anle : an_min))'
cand(ind)*coord & t'
cand(ind)*-c-im & score-im(t)'
cand(ind)*-c!rea & score!rea(t,area_masF)'
cand(ind)*-c>$es & score>$es(e$e(i)*!rea,e$e(j)*!rea)'
ind & ind 7 6'
end
end
end
end

% -i no e.isten candidatos se sale con 8
if ind && 6
>B,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
cand & 8'
end


function %al & score-im(c)
% Funcin que calcula un -core que tiene en cuenta la orientacin $ la
% simetr/a del trianulo
% !rumentos de entrada"
% # c" trianulo candidato
% !rumentos de salida"
% # %al" %alor del score

theta2 & 6E24anle_de_2d ( 6E24(c(",6) 7 c(",2)), c(",(),
+c(6,()'c(2,()#2,)'
theta6 & anle_de_2d ( c(",6), 6E24(c(",6) 7 c(",2)), c(",()) #
piE2'
%al & e.p(#(4sin(theta6)N2)4e.p(#(4sin(theta2)N2)'


function %al & score!rea(c,area_masF)
% Funcin que calcula un -core que tiene en cuenta la orientacin $ la
% simetr/a del trianulo
% !rumentos de entrada"
% # c" trianulo candidato
% # area_masF" area de la mascara
% !rumentos de salida"
% # %al" %alor del score

area@ & trianle_area_2d (c)'
%al & e.p(#sqrt(a)s(area@Earea_masF#8*6)))'


function %al & score>$es(a6,a2)
% Funcin que calcula un -core que tiene en cuenta la orientacin $ la
% simetr/a del trianulo
% !rumentos de entrada"
% # a6" area de uno de los ojos
% # a2" area del otro ojo
% !rumentos de salida"
% # %al" %alor del score

%al & e.p(#a)s(a6#a2)Emin(a6,a2))'
inter.aCMgra.ica
function %ararout & interfaz_rafica(%ararin)
% RJ@>0F!V_10!FR;! H#file for interfaz_rafica*fi
% RJ@>0F!V_10!FR;!, )$ itself, creates a new RJ@>0F!V_10!FR;! or
raises the e.istin
% sinleton4*
%
% W & RJ@>0F!V_10!FR;! returns the handle to a new
% RJ@>0F!V_10!FR;! or the handle to the e.istin sinleton4*
%
% RJ@>0F!V_10!FR;!(K;!PP2!;XK,hL)ject,e%entIata,handles,***)
% calls the local function named ;!PP2!;X in RJ@>0F!V_10!FR;!*H with
% the i%en input aruments*
%
>B-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
% RJ@>0F!V_10!FR;!(KSropert$K,KYalueK,***) creates a new
% RJ@>0F!V_10!FR;! or raises the e.istin sinleton4* -tartin from
% the left, propert$ %alue pairs are applied to the 1MR )efore
% interfaz_rafica_LpeninFcn ets called* !n unreconized propert$
% name or in%alid %alue maFes propert$ application stop* !ll inputs
% are passed to interfaz_rafica_LpeninFcn %ia %ararin*
%
% 4-ee 1MR Lptions on 1MRI>Ks @ools menu* ;hoose ?1MR allows
% onl$ one instance to run (sinleton)?*
%
% -ee also" 1MRI>, 1MRI!@!, 1MRW!JIP>-

% >dit the a)o%e te.t to modif$ the response to help interfaz_rafica

% Past Hodified )$ 1MRI> %2*5 8B#Fe)#288D 66"6Q"5D

% 2ein initialization code # IL JL@ >IR@
ui_-inleton & 6'
ui_-tate & struct(Kui_JameK, mfilename, ***
Kui_-inletonK, ui_-inleton, ***
Kui_LpeninFcnK, Zinterfaz_rafica_LpeninFcn, ***
Kui_LutputFcnK, Zinterfaz_rafica_LutputFcn, ***
Kui_Pa$outFcnK, +, , ***
Kui_;all)acFK, +,)'
if narin 99 ischar(%ararin[6\)
ui_-tate*ui_;all)acF & str2func(%ararin[6\)'
end

if narout
+%ararout[6"narout\, & ui_mainfcn(ui_-tate, %ararin["\)'
else
ui_mainfcn(ui_-tate, %ararin["\)'
end
% >nd initialization code # IL JL@ >IR@


% ### >.ecutes just )efore interfaz_rafica is made %isi)le*
function interfaz_rafica_LpeninFcn(hL)ject, e%entdata, handles,
%ararin)
% @his function has no output ars, see LutputFcn*
% hL)ject handle to fiure
% e%entdata reser%ed # to )e defined in a future %ersion of H!@P!2
% handles structure with handles and user data (see 1MRI!@!)
% %ararin command line aruments to interfaz_rafica (see Y!0!01RJ)

% ;hoose default command line output for interfaz_rafica
handles*output & hL)ject'

% Rnicializacin del titulo de la interfaz $ de los nom)res de las
% zonas de imenes
set(handles*te.t(,K-trinK,K-istema !utomtico de 0econocimiento de
;arasK,KFontnameK,K!rialK,KFontsizeK,(8,KFontanleK,KRtalicK, ***
KFontweihtK,K2oldK)'

set(handles*te.tT,K-trinK,KRmaen
seleccionadaK,KFontnameK,K!rialK,KFontsizeK,68,KFontanleK,KRtalicK, *
**
KFontweihtK,K2oldK)'

>BB
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
set(handles*te.t3,K-trinK,K;ara
detectadaK,KFontnameK,K!rialK,KFontsizeK,68,KFontanleK,KRtalicK, ***
KFontweihtK,K2oldK)'

set(handles*te.tD,K-trinK,KSersonas resultado del
reconocimientoK,KFontnameK,K!rialK,KFontsizeK,62,KFontanleK,KRtalicK,
***
KFontweihtK,K2oldK)'

% Rnicializacin de la %aria)le que indica si se tiene una imaen
% nue%a (cuando su %alor es 6) o se %a a mostrar otra zona detectada
% como cara de una misma imaen (%alor 8)
handles*nue%a&6'

% Mpdate handles structure
uidata(hL)ject, handles)'

% MR]!R@ maFes interfaz_rafica wait for user response (see MR0>-MH>)
% uiwait(handles*fiure6)'


% ### Lutputs from this function are returned to the command line*
function %ararout & interfaz_rafica_LutputFcn(hL)ject, e%entdata,
handles)
% %ararout cell arra$ for returnin output ars (see Y!0!01LM@)'
% hL)ject handle to fiure
% e%entdata reser%ed # to )e defined in a future %ersion of H!@P!2
% handles structure with handles and user data (see 1MRI!@!)

% 1et default command line output from handles structure
%ararout[6\ & handles*output'


% ### >.ecutes on )utton press in push)utton6*
function push)utton6_;all)acF(hL)ject, e%entdata, handles)
% hL)ject handle to push)utton6 (see 1;2L)
% e%entdata reser%ed # to )e defined in a future %ersion of H!@P!2
% handles structure with handles and user data (see 1MRI!@!)

nue%a_imaen&handles*nue%a'

% -e selecciona una imaen nue%a para el reconocimiento
if nue%a_imaen
% -eleccion de la imaen que se quiere reconocer
+FileJame Sath,&uietfile([K4*jp'4*)mpK\,K!)rir RmaenK)'

% -e muestra la imaen en el primer a.es
if isequal(FileJame,8)
return
else
a.es(handles*a.es6)
a&imread(strcat(Sath,FileJame))'
a.is off
imshow(a)'
end

% Ieteccin de la cara
nom)re_completo&strcat(Sath,FileJame)'
+imaen_final,imaen_cara,fla_cara,&face_detection3(nom)re_comple
>BC
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
to)'

% -e almacenan manejadores con el n<mero de caras detectadas $ las
% caras detectadas
handles*num_imaen&lenth(imaen_cara)'
handles*caras_detectadas&imaen_cara'
handles*j&6'
num&handles*num_imaen'
F&handles*j'

% -e muestra el resultado de la deteccin en el a.es
if(fla_cara)
a.es(handles*a.esT)
a.is off
imshow(imaen_cara(F)*cara)'
handles*imaen&imaen_cara(F)*cara'
end
% -e comprue)a si ha$ ms de un resultado en la deteccin
if ((num C 6) 99 (F :& num))
handles*j&handles*j76'
handles*nue%a&8'
end

% -e almacena en el manejador el nom)re del archi%o leido $ su
% nom)re con la ruta completa
handles*archi%o&FileJame'
handles*direccion&strcat(Sath,FileJame)'
else
a.es(handles*a.esT)
a.is off
caras_detectadas&handles*caras_detectadas'
F&handles*j'
imshow(caras_detectadas(F)*cara)'
handles*imaen&caras_detectadas(F)*cara'
if (F C handles*num_imaen)
handles*nue%a&6'
end
end

uidata(hL)ject,handles)

% ### >.ecutes on )utton press in push)utton2*
function push)utton2_;all)acF(hL)ject, e%entdata, handles)
% hL)ject handle to push)utton2 (see 1;2L)
% e%entdata reser%ed # to )e defined in a future %ersion of H!@P!2
% handles structure with handles and user data (see 1MRI!@!)

% -i no se ha seleccionado ninuna imaen para reconocer se muestra un
% mensaje de error al pulsar el )oton 2uscar
if Gisfield(handles,KdireccionK)
errordl(KIe)e seleccionar una imaen para
reconocerK,Kinterfaz_raficaK)
end

handles*nue%a&6'

% -e ajusta el tamao de la imaen antes de la fase de reconocimiento
imaen_@est&handles*imaen'
imaen_@est&imresize(imaen_@est,+628 688,)'
>BD
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras

% -e realiza el reconocimiento
personajes&reconocimiento2(imaen_@est)'

% ;arpeta en la que se encuentran las tres imaenes de cada persona de
% la )ase de datos para mostrar como resultado
22IISath&KI"OYiriORn* @elecomunicacinO;odio interfazO22II
famososOK'
22IIFiles&dir(22IISath)'

% -e muestran las imaenes de las personas de la )ase de datos
% resutlado del reconocimiento*
str&22IIFiles((personajes(6)4()72)*name'
a.es(handles*a.es2)
a&imread(strcat(22IISath,str))'
a.is off
imshow(a)'

str&22IIFiles((personajes(2)4()72)*name'
a.es(handles*a.es()
a&imread(strcat(22IISath,str))'
a.is off
imshow(a)'

str&22IIFiles((personajes(()4()72)*name'
a.es(handles*a.esQ)
a&imread(strcat(22IISath,str))'
a.is off
imshow(a)'

str&22IIFiles((personajes(Q)4()72)*name'
a.es(handles*a.es5)
a&imread(strcat(22IISath,str))'
a.is off
imshow(a)'

str&22IIFiles((personajes(5)4()72)*name'
a.es(handles*a.esB)
a&imread(strcat(22IISath,str))'
a.is off
imshow(a)'

uidata(hL)ject,handles)
loadMdata9ase
function out&load_data)ase(r))
%% Funcin que enera la )ase de datos de imenes de entrenamiento
% para el reconocimiento*
% !rumentos de entrada"
% # r)" n<mero que indica si se calcula la )ase de datos de las
% imenes en escala de ris o para cada uno de los canales de
% color
% 012* -era 8##C escala de ris' 6##C canal 0' 2##C canal 1'
%(##C canal 2
% !rumentos de salida"
% # out" matriz que contiene en cada columna cada una de las
% imenes de la )ase de datos*
>BE
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras

% ;arpeta en la que se encuentran las imenes de caras para el
% entrenamiento del sistema (( imenes por persona)
@rainIata)aseSath&K***O@rainOK'

@rainFiles & dir(@rainIata)aseSath)'
@rain_Jum)er & lenth(@rainFiles)'

@&+,'
for i & ( " @rain_Jum)er
str&@rainFiles(i)*name'
str & strcat(@rainIata)aseSath,str)'
im & imread(str)'
% -e selecciona la imaen en escala de ris o el canal 012
% correspondiente en funcin del parmetro de entrada
if(r)&&8)
im&r)2ra$(im)'
else
im&im(",",r))'
end

% -e pone cada imaen como un %ector columna $ se aade a la
% matriz @
+irow icol, & size(im)'
temp & reshape(im,icol4irow,6)'
@ & +@ temp,'
end
out&@'
meanMmasN
function A_medio & mean_masF(im,im_masF)
%% Funcin que calcula el %alor medio de la imaen dentro de la
% mascara*
% !rumentos de entrada"
% # im" imaen
% # im_masF" mascara de la imaen
% !rumentos de salida"
% # A_medio" %alor medio

+m,n, & size(im_masF)'
au. & 8'
tam_masF & 8'

for i & 6"m
for j & 6"n
if im_masF(i,j) 9 not(isnan(im(i,j)))
tam_masF & tam_masF 7 6'
au. & au. 7 im(i,j)'
end
end
end

A_medio & au.Etam_masF'
MouthMa2
function +Hmap,s, & HouthHap(imaen,masF,Fm)
>BG
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
%% Funcin que enera el mapa de )oca de una imaen*
% !rumentos de entrada"
% # imaen" rein candidata a cara en el espacio A;);r
% # masF" mascara de la rein candidata
% # Fm" proporcin caraE)oca
% !rumentos de salida"
% # Hmap" mapa de )oca
% # s" factor de escala

imA;;&dou)le(imaen)'

ma.imo&255'
+m,n,c,&size(imaen)'

% ;rominancias
;r & imA;;(",",()'
;) & imA;;(",",2)'

% -e calcula ;rN2 normalizado
;r2 & (;r*N2 # min(min(;r*N2))) E ma.(ma.(;r*N2)) 4 ma.imo'

% 2usca ceros de ;) para e%itar pro)lemas al calcular ;rE;)
indice & find(;)&&8)'

% -ustitu$e los ceros por unos a los efectos de la di%isin
;)(indice) & 6'

% -e calcula ;rE;)
;r;) & ;r *E ;)'

% -e adjudica el ma.imo %alor a los puntos donde ;) %ale cero $ se
% normaliza
;r;)(indice) & ma.imo'
;r;) & (;r;) # min(min(;r;)))) E ma.(ma.(;r;))) 4 ma.imo'

% >stimacin del parmetro t
t & 8*D5 4 mean_masF(;r2,masF) E mean_masF(;r;),masF)'
if(isnan(t))
t&8*D5'
end

% ;alculo del mapa de )oca
Hmap & ;r2*4(;r2 # t4;r;))*N2'

% -e enera un elemento estructura $ se aplica la dilatacin
s & floor(sqrt(m4n)E(24Fm))'
1 & elemento_estructura(s)'
Hmap & imdilate(Hmap,1)'

% -e enmascara $ se normaliza el mapa de )oca
Hmap & Hmap *4 masF'
Hmap & (Hmap # min(min(Hmap))) E ma.(ma.(Hmap)) 4 ma.imo'
netMsim
function +out,&net_sim(ri,r))
%% Funcin que realiza la simulacin de la red neuronal indicada por
% el parmetro r) $ para la imaen pasada como arumento
>B0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
% !rumentos de entrada"
% # ri" nom)re de la imaen test con la que se simula la red
% neuronal, con la ruta completa
% # r)" n<mero que indica si se utiliza la red neuronal $ )ase
% de datos de las imenes en escala de ris o para cada uno de los
canales de color 012* -era 8##C escala de ris' 6##C canal 0' 2##C
% canal 1' (##C canal 2
% !rumentos de salida"
% # out" salida de la simulacin de la red

% -e cara la )ase de datos $ la red neuronal correspondiente en
% funcin del parmetro r)
if (r)&&8)
w&load(K@*matK,K@K)'
%&w*@'
red&load(Knet*matK,KnetK)'
net&red*net'
elseif (r)&&6)
w&load(K@0*matK,K@0K)'
%&w*@0'
red&load(Knet0*matK,Knet0K)'
net&red*net0'
elseif (r)&&2)
w&load(K@1*matK)'
%&w*@1'
red&load(Knet1*matK,Knet1K)'
net&red*net1'
elseif (r)&&()
w&load(K@2*matK)'
%&w*@2'
red&load(Knet2*matK,Knet2K)'
net&red*net2'
end

% -e lee la imaen $ se selecciona la escala de rises o el canal de
% color correspondiente en funcin de r)
str&ri'
r & imread(str)'
if(r)&&8)
r&r)2ra$(r)'
else
r&r(",",r))'
end

% -e representa la imaen como %ector columna
+irow icol,&size(r)'
r & reshape(r,icol4irow,6)'

%% -e utiliza S;! para representar las imenes
% -e calcula la media de las imenes de la )ase de datos $ se resta a
% cada una de ellas
L&uint3(ones(6,size(%,2)))'
m&uint3(mean(%,2))'
%zm&%#uint3(sinle(m)4sinle(L))'
% -e calculan los auto%ectores de la matriz de correlacin
P&sinle(%zm)K4sinle(%zm)'
+Y,I,&ei(P)'
Y&sinle(%zm)4Y'

>C/
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
% Jumero de auto%ectores para representar la imaen (de)e tener el
% mismo %alor que en la funcin net_train
J&66'

% -e selecciona el n<mero de auto%ectores indicado* !qu/ se
% seleccionan los J <ltimos porque se ha %isto que son los que tienen
% ma$ores auto%alores
Y&Y(",end"#6"end#(J#6))'


% -e resta la media de las imenes de la )ase de datos a la imaen de
% test $ se calcula la representacin de esta imaen en la )ase de
% datos
p&r#m'
s&sinle(p)K4Y'
s&sK'

% >l resultado de la representacin se pasa como entrada para
% simulacin de la red neuronal
test&s'
test&dou)le(test)'
out&sim(net,test)'
netMtrain
function +net,tr,A,>,&net_train(r))
%% Funcin que calcula el S;! $ entrena la red neuronal con los
% auto%ectores seleccionados para representar las imenes*
% !rumentos de entrada"
% # r)" n<mero que indica si se utiliza la )ase de datos de las
% imenes en escala de ris o para cada uno de los canales de
% color
% 012* -era 8##C escala de ris' 6##C canal 0' 2##C canal 1'
% (##C canal 2
% !rumentos de salida"
% # net" red neuronal entrenada
% # tr" informe del entrenamiento
% # A" salidas del entrenamiento de la red neuronal
% # >" errores de la red durante el entrenamiento

% -e cara la )ase de datos correspondiente en funcin del parmetro
% r)
if (r)&&8)
w&load(K@*matK,K@K)'
%&w*@'
elseif (r)&&6)
w&load(K@0*matK,K@0K)'
%&w*@0'
elseif (r)&&2)
w&load(K@1*matK)'
%&w*@1'
elseif (r)&&()
w&load(K@2*matK)'
%&w*@2'
end

%% -e utiliza S;! para reducir el espacio de representacin de las
% imenes de entrenamiento
>C>
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
% -e calcula la media de todas las imenes de la )ase de datos $ se
% le resta a cada una de ellas
L&uint3(ones(6,size(%,2)))'
m&uint3(mean(%,2))'
%zm&%#uint3(sinle(m)4sinle(L))'

% -e calculan los auto%ectores de la matriz de correlacin
P&sinle(%zm)K4sinle(%zm)'
+Y,I,&ei(P)'
Y&sinle(%zm)4Y'

% ;dio au.iliar para %er el %alor de los auto%alores $ su %arianza
% e.plicada para seleccionar el n<mero de auto%ectores que se utilizan
% % % diaonal&dia(I)'
% % % plot(diaonal)'
% % % diaonal2&flipud(diaonal)'
% % % fiure'plot(diaonal2)
% % % for i&6"lenth(diaonal2)
% % % for j&6"i
% % % %ar_e.p(j)&diaonal2(j)Esum(diaonal2)'
% % % end
% % % %ar_acum(i)&sum(%ar_e.p)4688'
% % % end
% % % fiure'plot(%ar_acum)'
% % % pause

% J<mero de auto%ectores que se utilizan para representar las imenes
J&66'

% -e selecciona el n<mero de auto%ectores indicado* !qu/ se
% seleccionan los J <ltimos porque se ha %isto que son los que tienen
% ma$ores auto%alores
Y&Y(",end"#6"end#(J#6))'

% -e calcula la representacin para cada imaen de la )ase de datos
c%&zeros(size(%,2),J)'
for i&6"size(%,2)'
% ;ada columna de c% es la representacin de una imaen
c%(i,")&sinle(%zm(",i))K4Y'
end

%% -e preparan los datos para el entrenamiento super%isado de la red
% neuronal
@rain_Jum)er&size(c%,2)'
num_personajes&size(%,2)E('
num_train&(' %numero imenes por personaje para entrenar

% ;alcula la salida para el entrenamiento super%isado
$_train&zeros(num_personajes,@rain_Jum)er)'
j&6'
for i&6"num_personajes
for F&j"j7(num_train#6)
$_train(i,F)&6'
end
j&j7num_train'
end
% >ntrada para el entrenamiento de la red neuronal
._train&c%K'

>C,
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
% -e realiza el entrenamiento de la red neuronal
+net,tr,A,>,&red_neuronal(._train,$_train)'
reconocimiento
function +personaje,&reconocimiento2(i)
%% Funcin que realiza el reconocimiento*
% !rumentos de entrada"
% # i" nom)re de la imaen test con la que se simula la red
% neuronal, con la ruta completa
% !rumentos de salida"
% # personaje" %ector que contiene los n<meros que representan a
% las personas de la )ase de datos que han sido de%ueltas como
% resultado del reconocimiento

% Jumero de personas que forman la )ase de datos
num_personajes&62'

salida_ideal&ones(6,num_personajes)'
personaje_ris&zeros(6,5)'
personaje_0&zeros(6,5)'
personaje_1&zeros(6,5)'
personaje_2&zeros(6,5)'

minimo_ris&zeros(6,5)'
minimo_0&zeros(6,5)'
minimo_1&zeros(6,5)'
minimo_2&zeros(6,5)'

% -imulacin de la red neuronal para la imaen en escala de rises
out&net_sim(i,8)'
% ;alculo de la deferencia con la salida ideal
diferencia&a)s(salida_ideal#outK)'
% L)tencin de las cinco m/nimas diferencias $ los personajes de la
% )ase de datos correspondientes a esas m/nimas diferencias
for h&6"5
+minimo,indice,&min(diferencia)'
personaje_ris(h)&indice'
minimo_ris(h)&minimo'
diferencia(indice)&688'
end

% -imulacin de la red neuronal para el canal 0
out&net_sim(i,6)'
diferencia&a)s(salida_ideal#outK)'
for h&6"5
+minimo,indice,&min(diferencia)'
personaje_0(h)&indice'
minimo_0(h)&minimo'
diferencia(indice)&688'
end

% -imulacin de la red neuronal para el canal 1
out&net_sim(i,2)'
diferencia&a)s(salida_ideal#outK)'
for h&6"5
+minimo,indice,&min(diferencia)'
personaje_1(h)&indice'
>C-
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
minimo_1(h)&minimo'
diferencia(indice)&688'
end

% -imulacin de la red neuronal para el canal 2
out&net_sim(i,()'
diferencia&a)s(salida_ideal#outK)'
for h&6"5
+minimo,indice,&min(diferencia)'
personaje_2(h)&indice'
minimo_2(h)&minimo'
diferencia(indice)&688'
end


minimos&+minimo_ris minimo_0 minimo_1 minimo_2,'
personaje&zeros(6,5)'

% -e o)tienen los cinco m/nimos de entre los m/nimos calculados para
% la imaen en escala de rises $ para cada canal de color 012, $ las
% personas de la )ase de datos correspondientes
h&6'
while (h:&5)
+minimo,indice,&min(minimos)'
minimos(indice)&688'
if((indiceC&6)99(indice:&5))
person&personaje_ris(indice)'
elseif((indiceC&B)99(indice:&68))
indice&indice#5'
person&personaje_0(indice)'
elseif((indiceC&66)99(indice:&65))
indice&indice#68'
person&personaje_1(indice)'
elseif((indiceC&6B)99(indice:&28))
indice&indice#65'
person&personaje_2(indice)'
end
ind&find(personaje&&person)'
if(lenth(ind)&&8)
personaje(h)&person'
h&h76'
end
end
redMneuronal
function +net,tr,A,>,&red_neuronal(._train,$_train)
%% Funcin que realiza el entrenamiento de una red neuronal
% !rumentos de entrada"
% # ._train" datos de entrada para el entrenamiento
% # $_train" datos de salida para el entrenamiento
% !rumentos de salida"
% # net" red neuronal entrenada
% # tr" informe del entrenamiento
% # A" salidas del entrenamiento de la red neuronal
% # >" errores de la red durante el entrenamiento

+m n,&size(._train)'
>CB
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
neuronas_input&m' % Jumero de neuronas de la capa de entrada
num_patterns&n' % Jumero de patrones de entrenamiento
+p q,&size($_train)'
neuronas_hidden&round(((m7p)E2))#2' % Jumero de neuronas de la capa
% oculta
tamano_capas&+neuronas_input,neuronas_hidden,'

% -e enera la red neuronal
net*numRnputs&neuronas_input'
net&newcf(._train,$_train,tamano_capas,[KtansiK KtansiK
KpurelinK\,KtrainlmK,KlearndmK,KmseK)'

% Sarmetros de entrenamiento
net*trainSaram*epochs & 588'
net*trainSaram*oal & 8*86'
net*trainSaram*mu_ma.&6e63'
net*trainSaram*ma._fail&5'
% >ntrenamiento de la red neuronal
+net,tr,A,>,&train(net,._train,$_train)'
shoFMresult
function imaen_final&show_result2(imaen,)o.)
%% Funcin que de%uel%e la imaen con un recuadro rojo rodeando a la
% zona indicada por )o.
% !rumentos de entrada"
% # imaen" imaen
% # )o." zona que quiere recuadrarse
% !rumentos de salida"
% # imaen_final" imaen con la zona recuadrada
imaen_final&imaen'
.&)o.(6)'
$&)o.(2)'
._width&)o.(()'
$_width&)o.(Q)'


for i&.".7._width#6
imaen_final($,i,6) & 255'
imaen_final($,i,2) & 8'
imaen_final($,i,() & 8'
imaen_final($7$_width#6,i,6) & 255'
imaen_final($7$_width#6,i,2) & 8'
imaen_final($7$_width#6,i,() & 8'
end

for i&$"$7$_width#6
imaen_final(i,.,6) & 255'
imaen_final(i,.,2) & 8'
imaen_final(i,.,() & 8'
imaen_final(i,.7._width#6,6) & 255'
imaen_final(i,.7._width#6,2) & 8'
imaen_final(i,.7._width#6,() & 8'
end
triangleManglesM'd
>CC
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
function anle & trianle_anles_2d ( t )
%% Funcin que calcula los nulos de un trianulo 2I )asndose en la
% rela del coseno" ;N2 & !N2 7 2N2 # 2 4 ! 4 2 4 ;L- ( 1!HH! )
% !rumentos de entrada"
% # t" %=rtices del trianulo
% !rumentos de salida"
% # anle" nulos en radianes

ndim & 2'

% ;alcula las dimensiones de los lados
a & sqrt ( sum ( ( t(6"ndim,6) # t(6"ndim,2) )*N2 ) )'
) & sqrt ( sum ( ( t(6"ndim,2) # t(6"ndim,() )*N2 ) )'
c & sqrt ( sum ( ( t(6"ndim,() # t(6"ndim,6) )*N2 ) )'

% ;alculo de los nulos, teniendo en cuenta alunos casos especiales
if ( a && 8*8 9 ) && 8*8 9 c && 8*8 )
anle(6"() & 2*8 4 pi E (*8'
return
end

if ( c && 8*8 U a && 8*8 )
anle(6) & pi'
else
anle(6) & arc_cosine ( ( c 4 c 7 a 4 a # ) 4 ) ) E ( 2*8 4 c 4
a ) )'
end

if ( a && 8*8 U ) && 8*8 )
anle(2) & pi'
else
anle(2) & arc_cosine ( ( a 4 a 7 ) 4 ) # c 4 c ) E ( 2*8 4 a 4
) ) )'
end

if ( ) && 8*8 U c && 8*8 )
anle(() & pi'
else
anle(() & arc_cosine ( ( ) 4 ) 7 c 4 c # a 4 a ) E ( 2*8 4 ) 4
c ) )'
end
triangleMareaM'd
function area & trianle_area_2d ( t )
%% Funcin que calcula el area de un trianulo en 2I
% !rumentos de entrada"
% # t" %=rtices del trianulo
% !rumentos de salida"
% # area" area del trianulo

area & 8*5 4 a)s (t(6,6) 4 ( t(2,2) # t(2,() )7 t(6,2) 4 ( t(2,() #
t(2,6) )7 t(6,() 4 ( t(2,6) # t(2,2) ) )'
>CD
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
;. ((*"GRA>GA
RAguerre.ere et al4 ,//DT Aguerre.ere ?tegui1 CeciliaU Ca)de7ourat $ongres1 GermnU
Del.racio !entancor1 2auricioU 2ateu Graside1 2at+as4 =Proyecto 15uarB
:econocimiento de Caras>. Documentaci8n de Proyecto de Grado de ngenier+a
(lctrica1 "ni'ersidad de 2onte'ideoU ,//D4
RA7onen et al4 ,//DT A7onen1 TimoU A.denour FadidU PietiHtinen1 2atti4 =/ace
8escription #ith <ocal @inary Patterns 1pplication to /ace :eco5nition>.
,//D4
RArmengot ,//DT Armengot .orra1 2arcelo J4: =1nBlisis comparativo de mtodos
basados en subespacios aplicados al reconocimiento de caras>. "ni'ersidad de
ValenciaU ,//D4
R!artlett et al4 ,//DT !artlett1 24S4U 2o'ellan1 J4R4U Se5noSsHi1 T4J44 =/ace :eco5nition
by 6ndependent Component 1nalysis>. ((( Trans4 on #eural #etSorHs1 Vol4
>-1 #o4 D1 ))4 >BC/I>BDBU ,//D4
R!ergasa ,//ET !ergasa Pascual1 $uis 2iguel4 =Iodelos flexibles en visin
computacional>. De)artamento de (lectr8nica1 "ni'ersidad de AlcalU ,//E4
R!rand et al4 ,///T !rand1 J4U 2ason1 J4 S4 ;1 comparative assessment of three
approaches to pixelHlevel human sGinHdetection>4 >C
t7
nternational Con*erence
on Pattern RecognitionU ))4 >/CDI>/C0 Vol4>U ,///4
R!ronstein et al4 ,//BT !ronstein1 A4U !ronstein1 24U [immel1 R4U S)ira1 A4 =78 face
reco5nition #ithout facial surface reconstruction<4 Proceedings o* (CCVU ,//B4
RCa.ello ,//BT Ca.ello Pardos1 (nri6ue4 =Tcnicas de reconocimiento facial mediante
redes neuronales>. Tesis doctoral1 "ni'ersidad Politcnica de 2adridU ,//B4
Rde 2iguel ,//CT Dar+o de 2iguel !enito4 ;8eteccin automBtica del color de la piel
en imB5enes bidimensionales basado en el anBlisis de re5iones>. Proyecto %in
de Carrera de ngenier+a Tcnica en n*ormtica de Sistemas1 "ni'ersidad Rey
Juan CarlosU ,//C4
R(temad et al4 >00ET (temad1 [4U C7ella))a1 R4 =8iscriminant 1nalysis for :eco5nition
of *uman /ace 6ma5es>U Journal o* t7e ?)tical Society o* America A1 Vol4 >B1
#o4 G1 ))4 >E,BI>E--U >00E4
R%lores ,//GT $uis Al.erto %lores Armenta4 ;Red neuronal artificial>4 nstituto
Tecnol8gico de #ogales1 Krea de ng4 (n Sistemas Com)utacionalesU ,//G4
R%lorez et al4 ,//GT Ra6uel %lorez $8)ezU Jos 2iguel %ernandez %ernandez4 =<as
:edes Neuronales 1rtificiales. /undamentos Tericos y 1plicaciones
PrBcticas>. ,//G
>CE
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
RGuo et al4 ,///T Guo1 G4U $i1 S4M4U C7an1 [4U =/ace :eco5nition by 2upport -ector
Iachines>U Proc4 o* t7e ((( nternational Con*erence on Automatic %ace and
Gesture Recognition1 ))4 >0DI,/>U ,///4
RFsu et al4 ,//>T ReinI$ien FsuU 2o7amed A.delI2ottale.U Anil [4 JainU ;%ace
8etection in Color 6ma5es>U 2S"ICS(I/>IEU ,//>4
R[o'ac et al4 ,//-T Jure [o'acU Peter PeerU %ranc SolinaU ;*uman 2Gin Colour
Clusterin5 for /ace 8etection>. %aculty o* Com)uter and n*ormation Science1
"ni'ersity o* $5u.l5anaU ,//-4
R[uc7i et al4 ,//,T Prem [uc7iU Prasad Ga..urU P4 Su..anna !7atU Suman Da'id4
;Fuman /ace 8etection and TracGin5 usin5 2Gin5 Color Iodelin5 and
Connected Component &perators>4 (T( Journal o* researc71 Vol4 BG1 ))4 ,G0I
,0-U ,//,4
R$ee et al4 ,//,T $ee1 J4 A4 and Aoo1 S4 4 ;1n ellliptical boundary model for sGin color
detection>4 Proceedings o* t7e nternational Con*erence on magin Science1
System and Tec7nologyU ,//,4
R$iu et al4 ,///T $iu1 C4U hec7sler1 F4 =,volutionary Pursuit and 6ts 1pplication to
/ace :eco5nition<4 ((( Trans4 on Pattern Analysis and 2ac7ine ntelligence1
Vol4 ,,1 #o4 D1 ))4 CE/ICG,U ,///
R#e*ian et al4 >00GT #e*ian1 A4V4U 24F4 Fayes 4 =*idden IarGov Iodels for /ace
:eco5nition>. Proc4 o* t7e ((( nternational Con*erence on Acoustics1 S)eec71
and Signal Processing1 CASSPX0G1))4 ,E,>I,E,BU >00G
RPerez et al4 ,//-T C4 PrezU 24 A4 VicenteU C4 %ernndezU ?4 ReinosoU A4 GilU
;1plicacin de los diferentes espacios de color para deteccin y se5uimiento de
caras>. De)artamento de ngenier+a de Sistemas ndustriales de la "ni'ersidad
2iguel Fernndez de (lc7e NAlicanteP4
RStan et al4 ,//BT Stan M4 $i1 Anil [4 Jain4 =*andbooG of /ace :ecco5nition>U ,//B
RTerrillon et al4 ,///T Terrillon1 J4 IC4U S7irazi1 24 #4U %uHamac7i1 F4U AHamatsu1 S4
;Comparative performance of different sGin chrominance models and
chrominance spaces for the automatic detection of human faces in color
ima5es>. Automatic %ace and Gesture Recognition1 Proceedings %ourt7 (((
nternational Con*erenceU ))4 CBID>U ,///4
RTurH et al4 >00>T TurH1 24U Pentland A44 =,i5enfaces for :eco5nition>. Journal o*
Cogniti'e #eurosicence1 Vol4 -1 #o4 >1 ))4 E>IGDU >00>4
RVez7ne'ets et al4 ,//CT Vladimir Vez7ne'etsU Vassili Sazono'U Alla Andree'a4 ;1
2urvey on PixelH@ased 2Gin Color 8etection Techni0ues>4 2ac7ine Gra)7ics u
Vision nternational Journal1 ))4 D>IE/ Vol4 >BU ,//C4
>CG
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
RSe.>T =8eteccin de caras y anBlisis de expresiones faciales>4
7tt):YYalo5amientos4us4esYgtocomaY)idY)id>/Ydeteccioncaras47tmvsToc-,-//0/>
RVisitado el /GY>/Y/ET
RSe.,T SSS4SiHi)edia4org
RVisitado el ,/Y/>Y/0T
RSe.-T =Tratamiento di5ital de imB5enes>4
7tt):YYSSS4inno'anet4com4arYgisYT($(D(T(YT($(D(T(Ytradiimg47tm
RVisitado el ,GY>>Y/GT
RSe.BT =8escription of the Collection of /acial 6ma5es>4 Com)uter Vision Science
Researc7 Pro5ects4
7tt):YYcsSSS4esse:4ac4uHYm'Yall*acesYinde:47tml
RVisitado el >BY/EY/GT
RSe.CT ;-isin 1rtificial>. De)artamento de (lectr8nica1 Automtica e n*ormtica
ndustrial de la "ni'ersidad Politcnica de 2adrid4
7tt):YYSSS4elai4u)m4esYs)ainYAsignaturasYRo.oticaYA)untesVAY
ca)BProcesado'>
RVisitado el ,GY>>Y/GT
RSe.DT ;6mB5enes en Iatlab>. Anlisis de Seales y Sistemas de la "ni'ersidad
Tcnologica #acional1 %acultad Regional !uenos Aires4
7tt):YYSSS4electron4*r.a4utn4edu4arYmateriasY0CI/BCBYarc7i'osY
matla.stra.a5osconsimagenes4)d*
RVisitado el >,Y/>Y/0T
RSe.ET ;Tcnicas de Procesado de 6ma5en>. De)artamento de (lectr8nica y Sistemas
de la "ni'ersidade de n*ormtica da Corua4
7tt):YYSSS4des4udc4esYwadrianaYTercerCicloYCursomagenYcursoY
Se.Yndice47tml
RVisitado el ,GY>>Y/GT
RSe.GT $aura D+az1 Jessica Feyman1 Gusta' Ryd.ecH4 ;Color @alancin5 The @attle of
the 1l5orithms>. (( -D, Proyecto %inal1 Stan*ord Center *or mage System
(ngineeringU ,//C4
7tt):YYscien4stan*ord4eduYclassY)syc7,,>Y)ro5ectsY/CYladiazYinde:47tml
RVisitado el >-Y>,Y/ET
RSe.0T Cecilia Aguerre.ereU Germn Ca)de7ouratU 2auricio Del.racioU 2at+as 2ateu4
=8eteccin de caras en imB5enes a color>4 Proyecto de Tratamiento de
mgenesU ,//C4
7tt):YYiie4*ing4edu4uyYin'estigacionYgru)osYgtiYtimagYtra.a5osY,//CY
carasYinde:47tm
RVisitado el /GY>/Y/ET
>C0
Diseo y Desarrollo de un Sistema de Reconocimiento de Caras
RSe.>/T 2orales $41 DomingoU Ruiz del Solar1 Ja'ier4 =2istemas @iomtricos matchin5
de huellas dactilares mediante transformada de *ou5h 5enerali.ada>.
7tt):YYSSS,4ing4)uc4clYwiingYedB,0Ysistemass.iometricos47tm
RVisitado el /0Y/>Y/0T
RSe.>>T Julin Dorado4 =Iodelos bBsicos de :edes de Neuronas 1rtificiales>4
De)artamento de Tecnolog+as de la n*ormaci8n y las Comunicaciones4
"ni'ersidade da Corua4
7tt):YYsa.ia4tic4udc4esYneurocienciaYTemasYTema>>o)timiz4)d*
RVisitado el >EY>>Y/GT
RhisHott et al >00ET hisHott1 $4U %ellous1 J4I24U [rueuger1 #4U 'on der 2als.urg1 C4
=/ace :eco5nition by ,lastic @unch +raph Iatchin5>. ((( Trans4 on Pattern
Analysis and 2ac7ine ntelligence1 Vol4 >01 #o4 E1))4 EEDIEE0U >00E
RMarit et al4 >000T Marit1 !4 D4U Su)er1 !4 J4 and 9ueH1 %4 [4 F4 ;Comparison of five
color models in sGin pixel classification>. Recognition1 Analysis and TracHing o*
*aces and gestures in RealITime systems1 ))4 CGID-U >0004
>D/

Anda mungkin juga menyukai