MATLAB: The Watershed Transform::separate objects::please help

iamageMATLAB

hi
i try to use Watershed Transform to separate touching objects
i read The Watershed Transform: Strategies for Image Segmentation
By Steve Eddins, MathWorks
www.mathworks.com/…/the-watershed-transform-strate…
i follow exact his code as below but no result i get
i think their a basic error in code
————generate toching object——-
center1 = -10;
center2 = -center1;
dist = sqrt(2*(2*center1)^2);
radius = dist/2 * 1.4;
lims = [floor(center1-1.2*radius) ceil(center2+1.2*radius)];
[x,y] = meshgrid(lims(1):lims(2));
bw1 = sqrt((x-center1).^2 + (y-center1).^2) <= radius;
bw2 = sqrt((x-center2).^2 + (y-center2).^2) <= radius;
bw = bw1 | bw2;
imshow(bw), title('bw');
%----------------separate object------------
D = ~bwdist(~bw);
L=watershed(D);
BW(L == 0) = 0;
imshow(BW);
%-------------------------------------------
title('Distance transform of ~bw')

Best Answer

Should BW be bw?
Related Question