UNetBGS – UNet for PCB surface segmentation


UNetBGS is a deep learning network (U-Net) to segment electronic parts from PCB boards. PCB background segmentation is a sub project of the SearchPartPython project, solved with a deep learning network. The code was developed based on jakeret-tf_unet. The architecture was inspired by Olaf Ronneberger, Philipp Fischer, Thomas Brox, “U-Net: Convolutional Networks for Biomedical Image Segmentation” (https://arxiv.org/pdf/1505.04597.pdf).

Code on GitHub


Data set

The dataset was created from different PCB boards with significant signs of wear. Region growing was used to localize regions with identical color in the image. Regions corresponding to backgroud are labled manually by clicking in the corresponding PCB region.

Predicted image example

Original PCB image Predicted PCB surface


It could be shown that the provided UNet can segment PCB surface very successfull. A detailed evaluation is not possible yet, due to the inaccurate labeled PCB background.

Further development

  • Upload data set




Bernhard Föllmer, berniweb@posteo.de

Close Menu