![]() |
IPSDK
4_1_0_2
IPSDK : Image Processing Software Development Kit
|
Compute convolution of an input 2d image with a kernel. More...
| IPSDKIPLFILTERING_API image::ImagePtr | ipsdk::imaproc::filter::convolution2dImg (const image::ImageConstPtr &pInImg, const KernelXYConstPtr &pInKnlXY, const bool inNormalize) |
| wrapper function for convolution algorithm of input 2d image using a given kernel More... | |
| IPSDKIPLFILTERING_API image::ImagePtr | ipsdk::imaproc::filter::convolution2dImg (const image::ImageConstPtr &pInImg, const KernelXYConstPtr &pInKnlXY, const bool inNormalize, const image::Border2dPolicyConstPtr &pInOptConvolBorder2d) |
| wrapper function for convolution algorithm of input 2d image using a given kernel More... | |
| IPSDKIPLFILTERING_API void | ipsdk::imaproc::filter::convolution2dImg (const image::ImageConstPtr &pInImg, const KernelXYConstPtr &pInKnlXY, const bool inNormalize, const image::ImagePtr &pOutImg) |
| wrapper function for convolution algorithm of input 2d image using a given kernel More... | |
| IPSDKIPLFILTERING_API void | ipsdk::imaproc::filter::convolution2dImg (const image::ImageConstPtr &pInImg, const KernelXYConstPtr &pInKnlXY, const bool inNormalize, const image::Border2dPolicyConstPtr &pInOptConvolBorder2d, const image::ImagePtr &pOutImg) |
| wrapper function for convolution algorithm of input 2d image using a given kernel More... | |
Compute convolution of an input 2d image with a kernel.
See Kernels for a detailled documentation of kernels creation and management tools.
Given an input 2d kernel :
Where :
defines "negative" part of kernel elements along x axis (elements before central element)
defines "positive" part of kernel elements along x axis (elements after central element)
defines "negative" part of kernel elements along y axis (elements before central element)
defines "positive" part of kernel elements along y axis (elements after central element)
defines kernel size along x axis
defines kernel size along y axisExample of square kernel with
(unsharp making kernel) :
Example of square kernel with
and
(linear box filter kernel) :
On output image values are given by:
Input kernel coefficients can be normalized during processing if
value is set to
. In this case previous formula is modified into :
with :
Case of
is handled forcing its value to
to avoid null division.
Neighborhood border policy is controlled by
parameter. This parameter allows to control starting and ending rows/columns provided data during processing (see Border policy for more details).
Here is an example of a normalized convolution operation applied to an 8-bits grey levels input image with input kernel given by :
Attribute description for algorithm :
| Name | ToolTip | Default Initializer |
|---|---|---|
| ipsdk::imaproc::attr::InImg | [Input] image for processing operation | X |
| ipsdk::imaproc::attr::InKnlXY | [Input] kernel xy for processing operation | X |
| ipsdk::imaproc::attr::InNormalize | [Input] flag indicating whether convolution operation should be normalized (result divide by sum of abssolute values of kernel coefficients) | X |
| ipsdk::imaproc::attr::InOptConvolBorder2d | [Input Optional] Border preparation policy for 2d convolution algorithm | X |
| ipsdk::imaproc::attr::OutImg | [Output] image for processing operation | promoteUnary (_pOutImg, _pInImg, ipsdk::imaproc::ePromoteUnaryType::ePUT_UpperSigned) |
Global rule description for algorithm :
ipsdk::imaproc::matchSize (_pInImg,_pOutImg)
| IPSDKIPLFILTERING_API image::ImagePtr ipsdk::imaproc::filter::convolution2dImg | ( | const image::ImageConstPtr & | pInImg, |
| const KernelXYConstPtr & | pInKnlXY, | ||
| const bool | inNormalize | ||
| ) |
wrapper function for convolution algorithm of input 2d image using a given kernel
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFILTERING_API image::ImagePtr ipsdk::imaproc::filter::convolution2dImg | ( | const image::ImageConstPtr & | pInImg, |
| const KernelXYConstPtr & | pInKnlXY, | ||
| const bool | inNormalize, | ||
| const image::Border2dPolicyConstPtr & | pInOptConvolBorder2d | ||
| ) |
wrapper function for convolution algorithm of input 2d image using a given kernel
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFILTERING_API void ipsdk::imaproc::filter::convolution2dImg | ( | const image::ImageConstPtr & | pInImg, |
| const KernelXYConstPtr & | pInKnlXY, | ||
| const bool | inNormalize, | ||
| const image::ImagePtr & | pOutImg | ||
| ) |
wrapper function for convolution algorithm of input 2d image using a given kernel
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLFILTERING_API void ipsdk::imaproc::filter::convolution2dImg | ( | const image::ImageConstPtr & | pInImg, |
| const KernelXYConstPtr & | pInKnlXY, | ||
| const bool | inNormalize, | ||
| const image::Border2dPolicyConstPtr & | pInOptConvolBorder2d, | ||
| const image::ImagePtr & | pOutImg | ||
| ) |
wrapper function for convolution algorithm of input 2d image using a given kernel
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
1.8.14