Come Artefact, ci interessa avere un impatto positivo sulle persone, sull'ambiente e sulla comunità. Per questo motivo ci impegniamo a collaborare con organizzazioni non profit che fanno di questi valori gli elementi fondamentali della loro visione.
Per questo motivo, abbiamo collaborato con Smart Parks, un'azienda olandese che fornisce soluzioni avanzate di sensori per la conservazione della fauna selvatica in via di estinzione e per la gestione efficiente delle aree dei parchi, grazie a una tecnologia all'avanguardia.
In questa serie di post, raccontiamo il nostro percorso di progettazione e realizzazione di un sistema di ML per l'utilizzo dei media delle telecamere dei parchi intelligenti. In particolare, l'obiettivo del progetto è quello di utilizzare un approccio ML per ingerire i dati provenienti dalle trappole per telecamere e quindi fornire approfondimenti, come la presenza di persone o di specifici tipi di animali nelle immagini o nei video catturati dalle telecamere. Queste informazioni vengono poi utilizzate dai ranger del parco per proteggere meglio la fauna selvatica e individuare più rapidamente eventuali pericoli come i bracconieri.
Introduzione
Smart Parks aveva bisogno di un sistema di monitoraggio della fauna selvatica in grado di svolgere i seguenti compiti:
Il nostro principio guida è stato quello di privilegiare la velocità. Per questo motivo, quando abbiamo iniziato, la nostra unica priorità era quella di distribuire un prodotto end-to-end, ma pienamente funzionante, nel più breve tempo possibile.
Questo sarà il primo articolo di molti altri e si concentrerà sul contesto del progetto, sulla visione di alto livello del sistema progettato e sui vantaggi della nostra soluzione basata sul cloud. Nei prossimi articoli approfondiremo come collegare le trappole alla Google Cloud Platform e agli endpoint esterni utilizzando uno strumento chiamato Node-RED e come progettare una semplice applicazione web utilizzando Streamlit per gestire le trappole posizionate nei parchi.
Iniziamo!
Trappole per telecamere
Prima di entrare nel merito, esaminiamo rapidamente cosa sono le trappole con telecamera e come possono essere utilizzate per sostenere la protezione e la conservazione degli animali.
Le trappole con telecamera sono dispositivi dotati di sensori integrati che consentono di scattare immediatamente una foto o un video quando viene rilevata un'attività davanti a loro. Permettono ai guardaparco e ai biologi della fauna selvatica di vedere i nostri simili senza interferire con il loro normale comportamento.
Andare in giro per i parchi a raccogliere informazioni è una tecnica valida, ma è un processo costoso, che richiede molta manodopera e persone. Inoltre, c'è anche il rischio di imbattersi in animali selvatici pericolosi o, peggio ancora, in bracconieri.
Sebbene le diverse tecniche di raccolta dei dati comportino diversi compromessi, le trappole con fotocamera sono una fonte eccellente. Il grande vantaggio delle trappole con fotocamera è che funzionano in modo continuo e silenzioso e possono registrare dati molto accurati senza disturbare il soggetto fotografato. Possono essere utili sia per monitorare di nascosto eventuali attività illecite sia per quantificare il numero di specie diverse in un'area e determinarne il comportamento e i modelli di attività.
Piattaforma cloud di Google
Per l'archiviazione e la gestione dei supporti delle videocamere, abbiamo scelto di utilizzare una soluzione basata sul cloud, in particolare Google Cloud Platform.
Google offre soluzioni di archiviazione come Google Cloud Storage, object storage con edge caching integrato per archiviare dati non strutturati, soluzioni di calcolo come Cloud Functions, Functions as a Service per eseguire codice event-driven e offre anche utili API per l'AI:
Avere tutti questi componenti in un unico ambiente unificato è stata la soluzione ideale per noi e ci ha aiutato a fornire una soluzione funzionante in breve tempo.
Il flusso di lavoro
Prima di tutto i file multimediali vengono caricati in un bucket di Google Cloud Storage; come questo avvenga esattamente verrà discusso nel secondo articolo di questa serie. Il bucket è organizzato in cartelle, una per ogni trappola della telecamera. Una volta caricato un file, viene immediatamente attivata una funzione di Google Cloud che si occupa dei seguenti compiti:

Questa architettura offre molteplici vantaggi:
API Cloud Vision e Cloud Video Intelligence
L'utilizzo del Machine Learning, in particolare della Computer Vision, per l'identificazione automatica di persone e animali in immagini o video ha registrato progressi significativi negli ultimi anni e oggi è ampiamente considerato un "game-changer" dai ricercatori della fauna selvatica. Concentriamoci sulle API utilizzate.
Vision API e Video Intelligence API offrono potenti modelli di apprendimento automatico pre-addestrati tramite API REST e RPC. La prima è pensata per lavorare con le immagini, mentre la seconda, come suggerisce il nome, con i video. Entrambe sono in grado di riconoscere automaticamente un gran numero di oggetti, luoghi e azioni.
Per questo progetto ci siamo concentrati principalmente su queste tre caratteristiche fornite dalle API:
È possibile giocare con l'API Vision caricando la propria immagine qui.

Il sentiero davanti a noi
Il viaggio compiuto finora è una base per il viaggio emozionante e di grande impatto che ci attende. Con gli strumenti di base a disposizione nel prossimo futuro, saremo in grado di creare molto valore non solo per gli Smart Park, ma anche per la conservazione della fauna selvatica e non solo!
I prossimi passi riguarderanno queste ampie aree di lavoro:
In questo primo articolo abbiamo discusso di come abbiamo costruito la nostra pipeline scalabile completamente automatizzata in Google Cloud, che ci permette di ingerire i media e di utilizzare le API di Machine Learning per estrarre informazioni da essi. Si tratta di una base solida, facile e veloce da implementare per qualsiasi tipo di progetto che preveda il consumo di media e l'uso dell'apprendimento automatico per estrarne gli insight.
Vi ringraziamo per la lettura e vi diamo appuntamento ai prossimi articoli della serie in cui spiegheremo più dettagliatamente come l'architettura presentata sia effettivamente collegata alle trappole per telecamere e in cui esamineremo la web app progettata per gestirle, quindi rimanete sintonizzati!
Un ringraziamento speciale a Maël Deschamps per il suo aiuto nella revisione del contenuto di questo post e a Tim van Dam di Smart Parks per il suo supporto durante il progetto. Siete fantastici!