Back to Aurora Vision Library website

You are here: Start » Function Reference » Image » Image Spatial Transforms » ResizeImage

ResizeImage


Header: AVL.h
Namespace: avl
Module: FoundationLite

Enlarges or shrinks an image to new dimensions.

Syntax

C++
C#
 
void avl::ResizeImage
(
	const avl::Image& inImage,
	atl::Optional<const avl::Box&> inRoi,
	atl::Optional<int> inNewWidth,
	atl::Optional<int> inNewHeight,
	avl::ResizeMethod::Type inResizeMethod,
	avl::Image& outImage
)

Parameters

Name Type Range Default Description
Input value inImage const Image& Input image
Input value inRoi Optional<const Box&> NIL Box defining a subimage to be cropped and resized.
Input value inNewWidth Optional<int> 1 - 65535 NIL
Input value inNewHeight Optional<int> 1 - 65535 NIL
Input value inResizeMethod ResizeMethod::Type
Output value outImage Image& Output image

Description

The operation stretches or shrinks the inImage so that the dimensions of the outImage equal inNewWidth, inNewHeight. Three modes of pixel interpolation are available, with Area mode giving best results, but being most computationally expensive.

Examples

ResizeImage performed on the sample image with inNewWidth = 300, inNewHeight = 200.

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.

This operation is optimized for SSE2 technology for pixels of types: UINT8 (when inResizeMethod = Area), UINT16 (when inResizeMethod = Area), 3xUINT8 (when inResizeMethod = Area), 3xUINT16 (when inResizeMethod = Area).

This operation is optimized for SSE41 technology for pixels of types: UINT8(when inResizeMethod = Bilinear), 3xUINT8(when inResizeMethod = Bilinear).

This operation is optimized for AVX2 technology for pixels of types: UINT8 (when inResizeMethod = Area or inResizeMethod = Bilinear), UINT16 (when inResizeMethod = Area), 3xUINT8 (when inResizeMethod = Area or inResizeMethod = Bilinear), 3xUINT16 (when inResizeMethod = Area).

This operation is optimized for NEON technology for pixels of types: UINT8 (when inResizeMethod = Area), 3xUINT8 (when inResizeMethod = Area), UINT16 (when inResizeMethod = Area), 3xUINT16 (when inResizeMethod = Area).

Errors

List of possible exceptions:

Error type Description
DomainError Empty image on input in ResizeImage.
DomainError Input and output images are not distinct in ResizeImage.
DomainError ROI is out of inImage range in ResizeImage.

See Also