Contour de détection dans MATLAB

Je suis en train d'essayer de comprendre ce code:

d=edge(d,'canny',.6);
figure,
imshow(d,[])

ds = bwareaopen(d,40);
figure,
imshow(ds,[])

iout = d1;
BW=ds;

iout(:,:,1) = iout;
iout(:,:,2) = iout(:,:,1);
iout(:,:,3) = iout(:,:,1);
iout(:,:,2) = min(iout(:,:,2) + BW, 1.0);
iout(:,:,3) = min(iout(:,:,3) + BW, 1.0);

Je comprends que d est l'image et prudente détecteur est appliquée et 40 pixels sont négligés. L'image est en niveaux de gris et le contour est ajouté à l'image.

Pouvez-vous expliquer les lignes suivantes? Quel est le principe de/algorithme est utilisé ici? J'ai du mal surtout avec le contour de la phase de détection du code.

OriginalL'auteur user1234 | 2011-05-02