VPC

The Atlas 200/300/500 Inference Product does not support the VPC function described in this section.

The Atlas Training Series Product does not support the VPC function described in this section.

Function Description

Table 1 describes the functions of the Vision Preprocessing Core (VPC). For details about the functions supported by each product, see Table 2.

Table 1 Introduction

Function

Description

Cropping

Crops one or more selected regions of interest (ROIs) from one or more images.

Resizing

8K resizing and non-8K resizing are supported for images based on resolutions.

Resizes an ROI (supporting uncompressed format) or multiple ROIs from a single image (supporting uncompressed format).

Supports other resizing modes, such as resizing an image without cropping it and resizing an image with the aspect ratio preserved.

Overlaying

Crops an image out of an input image, resizes the cropped image, and places it in a specified area of the output image.

The output image may be a blank image (when the output buffer allocated by the user is empty) or an existing image (when an image has been read into the output buffer allocated by the user). Note that the overlaying concept here refers only to the case when the output image is an existing image.

Stitching

Crops selected ROIs from the input image, resizes the cropped images, and loads them to specified areas in the output buffer.

Image pyramid

Successively downsamples an image using a Gaussian filter.

Histogram analysis

Collects statistics on the pixel value distribution of each image channel (RGB/YUV).

Remapping

Remaps an image to a new one based on the given configuration.

Border making

Creates a border around an image (also referred to as padding).

Format conversion

Converts between RGB and YUV.

Image grayscale

Converts a color image into a grayscale image. Note that grayscale input images produce only grayscale output images.

A YUV400 image is output.

Remapping

Performs geometric deformation on the input image based on the pixel position lookup table (LUT). Typical functions include lens distortion correction, affine transformation, and perspective transformation.

The deformation can be described using the following formula: dst(x,y) = src(LUT(x,y)).

dst(x,y) is the pixel value of coordinates (x,y) in the output image, and its corresponding horizontal and vertical coordinate values of the input image are represented by pixel position LUT(x,y). And src(LUT(x,y)) is the pixel value of coordinates LUT(x,y) in the input image.

The general pixel position LUT can be generated by using map1 (horizontal coordinate mapping matrix) and map2 (vertical coordinate mapping matrix) provided by the user. The pixel position LUT of affine transformation or perspective transformation can also be generated through calculation by using the three or four point pairs provided by the user.

Filtering

Performs filtering on the input image. Currently, median filtering, erosion, dilation, Gaussian filtering, mean filtering, and convolution filtering are supported.

Rotation

Rotates the input image by 90, 180, or 270 degrees.

Mosaic

Performs mosaic processing on the input image.

Cover

Draws covers on part of the input image.

Line drawing

Draws lines on the input image.

Watermark addition

Adds a watermark to the input image.

Table 2 Supported product functions

Functionality

Cropping

Resizing:

Pasting

Stitching

Image pyramid

Histogram analysis

Remapping

Border making

Format conversion

Image grayscale

Surround-view stitching

Remapping

Filtering

Rotation

Mosaic

Cover

Line drawing

Watermark addition

Reference

The following figure shows the component layout of the RGB and YUV formats. Two YUV420SP images are used as examples for semi-planar format and an ARGB image is used as an example for Packed and RGB formats.