MATLAB: Segmentation of PCB iamge

line and pad segmentspcb imagesegmentation

Hello! Please help me.
I want to segment the PCB image "3(template).jpg" into line and pad segments. How do we segment this image.

Best Answer

Hi Check this code,
clc
clear all;
close all;
%%
rgb=imread('im.jpeg');
gray=rgb2gray(rgb);
bw=im2bw(~gray,0.2);
clrb=imdilate(bw,strel('disk',2,4));
I=rgb(:,:,1);
BW=clrb;
[nbwl,cnt]=bwlabel(BW);
msk=zeros(2020,2020);
for i=1:cnt
fhls=find(nbwl==i);
msk(fhls)=i;
seg=label2rgb(msk);
st=i;
imwrite(seg,sprintf('%d.jpg',i))
imshow(seg)
pause(0.8);
drawnow()
end
Results: