![]() |
IPSDK
4_1_0_2
IPSDK : Image Processing Software Development Kit
|
Detects edges in a 2d image using Canny's algorithm. More...
| IPSDKIPLFEATUREDETECTION_API image::ImagePtr | ipsdk::imaproc::fd::cannyEdges2dImg (const image::ImageConstPtr &pInGxImg, const image::ImageConstPtr &pInGyImg, const ipsdk::imaproc::attr::CannyThresholdsConstPtr &pThresholds) |
| wrapper function for detection of edges in images using Canny's algorithm More... | |
| IPSDKIPLFEATUREDETECTION_API void | ipsdk::imaproc::fd::cannyEdges2dImg (const image::ImageConstPtr &pInGxImg, const image::ImageConstPtr &pInGyImg, const ipsdk::imaproc::attr::CannyThresholdsConstPtr &pThresholds, const ipsdk::imaproc::attr::eProcessingOptimizationPolicy &inOptOptimizationPolicy, const image::ImagePtr &pOutImg) |
| wrapper function for detection of edges in images using Canny's algorithm More... | |
Detects edges in a 2d image using Canny's algorithm.
Detects edges in a 2d image using Canny's algorithm, and generates an output binary image, with pixels associated to the found contours in white, and the rest in black.
Given 2 gradient images (computed, for instance, thanks to Sobel Gradient 2d or Gaussian Gradient 2d), respectively along x (Gx image) and y-axis (Gy image), Canny edge detector can be decomposed into the following steps:
Here is an example of a Canny edge detector applied to the gradient images of an 8-bits grey levels input image (
, gradient images were computed applying a Sobel operator, with a half-kernel size=1, without normalization) :
Attribute description for algorithm :
| Name | ToolTip | Default Initializer |
|---|---|---|
| ipsdk::imaproc::attr::InGxGreyImg2d | [Input] 2d grey levels image of gradient computed along x-axis | X |
| ipsdk::imaproc::attr::InGyGreyImg2d | [Input] 2d grey levels image of gradient computed along y-axis | X |
| ipsdk::imaproc::attr::InCannyThresholds | [Input] low and high thresholds used for the Canny edges detection during the hysteresis phasis | X |
| ipsdk::imaproc::attr::InOptOptimizationPolicy | [Input Optional] processing optimization policy for algorithm | X |
| ipsdk::imaproc::attr::OutOptWk1BinImg | [Output Optional] Temporary working image for algorithm | X |
| ipsdk::imaproc::attr::OutOptWk2BinImg | [Output Optional] Temporary working image for algorithm | X |
| ipsdk::imaproc::attr::OutOptWk1LabelImg | [Output Optional] Temporary working image for algorithm | X |
| ipsdk::imaproc::attr::OutBinImg | [Output] binary image for processing operation | ipsdk::imaproc::duplicateInOut (_pOutBinImg, _pInGxGreyImg2d, ipsdk::image::eImageBufferType::eIBT_Binary) |
Global rule description for algorithm :
ipsdk::imaproc::matchSizeAndType (_pInGxGreyImg2d,_pInGyGreyImg2d) &&
ipsdk::imaproc::matchSize (_pInGxGreyImg2d,_pOutBinImg) &&
(ipsdk::processor::ifIsSet (
_pOutOptWk1BinImg, (
ipsdk::imaproc::matchSize (_pInGxGreyImg2d,_pOutOptWk1BinImg)))) &&
(ipsdk::processor::ifIsSet (
_pOutOptWk2BinImg, (
ipsdk::imaproc::matchSize (_pInGxGreyImg2d,_pOutOptWk2BinImg)))) &&
(ipsdk::processor::ifIsSet (
_pOutOptWk1LabelImg, (
ipsdk::imaproc::matchSize (_pInGxGreyImg2d,_pOutOptWk1LabelImg))))
| IPSDKIPLFEATUREDETECTION_API image::ImagePtr ipsdk::imaproc::fd::cannyEdges2dImg | ( | const image::ImageConstPtr & | pInGxImg, |
| const image::ImageConstPtr & | pInGyImg, | ||
| const ipsdk::imaproc::attr::CannyThresholdsConstPtr & | pThresholds | ||
| ) |
wrapper function for detection of edges in images using Canny's algorithm
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFEATUREDETECTION_API void ipsdk::imaproc::fd::cannyEdges2dImg | ( | const image::ImageConstPtr & | pInGxImg, |
| const image::ImageConstPtr & | pInGyImg, | ||
| const ipsdk::imaproc::attr::CannyThresholdsConstPtr & | pThresholds, | ||
| const ipsdk::imaproc::attr::eProcessingOptimizationPolicy & | inOptOptimizationPolicy, | ||
| const image::ImagePtr & | pOutImg | ||
| ) |
wrapper function for detection of edges in images using Canny's algorithm
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
1.8.14