Sistema de reconeixement facial

De Viquipèdia
Dreceres ràpides: navegació, cerca
Sistema de reconeixement a Suïssa
Vista lateral
Vista completa

El sistema de reconeixement facial és una aplicació dirigida per ordinador per tal d'identificar automàticament una persona en una imatge digital. Això és possible mitjançant unas anàlisi dels trets facials característics del subjecte extrets de la imatge o bé d'un fotograma clau d'una font de vídeo i comparant-los amb una base de dades.

Introducció[modifica | modifica el codi]

El reconeixement facial s'ha convertit en els últims anys en una àrea de recerca activa que abasta diverses disciplines, com ara processament d'imatges, reconeixement de patrons, visió per ordinador i xarxes neuronals. Involucra tant a investigadors de l'àrea d'informàtica com a neurocientífics i psicòlegs. Es podria considerar també dins el camp de reconeixement d'objectes, on la cara és un objecte tridimensional subjecte a les variacions d'il·luminació, la pose, etc., i ha de ser identificat basat en la seva projecció 2D (excepte quan s'utilitzen tècniques 3D).

L'objectiu d'un sistema de reconeixement facial és, generalment, el següent: donada una imatge d'una cara "desconeguda", o imatge de test, trobar una imatge de la mateixa cara en un conjunt d'imatges "conegudes", o imatges d'entrenament. La gran dificultat afegida és la d'aconseguir que aquest procés es pugui realitzar en temps real. El sistemal identificarà les cares presents a imatges o videos automàticament. Pot operar en 2 modes:

  • Verificació o autentificació de cares: compara una imatge de la cara amb una altra imatge amb la cara de la que volem saber la identitat. El sistema confirmarà o rebutjarà la identitat de la cara.
  • Identificació o reconeixement de cares: compara la imatge d'una cara desconeguda amb totes les imatges de cares conegudes que es troben a la base de dades per determinar la seva identitat.

Per la seva naturalessa amigable, aquest tipus de sistemes segueixen essent atractius malgrat l'existència d'altres mètodes molt fiables d'identificació personal biomètrics, com ara l'anàlisi d'empremtes dactilars i l'escàner d'iris.

Usos[modifica | modifica el codi]

Àrees Aplicacions específiques
Biometria Llicència de Conduir, Programes de Dret, Immigració, DNI, Passaports, Registre de Votants, Frau
Seguretat de la informació Inici de Sessió, Seguretat a Aplicacions, Seguretat a Bases de Dades, Encriptament d'Informació, Seguretat a Intranet, Accés a Internet, Registres Mèdics, Terminals de Comerç Segur, Caixers Automàtics
Compliment de la llei i vigilància Videovigilància Avançada, Control CCTV, Control Portal, Anàlisi Post-event, Furt, Seguiment de Sospitosos, Investigació
Targetes intel·ligents Valor Emmagatzemat, Autenticació d'usuaris
Control d'accés Accés a Instal·lacions, Accés a Vehicles

Usos Actuals[modifica | modifica el codi]

S’utilitza principalment en sistemes de seguretat pel reconeixement dels usuaris. En aquests sistemes s’utilitza un lector que defineix els trets característics del rostre i, quan aquest sol·licita l’accés, es verifica comparant les dades obtingudes amb la base de dades. Ara bé, aquests sistemes no són útils a llarg termini ja que, a mesura que passen els anys, els trets facials varien i al sol·licitar l’accés ja no coincideixen amb la mateixa base de dades. Per solucionar aquest problema és possible utilitzar un algorisme que interpreti el pas dels anys (tot i així no és del tot fiable), o bé renovar freqüentment la base de dades.

També s'utilitzen en aplicacions d'interacció persona-ordinador, i en gestió multimèdia, i a software com Google's Picasa, Apple iPhoto, Sony's Picture Motion Browser (PMB), Facebook i Asus Smart Logon.

Possibles usos futurs[modifica | modifica el codi]

Una aplicació de reconeixement facial futura es basa en establir aquesta tècnica a un nivell d’usuari. Per exemple, en un supermercat o un establiment petit es podria dur un control sobre qui obra la caixa mitjançant un reconeixement facial previ, d’aquesta manera també es poden evitar intents de robatori ja que al no reconèixer el rostre la caixa romandria tancada. Un cas més extrem seria en els caixers automàtics on, per poder operar, fos necessari un reconeixement facial en comptes del actual PIN.

Funcionament[modifica | modifica el codi]

El processat consta de quatre mòduls principals:

Face Recognition System Workflow
  1. Detecció de la cara: detecta que hi ha una cara a una imatge, sense identificar-la. Si es tracta d'un video, també podem fer un seguiment de la cara. Proporciona la localització i l'escala a la que trobem la cara.
  2. Alineació de la cara: localitza les components de la cara i, mitjançant transformacions geomètriques, la normalitza respecte propietats geomètriques, com la mida i la pose, i fotomètriques, com la il·luminació. Per normalitzar imatges de cares, es poden seguir diferents regles, com ara la distància entre les pupil·les, la posició del nas, o bé la distància entre les comisures dels llavis. També s'ha de definir la mida de les imatges i la gamma de colors. Normalment, per disminuir la càrrega computacional del sistema, s'acostuma a utilitzar imatges petites en escala de grisos. A vegades també es realitza una equalització de l'histograma.
  3. Extracció de característiques: proporciona informació per distingir entre les cares de diferents persones segons variacions geomètriques o fotomètriques.
  4. Reconeixement: el vector de característiques extret es compara amb els vectors de característiques extrets de les cares a le base de dades. Si troba un amb un porcentatge elevat de semblança, ens dóna la identitat de la cara; si no, ens indica que és una cara desconeguda.

Els resultats obtinguts depenen de les característiques extretes per representar el patró de la cara i dels mètodes de classificació utilitzats per distingir els rostres, però per extreure aquestes característiques efectivament, cal localitzar i normalitzar la cara adequadament.

Tècniques i algorismes[modifica | modifica el codi]

Tècniques Tradicionals[modifica | modifica el codi]

Els mètodes de reconeixement facial tradicional es poden dividir en dos grans grups:

Holístics[modifica | modifica el codi]

Els primers 10 a) Eigenfaces, b) Fisherfaces, i c) Laplacianfaces calculats a partir de imatges de cares de la base de dades de YALE

Reconeixen segons tota la imatge facial. Són mètodes basats en correlació. L'esquema de classificació més simple, on s'utilitzen models de comparació per la tasca de reconeixement, és el template matching. El problema del template matching és que ha de comparar moltes característiques (un píxel és per a ell una característica) i, si tenim en compte que a la base de dades trobem M persones, amb N imatges per persona, ens adonem que aquest mètode no es pot implementar en temps real. Per tant, es treballa amb altres mètodes que decorrelacionen les característiques entre si per tal d'aconseguir reduir l'espai facial a un nombre menor de coeficients, que tinguin un alt poder discriminatori entre les persones. És el que s'anomena subespai facial. Exemples de mètodes que treballen a partir de subespais són l'Anàlisi de Components Principals (PCA - Principal Component Analysis) a partir d'eigenfaces, l'Anàlisi Linear Discriminant (LDA - Linear Discriminant Analysis) o el Discriminant Linear de Fisher (FLD - Fisher Linear Discriminant) a partir de fisherfaces.

La tècnica PCA es considera un de les que proporciona un major rendiment. Funciona projectant les imatges facials sobre un espai de faccions que engloba les variacions significatives entre les imatges facials conegudes. Les faccions significatives s'anomenen eigenfaces, ja que són els eigenvectors, o components principals, del conjunt de cares. La projecció caracteritza la imatge facial d'un individu com la suma dels diferents persos de totes les faccions i, de la mateixa manera, per reconèixer una imatge facial determinada només cal comparar aquests pesos amb aquells dels individus coneguts prèviament. No té en compte la informació de quines imatges pertanyen a un mateix individu. És molt sensible a canvis en les condicions d'il·luminació en diferents imatges d'una mateixa persona.

El mètode LDA permet utilitzar la informació entre membres de la mateixa classe (imatges de la mateixa persona) per desenvolupar un conjunt de vectors de característiques on les variacions entres les diferents cares s'emfatitzen mentre que els canvis deguts a il·luminació, expressió facial i orientació de la cara no. És a dir, maximitza la variància de les mostres entre classes, i la minimitza entre mostres de la mateixa classe.

La tècnica FLD és equivalent al LDA. Els resultats obtinguts amb aquesta són bastant millors que els que podem obtenir amb PCA, sobretot quan les condicions llumíniques varien entre el conjunt d'imatges d'entrenament i de test, i també amb canvis d'expressió facial donant més pes a zones com els ulls, el nas, i les galtes que a la boca, perquè són zones més invariables en les diferents expressions que pot tenir una persona.

Altres mètodes, en comptes d'utilitzar subespais facials, segueixen una classificació per xarxes neuronals i plantilles deformables, com ara EGM - Elastic graph matching.

Locals o geomètrics[modifica | modifica el codi]

Es comparen diferents característiques geomètriques de les cares. Existeixen dues divisions, la basada en els vectors característics extrets del perfil, i la basada en els vectors característics extrets a partir d'una vista frontal. S'utilitzava molt anteriorment però els seus resultats no són òptims.

Tècniques 3D[modifica | modifica el codi]

Últimament també ha sortit la tendència del reconeixement facial tridimensional, on s'utilitzen imatges 3D tant a l'entrenament com al reconeixement. Aquesta tècnica utilitza sensors en 3D per captar informació sobre la forma de la cara. Aquesta informació s’utilitza posteriorment per identificar trets característics del rostre com per exemple la barbeta, el contorn dels ulls, el nas o els pòmuls, i retenir informació espacial, a part de la textura i la profunditat. Un avantatge del reconeixement facial en 3D és que no els hi afecten els canvis d’il·luminació com és el cas d’altres tècniques. A més, un altre punt a favor és que poden reconèixer una cara en diferents angles fins i tot de perfil. El problema és que és difícil obtenir imatges 3D fidedignes a la fase de reconeixement ja que els sensors 3D han d'estar molt ben calibrats i sincronitzats per adquirir la informació correctament. És per això que s'utilitza el mètode d'Anàlisi de Components Principals Parcial (P2CA - Partial Principal Component Analysis), derivat del PCA, on s'utilitzen imatges en 3D en la fase d'entrenament i a la base de dades, però a la fase de test utilitza imatges tant en 2D com en 3D. La tècnica intenta reconstruir models facials en 3D a partir de múltiples imatges de la mateixa persona adquirides mitjançant un sistema multicàmera o a partir d'aparells 3D. Les imatges 3D són imatges de 180º en coordinades cilíndriques. Altres exemples de tècniques 3D són 3-D Morphable Model i 3-D Face Recognition.

Tècniques d’anàlisi de la textura de la pell[modifica | modifica el codi]

Aquesta tendència utilitza els detalls visuals de la pell. Analitza les línies úniques, patrons i detalls evidents com taques i/o cicatrius del rostre del subjecte. Al utilitzar aquest algorisme ens estalviem haver de recórrer tota la base de dades ja que podrem descartar imatges fàcilment. Hi ha estudis que han demostrat que utilitzant aquesta tècnica juntament amb el reconeixement facial, el rendiment pot augmentar fins a un 25 per cent.[1][2]

Reconeixement basat en video[modifica | modifica el codi]

S'han desenvolupat alguns sistemes de reconeixement facial basats en video,[3] per exemple, sales intel·ligents[4] que poden reconèixer a les persones i iniciar automàticament les accions apropiades. Un altre exemple són els sistemes que detecten la fatiga d'un conductor, monitoritzant les expressions de la cara i els moviments del cap. Però en aplicacions de videovigilància, el reconeixement i la identificació facial encara és una tasca difícil degut a:

  • Baixa qualitat de video: normalment la gravació es fa al carrer, amb una il·luminació no adequada i, a més, les persones no són col·laboratives, en el sentit que no ajuden a ser reconegudes. Per solucionar-ho, es poden aplicar tècniques de super-resolució.
  • Imatge petita de la cara: degut a les condicions d'adquisició de la imatge, la mida de la cara sol ser més petit que els que hi ha a la base de dades. Això no només fa que la tasca de reconeixement sigui més difícil, si no que també afecta a l'exactitud del procés de segmentació, així com a la detecció dels punts més importants utilitzats al reconeixement.

Hi ha aplicacions en que dóna bons resultats, com ara en sistemes de control d'accés i en caixers, on el video és adquirit en un ambient relativament controlat i la mida de la cara és acceptable. En aquests casos, el reconeixement basat en video ofereix alguns advantatges respecte al basat en imatges:

  • El video proporciona més informació, ja que tenim més frames per elegir a quin realitzar la classificació.
  • El video proporciona continuïtat temporal, permetent reutilitzar la informació de classificació obtinguda dels frames d'alta qualitat per processar els frames de baixa qualitat.
  • El video permet fer un seguiment de les cares, així els canvis de pose i les expressions facials es poden compensar.

Aspectes tècnics[modifica | modifica el codi]

Debilitats[modifica | modifica el codi]

El sistema de reconeixement facial no és perfecte i a vegades difícil d’implementar en certes condicions. Una de les principals debilitats d'aquest sistema és deguda a l’angle en que es troba el rostre que volem reconèixer. Estudis han confirmat que el reconeixement actua correctament fins a 20º,[2] un cop superat aquest angle comencen a sorgir problemes. És per aquest motiu que s’està investigant en el reconeixement en 3D amb el qual aquest inconvenient desapareixeria. Un altre inconvenient és el mal funcionament en situacions de poca llum, a més, portar el cabell llarg, ulleres de sol o altres objectes que cobreixin part del rostre dificulta molt aquesta tasca. L’algorisme no sempre és capaç de distingir els rostres si l'expressió d'aquest es diferent a l’emmagatzemada en la base de dades.

Per solucionar alguns d'aquests problemes, a part de fer el reconeixement sobre video, també es poden utilitzar tècniques multimodals[5] on, a més de la imatge de la persona, s'incorpora també informació de veu i audio, si aquesta es troba dins del contingut.

Principalment, podem distingir dos problemes que causen una sèria degradació del rendiment a la majoria dels sistemes existents:

Problema d'il·luminació[modifica | modifica el codi]

Els canvis provocats per la il·luminació són normalment més grans que les diferències entre persones, causant als sistemes basats en comparació a equivocar-se al classificar les imatges d'entrada. S'han proposat algunes solucions basades en l'àrea del coneixement, en particular tenin en compte que totes les cares pertanyen a una mateixa classe. Aquestes tècniques estan dividides en 4 tipus:

  • Mètodes heurístics: per exemple, quan utilitzem els subespais d'eigenfaces, descartant els components principals.
  • Mètodes de comparació d'imatges: s'utilitzen representacions apropiades de la imatge i mesures de distància.
  • Mètodes basats en la classe: utilitzen múltiples imatges de la mateixa cara en una pose fixa però sota diferents condicions llumíniques.
  • Mètodes basats en el model: utilitzen models 3D.

Problema del canvi de pose[modifica | modifica el codi]

El rendiment d'un sistema de reconeixement facial també baixa significativament quan hi ha presents canvis en la pose. Hi ha diferents mètodes proposats per solucionar-ho:

  • Mètodes on la base de dades inclou imatges d'una persona en diferents poses.
  • Mètodes híbrids, on hi ha disponibles diferents imatges per persona durant l'entrenament, però només una per persona al reconeixement. És la més utilitzada.
  • Mètodes basats en una única imatge, on no hi ha entrenament. No és gens popular.

Efectivitat[modifica | modifica el codi]

Segons un estudi recent,[6] el reconeixement facial automàtic dóna millors resultats que en els humans, però encara no hi ha una tècnica que proporcioni una solució robusta per tot tipus de situacions i per les diferents aplicacions que ho poden necessitar. Segons la revista 'Science’, utilitzar imatges compostes per diverses fotografies adquirides en diferents angles d’una mateixa persona permet que el rendiment del software arribi fins a un 100% en els millors dels casos. Aquest és el resultat d’estudis de psicòlegs de la Universitat de Glasgow, on s’està tractant el tema i s’ha arribat a la conclusió que aquest nou sistema emula una de les claus de la capacitat humana per reconèixer rostres. Tot i així continua sense poder distingir entre diferents expressions facials.

Privacitat[modifica | modifica el codi]

Tot i que aquesta tecnologia ens aporta grans beneficis es qüestiona moralment la privacitat del subjecte. El que simple vista es considera com un avanç tecnològic es pot convertir en una arma. Depenent del seu ús es pot controlar tota una societat sencera sabent en tot moment on es troba i que està fent hom.

Avaluació[modifica | modifica el codi]

Donada la gran quantitat de teories i tècniques aplicables al reconeixement facial, són necessàries una clara avaluació i una comparativa per aquests algoritmes. Perquè siguin factibles, s'han d'utilitzar grans quantitats d'imatges per una avaluació adequada. També és molt important que la mostra sigui estadísticament el més similar possible a les imatges que sorgeixen a l'aplicació que s'està considerant. La puntuació ha de realitzar-se de manera que reflecti el cost dels errors de reconeixement. Recordem que els resultats depenen molt de l'aplicació que tractem, així que no podem extrapolar els resultats per a altres aplicacions.

Existeixen extenses bases de dades públiques disponibles, així com protocols de test, per provar les aplicacions de reconeixement facial. Un d'ells és el protocol FERET, els objectius del qual són proporcionar un marc d'actuació que modeli una configuració en temps real i reunir una extensa base de dades amb imatges de cares per poder desenvolupar algoritmes i avaluar-los. És el que s'utilitza al FRVT (Face Recognition Vendor Test).

A la següent taula es mostren una sèrie de bases de dades disponibles actualment, on es poden observar el nombre d'elements utilitzats i el temps de reconeixement:

Base de Dades Nº persones Poses Il·luminació Expressions Facials Temps
AR 116 1 4 4 2
BANCA 208 1 ? 1 12
CAS-PEAL 66-1040 21 9-15 6 2
CMU Hyper 54 1 4 1 1-5
CMU PIE 68 13 43 3 1
Equinox IR 91 1 3 3 1
FERET 1199 9-20 2 2 2
Harvard RL 10 1 77-84 1 1
KFDB 1000 7 16 5 1
MIT 15 3 3 1 1
MPI 200 3 3 1 1
ND HID 300+ 1 3 2 10/13
NIST MID 1573 2 1 ? 1
ORL 10 1 ? ? ?
UMIST 20 ? 1 ? 1
U. Texas 284 ? 1 ? 1
U. Oulu 125 1 16 1 1
XM2VTS 295 ? 1 ? 4
Yale 15 1 3 6 1
Yale B 10 9 64 1 1

Millores recents[modifica | modifica el codi]

A mitjans del 2006, en el Face Recognition Grand Challenge (FRGC) es van avaluar els últims algorismes de reconeixement facial. Escàners facials 3-D, imatges de rostres d’alta definició i del iris van ser usades en els testos. Els resultats van indicar que aquest nou algorisme era 10 vegades més acurat que els algorismes anteriors datats del 2002, i 100 vegades més acurats que els del 1995. Aquests algorismes eren tant precisos que eren capaços de reconèixer a dos bessons idèntics.

Una altra millora recent és que les imatges en baixa resolució actualment no són un problema ja que poden ser tractades a partir d'una super-resolució del rostre, conegut com a Face hallucination. Tot i així la instal·lació de càmeres d’alta definició està en procés.

Referències[modifica | modifica el codi]

  1. Bonsor, K. «How Facial Recognition Systems Work». [Consulta: 2008-06-02].
  2. 2,0 2,1 Williams, Mark. «Better Face-Recognition Software». [Consulta: 2008-06-02].
  3. W. Zhao, R. Chellappa, A. Rosenfeld and P.J. Phillips. Face Recognition: A literature survey. Technical Report CART-TR-948. University of Maryland, Aug. 2002.
  4. [enllaç sense format] http://www.canalupc.tv/media/bfquieres-ver-una-sala-inteligente?set_language=es
  5. T. Choudhury, B. Clarkson, T. Jebara and A. Pentland, “Multimodal Person Recognition Using Unsconstrained Audio and Video”, International Conference an Audio- and Video-based Biometric Authentication, pp, 176-181, Washington D.C., 1999.
  6. [enllaç sense format] http://www.neurodifusion.org/noticias/ciencias/57-noticias-ciencias/1108-la-maquina-supera-al-hombre-en-reconocimiento-facial.html

Vegeu també[modifica | modifica el codi]

Bibliografia[modifica | modifica el codi]

  • S.Li, A.Jain, "Handbook of Face Recognition", Springer, 2004
  • Gary Bradski, Adrian Kaehler, "Learning OpenCV", O'Reilly, 2008

Enllaços externs[modifica | modifica el codi]