Riconoscimento facciale: cos’è e come funziona, tra limiti e pregiudizi
I sistemi di riconoscimento possono identificare il vostro viso tramite telecamere di sorveglianza CCTV a livello stradale? Questa identificazione può portare al vostro arresto per un mandato in sospeso? Quali sono le probabilità che l’identificazione non sia corretta e vi colleghi a qualcun altro? Si può eludere completamente la sorveglianza usando qualche trucco?
D’altro canto, è possibile entrare in un caveau protetto da una telecamera e da un software di identificazione facciale tenendo in mano una stampa del viso di una persona autorizzata? E indossando una maschera 3D del viso di una persona autorizzata?
Benvenuti nel mondo del riconoscimento facciale e delle tecniche per aggirarlo.
Cos’è il riconoscimento facciale?
Il riconoscimento facciale è un metodo per identificare una persona sconosciuta o autenticare l’identità di una persona specifica dal suo viso. È un settore della visione artificiale, altamente specializzato e accompagnato da un bagaglio sociale per alcune applicazioni, oltre ad alcune vulnerabilità allo spoofing.
Come funziona il riconoscimento facciale?
I primi algoritmi di riconoscimento facciale, ancora oggi in uso in forma migliorata e più automatizzata, si basano sulla biometria per trasformare le caratteristiche facciali (per esempio la distanza tra gli occhi) misurate da un’immagine bidimensionale in un insieme di numeri che descrive il viso, definito caratteristica vettore o modello. Il processo di riconoscimento confronta quindi questi vettori con un database di volti noti che sono stati mappati nello stesso modo sulla base delle stesse caratteristiche. Una complicazione in questo processo basato sulla geometria dei volti è una normalizzazione dei parametri per tenere conto della rotazione e dell’inclinazione della testa prima di estrarre le metriche.
Un altro approccio di tipo fotometrico consiste nel normalizzare e comprimere le immagini facciali 2D e confrontarle con un database di immagini analogamente normalizzate e compresse.
Il riconoscimento facciale tridimensionale utilizza sensori 3D per catturare l’immagine del viso, o ricostruisce l’immagine 3D da tre telecamere di tracciamento 2D puntate con diverse angolazioni. Il riconoscimento facciale 3D può essere notevolmente più accurato del riconoscimento 2D.
L’analisi della struttura della pelle mappa le linee e le macchie sul viso di una persona su un altro vettore di caratteristiche. L’aggiunta dell’analisi della texture della pelle al riconoscimento facciale 2D o 3D può migliorare la precisione del riconoscimento dal 20 al 25 percento, specialmente nei casi di sosia e gemelli. E’ possibile combinare tutti i metodi e aggiungere immagini multispettrali (luce visibile e infrarossi) per una precisione ancora maggiore.
I primi strumenti di riconoscimento facciale sono stati sviluppati nel 1964. Da allora sono migliorati anno dopo anno e, in media, il tasso di errore si è ridotto della metà ogni due anni.
I test sugli strumenti di riconoscimento facciale
Il National Institute of Standards and Technology (NIST) a partire dal 2000 esegue test sugli algoritmi di riconoscimento facciale, il Face Recognition Vendor Test (FRVT). I set di dati utilizzati sono per lo più foto segnaletiche delle forze dell’ordine, ma includono anche foto provenienti da Wikimedia e immagini a bassa risoluzione da webcam.
Gli algoritmi FRVT sono per lo più inviati dai fornitori per una valutazione dei loro strumenti. I confronti anno su anno mostrano importanti miglioramenti in termini di prestazioni e accuratezza, dovuti principalmente all’uso di reti neurali convoluzionali nello sviluppo degli algoritmi.
I relativi programmi di test di riconoscimento facciale del NIST hanno studiato gli effetti demografici, il rilevamento del morphing del viso, l’identificazione dei volti pubblicati sui social media e l’identificazione dei volti nei video. Una precedente serie di test, che andava sotto il nome di Face Recognition Technology (FERET), è stata condotta negli anni ’90.
Applicazioni dei riconoscimento facciale
Le applicazioni di riconoscimento facciale rientrano principalmente in tre categorie: sicurezza, salute e marketing/retail. La sicurezza include le attività delle forze dell’ordine e include operazioni come l’abbinamento delle persone alle foto del passaporto, che può eseguito in modo più veloce accurato di quanto possano fare gli umani. Altre applicazioni per la sicurezza, non relative alle forze dell’ordine, sono lo sblocco facciale per telefoni cellulari e il controllo degli accessi per laboratori e caveau.
Le applicazioni sanitarie del riconoscimento facciale includono check-in dei pazienti, rilevamento delle emozioni in tempo reale, monitoraggio dei pazienti all’interno di una struttura, valutazione dei livelli di dolore, rilevamento di determinate malattie e condizioni, identificazione del personale e sicurezza della struttura.
Le applicazioni di marketing e retail del riconoscimento facciale includono l’identificazione dei membri di un programma fedeltà, l’identificazione e il monitoraggio di taccheggiatori noti e il riconoscimento delle persone e delle loro emozioni per suggerimenti mirati sui prodotti.
Controversie, pregiudizi e divieti sul riconoscimento facciale
Dire che alcune di queste applicazioni sono “controverse” è un eufemismo. Come sottolinea un articolo del New York Times del 2019, il riconoscimento facciale sollevato delle questioni di pregiudizi e razzismo.
Per esempio, il riconoscimento facciale è stato utilizzato al Super Bowl del 2001: il software ha identificato 19 persone ritenute oggetto di mandati in sospeso, sebbene nessuna sia stata arrestata.
Successivamente sono emersi problemi di razzismo, a partire dal software di tracciamento del viso del 2009 che poteva tracciare i bianchi ma non i neri, e continuando con uno studio del MIT del 2015 che mostrava che il software di riconoscimento facciale dell’epoca funzionava molto meglio sui volti maschili bianchi rispetto a volti femminili e di pelle scura.
Questo tipo di problemi ha portato a divieti definitivi del software di riconoscimento facciale in luoghi specifici o per usi specifici. Nel 2019, San Francisco è diventata la prima grande città americana a impedire alla polizia e ad altre forze dell’ordine di utilizzare software di riconoscimento facciale. Microsoft ha richiesto regolamenti nazionali sul riconoscimento facciale. Il MIT ha mostrato che Amazon Rekognition aveva più problemi a determinare il genere femminile rispetto a quello maschile dalle immagini del viso.
Nel giugno 2020 Microsoft ha annunciato che non ha venduto e non venderà il suo software di riconoscimento facciale alla polizia. Amazon ha vietato alla polizia di usare Rekognition per un anno e IBM ha abbandonato la sua tecnologia di riconoscimento facciale. Vietare completamente il riconoscimento facciale non sarà facile, tuttavia, data la sua ampia adozione su iPhone (Face ID) e altri dispositivi, software e tecnologie.
Non tutti i software di riconoscimento facciale soffrono degli stessi pregiudizi. Lo studio sugli effetti demografici del NIST del 2019 ha dato seguito al lavoro del MIT e ha mostrato che il bias demografico algoritmico varia ampiamente tra gli sviluppatori di software di riconoscimento facciale. Sì, ci sono effetti demografici sul tasso di falsa corrispondenza degli algoritmi di identificazione facciale, ma variano di diversi ordini di grandezza da fornitore a fornitore e sono diminuiti nel tempo.
Le tecniche di spoofing per eludere il riconoscimento facciale
Data la potenziale minaccia alla privacy derivante dal riconoscimento facciale e l’attrazione di ottenere l’accesso a risorse di alto valore protette dall’autenticazione facciale, sono stati compiuti molti sforzi per hackerare o falsificare la tecnologia. Per superare l’autenticazione è possibile utilizzare un’immagine stampata di un volto invece di un volto dal vivo, o un’immagine su uno schermo, o una maschera stampata in 3D. Per la sorveglianza CCTV, è possibile riprodurre un video registrato. Per evitare la sorveglianza, è possibile usare tecniche come la “Computer Vision Dazzle” (CV Dazzle), che consiste nell’aggirare un sistema attraverso camuffamenti con abiti e trucco, e/o gli emettitori di luce infrarossa, per ingannare il software in modo che non rilevi il viso.
Naturalmente, sono state sviluppate tecniche anti-spoofing per contrastare tutti questi attacchi. Per rilevare le immagini stampate i fornitori utilizzano test di “vitalità”, che includono aspettare che il soggetto sbatta le palpebre, eseguire un’analisi del movimento o utilizzare gli infrarossi per distinguere un volto dal vivo da un’immagine stampata. Un altro approccio consiste nell’eseguire l’analisi delle micro-texture, poiché la pelle umana è otticamente diversa dalle stampe e dai materiali delle maschere. Le ultime tecniche anti-spoofing si basano principalmente su reti neurali convoluzionali profonde.
Questo è un campo in evoluzione. È in corso una guerra alle armi tra aggressori e software anti-spoofing, nonché ricerche accademiche sull’efficacia di diverse tecniche di attacco e difesa.
I vendor di strumenti di riconoscimento facciale
Secondo la Electronic Frontier Foundation (EFF) il principale fornitore di strumenti di riconoscimento facciale e altre tecnologie di identificazione biometrica negli Stati Uniti è MorphoTrust, una sussidiaria di Idemia (precedentemente nota come OT-Morpho o Safran). La società ha progettato sistemi per le forze dell’ordine e il controllo di frontiere e aeroporti (incluso TSA PreCheck). Altri vendor sono 3M, Cognitec, DataWorks Plus, Dynamic Imaging Systems, FaceFirst e NEC Global.
Il Face Recognition Vendor Test del NIST elenca gli algoritmi di molti altri fornitori di tutto il mondo. Esistono anche diversi algoritmi di riconoscimento facciale open source, di diversa qualità, e alcuni dei principali provider cloud offrono il riconoscimento facciale.
Amazon Rekognition è un servizio di analisi di immagini e video in grado di identificare oggetti, persone, testo, scenari e attività, inclusa l’analisi facciale e le etichette personalizzate. L’API Google Cloud Vision è un servizio pre-addestrato di analisi delle immagini in grado di rilevare oggetti e volti, leggere testo stampato e scritto a mano e creare metadati nel catalogo di immagini dell’utente. Google AutoML Vision consente di addestrare modelli di immagini personalizzati.
L’API Azure Face esegue il rilevamento dei volti e degli attributi in un’immagine, esegue l’identificazione delle persone che corrisponde a un individuo in un repository privato fino a 1 milione di persone ed esegue il riconoscimento delle emozioni percepite. L’API Face può essere eseguita nel cloud o in locale.
In sintesi, il riconoscimento facciale sta migliorando e i fornitori stanno imparando a rilevare la maggior parte dello spoofing. Il tasso di errore per il riconoscimento facciale si dimezza ogni due anni, secondo il NIST. I fornitori hanno migliorato le loro tecniche anti-spoofing, ma alcune applicazioni della tecnologia restano controverse.