SMIL 1.1.2
|
Morphological operators using line segments as structuring elements. More...
Morphological operators using line segments as structuring elements.
Implementation of morphological operations by line, square and circle structuring elements using repeately operations with linear structuring elements and arbitrary angles.
These algorithms are described in [16] P. Soille, Morphological Image Analysis, 2003, Section 3.9, p. 89 and [15]
3D Line Structuring Element using Bresenham's Line Drawing Algorithm.
Functions | |
template<class T > | |
RES_T | lineDilate (const Image< T > &imIn, Image< T > &imOut, int hLen, double theta=0, double zeta=0) |
lineDilate() | |
template<class T > | |
RES_T | lineErode (const Image< T > &imIn, Image< T > &imOut, int hLen, double theta=0, double zeta=0) |
lineErode() | |
template<class T > | |
RES_T | lineOpen (const Image< T > &imIn, Image< T > &imOut, int hLen, double theta=0, double zeta=0) |
lineOpen() | |
template<class T > | |
RES_T | lineClose (const Image< T > &imIn, Image< T > &imOut, int hLen, double theta=0, double zeta=0) |
lineClose() | |
template<class T > | |
RES_T | squareDilate (const Image< T > &imIn, Image< T > &imOut, int side) |
squareDilate() : the SE is a square defined by its side | |
template<class T > | |
RES_T | squareErode (const Image< T > &imIn, Image< T > &imOut, int side) |
squareErode() : the SE is a square defined by its side | |
template<class T > | |
RES_T | squareOpen (const Image< T > &imIn, Image< T > &imOut, int side) |
squareOpen() : the SE is a square defined by its side | |
template<class T > | |
RES_T | squareClose (const Image< T > &imIn, Image< T > &imOut, int side) |
squareClose() : the SE is a square defined by its side | |
template<class T > | |
RES_T | circleDilate (const Image< T > &imIn, Image< T > &imOut, int radius) |
circleDilate() : the SE is a disk of radius radius pixels | |
template<class T > | |
RES_T | circleErode (const Image< T > &imIn, Image< T > &imOut, int radius) |
circleErode() : the SE is a disk of radius radius pixels | |
template<class T > | |
RES_T | circleOpen (const Image< T > &imIn, Image< T > &imOut, int radius) |
circleOpen() : the SE is a disk of radius radius pixels | |
template<class T > | |
RES_T | circleClose (const Image< T > &imIn, Image< T > &imOut, int radius) |
circleClose() : the SE is a disk of radius radius pixels | |
template<class T > | |
RES_T | rectangleDilate (const Image< T > &imIn, Image< T > &imOut, int side1, int side2, double theta=0) |
rectangleDilate() : generic dilation of imIn by a rectangle of sides side1 and side2, rotated by an angle theta. | |
template<class T > | |
RES_T | rectangleErode (const Image< T > &imIn, Image< T > &imOut, int side1, int side2, double theta=0) |
rectangleErode() : generic erosion of imIn by a rectangle of sides side1 and side2, rotated by an angle theta. | |
template<class T > | |
RES_T | rectangleOpen (const Image< T > &imIn, Image< T > &imOut, int side1, int side2, double theta=0) |
rectangleOpen() : generic opening of imIn by a rectangle of sides side1 and side2, rotated by an angle theta. | |
template<class T > | |
RES_T | rectangleClose (const Image< T > &imIn, Image< T > &imOut, int side1, int side2, double theta=0) |
rectangleClose() : generic closing of imIn by a rectangle of sides side1 and side2, rotated by an angle theta. | |
RES_T lineDilate | ( | const Image< T > & | imIn, |
Image< T > & | imOut, | ||
int | hLen, | ||
double | theta = 0 , |
||
double | zeta = 0 |
||
) |
The 3D Structuring Element is a segment of length
[in] | imIn | : input image |
[in] | hLen | : Half Length of the Structuring Element |
[in] | theta | : angle (in radians) of the line in the h x v plane |
[in] | zeta | : elevation angle (in radians) |
[out] | imOut | : output image |
RES_T lineErode | ( | const Image< T > & | imIn, |
Image< T > & | imOut, | ||
int | hLen, | ||
double | theta = 0 , |
||
double | zeta = 0 |
||
) |
The 3D Structuring Element is a segment of length
[in] | imIn | : input image |
[in] | hLen | : Half Length of the Structuring Element |
[in] | theta | : angle (in radians) of the line in the h x v plane |
[in] | zeta | : elevation angle (in radians) |
[out] | imOut | : output image |
RES_T lineOpen | ( | const Image< T > & | imIn, |
Image< T > & | imOut, | ||
int | hLen, | ||
double | theta = 0 , |
||
double | zeta = 0 |
||
) |
The 3D Structuring Element is a segment of length
[in] | imIn | : input image |
[in] | hLen | : Half Length of the Structuring Element |
[in] | theta | : angle (in radians) of the line in the h x v plane |
[in] | zeta | : elevation angle (in radians) |
[out] | imOut | : output image |
RES_T lineClose | ( | const Image< T > & | imIn, |
Image< T > & | imOut, | ||
int | hLen, | ||
double | theta = 0 , |
||
double | zeta = 0 |
||
) |
The 3D Structuring Element is a segment of length
[in] | imIn | : input image |
[in] | hLen | : Half Length of the Structuring Element |
[in] | theta | : angle (in radians) of the line in the h x v plane |
[in] | zeta | : elevation angle (in radians) |
[out] | imOut | : output image |
squareDilate() : the SE is a square defined by its side
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | side | : side of the Square Structuring Element |
squareErode() : the SE is a square defined by its side
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | side | : side of the Square Structuring Element |
squareOpen() : the SE is a square defined by its side
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | side | : side of the Square Structuring Element |
squareClose() : the SE is a square defined by its side
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | side | : side of the Square Structuring Element |
circleDilate() : the SE is a disk of radius radius pixels
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | radius | : the radius of the disk |
circleErode() : the SE is a disk of radius radius pixels
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | radius | : the radius of the disk |
circleOpen() : the SE is a disk of radius radius pixels
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | radius | : the radius of the disk |
circleClose() : the SE is a disk of radius radius pixels
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | radius | : the radius of the disk |
RES_T rectangleDilate | ( | const Image< T > & | imIn, |
Image< T > & | imOut, | ||
int | side1, | ||
int | side2, | ||
double | theta = 0 |
||
) |
rectangleDilate() : generic dilation of imIn by a rectangle of sides side1 and side2, rotated by an angle theta.
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | side1 | : rectangle side |
[in] | side2 | : rectangle side |
[in] | theta | : angle between side1 and horizontal axis |
RES_T rectangleErode | ( | const Image< T > & | imIn, |
Image< T > & | imOut, | ||
int | side1, | ||
int | side2, | ||
double | theta = 0 |
||
) |
rectangleErode() : generic erosion of imIn by a rectangle of sides side1 and side2, rotated by an angle theta.
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | side1 | : rectangle side |
[in] | side2 | : rectangle side |
[in] | theta | : angle between side1 and horizontal axis |
RES_T rectangleOpen | ( | const Image< T > & | imIn, |
Image< T > & | imOut, | ||
int | side1, | ||
int | side2, | ||
double | theta = 0 |
||
) |
rectangleOpen() : generic opening of imIn by a rectangle of sides side1 and side2, rotated by an angle theta.
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | side1 | : rectangle side |
[in] | side2 | : rectangle side |
[in] | theta | : angle between side1 and horizontal axis |
RES_T rectangleClose | ( | const Image< T > & | imIn, |
Image< T > & | imOut, | ||
int | side1, | ||
int | side2, | ||
double | theta = 0 |
||
) |
rectangleClose() : generic closing of imIn by a rectangle of sides side1 and side2, rotated by an angle theta.
[in] | imIn | : input image |
[out] | imOut | : output image |
[in] | side1 | : rectangle side |
[in] | side2 | : rectangle side |
[in] | theta | : angle between side1 and horizontal axis |