vpc_flip

Applicability

Product

Supported (√/x)

Atlas A3 training products/Atlas A3 inference products

Atlas A2 training products/Atlas A2 inference products

Atlas training products

x

Atlas inference products

x

Atlas 200I/500 A2 inference products

Function Usage

Flips the input image horizontally, vertically, or in both directions.

Prototype

  • C Prototype
    1
    hi_s32 hi_mpi_vpc_flip(hi_vpc_chn chn, hi_flip_param* flip_param, hi_u32 *task_id, hi_s32 milli_sec)
    
  • Python Function
    1
    task_id, ret = acl.himpi.vpc_flip(chn, flip_param, milli_sec)
    

Parameter Description

Parameter

Description

chn

Int, channel ID for image processing.

  • Atlas A2 training products/Atlas A2 inference products: The value range of this parameter is [0, 256). The maximum number of channels is 256.
  • Atlas 200I/500 A2 inference products: The value range of this parameter is [0, 128). The maximum number of channels is 128.
  • Atlas A3 training products/Atlas A3 inference products: The value range of this parameter is [0, 256). The maximum number of channels is 256.

flip_param

Dict, flipping information dictionary. For details, see hi_flip_param.

milli_sec

Int, timeout interval, in milliseconds.
  • -1: blocking mode.
  • 0: non-blocking mode.
  • > 0: timeout interval (timeout mode). The timeout interval varies with the operating system. The deviation is generally within a time slice of an operating system. For example, if the time slice of an operating system is 4 ms and the value of milli_sec is set to 1, the actual timeout interval ranges from 1 ms to 5 ms. When the CPU load is high, the timeout interval may fluctuate.

Return Value Description

Return Value

Description

task_id

Int, task ID, used to identify a task.

ret

Int, error code.

Restrictions

  • The resolution of the input and output images ranges from 10 x 6 to 4096 x 8192. The resolution of the input image is the same as that of the output image.
  • The following input image formats are supported (the output format must be the same as the input format):
    HI_PIXEL_FORMAT_YUV_400 = 0,               // YUV400 8bit
    HI_PIXEL_FORMAT_YUV_SEMIPLANAR_420 = 1,    // YUV420SP NV12 8bit   
    HI_PIXEL_FORMAT_YVU_SEMIPLANAR_420 = 2,    // YUV420SP NV21 8bit 
    HI_PIXEL_FORMAT_YUV_SEMIPLANAR_422 = 3,    // YUV422SP 8bit
    HI_PIXEL_FORMAT_YVU_SEMIPLANAR_422 = 4,    // YVU422SP 8bit
    HI_PIXEL_FORMAT_YUYV_PACKED_422 = 7,       // YUV422Packed YUYV 8bit
    HI_PIXEL_FORMAT_UYVY_PACKED_422 = 8,
    // YUV422Packed UYVY 8bit
    HI_PIXEL_FORMAT_YVYU_PACKED_422 = 9,       // YUV422Packed YVYU 8bit
    HI_PIXEL_FORMAT_VYUY_PACKED_422 = 10,
    // YUV422Packed VYUY 8bit
    HI_PIXEL_FORMAT_YUV_PACKED_444 = 11,      // YUV444 Package  8bit
    HI_PIXEL_FORMAT_RGB_888 = 12,             // RGB888
    HI_PIXEL_FORMAT_BGR_888 = 13,             // BGR888
    HI_PIXEL_FORMAT_ARGB_8888 = 14,
    // ARGB_8888
    HI_PIXEL_FORMAT_ABGR_8888 = 15,
    // ABGR_8888
    HI_PIXEL_FORMAT_RGBA_8888 = 16,
    // RGBA_8888
    HI_PIXEL_FORMAT_BGRA_8888 = 17,
    // BGRA_8888
    HI_PIXEL_FORMAT_YVU_PLANAR_444 =  22,
    // YVU444 Planar 8bit
    HI_PIXEL_FORMAT_YVU_PACKED_444 = 58,       // YVU444 Package 8bit
    HI_PIXEL_FORMAT_RGB_888_PLANAR = 69,       // RGB888 Planar
    HI_PIXEL_FORMAT_BGR_888_PLANAR = 70,       // BGR888 Planar