Dalla metà degli anni 60, quando si cominciò a lavorare sull’uso del computer per riconoscere i volti umani, il software di riconoscimento facciale ha fatto molta strada. I risultati, tuttavia, non sono ancora ottimali: molte le criticità legate alla sicurezza, alla privacy e ai risvolti etici dell’utilizzo di questi sistemi.
Vediamo insieme come le tecnologie moderne hanno rivoluzionato il funzionamento del riconoscimento facciale, pur non giungendo ancora ai risultati che possiamo vedere in molte serie Tv.
Dalla fiction alla realtà: i limiti del riconoscimento facciale
Chiunque abbia visto la serie televisiva americana “Las Vegas”, ad esempio, ha potuto notare la presenza di un software di riconoscimento facciale in azione. In un episodio qualsiasi di una delle cinque stagioni della serie, il dipartimento di sicurezza del fittizio “Montecito Hotel and Casino” utilizza il suo sistema di videosorveglianza che, tramite un software di Intelligenza Artificiale, riesce a “estrarre” l’immagine di una qualsiasi persona, che sia un croupier, un cliente abituale o un potenziale ladro presente in una “blacklist”. L’immagine estratta passa successivamente attraverso un database in modo da essere rilevata in una qualche corrispondenza, ovvero si proceda direttamente a identificare la persona in oggetto. Entro la fine dell’ora, tutti i “cattivi” vengono scortati fuori dal casinò o sbattuti in prigione.
Ma ciò che sembra così facile sul piccolo o grande schermo, non sempre si traduce specularmente nel mondo reale.
Nel lontano 2001, il Dipartimento di Polizia di Tampa, Florida (USA) installò dispositivi di videosorveglianza dotati di tecnologia di riconoscimento facciale nel quartiere di Ybor City, nel tentativo di ridurre la dilagante criminalità della zona. Un sistema avente finalità condivisibili che, tuttavia, non riuscì a fare il suo “lavoro”, finendo per essere smantellato nel 2003 a causa della sua inefficacia. Basti pensare che alcuni individui del posto, indossando semplicemente delle maschere e facendo gesti osceni, hanno impedito alle telecamere di ottenere un’inquadratura sufficientemente chiara per identificarli.
Anche l’aeroporto Logan di Boston eseguì due test separati sui sistemi di riconoscimento facciale presso i suoi punti di controllo di sicurezza, con l’aiuto di alcuni volontari. In un periodo di tre mesi i risultati furono deludenti. Secondo l’Electronic Privacy Information Center, il sistema aveva un tasso di precisione di appena 61,4%, portando i funzionari aeroportuali a scegliere altre misure di sicurezza.
Riconoscimento facciale: l’esempio di Identix
Tra le tecnologie di riconoscimento facciale spicca “FaceIt”, software dell’americana Identix che confronta “l’impronta” del volto con altre immagini presenti in un certo database. FaceIt è in grado di riconoscere il volto di una persona in mezzo alla folla, estrarre il medesimo volto dal resto della “scena” e confrontarlo con un database di immagini preventivamente memorizzate nel sistema. Sarà un concetto pleonastico, ma affinché questo software funzioni lo stesso deve saper distinguere un volto dall’ambiente circostante. I software di riconoscimento facciale si basano sulla capacità di riconoscere un volto e di misurarne i vari tratti (es. i punti nodali). Ogni volto umano ha circa 80 punti nodali, e alcuni tra questi sono presi in considerazione dal software, come:
- Distanza tra gli occhi
- Larghezza del naso
- Profondità delle cavità oculari
- La forma degli zigomi
- La lunghezza della linea della mascella
Questi punti nodali vengono misurati creando un codice numerico, chiamato “Faceprint”, che rappresenta la riproduzione del volto umano da parte del software. In passato, i software di riconoscimento facciale si basavano sull’acquisizione di immagini 2D (bidimensionali), con il confronto o l’identificazione di un’altra immagine 2D dal database. Per risultare efficace e precisa, l’immagine catturata doveva essere quella di un volto che guardasse quasi direttamente la “macchina fotografica”, in presenza di poche variazioni di luce o poche espressioni facciali. E questo creava un bel problema. Nella maggior parte dei casi le immagini non venivano scattate in un ambiente controllato: anche i più piccoli cambiamenti di luce o di orientamento potevano ridurre l’efficacia del sistema, così da non poter essere abbinati a nessun volto nel database, e a un alto tasso di insuccesso.
Dal 2D al 3D
Il mondo del riconoscimento facciale si sviluppa sempre di più attorno a software di riconoscimento facciale che utilizzano modelli 3D, i quali pretendono di fornire una maggiore precisione nell’identificazione delle persone “target”. Catturando un’immagine 3D, in tempo reale, del viso di una persona, il riconoscimento facciale 3D utilizza i tratti distintivi del volto per identificare un soggetto, principalmente dove il tessuto rigido e le ossa sono più evidenti, come le curve dell’orbita oculare, del naso e del mento. Queste aree sono tutte uniche e non cambiano nel tempo. Utilizzando la profondità e misurazioni non influenzate dall’illuminazione, il riconoscimento facciale 3D può essere utilizzato anche al buio e ha la capacità di riconoscere un soggetto da diverse angolazioni (fino a 90 gradi!). Utilizzando un software 3D, il sistema di riconoscimento facciale passa attraverso una serie di passaggi per verificare l’identità di un individuo. Vediamoli insieme.
- Rilevamento: l’acquisizione di un’immagine può essere effettuata mediante la scansione digitale di una fotografia esistente (2D) o utilizzando un’immagine “video” per l’acquisizione “live” del volto di un soggetto (3D).
- Allineamento: una volta individuato un volto, il sistema determina la posizione, la dimensione e la posa della testa. Come affermato in precedenza, con il 3D il soggetto ha la possibilità di essere riconosciuto fino a 90 gradi, mentre con il 2D, la testa dovrebbe essere “girata” di almeno 35 gradi verso l’obiettivo.
- Misurazioni: il sistema misura le “curve” del volto su una scala sub-millimetrica, creandone un modello.
- Rappresentazione: il sistema traduce il modello in un codice unico. Questa codifica dà a ogni modello un insieme di numeri per rappresentare le caratteristiche del volto di un soggetto.
- Corrispondenza: se l’immagine è in 3D e il database contiene immagini 3D, allora la corrispondenza avverrà senza che vengano apportate modifiche all’immagine. Tuttavia, c’è una sfida che attualmente si trovano ad affrontare i database che sono ancora in 2D. Il 3D guarda a un soggetto “variabile, vivo e in movimento” che viene confrontato con un’immagine “piatta e stabile”. Le nuove tecnologie stanno affrontando questa sfida. Quando viene scattata un’immagine 3D, vengono identificati diversi punti (di solito tre). Per esempio, l’esterno dell’occhio, l’interno dell’occhio e la punta del naso, i quali vengono estratti e misurati. Una volta che queste misurazioni sono state effettuate, viene applicato un algoritmo – mediante una procedura passo-passo – all’immagine per convertirla in “formato” 2D. Dopo la conversione, il software confronterà l’immagine ottenuta con le altre immagini 2D presenti nel database, al fine di trovare una potenziale corrispondenza.
- Verifica o identificazione: nella verifica, un’immagine viene abbinata a un’altra singola immagine presente nel database (rapporto 1:1). Ad esempio, la fotografia del volto di un soggetto può essere abbinata a un’immagine presente nel database della Motorizzazione Civile per verificare che il soggetto sia chi dice di essere. Se l’obiettivo è l’identificazione del soggetto, l’immagine verrà confrontata con tutte le immagini presenti del database, ottenendo un punteggio per ogni potenziale match (rapporto 1:N). In questo caso si può prendere un’immagine e confrontarla con un database di foto segnaletiche per identificare chi sia il soggetto in questione.
Riconoscimento facciale biometrico
La Surface Texture Analysis, “algoritmo di analisi della struttura della superficie” (STA), opera sulla percentuale superiore dei risultati determinati dall’analisi delle caratteristiche locali. La STA crea una “skinprint” (fotografia di un lembo di pelle) ed esegue una corrispondenza 1:1 o 1:N a seconda che si voglia verificare o identificare chi sia una persona. Non è sempre possibile verificare o identificare chi sia una persona mediante riconoscimento facciale. Riprendendo l’esempio di Facelt by Identix, un suo applicativo utilizza la biometria della pelle e l’unicità della texture della pelle per ottenere risultati ancora più precisi. Il processo STA funziona più o meno allo stesso modo del riconoscimento facciale. Viene scattata un’immagine di un lembo di pelle (come anticipato, skinprint). Tale lembo viene successivamente suddiviso in blocchi più piccoli. Utilizzando degli algoritmi per trasformare il lembo in uno spazio matematico e misurabile, il sistema distinguerà le linee, i pori e la reale consistenza della pelle. Il sistema in oggetto è in grado di identificare le differenze tra due gemelli identici, cosa che non è ancora possibile con il solo software di riconoscimento facciale. Secondo Identix, combinando il riconoscimento facciale con l’analisi della texture superficiale, l’accuratezza dell’identificazione può aumentare del 20-25%.
Attualmente FaceIt utilizza tre diversi modelli per confermare o identificare il soggetto: vettoriale, analisi delle caratteristiche locali e analisi della texture superficiale.
- Il modello vettoriale è molto piccolo e viene utilizzato per la ricerca rapida su tutto il database, principalmente per la ricerca one-to-many.
- Il modello Local Feature Analysis (LFA), di analisi delle caratteristiche locali, esegue una ricerca secondaria delle corrispondenze ordinate seguendo il modello vettoriale.
L’analisi delle strutture di superficie (STA) è la più grande delle tre. Essa esegue un passaggio finale dopo la ricerca del modello LFA – basandosi sulle caratteristiche della pelle nell’immagine – che contiene le informazioni più dettagliate. Combinando tutti e tre i template, FaceIt ha un vantaggio rispetto ad altri sistemi. È relativamente insensibile ai cambiamenti di espressione (tra cui ammiccare, accigliarsi o sorridere), e ha la capacità di compensare la crescita dei baffi e barba nonché l’aspetto del viso in presenza di occhiali. Il sistema è anche uniforme e non discriminatorio per quanto riguarda l’etnia e l’appartenenza sessuale.
Tuttavia una scarsa illuminazione può rendere più difficile la verifica o l’identificazione di qualcuno da parte del software di riconoscimento facciale. Infatti, non siamo in presenza di un sistema perfetto. Ci sono alcuni fattori che potrebbero ostacolare il riconoscimento, tra quali spiccano:
- Un abbagliamento significativo sugli occhiali o l’uso di occhiali da sole
- Capelli lunghi che oscurano la parte centrale del viso
- Scarsa illuminazione che causerebbe un’esposizione eccessiva o insufficiente del viso
- Mancanza di risoluzione (es. l’immagine è stata scattata da una distanza significativa)
Identix non è l’unica azienda con sistemi di riconoscimento facciale disponibili. Mentre la maggior parte funziona allo stesso modo di FaceIt, vi sono alcune varianti. Ad esempio, un’azienda chiamata Animetrix Inc. ha un prodotto chiamato FACEngine ID SetLight che può correggere le condizioni di illuminazione che normalmente non permettono l’utilizzo del riconoscimento facciale, riducendo il rischio di falsi positivi o negativi. Sensible Vision, Inc., invece, ha sviluppato un prodotto in grado di proteggere un computer utilizzando il riconoscimento facciale. Il computer si accende e rimane accessibile solo finché l’utente autorizzato all’accesso si trova davanti allo schermo. Una volta che l’utente si sposta dalla linea “monitorata” dal sistema, il computer viene automaticamente protetto dagli altri utenti (es. tramite disconnessione immediata). Grazie a questi progressi tecnologici, i sistemi di riconoscimento facciale e cutaneo sono più utilizzati rispetto a pochi anni fa. Nella prossima sezione vedremo dove e come vengono utilizzati e cosa ci riserva il futuro.
Chi usa il riconoscimento facciale
In passato, i principali utilizzatori dei software di riconoscimento facciale erano le forze dell’ordine, che impiegavano tali risorse tecnologiche per catturare sospettati e pregiudicati in mezzo alla folla. Alcune agenzie governative hanno anche utilizzato tali sistemi – oltre che per la sicurezza – anche per eliminare il rischio di brogli elettorali. Il governo degli Stati Uniti ha recentemente avviato un programma chiamato US-VISIT (United States Visitor and Immigrant Status Indicator Technology), destinato ai viaggiatori stranieri che entrano negli Stati Uniti. Quando un viaggiatore straniero riceve il visto, conferisce le sue impronte digitali e si fa fotografare. Le impronte digitali e la fotografia vengono confrontate con un database di noti criminali e sospetti terroristi. Quando il viaggiatore arriva negli Stati Uniti, le stesse impronte digitali e fotografie vengono utilizzate per verificare che la persona che ha ricevuto il visto sia la stessa persona che cerca di entrare nuovamente nel paese.
Tuttavia, vi sono ora molte altre situazioni in cui il software di riconoscimento facciale sta diventando “popolare”, man mano che i sistemi diventano meno costosi e ne rendono più diffuso l’utilizzo (ad esempio presso banche e aeroporti). La TSA sta attualmente lavorando e testando il suo programma chiamato “Registered Traveler”. Il programma fornirà un rapido controllo di sicurezza per i passeggeri che forniscono volontariamente informazioni e completerà una valutazione delle minacce alla sicurezza nazionale. All’aeroporto vi saranno linee guida specifiche per il “Viaggiatore Registrato”, il quale si muoverà più rapidamente una volta verificata la sua identità in base ai suoi contorni facciali.
Altre potenziali applicazioni includono la sicurezza dei bancomat (ATM) e la sicurezza degli assegni. Il software è in grado di verificare rapidamente il volto di un cliente. Dopo il consenso all’utilizzo del sistema biometrico da parte del cliente, l’ATM cattura un’immagine “digitale” del cliente. Il software presente nella macchina genera un’impronta del volto per proteggere i clienti da furti di identità e transazioni fraudolente. Utilizzando il software di riconoscimento facciale, non vi è più bisogno di documenti d’identità, carte bancarie o altro al fine di verificare l’identità del cliente. In questo modo le aziende possono prevenire le frodi.
Mentre tutti gli esempi di cui sopra funzionano con il consenso dell’individuo, non tutti i sistemi vengono utilizzati in tal modo. Alcuni sono utilizzati senza consenso e senza troppa… trasparenza. Nella prima parte dell’articolo è stato scritto che i sistemi sono stati utilizzati durante il Super Bowl dalla polizia di Tampa e nel quartiere di Ybor City. Questi sistemi fotografavano tutti i visitatori a loro insaputa e senza il loro permesso. Secondo alcuni “oppositori” di tale tecnologia, siamo in presenza di un’estesa violazione della privacy dei cittadini. Inoltre il rischio di un possibile furto di identità è sempre dietro l’angolo. Anche le società che sviluppano software di riconoscimento facciale ammettono che più la tecnologia viene utilizzata, più alta è la probabilità di furto d’identità o di frode (es. truffe). Come per molte tecnologie in via di sviluppo, l’incredibile potenziale del riconoscimento facciale presenta alcuni svantaggi, ma i produttori stanno cercando di migliorarne l’usabilità e la precisione dei sistemi.[1]
Sicurezza
Il mercato del riconoscimento facciale è capeggiato da una crescente attività di lotta alla criminalità e al terrorismo. I vantaggi dei sistemi di riconoscimento facciale per le forze di polizia sono evidenti: individuazione e prevenzione del crimine. Il riconoscimento facciale viene utilizzato per il rilascio di documenti di identità e, più spesso, combinato con altre tecnologie biometriche come le impronte digitali. Il riconoscimento facciale è utilizzato ai controlli di frontiera per confrontare se l’identità del viaggiatore sia la stessa di quella del titolare del passaporto biometrico.
La biometria alla base del riconoscimento facciale può essere utilizzata nei controlli effettuati dalle forze di polizia, anche se il suo utilizzo è rigorosamente controllato in Europa. Nel 2016, “l’uomo col cappello” responsabile degli attacchi terroristici di Bruxelles è stato identificato grazie al software di riconoscimento facciale dell’FBI. Negli Stati Uniti, 26 Stati (ma probabilmente di più, sulla trentina) consentono alle forze dell’ordine di effettuare ricerche nei loro database, in particolare patenti di guida e foto identificative. L’FBI ha accesso alle foto delle patenti di guida emesse in 18 Stati USA.
I droni combinati con le telecamere aeree offrono un’interessante combinazione per il riconoscimento facciale applicato ad esempio a grandi aree durante eventi di massa. Secondo il Keesing Journal of Documents and Identity del giugno 2018, alcuni droni possono trasportare una fotocamera ad alta risoluzione pesante ben 10 chili in grado di identificare un sospetto a 800 metri di distanza e da un’altezza di 100 metri. Poiché il drone può essere collegato a terra tramite un cavo di alimentazione, lo stesso drone ha un’alimentazione pressoché illimitata. Inoltre la comunicazione con il controllo a terra non può essere intercettata in quanto sviluppata via cavo.
Il deep learning nel settore sanitario
In questo settore sono stati compiuti progressi significativi. Grazie al Deep Learning e all’analisi dei volti, è già possibile effettuare quanto meno i seguenti punti:
- tracciare più accuratamente l’uso dei farmaci da parte del paziente
- individuare malattie genetiche come la sindrome di DiGeorge con una percentuale di successo del 96,6%
- sostenere le procedure di gestione del dolore
- analizzare il viso in maniera dettagliata per finalità di cura
Marketing e vendita al dettaglio
Quest’area è certamente quella in cui l’uso del riconoscimento facciale era meno atteso. Eppure, molto probabilmente, è il settore che “promette di più”. Questa importante tendenza si combina con i più recenti progressi del marketing nell’esperienza del cliente. Posizionando telecamere nei punti vendita al dettaglio, è ora possibile analizzare il comportamento degli acquirenti e migliorare il processo di acquisto dei clienti. In che modo esattamente? Come il sistema recentemente progettato da Facebook, al personale di vendita vengono fornite informazioni sui clienti tratte dai loro profili dei social media per produrre risposte “sapientemente” personalizzate. Il grande magazzino americano Saks Fifth Avenue sta già utilizzando un sistema di questo tipo. Secondo quanto riferito, i negozi Amazon GO hanno già proceduto all’implementazione di un sistema simile. Dal 2017, KFC, il re americano del pollo fritto, e il gigante cinese della vendita al dettaglio e della tecnologia Alibaba stanno testando una soluzione di pagamento con riconoscimento facciale a Hangzhou, in Cina.
Hackeraggio dei sistemi di riconoscimento facciale
Al termine di questa veloce disamina è possibile porci un’ulteriore – curiosa – domanda: è possibile “ingannare dolosamente” un sistema di riconoscimento facciale? La risposta, positiva, la decliniamo di seguito con alcuni esempi pratici.
- In Russia, Grigory Bakunov ha inventato una soluzione per sfuggire ai dispositivi di riconoscimento facciale che osservano costantemente i nostri movimenti. Bakunov ha sviluppato un algoritmo che crea un trucco tecnologico al fine di ingannare il software. Tuttavia, ha scelto di non portare il suo prodotto sul mercato dopo essersi reso conto di quanto facilmente i criminali potrebbero usarlo.
- In Germania, l’artista berlinese Adam Harvey ha ideato un dispositivo simile, noto come CV Dazzle. Ora sta lavorando a dei capi di abbigliamento con dei modelli per evitare di essere scoperto. Il mimetismo iper-facciale include modelli in tessuto, come occhi e bocche, per ingannare il sistema di riconoscimento del volto.
- Alla fine del 2017, una società vietnamita ha usato con successo una maschera per hackerare la funzione di riconoscimento facciale di Face ID dell’iPhone X di Apple. Tuttavia, l’hack è troppo complicato da implementare per uno sfruttamento su larga scala.
- Più o meno nello stesso periodo, i ricercatori di un’azienda tedesca hanno rivelato un hack che ha permesso loro di bypassare l’autenticazione facciale di Windows 10 Hello stampando un’immagine del volto a infrarossi.
- Forbes ha annunciato in un articolo del maggio 2018 che i ricercatori dell’Università di Toronto hanno sviluppato un algoritmo per interrompere il software di riconoscimento facciale (cosiddetto “privacy filter”). In breve, un utente potrebbe applicare un filtro che modifica specifici pixel di un’immagine prima di metterla sul web. Queste modifiche sono impercettibili per l’occhio umano, ma sono molto confuse per gli algoritmi di riconoscimento facciale.
L’industria sta lavorando su meccanismi anti-spoofing, e due argomenti sono stati specificamente identificati da gruppi di standardizzazione:
- Assicurarsi che l’immagine catturata sia stata fatta da una persona e non da una fotografia (2D), uno schermo video (2D) o una maschera (3D), (controllo della lividezza o rilevazione della lividezza)
- Assicurarsi che le immagini del viso (ritratti morfologici) di due o più persone non siano state inserite in un documento di identità, come il passaporto.
_____________________________________________________________________________
- How Facial Recognition Systems Work. HowStuffWorks. https://electronics.howstuffworks.com/gadgets/high-tech-gadgets/facial-recognition.htm ↑