![]() |
IPSDK
4_1_0_2
IPSDK : Image Processing Software Development Kit
|
Compute X, Y and Z gradients of an input image convolving it with 3d Gaussian kernels. More...
| IPSDKIPLFILTERING_API GradientXYZImg | ipsdk::imaproc::filter::gaussianGradient3dImg (const image::ImageConstPtr &pInImg3d, const ipReal32 inStdDev) |
| wrapper function for Gaussian filter used to compute gradient on a 3d image More... | |
| IPSDKIPLFILTERING_API GradientXYZImg | ipsdk::imaproc::filter::gaussianGradient3dImg (const image::ImageConstPtr &pInImg3d, const ipReal32 inStdDevX, const ipReal32 inStdDevY, const ipReal32 inStdDevZ, const attr::GaussianCoverageConstPtr &pInOptGradientGaussianCoverage) |
| wrapper function for Gaussian filter used to compute gradient on a 3d image More... | |
| IPSDKIPLFILTERING_API void | ipsdk::imaproc::filter::gaussianGradient3dImg (const image::ImageConstPtr &pInImg3d, const ipReal32 inStdDevX, const ipReal32 inStdDevY, const ipReal32 inStdDevZ, const attr::GaussianCoverageConstPtr &pInOptGradientGaussianCoverage, const image::ImagePtr &pOutOptGradXImg3d, const image::ImagePtr &pOutOptGradYImg3d, const image::ImagePtr &pOutOptGradZImg3d) |
| wrapper function for Gaussian filter used to compute gradient on a 3d image More... | |
| IPSDKIPLFILTERING_API image::ImagePtr | ipsdk::imaproc::filter::gaussianXGradient3dImg (const image::ImageConstPtr &pInImg3d, const ipReal32 inStdDev) |
| wrapper function for Gaussian filter used to compute gradient along x axis on a 3d image More... | |
| IPSDKIPLFILTERING_API void | ipsdk::imaproc::filter::gaussianXGradient3dImg (const image::ImageConstPtr &pInImg3d, const ipReal32 inStdDev, const attr::GaussianCoverageConstPtr &pInOptGradientGaussianCoverage, const image::ImagePtr &pOutOptGradXImg3d) |
| wrapper function for Gaussian filter used to compute gradient along x axis on a 3d image More... | |
| IPSDKIPLFILTERING_API image::ImagePtr | ipsdk::imaproc::filter::gaussianYGradient3dImg (const image::ImageConstPtr &pInImg3d, const ipReal32 inStdDev) |
| wrapper function for Gaussian filter used to compute gradient along y axis on a 3d image More... | |
| IPSDKIPLFILTERING_API void | ipsdk::imaproc::filter::gaussianYGradient3dImg (const image::ImageConstPtr &pInImg3d, const ipReal32 inStdDev, const attr::GaussianCoverageConstPtr &pInOptGradientGaussianCoverage, const image::ImagePtr &pOutOptGradYImg3d) |
| wrapper function for Gaussian filter used to compute gradient along y axis on a 3d image More... | |
| IPSDKIPLFILTERING_API image::ImagePtr | ipsdk::imaproc::filter::gaussianZGradient3dImg (const image::ImageConstPtr &pInImg3d, const ipReal32 inStdDev) |
| wrapper function for Gaussian filter used to compute gradient along z axis on a 3d image More... | |
| IPSDKIPLFILTERING_API void | ipsdk::imaproc::filter::gaussianZGradient3dImg (const image::ImageConstPtr &pInImg3d, const ipReal32 inStdDev, const attr::GaussianCoverageConstPtr &pInOptGradientGaussianCoverage, const image::ImagePtr &pOutOptGradZImg3d) |
| wrapper function for Gaussian filter used to compute gradient along z axis on a 3d image More... | |
Compute X, Y and Z gradients of an input image convolving it with 3d Gaussian kernels.
Used Gaussian kernels
,
and
coefficients are defined as follow :
where :
is defined by InStdDev attributeSize
of this finite kernel is controlled by InOptGradientGaussianCoverage attribute.
This parameter defined the minimum distribution spread ratio which should be reach regards to an infinite Gaussian distribution.
We define for example
such that :
where :
On output image values are given by:
A detailled analysis of this filter has been done in J. Canny (1986) "A computational approach to edge detection", IEEE Trans. Pattern Analysis and Machine Intelligence, vol 8, pages 679-714.
Output images OutOptGradXImg3d, OutOptGradYImg3d and OutOptGradZImg3d are optional (at least one must be provided). Input and output images must have same size.
Here is an example of a Gaussian gradient operation applied to an 8-bits grey levels input image (with
):
Attribute description for algorithm :
| Name | ToolTip | Default Initializer |
|---|---|---|
| ipsdk::imaproc::attr::InImg3d | [Input] 3d image for operation | X |
| ipsdk::imaproc::attr::InStdDevX | [Input] standard deviation used for operation along X axis | X |
| ipsdk::imaproc::attr::InStdDevY | [Input] standard deviation used for operation along Z axis | X |
| ipsdk::imaproc::attr::InStdDevZ | [Input] standard deviation used for operation along Z axis | X |
| ipsdk::imaproc::attr::InOptGradientGaussianCoverage | [Input Optional] Parameter allowing to specify a gaussian distribution coverage for processing | X |
| ipsdk::imaproc::attr::OutOptGradXImg3d | [Output Optional] 3d image associated to X component of gradient computation | promoteUnary (_pOutOptGradXImg3d, _pInImg3d, ipsdk::imaproc::ePromoteUnaryType::ePUT_UpperSigned) |
| ipsdk::imaproc::attr::OutOptGradYImg3d | [Output Optional] 3d image associated to Y component of gradient computation | promoteUnary (_pOutOptGradYImg3d, _pInImg3d, ipsdk::imaproc::ePromoteUnaryType::ePUT_UpperSigned) |
| ipsdk::imaproc::attr::OutOptGradZImg3d | [Output Optional] 3d image associated to Z component of gradient computation | promoteUnary (_pOutOptGradZImg3d, _pInImg3d, ipsdk::imaproc::ePromoteUnaryType::ePUT_UpperSigned) |
Global rule description for algorithm :
((ipsdk::processor::isSet (_pOutOptGradXImg3d) ||
ipsdk::processor::isSet (_pOutOptGradYImg3d) ||
ipsdk::processor::isSet (_pOutOptGradZImg3d)) &&
(ipsdk::processor::ifIsSet (_pOutOptGradXImg3d,
ipsdk::imaproc::matchSize (_pInImg3d,_pOutOptGradXImg3d))) &&
(ipsdk::processor::ifIsSet (_pOutOptGradYImg3d,
ipsdk::imaproc::matchSize (_pInImg3d,_pOutOptGradYImg3d))) &&
(ipsdk::processor::ifIsSet (_pOutOptGradZImg3d,
ipsdk::imaproc::matchSize (_pInImg3d,_pOutOptGradZImg3d))))
| IPSDKIPLFILTERING_API GradientXYZImg ipsdk::imaproc::filter::gaussianGradient3dImg | ( | const image::ImageConstPtr & | pInImg3d, |
| const ipReal32 | inStdDev | ||
| ) |
wrapper function for Gaussian filter used to compute gradient on a 3d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFILTERING_API image::ImagePtr ipsdk::imaproc::filter::gaussianXGradient3dImg | ( | const image::ImageConstPtr & | pInImg3d, |
| const ipReal32 | inStdDev | ||
| ) |
wrapper function for Gaussian filter used to compute gradient along x axis on a 3d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFILTERING_API image::ImagePtr ipsdk::imaproc::filter::gaussianYGradient3dImg | ( | const image::ImageConstPtr & | pInImg3d, |
| const ipReal32 | inStdDev | ||
| ) |
wrapper function for Gaussian filter used to compute gradient along y axis on a 3d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFILTERING_API image::ImagePtr ipsdk::imaproc::filter::gaussianZGradient3dImg | ( | const image::ImageConstPtr & | pInImg3d, |
| const ipReal32 | inStdDev | ||
| ) |
wrapper function for Gaussian filter used to compute gradient along z axis on a 3d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFILTERING_API GradientXYZImg ipsdk::imaproc::filter::gaussianGradient3dImg | ( | const image::ImageConstPtr & | pInImg3d, |
| const ipReal32 | inStdDevX, | ||
| const ipReal32 | inStdDevY, | ||
| const ipReal32 | inStdDevZ, | ||
| const attr::GaussianCoverageConstPtr & | pInOptGradientGaussianCoverage | ||
| ) |
wrapper function for Gaussian filter used to compute gradient on a 3d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFILTERING_API void ipsdk::imaproc::filter::gaussianGradient3dImg | ( | const image::ImageConstPtr & | pInImg3d, |
| const ipReal32 | inStdDevX, | ||
| const ipReal32 | inStdDevY, | ||
| const ipReal32 | inStdDevZ, | ||
| const attr::GaussianCoverageConstPtr & | pInOptGradientGaussianCoverage, | ||
| const image::ImagePtr & | pOutOptGradXImg3d, | ||
| const image::ImagePtr & | pOutOptGradYImg3d, | ||
| const image::ImagePtr & | pOutOptGradZImg3d | ||
| ) |
wrapper function for Gaussian filter used to compute gradient on a 3d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFILTERING_API void ipsdk::imaproc::filter::gaussianXGradient3dImg | ( | const image::ImageConstPtr & | pInImg3d, |
| const ipReal32 | inStdDev, | ||
| const attr::GaussianCoverageConstPtr & | pInOptGradientGaussianCoverage, | ||
| const image::ImagePtr & | pOutOptGradXImg3d | ||
| ) |
wrapper function for Gaussian filter used to compute gradient along x axis on a 3d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFILTERING_API void ipsdk::imaproc::filter::gaussianYGradient3dImg | ( | const image::ImageConstPtr & | pInImg3d, |
| const ipReal32 | inStdDev, | ||
| const attr::GaussianCoverageConstPtr & | pInOptGradientGaussianCoverage, | ||
| const image::ImagePtr & | pOutOptGradYImg3d | ||
| ) |
wrapper function for Gaussian filter used to compute gradient along y axis on a 3d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFILTERING_API void ipsdk::imaproc::filter::gaussianZGradient3dImg | ( | const image::ImageConstPtr & | pInImg3d, |
| const ipReal32 | inStdDev, | ||
| const attr::GaussianCoverageConstPtr & | pInOptGradientGaussianCoverage, | ||
| const image::ImagePtr & | pOutOptGradZImg3d | ||
| ) |
wrapper function for Gaussian filter used to compute gradient along z axis on a 3d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
1.8.14