Back to Aurora Vision Library website

You are here: Start » Function Reference » Image » Image Local Transforms » SmoothImage_Gauss

SmoothImage_Gauss


Header: AVL.h
Namespace: avl
Module: FoundationLite

Smooths an image using a gaussian kernel.

Applications: Removal of gaussian noise from images.

Syntax

C++
C#
 
void avl::SmoothImage_Gauss
(
	const avl::Image& inImage,
	atl::Optional<const avl::Region&> inRoi,
	float inStdDevX,
	atl::Optional<float> inStdDevY,
	const float inKernelRelativeSize,
	avl::Image& outImage,
	int& diagKernelRadiusX,
	int& diagKernelRadiusY
)

Parameters

Name Type Range Default Description
Input value inImage const Image& Input image
Input value inRoi Optional<const Region&> NIL Range of output pixels to be computed
Input value inStdDevX float 0.0 - 1.0f Horizontal smoothing standard deviation
Input value inStdDevY Optional<float> 0.0 - NIL Vertical smoothing standard deviation
Input value inKernelRelativeSize const float 0.0 - 3.0 2.0f A multiple of the standard deviation determining the size of the kernel
Output value outImage Image& Output image
Diagnostic input diagKernelRadiusX int& Horizontal radius of Gaussian kernel being used
Diagnostic input diagKernelRadiusY int& Vertical radius of Gaussian kernel being used

Hints

  • To make smoothing stronger, increase the inStdDevX and - optionally - inStdDevY.
  • Increase inKernelRelativeSize to achieve better quality at the cost of a bit longer execution time.
  • For small kernels consider switching to SmoothImage_Gauss_Mask to achieve the highest performance.

Examples

SmoothImage_Gauss performed on a sample image with inStdDevX = 3.0.

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 is optimized for NEON 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 SmoothImage_Gauss.