HysteresisThresholding
This module implements iterative hysteresis thresholding of image. There are two threshold constants T1 and T2 that determines how to extract edge elements from an edge image. If an edge has higher intensity than T2 it is included in the output image. If an edge has higher intensity than T2 it will also be included in the output image, but only if there is an adjacent edge element that is already included. The parameter range determines how close the adjacent edge > T2 must be. The algorithm is applied iteratively to the image the number of times specified by the parameter iterations. This will iteratively fill out edges below T1. The maximum lenght of an extracted edge element that it is initially below T2 and above T1 is thus range*iterations. Each found edge element is represented by the value 1.0 in the output.
Example XML definition
A simple example
<module class = "HysteresisThresholding" name = "HysteresisThresholding" T1 = "50" T2 = "200" range = "1" iterations = "10" />
Parameters
Name | Description | Type | Default |
---|---|---|---|
class | The class name for the module; must be "HysteresisThresholding". | string | |
name | The name of this instance of the module. | string | |
range | How far away can an edge element be | int | 1 |
iterations | How many times should the algorithm be iterated | int | 1 |
T1 | Lower threshold | int | 0.3 |
T2 | Higher threshold | int | 0.6 |
Module Connections
Inputs
Name | Description |
---|---|
INPUT | The input |
Outputs
Name | Description |
---|---|
OUTPUT | The output |
Bugs
This implementation is very slow and does not give very good results.
Author
Christian Balkenius
christian.balkenius@lucs.lu.se
Lund University Cognitive Science
Files
HysteresisThresholding.h
HysteresisThresholding.cc
HysteresisThresholding.ikc