Back to Adaptive Vision Library website

You are here: Start » Function Reference » Image Point Transforms » DivideImage

DivideImage


Divides each pixel by a scalar value.

Syntax

C++
C#
 
void avl::DivideImage
(
	const avl::Image& inImage,
	atl::Optional<const avl::Region&> inRoi,
	float inValue,
	avl::Image& outImage
)

Parameters

Name Type Default Description
inImage const Image& Input image
inRoi Optional<const Region&> NIL Range of pixels to be processed
inValue float 2.0f Divisor
outImage Image& Output image

Description

The operation decreases the brightness of the inImage dividing each of its pixels by a fixed value.

\forall_{i,j} \text{\textbf{OutImage} }_{i,j} = \frac{\text{\textbf{InImage} }_{i,j} }{\text{\textbf{inValue} } }

Whenever the resulting value exceeds the range of pixel values, it is clipped to the nearest proper value.

Examples

DivideImage performed on the sample image with inValue = 2.0.

In-place Processing

This function supports in-place data processing - you can pass the same reference to inImage and outImage

Hardware Acceleration

This operation is optimized for SSE2 technology for pixels of types: UINT8, SINT8, SINT16, REAL.

This operation supports automatic parallelization for multicore and multiprocessor systems.

Errors

Error type Description
DomainError Division by zero in DivideImage.

See Also