You are here: Start » AVL.NET » Function Reference » Image » Image Conversions » AVL.ConvertPixelType

AVL.ConvertPixelType

Changes the type of pixel components.

Namespace:AvlNet
Assembly:AVL.NET.dll

Syntax

C++
C#
 
public static void ConvertPixelType
(
	AvlNet.Image inImage,
	NullableRef<AvlNet.Region> inRoi,
	AvlNet.PlainType inNewType,
	int inDepthDelta,
	AvlNet.Image outImage
)

Parameters

Name Type Range Default Description
inImageAvlNet.ImageInput image.
inRoiAvlNet.NullableRef<AvlNet.Region>Range of pixels to be processed. Default value: atl::NIL.
inNewTypeAvlNet.PlainTypeUInt8Type of the output image. Default value: UInt8.
inDepthDeltaint<-30, 30>0Pixel values will be multiplied by 2^inDepthDelta. For example, use -4 to convert 12-bit to 8-bit images. Default value: 0.
outImageAvlNet.ImageOutput image.

Description

The operation alters the pixel component format of the inImage. Available formats are listed in the documentation of the Image data type.

If the value of pixel component doesn't fit in the range of the new type, it is clipped to the nearest proper value, which can lead to the significant loss of information, as demonstrated in the example.

Examples

ConvertPixelType run on example image of UInt8 type with inNewType being Int8. Note that bright pixels suffered from clipping, while dark ones remained unaltered.

Hardware Acceleration

This operation supports automatic parallelization for multicore and multiprocessor systems.

This operation is optimized for SSE2 technology for pixels of types: UINT16 (when converting to UINT8 with negative delta).

This operation is optimized for AVX2 technology for pixels of types: UINT16 (when converting to UINT8 with negative delta).

This operation is optimized for NEON technology for pixels of types: UINT16 (when converting to UINT8 with negative delta).

Hardware acceleration settings may be manipulated with Settings class.

Errors

List of possible exceptions:

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

Function Overrides

See also