- Main Page
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

# errorfreeCSED Class Reference

Ragnemalm's error free CSED distance transform algorithm. This implementation does not perform as described in Ragnemalm's paper. More...

`#include <errorfreeCSED.h>`

Inheritance diagram for errorfreeCSED:

List of all members.

## Public Member Functions
| errorfreeCSED (const int xSize, const int ySize, const bool unload=true)
void | doTransform (const unsigned char *const I)
| calculate the distance transform
virtual bool | getP (const int x, const int y, int &px, int &py) const
## Protected Attributes
P * | v
## Private Member Functions
void | test (const int px, const int py, const int ox, const int oy, vector< P * > *list2, const int i)
## Static Private Member Functions
static double | D (const int x, const int y)
static double | D (P &p)

## Detailed Description

Ragnemalm's error free CSED distance transform algorithm. This implementation does not perform as described in Ragnemalm's paper.

As described in I. Ragnemalm, "Neighborhoods for distance transformations using ordered propagation," CVGIP:IU 56(3):399-409, 1992.

## Member Function Documentation

virtual bool errorfreeCSED::getP | ( | const int | x,
|  | const int | y,
|  | int & | px,
|  | int & | py
| ) | const`[virtual]`

  | Parameters:
  | x | is the x location
  | y | is the y location
  | px | is the parent's x location to be returned
  | py | is the parent's y location to be returned
Returns: true if the parent is know; otherwise false. Reimplemented from DistanceTransform.

void errorfreeCSED::test | ( | const int | x,
|  | const int | y,
|  | const int | ox,
|  | const int | oy,
|  | vector< P * > * | list2,
|  | const int | i
| ) | `[private]`

  | Parameters:
  | (x,y) | is a pixel position, p
  | (ox,oy) | is the displacement from (x,y) to a neighbor, o
  | list2 | is a list
  | i | is the subscript associated with (x,y)
        subroutine test ( o ):
            if D(v(p+o)) > D(v(p)+o)
                put p+o in list2  //in both
                put v(p)+o in list2

The documentation for this class was generated from the following files:

- errorfreeCSED.h
- errorfreeCSED.cpp