The project implements the task of detection and classification defects in printed circuit boards. A reference based method is used to detect defects, and an ensemble of three CNN models (VGG16
, ResNet-101
, Inception v3
) is made to classify them.
To combine classification models decision scores, a method based on the fuzzy Choquet integral is used.
For training and test data, an open dataset DeepPCB is used that contains scans of pairs images of printed circuit boards in black and white format. All images are in jpeg format and have a size of 640x640. Each pair consists of a template image of the board and a test one.
The architecture of the ensemble with the fuzzy Choquet integral showed a classification accuracy of 98.6%.
precision recall f1-score support
open 0.995 0.995 0.995 388
short 0.952 0.997 0.974 301
mousebit 0.982 0.980 0.981 393
spur 0.997 0.960 0.978 325
copper 1.000 1.000 1.000 294
pin-hole 0.990 0.987 0.988 300
accuracy 0.986 2001
macro avg 0.986 0.986 0.986 2001
weighted avg 0.986 0.986 0.986 2001
The result of detection and classification of defects, using the module /tools/defect_detection.py
: