![]() |
IPSDK
4_1_0_2
IPSDK : Image Processing Software Development Kit
|
local energy on a 2d image More...
| IPSDKIPLSTATS_API image::ImagePtr | ipsdk::imaproc::stats::localEnergy2dImg (const image::ImageConstPtr &pInImg, const ipUInt32 inHalfKnlSizeX, const ipUInt32 inHalfKnlSizeY) |
| wrapper function for local energy on a 2d image More... | |
| IPSDKIPLSTATS_API image::ImagePtr | ipsdk::imaproc::stats::localEnergy2dImg (const image::ImageConstPtr &pInImg, const ipUInt32 inHalfKnlSizeX, const ipUInt32 inHalfKnlSizeY, const ipUInt32 inOptNbClasses) |
| wrapper function for local energy on a 2d image More... | |
| IPSDKIPLSTATS_API void | ipsdk::imaproc::stats::localEnergy2dImg (const image::ImageConstPtr &pInImg, const ipUInt32 inHalfKnlSizeX, const ipUInt32 inHalfKnlSizeY, const ipUInt32 inOptNbClasses, const image::ImagePtr &pOutImg) |
| wrapper function for local energy on a 2d image More... | |
local energy on a 2d image
This algorithm computes for each pixel of the output image its associated local energy on a rectangular neighbourhood.
The more homogeneous is the neighbourhood, the higher will be the local energy.
Given an input image
, rectangular kernel half sizes
and
and a number of classes
, output image values are given by :
where
is the probability deduced from the neighbourhood histogram
by
.
The histogram is computed on the rectangular kernel, with the following parameters:
,
= minimum value of the whole input image,
= maximum value of the whole input image.The number of classes is an optional parameter of the algorithm. Its default value equals to 16. If the number of classes specified by the user exceeds the maximum allowed number of classes given the input image data type and dynamic range, it is automatically adjusted. For instance:
.The borders of the input image are handled by padding pixels with a mirror reflection of the border pixels in the input image (see Border policy for more details).
Here is an example of an output image computed from the LocalEnergy2dImg algorithm on a 8-bits grey level, with a kernel of size 3x3 pixels and 16 classes:
Attribute description for algorithm :
| Name | ToolTip | Default Initializer |
|---|---|---|
| ipsdk::imaproc::attr::InImg | [Input] image for processing operation | X |
| ipsdk::imaproc::attr::InHalfKnlSizeX | [Input] half kernel size along X axis for operation | X |
| ipsdk::imaproc::attr::InHalfKnlSizeY | [Input] half kernel size along Y axis for operation | X |
| ipsdk::imaproc::attr::InOptNbClasses | [Input Optional] number of classes | X |
| ipsdk::imaproc::attr::OutRealImg | [Output] image for processing operation (data contained in image buffer are reals) | ipsdk::imaproc::duplicateInOut (_pOutRealImg, _pInImg, image::eImageBufferType::eIBT_Real32) |
Global rule description for algorithm :
ipsdk::imaproc::matchSize (_pInImg,_pOutRealImg)
| IPSDKIPLSTATS_API image::ImagePtr ipsdk::imaproc::stats::localEnergy2dImg | ( | const image::ImageConstPtr & | pInImg, |
| const ipUInt32 | inHalfKnlSizeX, | ||
| const ipUInt32 | inHalfKnlSizeY | ||
| ) |
wrapper function for local energy on a 2d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLSTATS_API image::ImagePtr ipsdk::imaproc::stats::localEnergy2dImg | ( | const image::ImageConstPtr & | pInImg, |
| const ipUInt32 | inHalfKnlSizeX, | ||
| const ipUInt32 | inHalfKnlSizeY, | ||
| const ipUInt32 | inOptNbClasses | ||
| ) |
wrapper function for local energy on a 2d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
| IPSDKIPLSTATS_API void ipsdk::imaproc::stats::localEnergy2dImg | ( | const image::ImageConstPtr & | pInImg, |
| const ipUInt32 | inHalfKnlSizeX, | ||
| const ipUInt32 | inHalfKnlSizeY, | ||
| const ipUInt32 | inOptNbClasses, | ||
| const image::ImagePtr & | pOutImg | ||
| ) |
wrapper function for local energy on a 2d image
| ipsdk::processor::IPSDKBaseProcessingException | on failure |
1.8.14