VPI - 视觉编程接口

3.2 版本

MinMaxLoc

在图像中查找最小值和最大值的位置。 更多...

函数

VPIStatus vpiCreateMinMaxLoc (uint64_t backends, int32_t imageWidth, int32_t imageHeight, VPIImageFormat imageFormat, VPIPayload *payload)
 vpiSubmitMinMaxLoc 创建负载。 更多...
 
VPIStatus vpiSubmitMinMaxLoc (VPIStream stream, uint64_t backend, VPIPayload payload, VPIImage input, VPIArray minCoords, VPIArray maxCoords)
 在图像中查找最小值和最大值的位置。 更多...
 

详细描述

在图像中查找最小值和最大值的位置。

函数 vpiCreateMinMaxLoc 用于创建算法的负载。 函数 vpiSubmitMinMaxLoc 用于在图像中查找最小值和最大值的位置。

函数文档

◆ vpiCreateMinMaxLoc()

VPIStatus vpiCreateMinMaxLoc ( uint64_t  backends,
int32_t  imageWidth,
int32_t  imageHeight,
VPIImageFormat  imageFormat,
VPIPayload payload 
)

#include <vpi/algo/MinMaxLoc.h>

vpiSubmitMinMaxLoc 创建负载。

参数
[输入]backends将执行该算法的 VPI 后端。
[输入]imageWidth, imageHeight输入图像尺寸。
  • 必须 >= 1x1。
[输入]imageFormat输入图像格式。
[输出]payload指向接收已创建句柄的负载变量的指针。
返回值
VPI_ERROR_INVALID_ARGUMENTpayload 为 NULL。
VPI_ERROR_INVALID_ARGUMENTimageWidthimageHeight 超出有效范围。
VPI_ERROR_INVALID_ARGUMENTbackend 指的是无效的后端。
VPI_ERROR_NOT_IMPLEMENTED给定后端不支持 MinMaxLoc 算法。
VPI_ERROR_INVALID_CONTEXT当前上下文已销毁。
VPI_IMAGE_FORMAT_INVALID不支持 imageFormat
VPI_ERROR_OUT_OF_MEMORY无法分配所需的资源。
VPI_ERROR_INVALID_OPERATION当前上下文中未启用后端。
VPI_SUCCESS操作成功执行。

◆ vpiSubmitMinMaxLoc()

VPIStatus vpiSubmitMinMaxLoc ( VPIStream  stream,
uint64_t  backend,
VPIPayload  payload,
VPIImage  input,
VPIArray  minCoords,
VPIArray  maxCoords 
)

#include <vpi/algo/MinMaxLoc.h>

在图像中查找最小值和最大值的位置。

注意
MinMaxLoc 算法不保证确定性输出。每个数组容量(< b>minCoords 和 maxCoordsvpiSubmitMinMaxLoc 中)限制了算法找到的位置数量,即总数可能大于此限制,并且返回的位置集可能因后端而异,并且在同一后端上的不同运行中也可能不同。此外,每个位置数组都没有施加严格的排序,并且在不同的后端和运行中也可能不同。
参数
[输入]stream操作将排队进入的流句柄。
  • 不能为 NULL。
  • 流必须启用将执行该算法的后端。
[输入]backend将执行该算法的后端。
  • 必须是负载创建期间指定的后端,或 0 作为使用此后端的简写。
[输入]payloadvpiCreateMinMaxLoc 创建的负载。
[输入]input在其中查找最小值和/或最大值的输入图像。
  • 不能为 NULL。
  • 输入图像大小和格式必须与 vpiCreateMinMaxLoc 中定义的相匹配。
  • 如果使用 VPI_BACKEND_CUDA,则输入图像步幅必须是其像素的倍数。
  • 图像必须启用将执行该算法的后端。
[输出]minCoords存储具有最小值的像素坐标的输出数组。如果不需要,请传递 NULL。返回的坐标数受数组容量限制。
[输出]maxCoords存储具有最大值的像素坐标的输出数组。如果不需要,请传递 NULL。返回的坐标数受数组容量限制。
返回值
VPI_ERROR_INVALID_ARGUMENTstream 为 NULL。
VPI_ERROR_INVALID_ARGUMENTinput 为 NULL。
VPI_ERROR_INVALID_ARGUMENTpayload 不是使用 vpiCreateMinMaxLoc 创建的。
VPI_ERROR_INVALID_ARGUMENTinput 图像尺寸和格式与 payload 关联的尺寸和格式不匹配。
VPI_ERROR_INVALID_ARRAY_TYPE不接受 minCoordsmaxCoords 数组类型。
VPI_ERROR_INVALID_PAYLOAD_TYPEpayload 无效。
VPI_ERROR_INVALID_OPERATION给定的后端未在 stream 中启用。
VPI_ERROR_INVALID_OPERATION所需的后端未在 streaminputminCoordsmaxCoords 中启用。
VPI_SUCCESS操作成功执行。