Kernel for use in convolution operations. More...
#include <eVision/EasyImage/EKernel.h>
Public Member Functions | |
| EKernel () | |
| Constructs an EKernel object to be used with the EasyImage::ConvolKernel method. | |
| EKernel (int16_t sizeX, int16_t sizeY, float gain, uint32_t offset, eVision::EKernelRectifier rectifier, uint32_t outsideValue) | |
| Constructs an EKernel object to be used with the EasyImage::ConvolKernel method. | |
| EKernel (eVision::EKernelType KernelType) | |
| Constructs an EKernel object to be used with the EasyImage::ConvolKernel method. | |
| virtual | ~EKernel () throw () |
| int16_t | GetSizeX () const |
| Number of coefficients along a row. | |
| int16_t | GetSizeY () const |
| Number of coefficients along a column. | |
| float | GetGain () const |
| Global gain. | |
| uint32_t | GetOffset () const |
| Global offset (a constant added to the convolution result). | |
| eVision::EKernelRectifier | GetRectifier () const |
| Rectification mode. This property allows specifying how negative convolution result values are handled. | |
| uint32_t | GetOutsideValue () const |
| Out-of-limits image value (only influences the result along image edges). | |
| void * | GetRawDataPtr () |
| Pointer to the upper left convolution coefficient. | |
| float | GetKernelData (int32_t columnIndex, int32_t rowIndex) |
| Returns the convolution coefficient of given indices. | |
| void | GetKernelData (int32_t columnIndex, int32_t rowIndex, float &coefficientValue) |
| Returns the convolution coefficient of given indices. | |
| void | SetKernelData (int32_t columnIndex, int32_t rowIndex, float coefficientValue) |
| Sets the convolution coefficient values at the given indices. | |
| void | SetKernelData (float coefficientValue00, float coefficientValue10, float coefficientValue20, float coefficientValue01, float coefficientValue11, float coefficientValue21, float coefficientValue02, float coefficientValue12, float coefficientValue22) |
| Sets the convolution coefficient values at the given indices. | |
| void | SetKernelData (float coefficientValue00, float coefficientValue10, float coefficientValue20, float coefficientValue30, float coefficientValue40, float coefficientValue01, float coefficientValue11, float coefficientValue21, float coefficientValue31, float coefficientValue41, float coefficientValue02, float coefficientValue12, float coefficientValue22, float coefficientValue32, float coefficientValue42, float coefficientValue03, float coefficientValue13, float coefficientValue23, float coefficientValue33, float coefficientValue43, float coefficientValue04, float coefficientValue14, float coefficientValue24, float coefficientValue34, float coefficientValue44) |
| Sets the convolution coefficient values at the given indices. | |
| void | SetKernelData (float coefficientValue00, float coefficientValue10, float coefficientValue20, float coefficientValue30, float coefficientValue40, float coefficientValue50, float coefficientValue60, float coefficientValue01, float coefficientValue11, float coefficientValue21, float coefficientValue31, float coefficientValue41, float coefficientValue51, float coefficientValue61, float coefficientValue02, float coefficientValue12, float coefficientValue22, float coefficientValue32, float coefficientValue42, float coefficientValue52, float coefficientValue62, float coefficientValue03, float coefficientValue13, float coefficientValue23, float coefficientValue33, float coefficientValue43, float coefficientValue53, float coefficientValue63, float coefficientValue04, float coefficientValue14, float coefficientValue24, float coefficientValue34, float coefficientValue44, float coefficientValue54, float coefficientValue64, float coefficientValue05, float coefficientValue15, float coefficientValue25, float coefficientValue35, float coefficientValue45, float coefficientValue55, float coefficientValue65, float coefficientValue06, float coefficientValue16, float coefficientValue26, float coefficientValue36, float coefficientValue46, float coefficientValue56, float coefficientValue66) |
| Sets the convolution coefficient values at the given indices. | |
| void | SetSize (int16_t n16SizeX, int16_t n16SizeY) |
| Sets the number of coefficients along a row and along a column. | |
| void | SetGain (float f32Gain) |
| Global gain. | |
| void | SetOffset (uint32_t un32Offset) |
| Global offset (a constant added to the convolution result). | |
| void | SetRectifier (eVision::EKernelRectifier rectifier) |
| Rectification mode. This property allows specifying how negative convolution result values are handled. | |
| void | SetOutsideValue (uint32_t un32OutsideValue) |
| Out-of-limits image value (only influences the result along image edges). | |
| EKernel (CppWrapperInternal::InternalConstructor) | |
Public Attributes | |
| CppWrapperInternal::WrappedClass | wrappedClass_ |
Kernel for use in convolution operations.
License(s): EasyImage
| eVision::EKernel::EKernel | ( | ) |
Constructs an EKernel object to be used with the EasyImage::ConvolKernel method.
The default constructor constructs a void kernel. A void kernel has no associated convolution coefficients. The sizing constructor constructs a kernel of given size and global parameters. The third constructor constructs a kernel of a predefined type. The kernel will be normalized by the sum of its components before applying the gain.
| eVision::EKernel::EKernel | ( | int16_t | sizeX, |
| int16_t | sizeY, | ||
| float | gain, | ||
| uint32_t | offset, | ||
| eVision::EKernelRectifier | rectifier, | ||
| uint32_t | outsideValue ) |
Constructs an EKernel object to be used with the EasyImage::ConvolKernel method.
| sizeX | Number of coefficients along a row. |
| sizeY | Number of coefficients along a column. |
| gain | Global gain of the kernel. The kernel is normalized by the sum of its components then multiplied by the gain. |
| offset | Global offset. |
| rectifier | Rectification mode, as defined by EKernelRectifier. |
| outsideValue | Out-of-limits image value. |
The default constructor constructs a void kernel. A void kernel has no associated convolution coefficients. The sizing constructor constructs a kernel of given size and global parameters. The third constructor constructs a kernel of a predefined type. The kernel will be normalized by the sum of its components before applying the gain.
| eVision::EKernel::EKernel | ( | eVision::EKernelType | KernelType | ) |
Constructs an EKernel object to be used with the EasyImage::ConvolKernel method.
| KernelType | Kernel type, as defined by EKernelType. |
The default constructor constructs a void kernel. A void kernel has no associated convolution coefficients. The sizing constructor constructs a kernel of given size and global parameters. The third constructor constructs a kernel of a predefined type. The kernel will be normalized by the sum of its components before applying the gain.
|
virtual | ||||||||||||
| eVision::EKernel::EKernel | ( | CppWrapperInternal::InternalConstructor | ) |
| float eVision::EKernel::GetGain | ( | ) | const |
Global gain.
Before the global gain is applied, the coefficients are normalized so that their sum equals one, unless their sum equals zero (as is the case for a derivation operator). The rectification enables to handle the negative values that may appear after convolution.
| float eVision::EKernel::GetKernelData | ( | int32_t | columnIndex, |
| int32_t | rowIndex ) |
Returns the convolution coefficient of given indices.
| columnIndex | Column index, from 0 on, increasing rightwards. |
| rowIndex | Row index, from 0 on, increasing downwards. |
| void eVision::EKernel::GetKernelData | ( | int32_t | columnIndex, |
| int32_t | rowIndex, | ||
| float & | coefficientValue ) |
Returns the convolution coefficient of given indices.
| columnIndex | Column index, from 0 on, increasing rightwards. |
| rowIndex | Row index, from 0 on, increasing downwards. |
| coefficientValue | Reference to the coefficient value. |
| uint32_t eVision::EKernel::GetOffset | ( | ) | const |
Global offset (a constant added to the convolution result).
| uint32_t eVision::EKernel::GetOutsideValue | ( | ) | const |
Out-of-limits image value (only influences the result along image edges).
| void * eVision::EKernel::GetRawDataPtr | ( | ) |
Pointer to the upper left convolution coefficient.
This pointer is actually the base address of a float array containing all coefficients.
| eVision::EKernelRectifier eVision::EKernel::GetRectifier | ( | ) | const |
Rectification mode. This property allows specifying how negative convolution result values are handled.
| int16_t eVision::EKernel::GetSizeX | ( | ) | const |
Number of coefficients along a row.
| int16_t eVision::EKernel::GetSizeY | ( | ) | const |
Number of coefficients along a column.
| void eVision::EKernel::SetGain | ( | float | f32Gain | ) |
Global gain.
Before the global gain is applied, the coefficients are normalized so that their sum equals one, unless their sum equals zero (as is the case for a derivation operator). The rectification enables to handle the negative values that may appear after convolution.
| void eVision::EKernel::SetKernelData | ( | float | coefficientValue00, |
| float | coefficientValue10, | ||
| float | coefficientValue20, | ||
| float | coefficientValue01, | ||
| float | coefficientValue11, | ||
| float | coefficientValue21, | ||
| float | coefficientValue02, | ||
| float | coefficientValue12, | ||
| float | coefficientValue22 ) |
Sets the convolution coefficient values at the given indices.
| coefficientValue00 | Coefficient value at corresponding column and row indices. |
| coefficientValue10 | Coefficient value at corresponding column and row indices. |
| coefficientValue20 | Coefficient value at corresponding column and row indices. |
| coefficientValue01 | Coefficient value at corresponding column and row indices. |
| coefficientValue11 | Coefficient value at corresponding column and row indices. |
| coefficientValue21 | Coefficient value at corresponding column and row indices. |
| coefficientValue02 | Coefficient value at corresponding column and row indices. |
| coefficientValue12 | Coefficient value at corresponding column and row indices. |
| coefficientValue22 | Coefficient value at corresponding column and row indices. |
The function can also set the coefficient values for 3x3, 5x5 and 7x7 kernels.
| void eVision::EKernel::SetKernelData | ( | float | coefficientValue00, |
| float | coefficientValue10, | ||
| float | coefficientValue20, | ||
| float | coefficientValue30, | ||
| float | coefficientValue40, | ||
| float | coefficientValue01, | ||
| float | coefficientValue11, | ||
| float | coefficientValue21, | ||
| float | coefficientValue31, | ||
| float | coefficientValue41, | ||
| float | coefficientValue02, | ||
| float | coefficientValue12, | ||
| float | coefficientValue22, | ||
| float | coefficientValue32, | ||
| float | coefficientValue42, | ||
| float | coefficientValue03, | ||
| float | coefficientValue13, | ||
| float | coefficientValue23, | ||
| float | coefficientValue33, | ||
| float | coefficientValue43, | ||
| float | coefficientValue04, | ||
| float | coefficientValue14, | ||
| float | coefficientValue24, | ||
| float | coefficientValue34, | ||
| float | coefficientValue44 ) |
Sets the convolution coefficient values at the given indices.
| coefficientValue00 | Coefficient value at corresponding column and row indices. |
| coefficientValue10 | Coefficient value at corresponding column and row indices. |
| coefficientValue20 | Coefficient value at corresponding column and row indices. |
| coefficientValue30 | Coefficient value at corresponding column and row indices. |
| coefficientValue40 | Coefficient value at corresponding column and row indices. |
| coefficientValue01 | Coefficient value at corresponding column and row indices. |
| coefficientValue11 | Coefficient value at corresponding column and row indices. |
| coefficientValue21 | Coefficient value at corresponding column and row indices. |
| coefficientValue31 | Coefficient value at corresponding column and row indices. |
| coefficientValue41 | Coefficient value at corresponding column and row indices. |
| coefficientValue02 | Coefficient value at corresponding column and row indices. |
| coefficientValue12 | Coefficient value at corresponding column and row indices. |
| coefficientValue22 | Coefficient value at corresponding column and row indices. |
| coefficientValue32 | Coefficient value at corresponding column and row indices. |
| coefficientValue42 | Coefficient value at corresponding column and row indices. |
| coefficientValue03 | Coefficient value at corresponding column and row indices. |
| coefficientValue13 | Coefficient value at corresponding column and row indices. |
| coefficientValue23 | Coefficient value at corresponding column and row indices. |
| coefficientValue33 | Coefficient value at corresponding column and row indices. |
| coefficientValue43 | Coefficient value at corresponding column and row indices. |
| coefficientValue04 | Coefficient value at corresponding column and row indices. |
| coefficientValue14 | Coefficient value at corresponding column and row indices. |
| coefficientValue24 | Coefficient value at corresponding column and row indices. |
| coefficientValue34 | Coefficient value at corresponding column and row indices. |
| coefficientValue44 | Coefficient value at corresponding column and row indices. |
The function can also set the coefficient values for 3x3, 5x5 and 7x7 kernels.
| void eVision::EKernel::SetKernelData | ( | float | coefficientValue00, |
| float | coefficientValue10, | ||
| float | coefficientValue20, | ||
| float | coefficientValue30, | ||
| float | coefficientValue40, | ||
| float | coefficientValue50, | ||
| float | coefficientValue60, | ||
| float | coefficientValue01, | ||
| float | coefficientValue11, | ||
| float | coefficientValue21, | ||
| float | coefficientValue31, | ||
| float | coefficientValue41, | ||
| float | coefficientValue51, | ||
| float | coefficientValue61, | ||
| float | coefficientValue02, | ||
| float | coefficientValue12, | ||
| float | coefficientValue22, | ||
| float | coefficientValue32, | ||
| float | coefficientValue42, | ||
| float | coefficientValue52, | ||
| float | coefficientValue62, | ||
| float | coefficientValue03, | ||
| float | coefficientValue13, | ||
| float | coefficientValue23, | ||
| float | coefficientValue33, | ||
| float | coefficientValue43, | ||
| float | coefficientValue53, | ||
| float | coefficientValue63, | ||
| float | coefficientValue04, | ||
| float | coefficientValue14, | ||
| float | coefficientValue24, | ||
| float | coefficientValue34, | ||
| float | coefficientValue44, | ||
| float | coefficientValue54, | ||
| float | coefficientValue64, | ||
| float | coefficientValue05, | ||
| float | coefficientValue15, | ||
| float | coefficientValue25, | ||
| float | coefficientValue35, | ||
| float | coefficientValue45, | ||
| float | coefficientValue55, | ||
| float | coefficientValue65, | ||
| float | coefficientValue06, | ||
| float | coefficientValue16, | ||
| float | coefficientValue26, | ||
| float | coefficientValue36, | ||
| float | coefficientValue46, | ||
| float | coefficientValue56, | ||
| float | coefficientValue66 ) |
Sets the convolution coefficient values at the given indices.
| coefficientValue00 | Coefficient value at corresponding column and row indices. |
| coefficientValue10 | Coefficient value at corresponding column and row indices. |
| coefficientValue20 | Coefficient value at corresponding column and row indices. |
| coefficientValue30 | Coefficient value at corresponding column and row indices. |
| coefficientValue40 | Coefficient value at corresponding column and row indices. |
| coefficientValue50 | Coefficient value at corresponding column and row indices. |
| coefficientValue60 | Coefficient value at corresponding column and row indices. |
| coefficientValue01 | Coefficient value at corresponding column and row indices. |
| coefficientValue11 | Coefficient value at corresponding column and row indices. |
| coefficientValue21 | Coefficient value at corresponding column and row indices. |
| coefficientValue31 | Coefficient value at corresponding column and row indices. |
| coefficientValue41 | Coefficient value at corresponding column and row indices. |
| coefficientValue51 | Coefficient value at corresponding column and row indices. |
| coefficientValue61 | Coefficient value at corresponding column and row indices. |
| coefficientValue02 | Coefficient value at corresponding column and row indices. |
| coefficientValue12 | Coefficient value at corresponding column and row indices. |
| coefficientValue22 | Coefficient value at corresponding column and row indices. |
| coefficientValue32 | Coefficient value at corresponding column and row indices. |
| coefficientValue42 | Coefficient value at corresponding column and row indices. |
| coefficientValue52 | Coefficient value at corresponding column and row indices. |
| coefficientValue62 | Coefficient value at corresponding column and row indices. |
| coefficientValue03 | Coefficient value at corresponding column and row indices. |
| coefficientValue13 | Coefficient value at corresponding column and row indices. |
| coefficientValue23 | Coefficient value at corresponding column and row indices. |
| coefficientValue33 | Coefficient value at corresponding column and row indices. |
| coefficientValue43 | Coefficient value at corresponding column and row indices. |
| coefficientValue53 | Coefficient value at corresponding column and row indices. |
| coefficientValue63 | Coefficient value at corresponding column and row indices. |
| coefficientValue04 | Coefficient value at corresponding column and row indices. |
| coefficientValue14 | Coefficient value at corresponding column and row indices. |
| coefficientValue24 | Coefficient value at corresponding column and row indices. |
| coefficientValue34 | Coefficient value at corresponding column and row indices. |
| coefficientValue44 | Coefficient value at corresponding column and row indices. |
| coefficientValue54 | Coefficient value at corresponding column and row indices. |
| coefficientValue64 | Coefficient value at corresponding column and row indices. |
| coefficientValue05 | Coefficient value at corresponding column and row indices. |
| coefficientValue15 | Coefficient value at corresponding column and row indices. |
| coefficientValue25 | Coefficient value at corresponding column and row indices. |
| coefficientValue35 | Coefficient value at corresponding column and row indices. |
| coefficientValue45 | Coefficient value at corresponding column and row indices. |
| coefficientValue55 | Coefficient value at corresponding column and row indices. |
| coefficientValue65 | Coefficient value at corresponding column and row indices. |
| coefficientValue06 | Coefficient value at corresponding column and row indices. |
| coefficientValue16 | Coefficient value at corresponding column and row indices. |
| coefficientValue26 | Coefficient value at corresponding column and row indices. |
| coefficientValue36 | Coefficient value at corresponding column and row indices. |
| coefficientValue46 | Coefficient value at corresponding column and row indices. |
| coefficientValue56 | Coefficient value at corresponding column and row indices. |
| coefficientValue66 | Coefficient value at corresponding column and row indices. |
The function can also set the coefficient values for 3x3, 5x5 and 7x7 kernels.
| void eVision::EKernel::SetKernelData | ( | int32_t | columnIndex, |
| int32_t | rowIndex, | ||
| float | coefficientValue ) |
Sets the convolution coefficient values at the given indices.
| columnIndex | Column index, from 0 on, increasing rightwards. |
| rowIndex | Row index, from 0 on, increasing downwards. |
| coefficientValue | New coefficientValue. |
The function can also set the coefficient values for 3x3, 5x5 and 7x7 kernels.
| void eVision::EKernel::SetOffset | ( | uint32_t | un32Offset | ) |
Global offset (a constant added to the convolution result).
| void eVision::EKernel::SetOutsideValue | ( | uint32_t | un32OutsideValue | ) |
Out-of-limits image value (only influences the result along image edges).
| void eVision::EKernel::SetRectifier | ( | eVision::EKernelRectifier | rectifier | ) |
Rectification mode. This property allows specifying how negative convolution result values are handled.
| void eVision::EKernel::SetSize | ( | int16_t | n16SizeX, |
| int16_t | n16SizeY ) |
Sets the number of coefficients along a row and along a column.
| n16SizeX | The number of coefficients along a row. |
| n16SizeY | The number of coefficients along a column. |
| CppWrapperInternal::WrappedClass eVision::EKernel::wrappedClass_ |