![]() |
MDSTk Libraries
1.1.0
Medical Data Segmentation Toolkit
|
Canny edge detector in 3D space. More...
#include <mdsCanny.h>

Public Types | |
| enum | { TEMPLATE_PARAMETER_IS_NOT_VOLUME = V::CLASS_VOLUME } |
| Check that V is a volume. More... | |
| enum | { BLOCK_SIZE = 128 } |
| Size of the processing block (volume window). More... | |
| typedef CVolumeEdgeDetector< V > | base |
| Volume filter base. | |
| typedef base::tVolume | tVolume |
| Volume type. | |
| typedef base::tVoxel | tVoxel |
| Voxel type. | |
Public Member Functions | |
| CVolumeCanny (double dT1, double dT2) | |
| Default constructor. | |
| void | getThresholds (double &dT1, double &dT2) |
| Returns thresholds of the non-maximal suppression algorithm. | |
| bool | operator() (const tVolume &SrcVolume, tVolume &DstVolume) |
| Edge detection. | |
| void | setThresholds (double dT1, double dT2) |
| Sets thresholds of the non-maximal suppression algorithm. | |
| ~CVolumeCanny () | |
| Destructor. | |
Protected Member Functions | |
| bool | checkNeighbours (tVolume &Volume, tSize x, tSize y, tSize z, tVoxel T) |
| Returns true if any neighbouring voxel has greater value than a given threshold. | |
| void | hysteresis (tVolume &MagnitudeVolume, tVolume &Volume, tSize x, tSize y, tSize z, tSize XSize, tSize YSize, tSize ZSize, tVoxel T1, tVoxel T2) |
| Hystersis controlled by two given thresholds. | |
| void | nonMaxSuppression (const tVolume &GradVolumeX, const tVolume &GradVolumeY, const tVolume &GradVolumeZ, tVolume &MagnitudeVolume, tVolume &Volume, tSize x, tSize y, tSize z, tSize XSize, tSize YSize, tSize ZSize) |
| Non-maximal suppression. | |
Protected Attributes | |
| double | m_dT1 |
| Thresholds used by hysteresis algorithm. | |
| double | m_dT2 |
| CVolumeGauss3Filter< tVolume > | m_GaussFilter |
| Gaussian smoothing filter. | |
| CVolumeSobelX< tVolume, CShiftZero2Gray > | m_SobelX |
| Sobel operators. | |
| CVolumeSobelY< tVolume, CShiftZero2Gray > | m_SobelY |
| CVolumeSobelZ< tVolume, CShiftZero2Gray > | m_SobelZ |
Canny edge detector in 3D space.
| typedef CVolumeEdgeDetector<V> mds::img::CVolumeCanny< V >::base |
Volume filter base.
| typedef base::tVolume mds::img::CVolumeCanny< V >::tVolume |
Volume type.
Reimplemented from mds::img::CVolumeEdgeDetector< V >.
| typedef base::tVoxel mds::img::CVolumeCanny< V >::tVoxel |
Voxel type.
Reimplemented from mds::img::CVolumeEdgeDetector< V >.
anonymous enum [inherited] |
| anonymous enum |
| mds::img::CVolumeCanny< V >::CVolumeCanny | ( | double | dT1, |
| double | dT2 | ||
| ) |
Default constructor.
| mds::img::CVolumeCanny< V >::~CVolumeCanny | ( | ) |
Destructor.
| bool CVolumeCanny::checkNeighbours | ( | tVolume & | Volume, |
| tSize | x, | ||
| tSize | y, | ||
| tSize | z, | ||
| tVoxel | T | ||
| ) | [protected] |
Returns true if any neighbouring voxel has greater value than a given threshold.
| void CVolumeCanny::getThresholds | ( | double & | dT1, |
| double & | dT2 | ||
| ) |
Returns thresholds of the non-maximal suppression algorithm.
| void CVolumeCanny::hysteresis | ( | tVolume & | MagnitudeVolume, |
| tVolume & | Volume, | ||
| tSize | x, | ||
| tSize | y, | ||
| tSize | z, | ||
| tSize | XSize, | ||
| tSize | YSize, | ||
| tSize | ZSize, | ||
| tVoxel | T1, | ||
| tVoxel | T2 | ||
| ) | [protected] |
Hystersis controlled by two given thresholds.
| void CVolumeCanny::nonMaxSuppression | ( | const tVolume & | GradVolumeX, |
| const tVolume & | GradVolumeY, | ||
| const tVolume & | GradVolumeZ, | ||
| tVolume & | MagnitudeVolume, | ||
| tVolume & | Volume, | ||
| tSize | x, | ||
| tSize | y, | ||
| tSize | z, | ||
| tSize | XSize, | ||
| tSize | YSize, | ||
| tSize | ZSize | ||
| ) | [protected] |
Non-maximal suppression.
| bool CVolumeCanny::operator() | ( | const tVolume & | SrcVolume, |
| tVolume & | DstVolume | ||
| ) | [virtual] |
Edge detection.
Implements mds::img::CVolumeEdgeDetector< V >.
| void CVolumeCanny::setThresholds | ( | double | dT1, |
| double | dT2 | ||
| ) |
Sets thresholds of the non-maximal suppression algorithm.
double mds::img::CVolumeCanny< V >::m_dT1 [protected] |
Thresholds used by hysteresis algorithm.
double mds::img::CVolumeCanny< V >::m_dT2 [protected] |
CVolumeGauss3Filter<tVolume> mds::img::CVolumeCanny< V >::m_GaussFilter [protected] |
Gaussian smoothing filter.
CVolumeSobelX<tVolume, CShiftZero2Gray> mds::img::CVolumeCanny< V >::m_SobelX [protected] |
Sobel operators.
CVolumeSobelY<tVolume, CShiftZero2Gray> mds::img::CVolumeCanny< V >::m_SobelY [protected] |
CVolumeSobelZ<tVolume, CShiftZero2Gray> mds::img::CVolumeCanny< V >::m_SobelZ [protected] |
1.7.6.1