hi_mpi_vpc_blur

Applicable Products

Product

Supported

Ascend 950PR/Ascend 950DT

√

Atlas A3 training products/Atlas A3 inference products

√

Atlas A2 training products/Atlas A2 inference products

√

Atlas 200I/500 A2 inference products

√

Atlas inference products

☓

Atlas training products

☓

Function

Performs mean filtering on an input image.

Prototype

hi_s32 hi_mpi_vpc_blur(hi_vpc_chn chn, const hi_blur_param* blur_param, hi_u32* task_id, hi_s32 milli_sec)

Parameters

Parameter

Input/Output

Description

chn

Input

Channel ID for image processing.

Ascend 950PR/Ascend 950DT: The value range of this parameter is [0, 256). The maximum number of channels is 256.

Atlas A3 training products/Atlas A3 inference products: The value range of this parameter is [0, 256). The maximum number of channels is 256.

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.

blur_param

Input

Filtering information.

The input and output image information and mean filtering parameters are configured in the hi_blur_param structure.

milli_sec

Input

Timeout interval, in ms.
  • –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.

task_id

Output

Pointer to the task ID, used to identify a task.

Returns

Restrictions

Model

Restriction

Atlas 200I/500 A2 inference products

  • The input and output image resolutions must be in the range of [10 × 6, 4096 × 8192]. The input and output images must have the same resolution.
  • The following input image formats are supported (the output image format is the same as the input image 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_YVYU_PACKED_422 = 9,       // YUV422Packed YVYU 8bit
    HI_PIXEL_FORMAT_YUV_PACKED_444 = 11,      // YUV444Packed  8bit
    HI_PIXEL_FORMAT_RGB_888 = 12,             // RGB888
    HI_PIXEL_FORMAT_BGR_888 = 13,             // BGR888
    HI_PIXEL_FORMAT_YVU_PACKED_444 = 58,       // YVU444Packed 8bit
    HI_PIXEL_FORMAT_RGB_888_PLANAR = 69,       // RGB888 Planar
    HI_PIXEL_FORMAT_BGR_888_PLANAR = 70,       // BGR888 Planar
  • The implementation principle is the same as that of OpenCV. The floating-to-fixed number conversion is different, and the accuracy cannot be exactly the same.
  • Due to restrictions on downsampling of YUV images, when the output image format is YUV420SP or YUV422SP, you are advised to set the border making type to border replication mode. This avoids abnormal data on the output image edge.

Ascend 950PR/Ascend 950DT

Atlas A3 training products/Atlas A3 inference products

Atlas A2 training products/Atlas A2 inference products

  • The input and output image resolutions must be in the range of [10 × 6, 4096 × 8192]. The input and output images must have the same resolution.
  • The following input image formats are supported (the output image format is the same as the input image 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_YVYU_PACKED_422 = 9,       // YUV422Packed YVYU 8bit
    HI_PIXEL_FORMAT_YUV_PACKED_444 = 11,      // YUV444Packed  8bit
    HI_PIXEL_FORMAT_RGB_888 = 12,             // RGB888
    HI_PIXEL_FORMAT_BGR_888 = 13,             // BGR888
    HI_PIXEL_FORMAT_YVU_PACKED_444 = 58,       // YVU444Packed 8bit
    HI_PIXEL_FORMAT_RGB_888_PLANAR = 69,       // RGB888 Planar
    HI_PIXEL_FORMAT_BGR_888_PLANAR = 70,       // BGR888 Planar
    HI_PIXEL_FORMAT_YUV400_FP32 = 138,         // YUV400 Packed. Each pixel is represented by a float32 number.
    HI_PIXEL_FORMAT_RGB_888_PLANAR_FP32 = 1006,// RGB888 Planar. Each pixel is represented by a float32 number.
    HI_PIXEL_FORMAT_BGR_888_PLANAR_FP32 = 1007,// BGR888 Planar. Each pixel is represented by a float32 number.
    HI_PIXEL_FORMAT_RGB_888_FP32 = 1012,       // RGB888 Packed. Each pixel is represented by a float32 number.
    HI_PIXEL_FORMAT_BGR_888_FP32 = 1013,       // BGR888 Packed. Each pixel is represented by a float32 number.
  • Due to restrictions on downsampling of YUV images, when the output image format is YUV420SP or YUV422SP, you are advised to set the border making type to border replication mode. This avoids abnormal data on the output image edge.