[mmswatershed] [Up] [mmthin] Thinning And Thickening

mmthick
Image transformation by thickening.

Synopsis

y = mmthick( f, Iab = None, n = -1, theta = 45, DIRECTION = "CLOCKWISE" )

Implemented in Python.

Input

f Image Binary image.
Iab Interval

Default: None (mmhomothick)

n Double Non-negative integer.

Number of iterations.

Default: -1

theta Double

Degrees of rotation: 45, 90, or 180.

Default: 45

DIRECTION String

'CLOCKWISE' or ' ANTI-CLOCKWISE'

Default: "CLOCKWISE"

Output

y Image Binary image.

Description

mmthick creates the binary image y by performing a thickening of the binary image f. The number of iterations of the thickening is n and each iteration is performed by union of f with the points that are detected in f by the hit-miss operators characterized by rotations of theta degrees of the interval Iab.

Equation

Source Code

def mmthick(f, Iab=None, n=-1, theta=45, DIRECTION="CLOCKWISE"):
    from Numeric import product
    from string import upper
    if Iab is None: Iab = mmhomothick()
    DIRECTION = upper(DIRECTION)            
    assert mmisbinary(f),'f must be binary image'
    if n == -1: n = product(f.shape)
    y = f
    zero = mmintersec(f,0)
    for i in range(n):
        aux = zero
        for t in range(0,360,theta):
            sup = mmsupgen( y, mminterot(Iab, t, DIRECTION))
            aux = mmunion( aux, sup)
            y = mmunion( y, sup)
        if mmisequal(aux,zero): break
    return y
    

See also

mmfreedom Control automatic data type conversion.
mmcthick Image transformation by conditional thickening.
mmthin Image transformation by thinning.
mmhomothick Interval for homotopic thickening.
mmse2hmt Create a Hit-or-Miss Template (or interval) from a pair of structuring elements.
[mmswatershed] [Up] [mmthin] Python