Il riconoscimento facciale a portata di click

Il riconoscimento facciale a portata di click

Uno dei temi caldi in ambito tech, anche sui Social Media, è sicuramente l’Intelligenza Artificiale.
L’Intelligenza Artificiale e tutti i servizi annessi e messi a disposizione dai più grandi provider quali Amazon, Google etc.

Vogliamo su questo tema non solo fare chiarezza, ma mostrare come alcune funzionalità che siamo abituati ad associare ai film di fantascienza possano essere concrete e facili da implementare.
Infatti bastano pochi click.

Iniziamo dalle basi

I servizi sui quali abbiamo basato questo laboratorio sono pochi e tutti appartenenti ad AWS:

  • AWS S3, come Object Storage per il nostro frontend
  • AWS Lambda, per la processazione delle immagini
  • AWS Rekognition, per il servizio di riconoscimento facciale.

Tutto quello che viene mostrato in questo articolo rientra nell’AWS Free Tier, è quindi possibile effettuare una prova gratuita con i termini e le condizioni che trovate sul sito AWS a questo link.

Identity and Access Management

Iniziamo col creare uno IAM Role che servirà per la funzione Lambda che andremo a creare subito dopo:

iamrole1

Selezioniamo AWS Lambda e assegniamogli un nome senza selezionare alcuna Managed Policy, che andremo a creare di seguito cliccando sulla sezione Inline Policy una volta creato il ruolo.

iamrole2

Associamo quindi una Inline Policy che abbia la seguenti permissions:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"rekognition:*"
],
"Resource": "*"
}
]
}

Creiamo quindi una funzione Lambda selezionando “Blank Function” e non associandogli alcun trigger successivamente:

lambda1

Inseriamo il codice che trovate in questo repository per assegnargli poi lo IAM Role appena creato:

lambda2

Ora creiamo un’utenza IAM alla quale faremo generare un Access Key e un Secret Access Key, con associata una policy con le seguenti permissions:

{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"lambda:InvokeFunction"
],
"Effect": "Allow",
"Resource": "arn:aws:lambda:::function:"
}
]
}

Abbiamo quasi finito…

Creare un bucket S3 configurato per lo “Static Web Hosting” con all’interno il codice sorgente presente nel repository GitHub e modificare il file app.js con le credenziali dell’utenza IAM appena creata e con la Region nella quale si vuole provare l’esperimento (fate attenzione che Rekognition sia disponibile).

Associate un URL al vostro bucket S3 oppure utilizzate quello fornitovi da AWS e il gioco sarà fatto:

facial

Qualche precisazione

Questo articolo ha uno scopo esclusivamente divulgativo, le policy sopra documentate non rispecchiano il modello di “Least Privilege” che si dovrebbe adottare quando soluzioni di questo tipo vengono rese disponibili in ambienti di Produzione. Le chiavi dell’utenza IAM creata saranno rese disponibili quando il contenuto dell’applicazione  viene pubblicato su Internet. Abbiamo voluto guidarvi in un primo approccio a questa tecnologia che bisogna affinare, al fine di rendere sicure le soluzioni sviluppate, evitando l’utilizzo di chiavi ove non necessario tanto meno in assenza di cifrature o altri meccanismi di messa in sicurezza di informazioni sensibili.

That’s all folks

Le funzionalità di Rekognition sono molteplici ed ampie, ed è possibile in pochi minuti configurare un software di riconoscimento facciale che permette di focalizzarsi maggiormente su cosa l’applicazione deve fare piuttosto che come farlo. Soluzioni di questo tipo, oltre che per fotografie, possono essere utilizzate con dei video per un real-time analytics con diverse finalità e scopi

1n72qc

Vuoi avere maggiori informazioni o sapere come queste tecnologie possono aiutare il tuo Business? Contattaci






Ho letto e acconsento al trattamento dei dati personali