Amazon Lookout for Vision er en maskinlæringstjeneste (ML), der opdager defekter og anomalier i visuelle repræsentationer ved hjælp af computersyn (CV). Med Amazon Lookout for Vision kan produktionsvirksomheder øge kvaliteten og reducere driftsomkostningerne ved hurtigt at identificere forskelle i billeder af objekter i skala.
Mange virksomhedskunder ønsker at identificere manglende komponenter i produkter, skader på køretøjer eller strukturer, uregelmæssigheder i produktionslinjer, minimale defekter i siliciumwafers og andre lignende problemer. Amazon Lookout for Vision bruger ML til at se og forstå billeder fra ethvert kamera, som en person ville, men med en endnu højere grad af nøjagtighed og i meget større skala. Amazon Lookout for Vision eliminerer behovet for kostbar og inkonsekvent manuel inspektion, samtidig med at kvalitetskontrol, fejl- og skadevurdering og overholdelse forbedres. På få minutter kan du begynde at bruge Amazon Lookout for Vision til at automatisere inspektion af billeder og objekter – uden at kræve ML-ekspertise.
I dette indlæg ser vi på, hvordan vi kan automatisere detektering af anomalier i siliciumwafers og underrette operatører i realtid.
Løsningsoversigt
At holde styr på kvaliteten af produkter i en produktionslinje er en udfordrende opgave. Nogle procestrin tager billeder af produktet, som mennesker derefter gennemgår for at sikre god kvalitet. Takket være kunstig intelligens kan du automatisere disse anomalidetektionsopgaver, men menneskelig indgriben kan være nødvendig, efter at der er opdaget uregelmæssigheder. En standardtilgang er at sende e-mails, når der opdages problematiske produkter. Disse e-mails kan blive overset, hvilket kan forårsage et kvalitetstab i en produktionsfabrik.
I dette indlæg automatiserer vi processen med at opdage anomalier i siliciumwafers og underrette operatører i realtid ved hjælp af automatiserede telefonopkald. Følgende diagram illustrerer vores arkitektur. Vi implementerer en statisk hjemmeside vha AWS Amplify, som fungerer som indgangspunktet for vores ansøgning. Når et nyt billede uploades via brugergrænsefladen (1), en AWS Lambda funktionen påberåber sig Amazon Lookout for Vision-modellen (2) og forudsiger, om denne wafer er unormal eller ej. Funktionen gemmer hvert uploadet billede til Amazon Simple Storage Service (Amazon S3) (3). Hvis waferen er unormal, sender funktionen forudsigelsens tillid til Amazon Connect og ringer til en operatør (4), som kan tage yderligere skridt (5).
Opsætning af Amazon Connect og det tilhørende kontaktflow
For at konfigurere Amazon Connect og kontaktflowet skal du udføre følgende trin på højt niveau:
- Opret en Amazon Connect-instans.
- Indstil kontaktflowet.
- Gør krav på dit telefonnummer.
Opret en Amazon Connect-instans
Det første skridt er at oprette en Amazon Connect-instans. For resten af opsætningen bruger vi standardværdierne, men glem ikke at oprette et administratorlogin.
Oprettelse af instanser kan tage et par minutter, hvorefter vi kan logge ind på Amazon Connect-instansen ved hjælp af den admin-konto, vi oprettede.
Opsætning af kontaktflow
I dette indlæg har vi et foruddefineret kontaktflow, som vi kan importere. For mere information om import af et eksisterende kontaktflow, se Import/eksport kontaktstrømme.
- Vælg filen
contact-flow/wafer-anomaly-detection
fra GitHub repo. - Vælg Importere.
Det importerede kontaktflow ligner det følgende skærmbillede.
- Udvid på siden med flowdetaljer Vis yderligere flowoplysninger.
Her kan du finde kontaktflowets ARN.
- Optag kontaktflow-id og kontaktcenter-id, som du skal bruge senere.
Gør krav på dit telefonnummer
Kræver et nummer er nemt og tager kun et par klik. Sørg for at vælge det tidligere importerede kontaktflow, mens du gør krav på nummeret.
Hvis der ikke er nogen tilgængelige numre i det land, du vælger, skal du hæve en supportbillet.
Kontakt flow oversigt
Følgende skærmbillede viser vores kontaktflow.
Kontaktflowet udfører følgende funktioner:
- Aktiver logning
- Indstil output Amazon Polly stemme (til dette indlæg bruger vi Kendra-stemmen)
- Få kundeinput ved hjælp af DTMF (kun nøgle 1 og 2 er gyldige).
- Baseret på brugerens input gør flowet et af følgende:
- Bed om en farvel-besked om, at ingen handling vil blive foretaget, og forlad
- Spørg en farvel-besked om, at en handling vil blive foretaget og afslutte
- Mislykkes og aflever en reserveblok, der angiver, at maskinen vil lukke ned og afslutte
Eventuelt kan du forbedre dit system med en Amazon Lex bot.
Implementer løsningen
Nu hvor du har konfigureret Amazon Connect, implementeret dit kontaktflow og noteret de oplysninger, du har brug for for resten af implementeringen, kan vi implementere de resterende komponenter. I det klonede GitHub-depot skal du redigere build.sh
script og kør det fra kommandolinjen:
Angiv følgende oplysninger:
- Din region
- Det S3-spandnavn, du vil bruge (sørg for, at navnet indeholder ordet
sagemaker
). - Navnet på Amazon Lookout for Vision-projektet, du vil bruge
- ID'et for dit kontaktflow
- Dit Amazon Connect-instans-id
- Det nummer, du har gjort krav på i Amazon Connect i E.164-format (f.eks. +132398765)
- Et navn til AWS CloudFormation stak du opretter ved at køre dette script
Dette script udfører derefter følgende handlinger:
- Lav en S3-spand til dig
- Byg .zip-filerne til din Lambda-funktion
- Upload CloudFormation-skabelonen og Lambda-funktionen til din nye S3-spand
- Opret CloudFormation-stakken
Efter at stakken er implementeret, kan du finde følgende ressourcer oprettet på AWS CloudFormation-konsollen.
Du kan se, at en Amazon SageMaker notesbog kaldet amazon-lookout-vision-create-project
er også oprettet.
Byg, træne og implementer Amazon Lookout for Vision-modellen
I dette afsnit ser vi, hvordan man bygger, træner og implementerer Amazon Lookout for Vision-modellen ved hjælp af open source Python SDK. For mere information om Amazon Lookout for Vision Python SDK, se dette blogindlæg.
Du kan bygge modellen via AWS Management Console. For programmatisk implementering skal du udføre følgende trin:
- På SageMaker-konsollen, på Notebook-forekomster side, få adgang til SageMaker notebook-forekomsten, der blev oprettet tidligere ved at vælge Åbn Jupyter.
I tilfældet kan du finde GitHub repository af Amazon Lookout for Vision Python SDK automatisk klonet.
- Naviger ind i
amazon-lookout-for-vision-python-sdk/example
mappe.
Mappen indeholder et eksempel på en notesbog, der leder dig gennem opbygning, træning og implementering af en model. Før du går i gang, skal du uploade billederne, der skal bruges til at træne modellen ind i din notebook-instans.
- I
example/
mappe, skal du oprette to nye mapper med navngood
,bad
. - Naviger ind i begge mapper og upload dine billeder i overensstemmelse hermed.
Eksempelbilleder er i det downloadede GitHub-lager.
- Når du har uploadet billederne, skal du åbne
lookout_for_vision_example.ipynb
notesbog.
Notesbogen fører dig gennem processen med at skabe din model. Et vigtigt skridt, du bør gøre først, er at give følgende oplysninger:
Du kan ignorere inferensafsnittet, men du er velkommen til også at lege med denne del af notesbogen. Fordi du lige er begyndt, kan du gå model_version
indstillet til "1
".
Til input_bucket
, project_name
, brug S3-spanden og Amazon Lookout for Vision-projektnavnet, der leveres som en del af build.sh
manuskript. Du kan derefter køre hver celle i notesbogen, som med succes implementerer modellen.
Du kan se træningsmålingerne ved hjælp af SDK, men du kan også finde dem på konsollen. For at gøre det skal du åbne dit projekt, navigere til modellerne og vælge den model, du har trænet. Målingerne er tilgængelige på Ydelsesmålinger fane.
Du er nu klar til at implementere et statisk websted, der kan kalde din model efter behov.
Implementer det statiske websted
Dit første skridt er at tilføje endepunktet for din Amazon API Gateway til dit statiske websteds kildekode.
- Find REST API kaldet på API Gateway-konsollen
LookoutVisionAPI
. - Åbn API'en og vælg Praktikophold.
- På scenens rullemenu (for dette indlæg, dev), Vælg POST
- Kopier værdien for Kald URL.
Vi tilføjer URL'en til HTML-kildekoden.
- Åbn filen
html/index.html
.
I slutningen af filen kan du finde en sektion, der bruger jQuery til at udløse en AJAX-anmodning. En nøgle kaldes url
, som har en tom streng som værdi.
- Indtast den URL, du kopierede som din nye
url
værdi og gem filen.
Koden skal ligne følgende:
- Konverter
index.html
fil til en .zip-fil. - På AWS Amplify-konsollen skal du vælge appen
ObjectTracking
.
Front-end miljøsiden for din app åbnes automatisk.
- Type Implementer uden Git-udbyder.
Du kan forbedre dette stykke for at forbinde AWS Amplify til Git og automatisere hele din implementering.
- Vælg Tilslut gren.
- Til Miljønavn¸ indtast et navn (for dette indlæg indtaster vi
dev
). - Til Metode, Vælg Træk og slip.
- Vælg Vælg filer at uploade
index.html.zip
fil du har oprettet. - Vælg Gem og implementer.
Når implementeringen er vellykket, kan du bruge din webapplikation ved at vælge det domæne, der vises i AWS Amplify.
Opdag anomalier
Tillykke! Du har lige bygget en løsning til at automatisere detektionen af anomalier i siliciumwafere og advare en operatør om at træffe passende foranstaltninger. De data, vi bruger til Amazon Lookout for Vision, er et wafer-kort taget fra Wikipedia. Et par "dårlige" pletter er blevet tilføjet for at efterligne scenarier i den virkelige verden i halvlederfremstilling.
Når du har implementeret løsningen, kan du køre en test for at se, hvordan den fungerer. Når du åbner AWS Amplify-domænet, ser du et websted, der lader dig uploade et billede. Til dette indlæg præsenterer vi resultatet af at opdage en dårlig wafer med et såkaldt donutmønster. Når du har uploadet billedet, vises det på din hjemmeside.
Hvis billedet opdages som en anomali, ringer Amazon Connect til dit telefonnummer, og du kan interagere med tjenesten.
Konklusion
I dette indlæg brugte vi Amazon Lookout for Vision til at automatisere detektionen af anomalier i siliciumwafers og advare en operatør i realtid ved hjælp af Amazon Connect, så de kan skride til handling efter behov.
Denne løsning er ikke bundet til kun wafers. Du kan udvide det til objektsporing i transport, produkter i fremstilling og andre uendelige muligheder.
Om forfatterne
Tolla Cherwenka er en AWS Global Solutions Architect, der er certificeret inden for data og analyse. Hun bruger en kunst med den mulige tilgang til at arbejde baglæns fra forretningsmål for at udvikle transformative begivenhedsdrevne dataarkitekturer, der muliggør datadrevne beslutninger. Desuden brænder hun for at skabe præskriptive løsninger til refactoring til missionskritiske monolitiske arbejdsbelastninger til mikrotjenester, forsyningskæde og forbundne fabrikker, der udnytter IOT, machine learning, big data og analysetjenester.
Michael Wallner er en Global Data Scientist med AWS Professional Services og brænder for at gøre det muligt for kunder på deres AI/ML-rejse i skyen at blive AWSome. Udover at have en dyb interesse for Amazon Connect kan han godt lide sport og nyder at lave mad.
Krithivasan Balasubramaniyan er hovedkonsulent hos Amazon Web Services. Han muliggør globale virksomhedskunder i deres digitale transformationsrejse og hjælper med at bygge cloud-native løsninger.
- adgang
- Konto
- Handling
- Yderligere
- admin
- Amazon
- Amazon Web Services
- analytics
- afsløring af anomalier
- api
- app
- Anvendelse
- arkitektur
- omkring
- Kunst
- kunstig intelligens
- Automatiseret
- AWS
- Blog
- Bot
- bygge
- Bygning
- virksomhed
- ringe
- Årsag
- Cloud
- sky indfødte
- kode
- Virksomheder
- Compliance
- Computer Vision
- tillid
- konsulent
- madlavning
- Omkostninger
- Oprettelse af
- Kunder
- data
- dataforsker
- Efterspørgsel
- Detektion
- udvikle
- digital
- Digital Transformation
- Endpoint
- Enterprise
- virksomhedskunder
- Miljø
- Udvid
- Fornavn
- flow
- format
- Gratis
- funktion
- Git
- GitHub
- Global
- godt
- Hvordan
- How To
- HTTPS
- Mennesker
- identificere
- billede
- importere
- Forøg
- oplysninger
- Intelligens
- interesse
- tingenes internet
- IT
- Nøgle
- nøgler
- læring
- Leverage
- Line (linje)
- machine learning
- ledelse
- Produktion
- kort
- Metrics
- Mission
- ML
- model
- numre
- åbent
- åbner
- ordrer
- Andet
- Mønster
- forudsigelse
- præsentere
- Produkt
- produktion
- Produkter
- projekt
- Python
- kvalitet
- rejse
- Læser
- reducere
- Ressourcer
- REST
- gennemgå
- Kør
- kører
- sagemaker
- Scale
- SDK
- halvleder
- Tjenester
- sæt
- Simpelt
- So
- Løsninger
- Sport
- starte
- påbegyndt
- opbevaring
- forhandler
- succes
- vellykket
- forsyne
- forsyningskæde
- support
- systemet
- prøve
- tid
- spor
- Sporing
- Kurser
- Transformation
- transport
- ui
- værdi
- Køretøjer
- Specifikation
- vision
- Voice
- web
- webservices
- Hjemmeside
- WHO
- Wikipedia
- Arbejde
- virker