Zakariyya Mughal

# NAME

Image::Leptonica::Func::sel2

version 0.04

# `sel2.c`

``````  sel2.c

Contains definitions of simple structuring elements

Linear horizontal and vertical
Square
Diagonals

Isolated foreground pixel
Horizontal and vertical edges
Slanted edge
Corners

# FUNCTIONS

SELA * selaAddBasic ( SELA *sela )

``````  selaAddBasic()

Input:  sela (<optional>)
Return: sela with additional sels, or null on error

Notes:
- all linear (horiz, vert) brick sels that are
necessary for decomposable sels up to size 63
- square brick sels up to size 10
- 4 diagonal sels``````

SELA * selaAddCrossJunctions ( SELA *sela, l_float32 hlsize, l_float32 mdist, l_int32 norient, l_int32 debugflag )

``````  selaAddCrossJunctions()

Input:  sela (<optional>)
hlsize (length of each line of hits from origin)
mdist (distance of misses from the origin)
norient (number of orientations; max of 8)
debugflag (1 for debug output)
Return: sela with additional sels, or null on error

Notes:
(1) Adds hitmiss Sels for the intersection of two lines.
If the lines are very thin, they must be nearly orthogonal
to register.
(2) The number of Sels generated is equal to @norient.
(3) If @norient == 2, this generates 2 Sels of crosses, each with
two perpendicular lines of hits.  One Sel has horizontal and
vertical hits; the other has hits along lines at +-45 degrees.
Likewise, if @norient == 3, this generates 3 Sels of crosses
oriented at 30 degrees with each other.
(4) It is suggested that @hlsize be chosen at least 1 greater
than @mdist.  Try values of (@hlsize, @mdist) such as
(6,5), (7,6), (8,7), (9,7), etc.``````

SELA * selaAddDwaCombs ( SELA *sela )

``````  selaAddDwaCombs()

Input:  sela (<optional>)
Return: sela with additional sels, or null on error

Notes:
(1) Adds all comb (horizontal, vertical) Sels that are
used in composite linear morphological operations
up to 63 pixels in length, which are the sizes over
which dwa code can be generated.``````

SELA * selaAddDwaLinear ( SELA *sela )

``````  selaAddDwaLinear()

Input:  sela (<optional>)
Return: sela with additional sels, or null on error

Notes:
(1) Adds all linear (horizontal, vertical) sels from
2 to 63 pixels in length, which are the sizes over
which dwa code can be generated.``````

SELA * selaAddHitMiss ( SELA *sela )

``````  selaAddHitMiss()

Input:  sela  (<optional>)
Return: sela with additional sels, or null on error``````

SELA * selaAddTJunctions ( SELA *sela, l_float32 hlsize, l_float32 mdist, l_int32 norient, l_int32 debugflag )

``````  selaAddTJunctions()

Input:  sela (<optional>)
hlsize (length of each line of hits from origin)
mdist (distance of misses from the origin)
norient (number of orientations; max of 8)
debugflag (1 for debug output)
Return: sela with additional sels, or null on error

Notes:
(1) Adds hitmiss Sels for the T-junction of two lines.
If the lines are very thin, they must be nearly orthogonal
to register.
(2) The number of Sels generated is 4 * @norient.
(3) It is suggested that @hlsize be chosen at least 1 greater
than @mdist.  Try values of (@hlsize, @mdist) such as
(6,5), (7,6), (8,7), (9,7), etc.``````

# AUTHOR

Zakariyya Mughal <zmughal@cpan.org>