[hofig3s10] [Up] [hofig3s12] Chapter 3 - Morphological Processing of Binary Images

hofig3s11
Labeling

Description

This figure illustrates the labeling using reconstruction.

Demo Script

.

from morph import *
from Numeric import nonzero
C=mmreadgray('blob3.tif')
C=mmedgeoff(C)
P=mmunion(C,uint8(1))
Warning: Converting input image from uint8 to binary uint8.
Bc=mmsecross()
A1=mmsubm(C,C)
i=nonzero(C.flat)[0]
A1.flat[i]=1          #marker
A1=mmdil(A1)
D1=mminfrec(A1,C,Bc)
C1=mmsubm(C,D1)
A2=mmsubm(C,C)
i=nonzero(C1.flat)[0]
A2.flat[i]=1          #marker
A2=mmdil(A2)
D2=mminfrec(A2,C1,Bc)
C2=mmsubm(C1,D1)
R=mmlabel(C,Bc)
a=mmunion(mmgray(A1,'uint8',255),
          mmgray(mmintersec(C,P),'uint8', 150))
b=mmunion(mmgray(D1,'uint8',255),
          mmgray(mmintersec(C1,P),'uint8',150))
c=mmunion(mmgray(A2,'uint8',255),
          mmgray(mmintersec(C2,P),'uint8',150))
d=mmunion(mmgray(D2,'uint8',255),
          mmgray(mmintersec(C2,P),'uint8',150))
e=R
mmshow(a)
mmshow(b)
mmshow(c)
mmshow(d)
mmlblshow(e)
a b c d e

[hofig3s10] [Up] [hofig3s12] http://www.python.org