hi_mpi_vpc_crop_resize_make_border
The
The
Description
Crops one or more ROIs from an image, resizes the crop ROIs, and then pads each ROI based on the specific type to form one or more destination images. This API is mainly used for resizing with the aspect ratio preserved. This API is asynchronous.
Prototype
hi_s32 hi_mpi_vpc_crop_resize_make_border(hi_vpc_chn chn, const hi_vpc_pic_info *source_pic, hi_vpc_crop_resize_border_region crop_resize_make_border_info[], hi_u32 count, hi_u32 *task_id, hi_s32 milli_sec)
Parameters
Parameter |
Input/Output |
Description |
|---|---|---|
chn |
Input |
Channel ID for image processing. |
source_pic |
Input |
Pointer to the source image information. |
crop_resize_make_border_info |
Input |
Array for crop, resize, and border making information. You need to set the buffer address of the destination image for storing this information. If the data of multiple padding results points to the same buffer address, the data of the later result overwrites that of the previous one. Consequently, the output image is inconsistent with the desired image. Currently, only the HI_BORDER_CONSTANT and HI_BORDER_REPLICATE types are supported, which allow padding to 4096 x 4096. The length of the crop_resize_make_border_info array must be the same as that of the count value. |
count |
Input |
Number of crop, resize, and padding ROIs. Must be in the range of [1, 256]. |
task_id |
Output |
Pointer to the task ID, used to identify a task. |
milli_sec |
Input |
Timeout interval (ms).
|
Returns
- 0: success
- Other values: failure. For details, see VPC Return Codes.