Back to FabImage Library website
You are here: Start » Function Reference » Image » Image Local Transforms » DifferenceOfGaussians

DifferenceOfGaussians
Header: | FIL.h |
---|---|
Namespace: | fil |
Module: | FoundationBasic |
Applies difference of Gaussians on an image, i.e. computes difference of two Gaussian smoothed images.
Applications: Emphasizes high-frequency image features such as lines or patches / dots.
Syntax
C++
C#
void fil::DifferenceOfGaussians ( const fil::Image& inImage, ftl::Optional<const fil::Region&> inRoi, float inStdDev, float inStdDevRatio, float inKernelRelativeSize, float inScale, fil::Image& outImage, fil::Profile& diagKernelShape )
Parameters
Name | Type | Range | Default | Description | |
---|---|---|---|---|---|
![]() |
inImage | const Image& | Input image | ||
![]() |
inRoi | Optional<const Region&> | NIL | Range of output pixels to be computed | |
![]() |
inStdDev | float | 0.0 - ![]() |
3.0f | Smoothing standard deviation for the smaller kernel |
![]() |
inStdDevRatio | float | 1.0 - ![]() |
1.6f | Defines how many times larger is the second kernel |
![]() |
inKernelRelativeSize | float | 0.0 - 3.0 | 3.0f | A multiple of the standard deviation determining the size of the kernel |
![]() |
inScale | float | 1.0f | Output image scaling factor | |
![]() |
outImage | Image& | Output image | ||
![]() |
diagKernelShape | Profile& | Middle row of the kernel being used |
Hardware Acceleration
This operation is optimized for SSE2 technology for pixels of types: UINT8, SINT16, REAL.
This operation is optimized for SSE41 technology for pixels of type: UINT16.
This operation is optimized for AVX2 technology for pixels of types: UINT8, SINT16, UINT16, REAL.
This operation supports automatic parallelization for multicore and multiprocessor systems.
Errors
List of possible exceptions:
Error type | Description |
---|---|
DomainError | Region exceeds an input image in DifferenceOfGaussians. |