Amazon Lookout for Vision är en maskininlärningstjänst (ML) som upptäcker defekter och anomalier i visuella representationer med hjälp av datorseende (CV). Med Amazon Lookout for Vision kan tillverkande företag öka kvaliteten och minska driftskostnaderna genom att snabbt identifiera skillnader i bilder av objekt i stor skala.
Många företagskunder vill identifiera saknade komponenter i produkter, skador på fordon eller strukturer, oegentligheter i produktionslinjer, små defekter i kiselskivor och andra liknande problem. Amazon Lookout for Vision använder ML för att se och förstå bilder från vilken kamera som helst som en person skulle göra, men med en ännu högre grad av noggrannhet och i mycket större skala. Amazon Lookout for Vision eliminerar behovet av kostsam och inkonsekvent manuell inspektion, samtidigt som kvalitetskontrollen, bedömningen av defekter och skador samt efterlevnad förbättras. På några minuter kan du börja använda Amazon Lookout for Vision för att automatisera inspektion av bilder och objekt – utan att behöva ML-expertis.
I det här inlägget tittar vi på hur vi kan automatisera detektering av anomalier i kiselskivor och meddela operatörer i realtid.
Lösningsöversikt
Att hålla koll på kvaliteten på produkter i en tillverkningslinje är en utmanande uppgift. Vissa processsteg tar bilder av produkten som människor sedan granskar för att säkerställa god kvalitet. Tack vare artificiell intelligens kan du automatisera dessa anomalidetekteringsuppgifter, men mänskligt ingripande kan vara nödvändigt efter att anomalier har upptäckts. En standardmetod är att skicka e-post när problematiska produkter upptäcks. Dessa e-postmeddelanden kan förbises, vilket kan orsaka kvalitetsförlust i en fabrik.
I det här inlägget automatiserar vi processen att upptäcka anomalier i kiselskivor och meddela operatörer i realtid med hjälp av automatiserade telefonsamtal. Följande diagram illustrerar vår arkitektur. Vi distribuerar en statisk webbplats med hjälp av AWS förstärka, som fungerar som startpunkt för vår ansökan. När en ny bild laddas upp via användargränssnittet (1), en AWS Lambda funktionen anropar Amazon Lookout for Vision-modellen (2) och förutsäger om denna wafer är avvikande eller inte. Funktionen lagrar varje uppladdad bild till Amazon enkel lagringstjänst (Amazon S3) (3). Om skivan är onormal, skickar funktionen förtroendet för förutsägelsen till Amazon Connect och ringer en operatör (4), som kan vidta ytterligare åtgärder (5).
Ställa in Amazon Connect och tillhörande kontaktflöde
För att konfigurera Amazon Connect och kontaktflödet genomför du följande steg på hög nivå:
- Skapa en Amazon Connect-instans.
- Ställ in kontaktflödet.
- Gör anspråk på ditt telefonnummer.
Skapa en Amazon Connect-instans
Det första steget är att skapa en Amazon Connect-instans. Under resten av installationen använder vi standardvärdena, men glöm inte att skapa en administratörsinloggning.
Skapandet av instanser kan ta några minuter, varefter vi kan logga in på Amazon Connect-instansen med det adminkonto vi skapade.
Ställa in kontaktflödet
I det här inlägget har vi ett fördefinierat kontaktflöde som vi kan importera. För mer information om att importera ett befintligt kontaktflöde, se Importera / exportera kontaktflöden.
- Välj filen
contact-flow/wafer-anomaly-detection
från GitHub repo. - Välja Importera.
Det importerade kontaktflödet liknar följande skärmdump.
- Expandera på sidan med flödesdetaljer Visa ytterligare flödesinformation.
Här hittar du kontaktflödets ARN.
- Anteckna kontaktflödes-ID och kontaktcenter-ID, som du behöver senare.
Gör anspråk på ditt telefonnummer
Anspråk på ett nummer är enkelt och tar bara några klick. Se till att välja det tidigare importerade kontaktflödet medan du gör anspråk på numret.
Om inga nummer finns tillgängliga i det land du väljer, skaffa en supportbiljett.
Kontaktflödesöversikt
Följande skärmdump visar vårt kontaktflöde.
Kontaktflödet utför följande funktioner:
- Aktivera loggning
- Ställ in utgången Amazon Polly röst (för det här inlägget använder vi Kendra-rösten)
- Få kundinput med DTMF (endast nycklar 1 och 2 är giltiga).
- Baserat på användarens input gör flödet något av följande:
- Be ett adjömeddelande om att ingen åtgärd kommer att vidtas och avsluta
- Be ett adjömeddelande om att en åtgärd kommer att vidtas och avsluta
- Misslyckas och leverera ett reservblock som säger att maskinen kommer att stängas av och avslutas
Alternativt kan du förbättra ditt system med en Amazon Lex bot.
Distribuera lösningen
Nu när du har konfigurerat Amazon Connect, distribuerat ditt kontaktflöde och noterat den information du behöver för resten av distributionen, kan vi distribuera de återstående komponenterna. I det klonade GitHub-förvaret, redigera build.sh
skript och kör det från kommandoraden:
Tillhandahåll följande information:
- Din region
- Namnet på S3-hinken du vill använda (se till att namnet innehåller ordet
sagemaker
). - Namnet på Amazon Lookout for Vision-projektet du vill använda
- ID för ditt kontaktflöde
- Ditt Amazon Connect-instans-ID
- Numret du har gjort anspråk på i Amazon Connect i E.164-format (till exempel +132398765)
- Ett namn för AWS molnformation stack du skapar genom att köra det här skriptet
Det här skriptet utför sedan följande åtgärder:
- Skapa en S3-skopa åt dig
- Bygg .zip-filerna för din Lambda-funktion
- Ladda upp CloudFormation-mallen och Lambda-funktionen till din nya S3-hink
- Skapa CloudFormation-stacken
Efter att stacken har distribuerats kan du hitta följande resurser skapade på AWS CloudFormation-konsolen.
Du kan se att en Amazon SageMaker anteckningsbok kallas amazon-lookout-vision-create-project
skapas också.
Bygg, träna och distribuera Amazon Lookout for Vision-modellen
I det här avsnittet ser vi hur man bygger, tränar och distribuerar Amazon Lookout for Vision-modellen med Python SDK med öppen källkod. För mer information om Amazon Lookout for Vision Python SDK, se detta blogginlägg.
Du kan bygga modellen via AWS Management Console. För programmatisk distribution, slutför följande steg:
- På SageMaker-konsolen, på Notebook-instanser sida, få tillgång till SageMaker anteckningsbok-instansen som skapades tidigare genom att välja Öppna Jupyter.
I fallet kan du hitta GitHub repository av Amazon Lookout for Vision Python SDK klonas automatiskt.
- Navigera in i
amazon-lookout-for-vision-python-sdk/example
mapp.
Mappen innehåller ett exempel på en anteckningsbok som leder dig genom att bygga, träna och distribuera en modell. Innan du sätter igång måste du ladda upp bilderna som du ska använda för att träna modellen i din anteckningsbok-instans.
- I
example/
skapar du två nya mappar med namnetgood
ochbad
. - Navigera in i båda mapparna och ladda upp dina bilder därefter.
Exempelbilder finns i det nedladdade GitHub-förrådet.
- När du har laddat upp bilderna öppnar du
lookout_for_vision_example.ipynb
anteckningsbok.
Anteckningsboken leder dig genom processen för att skapa din modell. Ett viktigt steg du bör göra först är att tillhandahålla följande information:
Du kan ignorera inferensavsnittet, men lek gärna också med den här delen av anteckningsboken. Eftersom du precis har börjat kan du lämna model_version
satt till "1
".
För input_bucket
och project_name
, använd S3-hinken och Amazon Lookout for Vision-projektnamnet som tillhandahålls som en del av build.sh
manus. Du kan sedan köra varje cell i anteckningsboken, som framgångsrikt distribuerar modellen.
Du kan se träningsstatistiken med hjälp av SDK, men du kan också hitta dem på konsolen. För att göra det, öppna ditt projekt, navigera till modellerna och välj den modell du har tränat. Mätvärdena finns tillgängliga på Prestandamätningar fliken.
Du är nu redo att distribuera en statisk webbplats som kan ringa din modell på begäran.
Distribuera den statiska webbplatsen
Ditt första steg är att lägga till slutpunkten för din Amazon API Gateway till din statiska webbplatss källkod.
- På API Gateway-konsolen, hitta REST API som kallas
LookoutVisionAPI
. - Öppna API:et och välj praktik.
- På scenens rullgardinsmeny (för det här inlägget, dev), Välj den POST
- Kopiera värdet för Anropa URL.
Vi lägger till URL:en till HTML-källkoden.
- Öppna filen
html/index.html
.
I slutet av filen kan du hitta ett avsnitt som använder jQuery för att utlösa en AJAX-förfrågan. En nyckel kallas url
, som har en tom sträng som värde.
- Ange webbadressen du kopierade som din nya
url
värde och spara filen.
Koden bör se ut som följande:
- konvertera den
index.html
fil till en .zip-fil. - Välj appen på AWS Amplify-konsolen
ObjectTracking
.
Front-end miljösidan för din app öppnas automatiskt.
- Välja Distribuera utan Git-leverantör.
Du kan förbättra den här delen för att ansluta AWS Amplify till Git och automatisera hela din distribution.
- Välja Anslut gren.
- För Miljönamn¸ ange ett namn (för det här inlägget anger vi
dev
). - För Metod, Välj Dra och släpp.
- Välja Välj filer att ladda upp
index.html.zip
fil du skapade. - Välja Spara och distribuera.
När implementeringen har lyckats kan du använda din webbapplikation genom att välja den domän som visas i AWS Amplify.
Upptäck avvikelser
Grattis! Du har precis byggt en lösning för att automatisera upptäckten av anomalier i kiselskivor och varna en operatör att vidta lämpliga åtgärder. Datan vi använder för Amazon Lookout for Vision är en waferkarta hämtad från Wikipedia. Några "dåliga" punkter har lagts till för att efterlikna verkliga scenarier inom halvledartillverkning.
När du har distribuerat lösningen kan du köra ett test för att se hur det fungerar. När du öppnar AWS Amplify-domänen ser du en webbplats som låter dig ladda upp en bild. För det här inlägget presenterar vi resultatet av att upptäcka en dålig wafer med ett så kallat munkmönster. När du har laddat upp bilden visas den på din webbplats.
Om bilden upptäcks som en anomali ringer Amazon Connect ditt telefonnummer och du kan interagera med tjänsten.
Slutsats
I det här inlägget använde vi Amazon Lookout for Vision för att automatisera upptäckten av anomalier i kiselskivor och varna en operatör i realtid med Amazon Connect så att de kan vidta åtgärder vid behov.
Denna lösning är inte bunden till bara wafers. Du kan utöka det till objektspårning inom transport, produkter inom tillverkning och andra oändliga möjligheter.
Om författarna
Tolla Cherwenka är en AWS Global Solutions Architect som är certifierad inom data och analys. Hon använder en konst av det möjliga tillvägagångssättet för att arbeta bakåt från affärsmål för att utveckla transformativa händelsedrivna dataarkitekturer som möjliggör datadrivna beslut. Dessutom brinner hon för att skapa föreskrivande lösningar för omstrukturering till uppdragskritiska monolitiska arbetsbelastningar till mikrotjänster, leveranskedja och anslutna fabriker som utnyttjar IOT, maskininlärning, big data och analystjänster.
Michael Wallner är en global datavetare med AWS Professional Services och brinner för att möjliggöra för kunder på deras AI / ML-resa i molnet att bli AWSome. Förutom att ha ett djupt intresse för Amazon Connect gillar han sport och gillar att laga mat.
Krithivasan Balasubramaniyan är huvudkonsult på Amazon Web Services. Han möjliggör globala företagskunder i deras digitala transformationsresa och hjälper till att utforma molnbaserade lösningar.
- tillgång
- Konto
- Handling
- Annat
- administration
- amason
- Amazon Web Services
- analytics
- avvikelse av anomali
- api
- app
- Ansökan
- arkitektur
- runt
- Konst
- artificiell intelligens
- Automatiserad
- AWS
- Blogg
- Bot
- SLUTRESULTAT
- Byggnad
- företag
- Ring
- Orsak
- cloud
- moln infödd
- koda
- Företag
- Efterlevnad
- Datorsyn
- förtroende
- konsult
- kokning
- Kostar
- Skapa
- Kunder
- datum
- datavetare
- Efterfrågan
- Detektering
- utveckla
- digital
- digital Transformation
- Slutpunkt
- Företag
- företagskunder
- Miljö
- Bygga ut
- Förnamn
- flöda
- format
- Fri
- fungera
- gå
- GitHub
- Välgörenhet
- god
- Hur ser din drömresa ut
- How To
- HTTPS
- Människa
- identifiera
- bild
- importera
- Öka
- informationen
- Intelligens
- intresse
- iot
- IT
- Nyckel
- nycklar
- inlärning
- Hävstång
- linje
- maskininlärning
- ledning
- Produktion
- karta
- Metrics
- Mission
- ML
- modell
- nummer
- öppet
- öppnas
- beställa
- Övriga
- Mönster
- förutsägelse
- presentera
- Produkt
- Produktion
- Produkter
- projektet
- Python
- kvalitet
- höja
- Läsare
- minska
- Resurser
- REST
- översyn
- Körning
- rinnande
- sagemaker
- Skala
- sDK
- halvledare
- Tjänster
- in
- Enkelt
- So
- Lösningar
- Sporter
- starta
- igång
- förvaring
- lagrar
- framgång
- framgångsrik
- leverera
- leveranskedjan
- stödja
- system
- testa
- tid
- spår
- Spårning
- Utbildning
- Transformation
- transport
- ui
- värde
- fordon
- utsikt
- syn
- Röst
- webb
- webbservice
- Webbplats
- VEM
- wikipedia
- Arbete
- fungerar