Back to Aurora Vision Library Lite website

You are here: Start » Image » Image Point Transforms » MultiplyImage

MultiplyImage


Header: AVL.h
Namespace: avl

Multiplies each pixel by a scalar value.

Syntax

void avl::MultiplyImage
(
	const avl::Image& inImage,
	atl::Optional<const avl::Region&> inRoi,
	float inValue,
	avl::Image& outImage
)

Parameters

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

In-place Processing

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

Read more about In-place Computation.

Description

The operation increases the brightness of an image by multiplying each of its pixels by a fixed value.

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

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

Examples

The MultiplyImage performed on the sample image with inValue = 2.0.

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

List of possible exceptions:

Error type Description
DomainError Region exceeds an input image in MultiplyImage.

See Also

  • DivideImage – Divides each pixel by a scalar value.