Difference between revisions of "ML-TN-003 — AI at the edge: visual inspection of assembled PCBs for defect detection — Part 3"

From DAVE Developer's Wiki
Jump to: navigation, search
(Created page with "{{InfoBoxTop}} {{AppliesToMachineLearning}} {{AppliesTo Machine Learning TN}} {{InfoBoxBottom}} __FORCETOC__ == History == {| class="wikitable" border="1" !Version !Date !No...")
 
(5 intermediate revisions by the same user not shown)
Line 18: Line 18:
  
 
==Introduction==
 
==Introduction==
 +
 +
==Building the dataset==
 +
===Defects generation and acquisition===
 +
{| class="wikitable" style="text-align:center;"
 +
|- style="font-weight:bold;"
 +
|+'''Anomalies, generation process and numerosity'''
 +
! Anomaly
 +
! P&P
 +
! Serigraphy
 +
! Manual
 +
! Numerosity
 +
|-
 +
| Missing
 +
| ✓
 +
|
 +
|
 +
| 21
 +
|-
 +
| Manhattan
 +
|
 +
|
 +
| ✓
 +
| 4
 +
|-
 +
| Shift x-axis
 +
| ✓
 +
|
 +
|
 +
| 51
 +
|-
 +
| Shift y-axis
 +
| ✓
 +
|
 +
|
 +
| 58
 +
|-
 +
| Shift&Rotation<br />(shift x+z-axes)
 +
| ✓
 +
|
 +
|
 +
| 57
 +
|-
 +
| Rotation<br />(z-axis)
 +
| ✓<br />
 +
|
 +
|
 +
| 55
 +
|-
 +
| Under soldering
 +
|
 +
| ✓
 +
|
 +
| All
 +
|-
 +
| Over soldering
 +
|
 +
| ✓
 +
|
 +
| All
 +
|}
 +
 +
===Class subdivision and labelling===
 +
===Soldering regions extraction===
 +
 +
==Data augmentation with image synthesis==
 +
===Generative adversarial networks===
 +
===Progressive GAN implementation===
 +
==Results validation==
 +
{| class="wikitable" style="text-align:center;"
 +
|- style="font-weight:bold;"
 +
! Class
 +
! Synth image
 +
! Resolution <br />(pixel)
 +
! Google Colab <br />(min)
 +
! AWS SageMaker <br />(min)
 +
|-
 +
| rowspan="2" | <br />missing
 +
| full
 +
| style="text-align:left;" | 512 × 512
 +
| ~480
 +
| ~410
 +
|-
 +
| upper/lower
 +
| style="text-align:left;" | 256 × 256
 +
| ~435
 +
| ~310
 +
|-
 +
| rowspan="2" | <br />tombstoning
 +
| full
 +
| style="text-align:left;" | 512 × 512
 +
| ~460
 +
| ~390
 +
|-
 +
| upper/lower
 +
| style="text-align:left;" | 256 × 256
 +
| ~420
 +
| ~300
 +
|}
 +
 +
[[File:Missing synthesized images.png|center|thumb|500x500px|Synthesized images for ''missing'' class]]
 +
 +
[[File:Tombstoning synthesized images.png|center|thumb|500x500px|Synthesized images for ''tombstoning'' class]]
 +
 +
{| style="background:transparent; color:black" border="0" align="center" cellpadding="10px" cellspacing="0px" height="550" valign="bottom"
 +
|- align="center"
 +
|+ '''T-SNE algorithm results for ''missing'' class synthesized images'''
 +
|
 +
|[[File:Missing 512x512.png|thumb|350x350px|512 × 512 resolution ''full'' images]]
 +
|
 +
|[[File:Missing 256x256.png|thumb|350x350px|256 × 256 resolution ''full'' images]]
 +
|
 +
|[[File:Missing upper lower 256x256.png|thumb|350x350px|256 × 256 resolution ''upper'' and ''lower'' region images]]
 +
|}
 +
 +
 +
{| style="background:transparent; color:black" border="0" align="center" cellpadding="10px" cellspacing="0px" height="550" valign="bottom"
 +
|- align="center"
 +
|+ '''T-SNE algorithm results for ''tombstoning'' class synthesized images'''
 +
|
 +
|[[File:Tombstoning 512x512.png|thumb|350x350px|512 × 512 resolution ''full'' images]]
 +
|
 +
|[[File:Tombstoning 256x256.png|thumb|350x350px|256 × 256 resolution ''full'' images]]
 +
|
 +
|[[File:Tombstoning upper lower 256x256.png|thumb|350x350px|256 × 256 resolution ''upper'' and ''lower'' region images]]
 +
|}
 +
  
 
==Useful links==
 
==Useful links==
 +
*Tero Karras, Timo Aila, Samuli Laine, Jaakko Lehtinen, [https://arxiv.org/abs/1710.10196 ''Progressive Growing of GANs for Improved Quality, Stability, and Variation''], February 2018.
 +
* Ishaan Gulrajani, Faruk Ahmed, Martin Arjovsky, Vincent Dumoulin, Aaron Courville, [https://arxiv.org/abs/1704.00028 ''Improved Training of Wasserstein GANs''], December 2017.
 +
*[https://shop.ipc.org/IPC-A-610E-English-D ''IPC-A-610E: Acceptability of Electronic Assemblies''], a standard developed by IPC, April 2010.

Revision as of 12:27, 14 April 2021

Info Box
NeuralNetwork.png Applies to Machine Learning


History[edit | edit source]

Version Date Notes
1.0.0 March 2021 First public release

Introduction[edit | edit source]

Building the dataset[edit | edit source]

Defects generation and acquisition[edit | edit source]

Anomalies, generation process and numerosity
Anomaly P&P Serigraphy Manual Numerosity
Missing 21
Manhattan 4
Shift x-axis 51
Shift y-axis 58
Shift&Rotation
(shift x+z-axes)
57
Rotation
(z-axis)

55
Under soldering All
Over soldering All

Class subdivision and labelling[edit | edit source]

Soldering regions extraction[edit | edit source]

Data augmentation with image synthesis[edit | edit source]

Generative adversarial networks[edit | edit source]

Progressive GAN implementation[edit | edit source]

Results validation[edit | edit source]

Class Synth image Resolution
(pixel)
Google Colab
(min)
AWS SageMaker
(min)

missing
full 512 × 512 ~480 ~410
upper/lower 256 × 256 ~435 ~310

tombstoning
full 512 × 512 ~460 ~390
upper/lower 256 × 256 ~420 ~300
Synthesized images for missing class
Synthesized images for tombstoning class
T-SNE algorithm results for missing class synthesized images
512 × 512 resolution full images
256 × 256 resolution full images
256 × 256 resolution upper and lower region images


T-SNE algorithm results for tombstoning class synthesized images
512 × 512 resolution full images
256 × 256 resolution full images
256 × 256 resolution upper and lower region images


Useful links[edit | edit source]