In this code, blobs are small blobs within a greater tissue (tissuemask). It's my understanding that the output of watershed, wsh, is a label matrix that labels over 400 different blobs.
wsh = watershed(~(blobs));
c = imdilate(blobs) & wsh & tissuemask;
c is another mask that contains all three here - my question is, how is wsh treated as a logical binary mask when it contains values from 1 to over 400? How does the AND operator treat a label matrix? Does it just include any nonzero value?