Tuvastage ohustatud liikide populatsiooni dispersioon Amazon Rekognition PlatoBlockchain Data Intelligence abil. Vertikaalne otsing. Ai.

Tuvastage ohustatud liikide populatsiooni dispersioon Amazon Rekognitioni abil

Meie planeet seisab silmitsi ülemaailmse väljasuremiskriisiga. ÜRO aruanne näitab vapustavat arvu enam kui miljonit liiki, keda kardetakse väljasuremise teel. Kõige levinumad väljasuremise põhjused on elupaikade kadu, salaküttimine ja invasiivsed liigid. Mitu eluslooduse kaitse sihtasutused, teadlased, vabatahtlikud ja salaküttimisvastased rangerid on selle kriisi lahendamise nimel väsimatult töötanud. Täpse ja korrapärase teabe omamine ohustatud loomade kohta looduses parandab metsloomade kaitsjate võimet uurida ja kaitsta ohustatud liike. Loodusteadlased ja välitöötajad kasutavad infrapunapäästikutega varustatud kaameraid, nn kaameralõksudja asetage need metsa kõige tõhusamatesse kohtadesse, et jäädvustada metsloomi. Seejärel vaadatakse need pildid käsitsi üle, mis on väga aeganõudev protsess.

Selles postituses demonstreerime lahendust kasutades Amazon Rekognitioni kohandatud sildid koos liikumisanduri kaameralõksudega, et automatiseerida see protsess, et tuvastada suguluses olevad liigid ja uurida neid. Rekognition Custom Labels on täielikult hallatav arvutinägemisteenus, mis võimaldab arendajatel luua kohandatud mudeleid, et klassifitseerida ja tuvastada kujutistel olevaid objekte, mis on nende kasutusjuhtumile spetsiifilised ja ainulaadsed. Me kirjeldame üksikasjalikult, kuidas kaamerapüünistest kogutud piltide põhjal ära tunda ohustatud loomaliike, teha teadmisi nende populatsioonide arvu kohta ja tuvastada inimesi nende ümber. See teave on abiks looduskaitsjatele, kes saavad teha ennetavaid otsuseid nende päästmiseks.

Lahenduse ülevaade

Järgnev diagramm illustreerib lahenduse arhitektuuri.

See lahendus kasutab skaleeritava ja kulutõhusa arhitektuuri rakendamiseks järgmisi AI-teenuseid, serverita tehnoloogiaid ja hallatavaid teenuseid:

  • Amazonase Athena – Serverita interaktiivne päringuteenus, mis muudab andmete analüüsimise Amazon S3-s standardse SQL-i abil lihtsaks
  • Amazon CloudWatch – seire- ja vaatlemisteenus, mis kogub jälgimis- ja tööandmeid logide, mõõdikute ja sündmuste kujul
  • Amazon DynamoDB – Võtmeväärtuste ja dokumentide andmebaas, mis tagab ühekohalise millisekundi jõudluse mis tahes skaalal
  • AWS Lambda – serverita arvutusteenus, mis võimaldab käivitada koodi vastuseks päästikutele, nagu andmete muutused, süsteemi oleku nihked või kasutaja toimingud.
  • Amazon QuickSight – serverita masinõppe (ML) toega äriteabe teenus, mis pakub teadmisi, interaktiivseid armatuurlaudu ja rikkalikku analüüsi.
  • Amazon Rekognitsioon - Kasutab ML-i objektide, inimeste, teksti, stseenide ja tegevuste tuvastamiseks piltidel ja videotes ning mis tahes sobimatu sisu tuvastamiseks
  • Amazon Rekognitioni kohandatud sildid – Kasutab AutoML-i, et aidata koolitada kohandatud mudeleid, et tuvastada piltidel olevad objektid ja stseenid, mis vastavad teie ettevõtte vajadustele
  • Amazon Simple Queue Service (Amazon SQS) – täielikult hallatav sõnumijärjekorra teenus, mis võimaldab lahti siduda ja skaleerida mikroteenuseid, hajutatud süsteeme ja serverita rakendusi
  • Amazon Simple Storage Service (Amazon S3) – Toimib dokumentide objektihoidlana ja võimaldab peenhäälestatud juurdepääsukontrolliga keskhaldust.

Selle lahenduse kõrgetasemelised sammud on järgmised:

  1. Treenige ja koostage kohandatud mudel, kasutades Rekognitioni kohandatud silte, et tuvastada piirkonnas ohustatud liike. Selle postituse jaoks treenime ninasarviku kujutisi.
  2. Liikumisanduri kaameralõksude kaudu jäädvustatud pildid laaditakse üles S3 ämbrisse, mis avaldab iga üleslaaditud pildi kohta sündmuse.
  3. Lambda funktsioon käivitub iga avaldatud sündmuse puhul, mis hangib pildi S3 ämbrist ja edastab selle ohustatud looma tuvastamiseks kohandatud mudelile.
  4. Lambda funktsioon kasutab pildil olevate loomade tuvastamiseks Amazon Rekognition API-t.
  5. Kui pildil on mõni ohustatud ninasarvikuliik, värskendab funktsioon DynamoDB andmebaasi loomade arvu, pildistamise kuupäeva ja muude kasulike metaandmetega, mida saab pildilt eraldada. EXIF päises.
  6. QuickSighti kasutatakse DynamoDB andmebaasis kogutud loomade arvu ja asukoha andmete visualiseerimiseks, et mõista loomapopulatsiooni varieeruvust ajas. Regulaarselt armatuurlaudu vaadates saavad kaitserühmad tuvastada mustreid ja eraldada tõenäolised põhjused, nagu haigused, kliima või salaküttimine, mis võivad seda erinevust põhjustada, ning võtta ennetavaid meetmeid probleemi lahendamiseks.

Eeldused

Rekognitioni kohandatud siltide abil tõhusa mudeli loomiseks on vaja head koolituskomplekti. Oleme kasutanud AWS Marketplace'i pilte (Shutterstocki loomade ja metsloomade andmekogum) Ja Kaagutama mudeli ehitamiseks.

Rakenda lahendus

Meie töövoog sisaldab järgmisi samme:

  1. Treenige kohandatud mudelit ohustatud liikide (meie näites ninasarviku) klassifitseerimiseks, kasutades Rekognitioni kohandatud siltide AutoML-i võimalust.

Neid samme saate teha ka Rekognitioni kohandatud siltide konsoolist. Juhiste saamiseks vaadake Projekti loomine, Koolitus- ja testiandmekogumite loomineja Amazon Rekognitioni kohandatud siltide mudeli koolitamine.

Selles näites kasutame Kaggle'i andmestikku. Järgmises tabelis on andmestiku sisu kokkuvõte.

silt Treeningukomplekt Testikomplekt
Lõvi 625 156
Kõlisev münt 608 152
Aafrika_elevant 368 92
  1. Laadige kaamera lõksudest jäädvustatud pildid üles selleks ette nähtud S3 ämbrisse.
  2. Määratlege sündmuse märguanded Õigused S3 ämbri sektsioonis, et saata märguanne määratletud SQS-i järjekorda, kui objekt lisatakse ämbrisse.

Määrake sündmuse märguanne

Üleslaadimistoiming käivitab sündmuse, mis on Amazon SQS-is Amazon S3 sündmuse teatise abil järjekorda pandud.

  1. Lisage SQS-i järjekorra juurdepääsupoliitika kaudu sobivad load, et lubada S3-salgal saata järjekorda teatist.

ML-9942-sündmus-mitte

  1. Seadistage SQS-i järjekorra jaoks Lambda-päästik, nii et Lambda-funktsioon käivitatakse uue sõnumi vastuvõtmisel.

Lambda päästik

  1. Muutke juurdepääsupoliitikat, et võimaldada funktsioonil Lambda juurdepääs SQS-i järjekorda.

Lambda funktsiooni juurdepääsupoliitika

Lambda funktsioonil peaks nüüd olema SQS-i järjekorrale juurdepääsuks õiged õigused.

Lambda funktsiooni load

  1. Seadistage keskkonnamuutujad, et neile oleks koodis juurdepääs.

Keskkonnamuutujad

Lambda funktsiooni kood

Lambda funktsioon täidab SNS-i järjekorrast teatise saamisel järgmisi toiminguid:

  1. Tehke API-kutse Amazon Rekognitionile, et tuvastada kohandatud mudelist ohustatud liike tuvastavad sildid.
exports.handler = async (event) => {
const id = AWS.util.uuid.v4();
const bucket = event.Records[0].s3.bucket.name;
const photo = decodeURIComponent(event.Records[0].s3.object.key.replace(/+/g, ' '));
const client = new AWS.Rekognition({ region: REGION });
const paramsCustomLabel = {
Image: {
S3Object: {
Bucket: bucket,
Name: photo
},
},
ProjectVersionArn: REK_CUSTOMMODEL,
MinConfidence: MIN_CONFIDENCE
}
let response = await client.detectCustomLabels(paramsCustomLabel).promise();
console.log("Rekognition customLabels response = ",response);

  1. Tooge pildilt EXIF-sildid, et saada pildi tegemise kuupäev ja muud asjakohased EXIF-andmed. Järgmine kood kasutab sõltuvusi (pakett – versioon) exif-reader – ^1.0.3, Sharp – ^0.30.7:
const getExifMetaData = async (bucket,key)=>{
return new Promise((resolve) => {
const s3 = new AWS.S3({ region: REGION });
const param = {
Bucket: bucket,
Key : key
};

s3.getObject(param, (error, data) => {
if (error) {
console.log("Error getting S3 file",error);
resolve({status:false,errorText: error.message});
} else {
sharp(data.Body)
.metadata()
.then(({ exif }) => {
const exifProperties = exifReader(exif);
resolve({status:true,exifProp: exifProperties});
}).catch(err => {console.log("Error Processing Exif ");resolve({status:false});})
}
});
});
}

var gpsData = "";
var createDate = "";
const imageS3 = await getExifMetaData(bucket, photo);
if(imageS3.status){
gpsData = imageS3.exifProp.gps;
createDate = imageS3.exifProp.image.CreateDate;
}else{
createDate = event.Records[0].eventTime;
console.log("No exif found in image, setting createDate as the date of event", createDate);
}

Siin kirjeldatud lahendus on asünkroonne; pildid jäädvustatakse kaamera lõksudega ja laaditakse hiljem töötlemiseks S3 ämbrisse. Kui kaameralõksu pilte laaditakse sagedamini üles, saate laiendada lahendust, et tuvastada jälgitaval alal inimesi ja saata asjassepuutuvatele aktivistidele teateid, et anda teada võimalikust salaküttimisest nende ohustatud loomade läheduses. Seda rakendatakse funktsiooni Lambda kaudu, mis kutsub välja Amazon Rekognition API, et tuvastada sildid inimese olemasolu kohta. Kui tuvastatakse inimene, logitakse CloudWatchi logidesse veateade. Vealogi filtreeritud mõõdik käivitab CloudWatchi häire, mis saadab e-kirja looduskaitseaktivistidele, kes saavad seejärel edasi tegutseda.

  1. Laiendage lahendust järgmise koodiga:
const paramHumanLabel = {
Image: {
S3Object: {
Bucket: bucket,
Name: photo
},
},
MinConfidence: MIN_CONFIDENCE
}

let humanLabel = await client.detectLabels(paramHumanLabel).promise();
let humanFound = humanLabel.Labels.filter(obj => obj.Name === HUMAN);
var humanDetected = false;
if(humanFound.length > 0){
console.error("Human Face Detected");
humanDetected = true;
}

  1. Kui tuvastatakse mõni ohustatud liik, värskendab Lambda funktsioon DynamoDB loendi, kuupäeva ja muude valikuliste metaandmetega, mis saadakse pildi EXIF-märgenditelt:
let dbresponse = await dynamo.putItem({
Item: {
id: { S: id },
type: { S: response.CustomLabels[0].Name },
image: {S : photo},
createDate: {S: createDate.toString()},
confidence: {S: response.CustomLabels[0].Confidence.toString()},
gps: {S: gpsData.toString()},
humanDetected: {BOOL: humanDetected}
},

TableName: ANIMAL_TABLENAME,
}).promise();

Küsige ja visualiseerige andmeid

Nüüd saate andmete visualiseerimiseks kasutada Athenat ja QuickSighti.

  1. Määrake DynamoDB tabel Athena andmeallikaks.DynamoDB andmeallikas
  1. Lisage andmeallika üksikasjad.

Järgmine oluline samm on andmeallikaga ühenduse loova lambda funktsiooni määratlemine.

  1. Valis Loo lambda funktsioon.

Lambda funktsioon

  1. Sisestage nimed Athena katalooginimi ja SpillBucket; ülejäänud võivad olla vaikeseaded.
  2. Rakendage konnektori funktsioon.

Lambda pistik

Kui kõik kujutised on töödeldud, saate kasutada QuickSighti, et visualiseerida Athenast pärit populatsiooni dispersiooni andmeid aja jooksul.

  1. Valige Athena konsoolil andmeallikas ja sisestage üksikasjad.
  2. Vali Loo lambda funktsioon et pakkuda DynamoDB-le konnektorit.

Loo lambda funktsioon

  1. Valige QuickSighti armatuurlaual Uus analüüs ja Uus andmekogum.
  2. Valige andmeallikaks Athena.

Athena andmeallikana

  1. Sisestage ühenduse loomiseks ja valimiseks kataloog, andmebaas ja tabel valima.

Kataloog

  1. Andmestiku loomine lõpule.

Kataloog

Järgmine diagramm näitab konkreetsel päeval püütud ohustatud liikide arvu.

QuickSighti diagramm

GPS-andmed esitatakse jäädvustatud pildi EXIF-märgendite osana. Nende ohustatud loomade asukoha tundlikkuse tõttu ei olnud meie andmekogumil GPS-i asukohta. Siiski koostasime simuleeritud andmete abil georuumilise diagrammi, mis näitab, kuidas saate asukohti visualiseerida, kui GPS-andmed on saadaval.

Georuumiline diagramm

Koristage

Ootamatute kulude vältimiseks lülitage kindlasti välja AWS-teenused, mida kasutasite selle tutvustuse osana – S3 ämbrid, DynamoDB tabel, QuickSight, Athena ja koolitatud Rekognitioni kohandatud siltide mudel. Kui te neid enam ei vaja, peaksite need ressursid otse vastavate teeninduskonsoolide kaudu kustutama. Viitama Amazon Rekognitioni kohandatud siltide mudeli kustutamine mudeli kustutamise kohta lisateabe saamiseks.

Järeldus

Selles postituses tutvustasime automatiseeritud süsteemi, mis tuvastab ohustatud liigid, registreerib nende populatsiooni arvu ja annab ülevaate populatsiooni varieerumisest aja jooksul. Samuti saate lahendust laiendada, et hoiatada ametiasutusi, kui nende ohustatud liikide läheduses on inimesi (võimalikud salakütid). Amazon Rekognitioni AI/ML võimalustega saame toetada looduskaitserühmade jõupingutusi ohustatud liikide ja nende ökosüsteemide kaitsmisel.

Lisateavet Rekognitioni kohandatud siltide kohta leiate aadressilt Amazon Rekognitioni kohandatud siltidega alustamine ja Sisu modereerimine. Kui olete Rekognitioni kohandatud siltide kasutaja uus, saate kasutada meie tasuta taset, mis kestab 3 kuud ja sisaldab 10 tasuta koolitustundi kuus ja 4 tasuta järeldustundi kuus. Amazon Rekognition Free Tier sisaldab 5,000 pildi töötlemist kuus 12 kuu jooksul.


Autoritest

autor-jyothiJyothi Goudar on AWS-i partnerlahenduste arhitekti juht. Ta teeb tihedat koostööd ülemaailmse süsteemiintegraatori partneriga, et võimaldada ja toetada kliente oma töökoormuse üleviimisel AWS-i.

Tuvastage ohustatud liikide populatsiooni dispersioon Amazon Rekognition PlatoBlockchain Data Intelligence abil. Vertikaalne otsing. Ai.Jay Rao on AWS-i peamine lahenduste arhitekt. Talle meeldib pakkuda klientidele tehnilisi ja strateegilisi juhiseid ning aidata neil AWS-i lahendusi kavandada ja rakendada.

Ajatempel:

Veel alates AWS-i masinõpe