VPI - Vision Programming Interface

3.2 版本

图像直方图

从输入图像计算图像直方图。 更多...

函数

VPIStatus vpiCreateHistogramEven (uint64_t backends, VPIImageFormat fmt, float start, float end, int32_t numBins, VPIPayload *payload)
 为图像直方图均匀算法创建有效负载。 更多...
 
VPIStatus vpiSubmitHistogram (VPIStream stream, uint64_t backend, VPIPayload payload, VPIImage input, VPIArray output, uint64_t flags)
 计算图像直方图。 更多...
 

详细描述

从输入图像计算图像直方图。

有关更多详细信息和用法示例,请参阅 图像直方图

函数文档

◆ vpiCreateHistogramEven()

VPIStatus vpiCreateHistogramEven ( uint64_t  backends,
VPIImageFormat  fmt,
float  start,
float  end,
int32_t  numBins,
VPIPayload payload 
)

#include <vpi/algo/Histogram.h>

为图像直方图均匀算法创建有效负载。

它计算图像直方图,假设使用均匀(相等)的 bin。

参数
[输入]backends有资格执行该算法的 VPI 后端。
[输入]fmt输入图像的格式。
[输入]start指定直方图范围的低端(包含)。
  • 必须 <= end
[输入]end指定直方图范围的高端(不包含)。
  • 必须 >= start
[输入]numBins指定输出数组中的 bin 数量。
[输出]payload指向接收已创建句柄的 payload 变量的指针。
返回值
VPI_ERROR_INVALID_ARGUMENTpayload 为 NULL。
VPI_ERROR_INVALID_ARGUMENT给定 fmt 允许的最大 numBins 超出有效范围。
VPI_ERROR_INVALID_ARGUMENT无效的 startend 值。
VPI_ERROR_INVALID_ARGUMENTbackends 指的是无效的后端。
VPI_ERROR_NOT_IMPLEMENTED给定后端不支持直方图均匀算法。
VPI_ERROR_INVALID_CONTEXT当前上下文已被销毁。
VPI_IMAGE_FORMAT_INVALID不支持 fmt
VPI_ERROR_OUT_OF_MEMORY无法分配所需的资源。
VPI_ERROR_INVALID_OPERATION后端未在当前上下文中启用。
VPI_SUCCESS操作成功执行。

◆ vpiSubmitHistogram()

VPIStatus vpiSubmitHistogram ( VPIStream  stream,
uint64_t  backend,
VPIPayload  payload,
VPIImage  input,
VPIArray  output,
uint64_t  flags 
)

#include <vpi/algo/Histogram.h>

计算图像直方图。

参数
[输入]stream将在其中排队操作的流。
  • 不得为 NULL。
  • 流必须已启用将执行该算法的后端。
[输入]backend将执行该算法的后端。
  • 必须是在 payload 创建期间指定的后端,或者为 0 以简写形式使用此后端。
[输入]payloadvpiCreateHistogramEven 创建的 Payload。
[输入]input输入图像。
  • 不得为 NULL。
  • 必须具有与 payload 创建期间指定的格式相同的格式。
  • 图像必须已启用将执行该算法的后端。
[输出]output结果图像直方图将写入到此处。
  • 不得为 NULL。
  • 数组的容量必须大于或等于 payload 中配置的 bin 数量。
  • 数组必须已启用将执行该算法的后端。
[输入]flags控制标志。
  • 有效值是以下一个或多个标志的组合
返回值
VPI_ERROR_INVALID_ARGUMENTstream 为 NULL。
VPI_ERROR_INVALID_ARGUMENTinputoutput 为 NULL。
VPI_ERROR_INVALID_ARGUMENTpayload 不是由 vpiCreateHistogramEven 创建的。
VPI_ERROR_INVALID_ARGUMENToutput 数组的容量超出有效范围。
VPI_ERROR_INVALID_ARRAY_TYPE不支持 output 数组类型。
VPI_ERROR_INVALID_IMAGE_FORMATinput 图像格式与 payload 关联的格式不匹配。
VPI_ERROR_INVALID_PAYLOAD_TYPEpayload 无效。
VPI_ERROR_INVALID_OPERATION所需的后端未在 streaminputoutput 中启用。
VPI_SUCCESS操作成功执行。