
Filter
======


Thinning
--------

``medial_axis_transform_hs``
````````````````````````````

``Image`` [OneBit] **medial_axis_transform_hs** ()


:Operates on: ``Image`` [OneBit]
:Returns: ``Image`` [OneBit]
:Category: Filter/Thinning
:Defined in: thinning.py
:Author: Michael Droettboom and Karl MacMillan (based on code by Øivind Due Trier and Qian Huang)

.. warning:: No documentation written.


----------

**Example 1:** medial_axis_transform_hs()

..  image:: images/OneBit_generic.png
   :height: 99
   :width: 69

..  image:: images/medial_axis_transform_hs_plugin_00.png
   :height: 99
   :width: 69



``medial_axis_transform_large_image_hs``
````````````````````````````````````````

``Image`` [OneBit] **medial_axis_transform_large_image_hs** ()


:Operates on: ``Image`` [OneBit]
:Returns: ``Image`` [OneBit]
:Category: Filter/Thinning
:Defined in: thinning.py
:Author: Michael Droettboom and Karl MacMillan (based on code by Øivind Due Trier and Qian Huang)


This function is an alias for thin_hs_large_image_.

----------

**Example 1:** medial_axis_transform_large_image_hs()

..  image:: images/OneBit_generic.png
   :height: 99
   :width: 69

..  image:: images/medial_axis_transform_large_image_hs_plugin_00.png
   :height: 99
   :width: 69



``thin_hs``
```````````

``Image`` [OneBit] **thin_hs** ()


:Operates on: ``Image`` [OneBit]
:Returns: ``Image`` [OneBit]
:Category: Filter/Thinning
:Defined in: thinning.py
:Author: Michael Droettboom and Karl MacMillan (based on code by Øivind Due Trier and Qian Huang)

.. warning:: No documentation written.


----------

**Example 1:** thin_hs()

..  image:: images/OneBit_generic.png
   :height: 99
   :width: 69

..  image:: images/thin_hs_plugin_00.png
   :height: 99
   :width: 69



``thin_hs_large_image``
```````````````````````

``Image`` [OneBit] **thin_hs_large_image** ()


:Operates on: ``Image`` [OneBit]
:Returns: ``Image`` [OneBit]
:Category: Filter/Thinning
:Defined in: thinning.py
:Author: Michael Droettboom and Karl MacMillan (based on code by Øivind Due Trier and Qian Huang)


Thins (skeletonizes) a ONEBIT image using the Haralick and Shapiro
algorithm.

Unlike thin_hs_, this algorithm performs skeletonization on one
connected component at a time.  On large images with a lot of
connected components, this can be significantly faster.  However,
for small images with a single connected component, this has
unnecessary overhead, which is why both versions are included.
Please note cc_analysis results in a labelled image, which you can
reset afterwards with reset_onebit_image().

----------

**Example 1:** thin_hs_large_image()

..  image:: images/OneBit_generic.png
   :height: 99
   :width: 69

..  image:: images/thin_hs_large_image_plugin_00.png
   :height: 99
   :width: 69



``thin_lc``
```````````

``Image`` [OneBit] **thin_lc** ()


:Operates on: ``Image`` [OneBit]
:Returns: ``Image`` [OneBit]
:Category: Filter/Thinning
:Defined in: thinning.py
:Author: Michael Droettboom and Karl MacMillan (based on code by Øivind Due Trier and Qian Huang)


Thins (skeletonizes) a ONEBIT image using the Lee and Chen
algorithm.

This function is a simple extension to the Zhang and Suen
algorithm in thin_zs_ that ensure that no two pixels are more than
4-connected.

The resulting skeleton is not a medial axis transformation, and
the ends of the skeleton will not extend to the edges of the
original image.

H.-J. Lee and B. Chen. 1992.  Recognition of handwritten chinese
characters via short line segments. *Pattern Recognition*. 25(5)
543-552.

----------

**Example 1:** thin_lc()

..  image:: images/OneBit_generic.png
   :height: 99
   :width: 69

..  image:: images/thin_lc_plugin_00.png
   :height: 99
   :width: 69



``thin_zs``
```````````

``Image`` [OneBit] **thin_zs** ()


:Operates on: ``Image`` [OneBit]
:Returns: ``Image`` [OneBit]
:Category: Filter/Thinning
:Defined in: thinning.py
:Author: Michael Droettboom and Karl MacMillan (based on code by Øivind Due Trier and Qian Huang)


Thins (skeletonizes) a ONEBIT image using the Zhang and Suen
algorithm.

The resulting skeleton is not a medial axis transformation, and
the ends of the skeleton will not extend to the edges of the
original image.

T. Y. Zhang and C. Y. Suen. 1984.  A Fast Parallel Algorithm for
Thinning Digital Patterns., *Communications of ACM*, 2(3).

R. C. Gonzalez and P. Wintz. 1987 *Digital Image Processing.*,
2. edition. 398-402.

----------

**Example 1:** thin_zs()

..  image:: images/OneBit_generic.png
   :height: 99
   :width: 69

..  image:: images/thin_zs_plugin_00.png
   :height: 99
   :width: 69



``create_gabor_filter``
-----------------------

``Image`` [Float] **create_gabor_filter** (float *orientation* = 45.00, float *frequency* = 0.38, int *direction* = 5)


:Operates on: ``Image`` [GreyScale]
:Returns: ``Image`` [Float]
:Category: Filter
:Defined in: misc_filters.py
:Author: Ullrich Köthe (wrapped from VIGRA by Uma Kompella)


Computes the convolution of an image with a two dimensional Gabor
function. The result is returned as a float image.

The *orientation* is given in radians, the other parameters are
the center *frequency* (for example 0.375 or smaller) and the two
angular and radial sigmas of the gabor filter.

The energy of the filter is explicitly normalized to 1.0.

----------

**Example 1:** create_gabor_filter()

..  image:: images/GreyScale_generic.png
   :height: 67
   :width: 96

..  image:: images/create_gabor_filter_plugin_00.png
   :height: 67
   :width: 96



``outline``
-----------

``Image`` [OneBit] **outline** ()


:Operates on: ``Image`` [OneBit]
:Returns: ``Image`` [OneBit]
:Category: Filter
:Defined in: misc_filters.py
:Author: Michael Droettboom and Karl MacMillan


Traces the outline of the image.  This result is obtained by
dilating the image and then XOR'ing the result with the original.

----------

**Example 1:** outline()

..  image:: images/OneBit_generic.png
   :height: 99
   :width: 69

..  image:: images/outline_plugin_00.png
   :height: 99
   :width: 69



