Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services

Imaginile de înaltă rezoluție sunt foarte răspândite în lumea de astăzi, de la imagini din satelit până la drone și camere DLSR. Din aceste imagini, putem surprinde daune cauzate de dezastre naturale, anomalii în echipamentele de producție sau defecte foarte mici, cum ar fi defectele plăcilor de circuite imprimate (PCB) sau semiconductorilor. Construirea de modele de detectare a anomaliilor folosind imagini de înaltă rezoluție poate fi o provocare, deoarece modelele moderne de viziune computerizată redimensionează în mod obișnuit imaginile la o rezoluție mai mică pentru a se potrivi în memorie pentru antrenament și rularea inferenței. Reducerea semnificativă a rezoluției imaginii înseamnă că informațiile vizuale referitoare la defect sunt degradate sau pierdute complet.

O abordare pentru a depăși aceste provocări este construirea de modele în două etape. Modelele din etapa 1 detectează o regiune de interes, iar modelele din etapa 2 detectează defecte pe regiunea de interes decupată, menținând astfel o rezoluție suficientă pentru detectările mici.

În această postare, vom analiza cum să construim un sistem eficient de detectare a defectelor în două etape folosind Etichete personalizate Amazon Rekognition și comparați rezultatele pentru acest caz de utilizare specific cu modelele cu o singură etapă. Rețineți că mai multe modele cu o singură etapă sunt eficiente chiar și la rezoluții de imagine mai mici sau redimensionate, iar altele pot găzdui imagini mari în loturi mai mici.

Prezentare generală a soluțiilor

Pentru cazul nostru de utilizare, folosim a set de date de imagini ale PCB-urilor cu știfturi de orificii lipsă generați sintetic, așa cum se arată în exemplul următor.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Folosim acest set de date pentru a demonstra că o abordare într-o singură etapă care folosește detectarea obiectelor are ca rezultat o performanță de detecție insuficientă pentru defectele de pin ale orificiului lipsă. Este de preferat un model în doi pași, în care folosim etichetele personalizate Rekognition mai întâi pentru detectarea obiectelor pentru a identifica pinii și apoi un model din a doua etapă pentru a clasifica imaginile tăiate ale pinii în pini cu găuri lipsă sau pini normali.

Procesul de instruire pentru un model de etichete personalizate Rekognition constă din mai mulți pași, așa cum este ilustrat în diagrama următoare.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

În primul rând, folosim Serviciul Amazon de stocare simplă (Amazon S3) pentru a stoca datele imaginii. Datele sunt ingerate Amazon Sagemaker Notebook-uri Jupyter, unde, de obicei, un cercetător de date va inspecta imaginile și le va preprocesa, eliminând orice imagini de calitate slabă, cum ar fi imaginile încețoșate sau condițiile de iluminare slabă, și redimensionează sau decupează imaginile. Apoi datele sunt împărțite în seturi de antrenament și de testare și Amazon SageMaker Ground Adevăr Lucrările de etichetare sunt executate pentru a eticheta seturile de imagini și pentru a scoate un fișier manifest de tren și de testare. Fișierele manifest sunt folosite de Rekognition Custom Labels pentru instruire.

Abordarea modelului într-o etapă

Prima abordare pe care o adoptăm pentru a identifica găurile lipsă pe PCB este să etichetăm găurile lipsă și să antrenăm un model de detectare a obiectelor pentru a identifica găurile lipsă. Următorul este un exemplu de imagine din setul de date.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Antrenăm un model cu un set de date cu 95 de imagini folosite ca antrenament și 20 de imagini folosite pentru testare. Următorul tabel rezumă rezultatele noastre.

Rezultatele evaluării
Scorul F1 Precizie medie Rechemare generală
0.468 0.750 0.340
Timpul antrenamentului Set de date de antrenament Testarea setului de date
Antrenat în 1.791 ore 1 etichetă, 95 de imagini 1 etichetă, 20 de imagini
Performanță pe etichetă
Nume etichetă Scorul F1 Imagini de testare Precizie Rechemare Prag asumat
missing_hole 0.468 20 0.750 0.340 0.053

Modelul rezultat are o precizie ridicată, dar o reamintire scăzută, ceea ce înseamnă că atunci când localizam o regiune pentru o gaură lipsă, de obicei avem dreptate, dar ne lipsesc o mulțime de găuri lipsă care sunt prezente pe PCB. Pentru a construi un sistem eficient de detectare a defectelor, trebuie să îmbunătățim rechemarea. Performanța scăzută a acestui model se poate datora faptului că defectele sunt mici pe această imagine de înaltă rezoluție a PCB-ului, astfel încât modelul nu are nicio referință la un pin sănătos.

Apoi, explorăm împărțirea imaginii în patru sau șase culturi, în funcție de dimensiunea PCB și etichetarea atât a găurilor sănătoase, cât și a celor lipsă. Următorul este un exemplu de imagine decupată rezultată.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Antrenăm un model cu 524 de imagini folosite ca antrenament și 106 imagini folosite pentru testare. Menținem aceleași PCB-uri utilizate în tren și testăm ca modelul cu bord complet. Rezultatele pentru știfturile sănătoase tăiate față de găurile lipsă sunt prezentate în tabelul următor.

Rezultatele evaluării
Scorul F1 Precizie medie Rechemare generală
0.967 0.989 0.945
Timpul antrenamentului Set de date de antrenament Testarea setului de date
Antrenat în 2.118 ore 2 etichete, 524 imagini 2 etichete, 106 imagini
Performanță pe etichetă
Nume etichetă Scorul F1 Imagini de testare Precizie Rechemare Prag asumat
missing_hole 0.949 42 0.980 0.920 0.536
pin 0.984 106 0.998 0.970 0.696

Atât precizia, cât și amintirea s-au îmbunătățit semnificativ. A ajutat antrenamentul modelului cu imagini decupate mărite și o referire la model pentru ace sănătoase. Cu toate acestea, rechemarea este încă la 92%, ceea ce înseamnă că am rata în continuare 8% din găurile lipsă și am lăsa defectele să treacă neobservate.

În continuare, vom explora o abordare a modelului în două etape în care putem îmbunătăți performanța modelului în continuare.

Abordarea modelului în două etape

Pentru modelul în două etape, antrenăm două modele: unul pentru detectarea acelor și unul pentru a detecta dacă pinul lipsește sau nu pe imaginile decupate mărite ale pinului. Următoarea este o imagine din setul de date de detectare a pinului.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Datele sunt similare cu experimentul nostru anterior, în care am decupat PCB-ul în patru sau șase imagini decupate. De data aceasta, etichetăm toate știfturile și nu facem nicio distincție dacă știftul are o gaură lipsă sau nu. Antrenăm acest model cu 522 de imagini și testăm cu 108 imagini, menținând aceeași împărțire tren/test ca experimentele anterioare. Rezultatele sunt prezentate în tabelul următor.

Rezultatele evaluării
Scorul F1 Precizie medie Rechemare generală
1.000 0.999 1.000
Timpul antrenamentului Set de date de antrenament Testarea setului de date
Antrenat în 1.581 ore 1 etichetă, 522 de imagini 1 etichetă, 108 de imagini
Performanță pe etichetă
Nume etichetă Scorul F1 Imagini de testare Precizie Rechemare Prag asumat
pin 1.000 108 0.999 1.000 0.617

Modelul detectează perfect pinii pe acest set de date sintetice.

Apoi, construim modelul pentru a face distincția pentru găurile lipsă. Folosim imagini decupate ale găurilor pentru a antrena a doua etapă a modelului, așa cum se arată în exemplele următoare. Acest model este separat de modelele anterioare deoarece este un model de clasificare și se va concentra pe sarcina restrânsă de a determina dacă știftul are o gaură lipsă.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Antrenăm acest model din a doua etapă pe 16,624 de imagini și testăm pe 3,266, menținând aceleași împărțiri tren/test ca experimentele anterioare. Următorul tabel rezumă rezultatele noastre.

Rezultatele evaluării
Scorul F1 Precizie medie Rechemare generală
1.000 1.000 1.000
Timpul antrenamentului Set de date de antrenament Testarea setului de date
Antrenat în 6.660 ore 2 etichete, 16,624 imagini 2 etichete, 3,266 imagini
Performanță pe etichetă
Nume etichetă Scorul F1 Imagini de testare Precizie Rechemare Prag asumat
anomaly 1.000 88 1.000 1.000 0.960
normal 1.000 3,178 1.000 1.000 0.996

Din nou, primim precizie perfectă și amintim pe acest set de date sintetice. Combinând modelul anterior de detectare a pinului cu acest model de clasificare a găurilor lipsă din a doua etapă, putem construi un model care depășește orice model cu o singură etapă.

Următorul tabel rezumă experimentele pe care le-am efectuat.

Experiment Tip Descriere Scorul F1 Precizie Rechemare
1 Model într-o etapă Model de detectare a obiectelor pentru a detecta găurile lipsă pe imaginile complete 0.468 0.75 0.34
2 Model într-o etapă Model de detectare a obiectelor pentru a detecta pini sănătoși și găuri lipsă pe imaginile decupate 0.967 0.989 0.945
3 Model în două etape Etapa 1: Detectarea obiectelor pe toate pinii 1.000 0.999 1.000
Etapa 2: Clasificarea imaginii a știftului sănătos sau a găurilor lipsă 1.000 1.000 1.000
Medie de la capăt la capăt 1.000 0.9995 1.000

Conducta de inferență

Puteți folosi următoarea arhitectură pentru a implementa modelele cu o etapă și două etape pe care le-am descris în această postare. Sunt implicate următoarele componente principale:

Pentru modelele cu o singură etapă, puteți trimite o imagine de intrare către punctul final API Gateway, urmată de Lambda pentru orice preprocesare de bază a imaginii și puteți ruta către punctul final al modelului antrenat Rekognition Custom Labels. În experimentele noastre, am explorat modele cu o singură etapă care pot detecta doar găurile lipsă și găurile lipsă și știfturile sănătoase.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Pentru modelele în două etape, puteți trimite, în mod similar, o imagine către punctul final API Gateway, urmată de Lambda. Lambda acționează ca un orchestrator care apelează mai întâi modelul de detectare a obiectelor (antrenat folosind etichete personalizate Rekognition), care generează regiunea de interes. Imaginea originală este apoi tăiată în funcția Lambda și trimisă la un alt model de clasificare Rekognition Custom Labels pentru detectarea defectelor în fiecare imagine decupată.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.

Concluzie

În această postare, am instruit modele cu una și două etape pentru a detecta găurile lipsă în PCB-uri folosind etichetele personalizate Rekognition. Am raportat rezultate pentru diferite modele; în cazul nostru, modelele în două etape au depășit alte variante. Încurajăm clienții cu imagini de înaltă rezoluție din alte domenii să testeze performanța modelului cu modele cu una și două etape. În plus, luați în considerare următoarele moduri de a extinde soluția:

  • Decupări de ferestre glisante pentru seturile dvs. de date reale
  • Reutilizarea modelelor dvs. de detectare a obiectelor în aceeași conductă
  • Etichetarea prealabilă a fluxurilor de lucru folosind predicții cu casete de delimitare

Despre autori

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Andreas Karagounis este Data Science Manager la Accenture. Deține un master în Informatică de la Universitatea Brown. Are o experiență în viziunea computerizată și lucrează cu clienții pentru a-și rezolva provocările de afaceri folosind știința datelor și învățarea automată.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Yogesh Chaturvedi este arhitect principal de soluții la AWS, cu accent pe viziunea computerizată. El lucrează cu clienții pentru a-și aborda provocările de afaceri folosind tehnologii cloud. În afara serviciului, îi place să facă drumeții, să călătorească și să urmărească sporturi.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Shreyas Subramanian este un Data Scientist principal și ajută clienții folosind învățarea automată pentru a-și rezolva provocările de afaceri folosind platforma AWS. Shreyas are experiență în optimizarea la scară largă și învățarea automată și în utilizarea învățării automate și a învățării prin consolidare pentru accelerarea sarcinilor de optimizare.

Detectarea defectelor în imaginile de înaltă rezoluție folosind modele Amazon Rekognition Custom Labels în două etape | Amazon Web Services PlatoBlockchain Data Intelligence. Căutare verticală. Ai.Selimcan „Pot” Sakar este un dezvoltator pe cloud și arhitect de soluții la AWS Accenture Business Group, cu accent pe tehnologiile emergente precum GenAI, ML și blockchain. Când nu se uită la modelele care converg, poate fi văzut mergând cu bicicleta sau cântând la clarinet.

Timestamp-ul:

Mai mult de la Învățare automată AWS