Back to Adaptive Vision Library Lite website

You are here: Start » Image Point Transforms » NegateImage



Reverts the pixel value range (unsigned) or applies numeric negation (signed).


void avl::NegateImage
	const avl::Image& inImage,
	atl::Optional<const avl::Region&> inRoi,
	avl::Image& outImage


Name Type Default Description
inImage const Image& Input image
inRoi Optional<const Region&> NIL Range of pixels to be processed
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.


The operation negates the pixel values of the inImage. Depending on the pixel type, the negation is defines as follows:

  • For the signed pixel types: \forall_{i,j} \text{\textbf{OutImage} }_{i,j} = -\text{\textbf{InImage} }_{i,j}
  • For the unsigned pixel types: \forall_{i,j} \text{\textbf{OutImage} }_{i,j} =  \text{\textbf{MaximalValue} } - \text{\textbf{InImage} }_{i,j} (which can be thought of as mirroring the pixel values around the center of the pixel values range)


The NegateImage performed on the sample image.

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.