Lees ons artikel over

class="lazyload

.

Bij Artefact vinden we het belangrijk om een positieve bijdrage te leveren aan mensen, het milieu en de samenleving. Daarom werken we graag samen met non-profitorganisaties die deze waarden tot de hoeksteen van hun visie hebben gemaakt.
Daarom zijn we een samenwerking aangegaan met Smart Parks, een Nederlandse organisatie geavanceerde sensoroplossingen levert om bedreigde diersoorten te beschermen en parkgebieden efficiënt te beheren met behulp van de nieuwste technologie.

In deze reeks berichten beschrijven we ons traject bij het ontwerpen en bouwen van een ML-systeem voor het verwerken van de beelden van de cameravallen van Smart Parks. Het doel van het project is met name om met behulp van een ML-aanpak de data de cameravallen te verwerken en vervolgens inzichten te verschaffen, zoals de aanwezigheid van mensen of specifieke diersoorten in de foto's of video's data door de camera's zijn vastgelegd. Deze informatie wordt vervolgens door de parkwachters gebruikt om de wilde dieren beter te beschermen en mogelijke gevaren, zoals stropers, sneller op te sporen.

Inleiding

Smart Parks had behoefte aan een systeem voor het monitoren van wilde dieren dat de volgende taken kon uitvoeren:

  • Breng de media (foto’s en/of video’s) van wildcamera’s op één plek samen
  • Detecteer automatisch de aanwezigheid van mensen en dieren in de beelden

  • Bekijk de voorspellingen in Earth Rangers, een applicatie die wordt gebruikt voor het beheer van de parken en hun wilde dieren

  • Houd de beelden van de cameravallen in de gaten

Ons uitgangspunt was hier dat snelheid voorop stond. Toen we van start gingen, was onze enige prioriteit dan ook om zo snel mogelijk een uitgeklede maar volledig functionele end-to-end-oplossing te implementeren.

Dit wordt het eerste artikel van een reeks en gaat in op de achtergrond van het project, het algemene overzicht van het ontworpen systeem en de voordelen van onze cloud. In de komende artikelen gaan we dieper in op hoe je cameravallen kunt verbinden met hetGoogle Cloud en externe eindpunten met behulp van een tool genaamdNode-RED, en hoe je een eenvoudige webapp kunt ontwerpen metStreamlitom de in de parken geplaatste cameravallen te beheren.

Laten we beginnen!

Cameravallen

Voordat we beginnen, zullen we eerst even kort bespreken wat cameravallen zijn en hoe ze kunnen worden ingezet ter ondersteuning van dierenbescherming en natuurbehoud.

Cameravallen zijn apparaten met ingebouwde sensoren die, zodra er voor het apparaat beweging wordt waargenomen, direct een foto of een video maken. Hierdoor kunnen parkwachters en natuurbiologen onze mededieren observeren zonder hun normale gedrag te verstoren.

Rondlopen in de parken om informatie te verzamelen is een goede methode, maar het is een duur, arbeidsintensief en personeelsintensief proces. Bovendien bestaat het risico dat je gevaarlijke wilde dieren tegenkomt of, erger nog, stropers.

Hoewel verschillende technieken voor het verzamelen data hun eigen voor- en nadelen data , vormen cameravallen een uitstekende bron. Het grote voordeel van cameravallen is dat ze continu en geruisloos werken en zeer nauwkeurige data kunnen vastleggen data het gefotografeerde dier te verstoren. Ze kunnen nuttig zijn om zowel onopgemerkt mogelijke illegale activiteiten in de gaten te houden als om het aantal verschillende soorten in een gebied te tellen en hun gedrag en activiteitspatronen in kaart te brengen.

Google Cloud

Voor de opslag en het beheer van de mediabestanden van de cameravallen hebben we gekozen voor een cloud, meer bepaald het Google Cloud .

services zoalsGoogle Cloud , objectopslag met geïntegreerde edge-caching voor het opslaan van ongestructureerde data, rekenoplossingen zoalsCloud , Functions as a Service voor het uitvoeren van gebeurtenisgestuurde code, en daarnaast services het ook services AI , bijvoorbeeld:

Het feit dat al deze componenten in één geïntegreerde omgeving waren ondergebracht, was voor ons de ideale oplossing en stelde ons in staat om in korte tijd een werkende oplossing te bieden.

De workflow

Allereerst worden de mediabestanden geüpload naar een Google Cloud ; hoe dit precies in zijn werk gaat, komt aan bod in het tweede artikel van deze reeks. De bucket is ingedeeld in mappen, één voor elke cameraval. Zodra een bestand is geüpload, wordt onmiddellijk een Google Cloud geactiveerd; deze functie voert de volgende taken uit:

  • Bekijk de geüploade media
  • Roep de Cloud of de Cloud Intelligence-API aan om de voorspellingen op te halen

  • Sla de API-reacties op in een andere Cloud -opslagbucket

  • Stuur de voorspellingen naar een eindpunt buiten GCP

class="lazyload

Deze architectuur biedt tal van voordelen:

  • Schaalbaarheid: Dankzij het gebruik van Cloud kan de oplossing automatisch schalen op basis van het aantal verzoeken (d.w.z. het aantal mediabestanden dat tegelijkertijd naar de Cloud -bucket wordt geüpload)

  • Voordelige en duurzame opslag: Het opslaan van ongestructureerde data Google Cloud is vrij goedkoop (slechts $ 0,026 per GB per maand voor het Standard-opslagniveau) en services bovendien services duurzaamheid van objecten services over een periode van een jaar

  • Automatisering: Door al deze diensten samen te gebruiken, beschikken we over een volledig geautomatiseerde workflow, waarbij geen menselijke tussenkomst nodig is. Van het data tot het ophalen van voorspellingen: alles verloopt automatisch zodra er nieuwe media wordt geüpload

API’s voor Cloud en Cloud Intelligence

Het gebruik van machine learning, en met name computervisie, om mensen en dieren automatisch te herkennen in afbeeldingen of video’s heeft de afgelopen jaren aanzienlijke vooruitgang geboekt en wordt tegenwoordig door onderzoekers op het gebied van wilde dieren algemeen beschouwd als een ‘game-changer’. Laten we ons nu eens nader richten op de gebruikte API’s.

De Vision APIende Video Intelligence APIbieden krachtige, vooraf getrainde machine learning-modellen via REST- en RPC-API’s. De eerste is bedoeld voor het verwerken van afbeeldingen, terwijl de tweede, zoals de naam al aangeeft, bedoeld is voor video’s. Beide zijn in staat om automatisch een groot aantal objecten, plaatsen en handelingen te herkennen.

Voor dit project hebben we ons vooral gericht op deze drie functies die door de API’s worden geboden:

  • Detectie van objecten: Om een beeld te krijgen van de objecten (bijv. dieren, mensen, voertuigen) die in de beelden aanwezig zijn. Op basis daarvan zouden regels kunnen worden opgesteld die een alarm activeren wanneer een specifieke reeks objecten wordt gedetecteerd

  • Objectdetectie/tracking: Om een nauwkeuriger beeld te krijgen van de locatie van de gedetecteerde dieren/personen in de media. In tegenstelling tot bij labelherkenning krijgen we hier ook de kaderannotaties van de detecties

  • Gezichts-/persoonsherkenning: om meer informatie te verkrijgen over de herkende personen, bijvoorbeeld om hun emoties te interpreteren of hun kleding te identificeren. Deze aanvullende informatie kan vervolgens worden gebruikt om stropers van gewone mensen te onderscheiden

Je kunt met de Vision API aan de slag doorhier gewoon je afbeelding te uploaden.

class="lazyload

Het pad dat voor ons ligt

De weg die we tot nu toe hebben afgelegd, vormt de basis voor de spannende en impactvolle reis die nog voor ons ligt. Zodra de basisinstrumenten in de nabije toekomst beschikbaar zijn, zullen we veel waarde kunnen creëren, niet alleen voor Smart Parks, maar ook voor het behoud van wilde dieren en nog veel meer!

De volgende stappen zullen betrekking hebben op de volgende brede werkterreinen:

  • Experimenteren met modellen: Tot nu toe hebben we alleen geëxperimenteerd met API’s of vooraf getrainde modellen, maar in de toekomst zou het interessant zijn om een dataset samen te stellen van foto’s en video’s die door de cameravallen zijn verzameld. Deze dataset kan handmatig of met behulp van het zojuist gepresenteerde systeem worden gelabeld, waarna hij kan worden gebruikt om aangepaste computervisiesystemen te trainen om zo een betere nauwkeurigheid te bereiken

  • Implementatie van gebruiksscenario’s: Doordat we al over een volledig geautomatiseerde oplossing beschikken, kunnen we ons meer richten op de ontwikkeling van gerichte gebruiksscenario’s. We kunnen ons dan echt bezighouden met de vraag hoe we de verzamelde informatie kunnen benutten om daadwerkelijk verschil te maken en de parkwachters en alle vrijwilligers te helpen bij het beschermen van de wilde dieren in de parken

  • Edge AI: Op dit moment is de uitvoersnelheid van onze voorspellingslus voldoende voor onze toepassing (enkele minuten). Er is nog ruimte voor verbetering om dichter bij een realtime-oplossing te komen. Edge AI, waarbij een model dichter bij de daadwerkelijke cameravalhardware wordt geïmplementeerd en uitgevoerd, is een optie die zou helpen om heen-en-terugverkeer naar de cloud te vermijden

In dit eerste artikel hebben we besproken hoe we onze volledig geautomatiseerde, schaalbare pijplijn in Google Cloud hebben opgezet, waardoor we media kunnen importeren en met behulp van Machine Learning-API’s daaruit inzichten kunnen halen. Dit biedt een solide, eenvoudige en snel te implementeren basis voor elk soort project waarbij media worden verwerkt en machine learning wordt gebruikt om daaruit inzichten te halen.

Bedankt voor het lezen en tot ziens in de volgende artikelen van deze reeks, waarin we nader zullen toelichten hoe de gepresenteerde architectuur daadwerkelijk is gekoppeld aan de cameravallen, en waarin we de webapp zullen bespreken die is ontworpen om deze te beheren. Blijf ons dus volgen!

Speciale dank aan Maël Deschamps voor zijn hulp bij het nalezen van de inhoud van dit bericht, en aan Tim van Dam van Smart Parks voor zijn steun tijdens het project. Jullie zijn geweldig!

class="lazyload

Medium-blog van Artefact.

Dit artikel is oorspronkelijk gepubliceerd op Medium.com.
Volg ons op onze Medium-blog!