对 2D 图像应用快速傅里叶变换及其逆变换的操作。 更多信息...
函数 | |
VPIStatus | vpiCreateFFT (uint64_t backends, int32_t inputWidth, int32_t inputHeight, const VPIImageFormat inFormat, const VPIImageFormat outFormat, VPIPayload *payload) |
为直接快速傅里叶变换算法创建负载 (payload)。 更多信息... | |
VPIStatus | vpiSubmitFFT (VPIStream stream, uint64_t backend, VPIPayload payload, VPIImage input, VPIImage output, uint64_t flags) |
对单个图像运行直接快速傅里叶变换。 更多信息... | |
VPIStatus | vpiCreateIFFT (uint64_t backends, int32_t outputWidth, int32_t outputHeight, const VPIImageFormat inFormat, const VPIImageFormat outFormat, VPIPayload *payload) |
为逆快速傅里叶变换算法创建负载 (payload)。 更多信息... | |
VPIStatus | vpiSubmitIFFT (VPIStream stream, uint64_t backend, VPIPayload payload, VPIImage input, VPIImage output, uint64_t flags) |
对单个图像运行逆快速傅里叶变换。 更多信息... | |
对 2D 图像应用快速傅里叶变换及其逆变换的操作。
有关 FFT 的更多详细信息和使用示例,请参阅 FFT。
有关 IFFT 的更多详细信息和使用示例,请参阅 逆 FFT。
FFT 和逆 FFT 都需要在应用程序初始化阶段创建负载 (payload),其中定义了图像尺寸、输入和输出格式。 然后,只要图像的尺寸和格式与负载 (payload) 创建期间定义的相匹配,该负载 (payload) 就可以用于提交对不同图像的操作。
VPIStatus vpiCreateFFT | ( | uint64_t | backends, |
int32_t | inputWidth, | ||
int32_t | inputHeight, | ||
const VPIImageFormat | inFormat, | ||
const VPIImageFormat | outFormat, | ||
VPIPayload * | payload | ||
) |
#include <vpi/algo/FFT.h>
为直接快速傅里叶变换算法创建负载 (payload)。
创建的负载 (payload) 随后可以与 vpiSubmitFFT 一起使用。
[输入] | backends | 将执行算法的 VPI 后端。
|
[输入] | inputWidth, inputHeight | 要使用的输入/输出图像的尺寸。
|
[输入] | inFormat | 输入图像格式。
|
[输入] | outFormat | 输出图像格式。
|
[输出] | payload | 指向接收创建句柄的负载 (payload) 变量的指针。 |
VPI_ERROR_INVALID_ARGUMENT | payload 为 NULL。 |
VPI_ERROR_INVALID_ARGUMENT | inputWidth 或 inputHeight 超出有效范围。 |
VPI_ERROR_INVALID_ARGUMENT | backend 指的是无效的后端。 |
VPI_ERROR_NOT_IMPLEMENTED | 给定后端不支持 FFT 算法。 |
VPI_ERROR_INVALID_CONTEXT | 当前上下文已销毁。 |
VPI_IMAGE_FORMAT_INVALID | 不支持 outFormat 。 |
VPI_ERROR_OUT_OF_MEMORY | 无法分配所需的资源。 |
VPI_ERROR_INVALID_OPERATION | 后端在当前上下文中未启用。 |
VPI_ERROR_INVALID_OPERATION | 系统未安装库 libcufft.so.10。 |
VPI_SUCCESS | 操作成功执行。 |
VPIStatus vpiSubmitFFT | ( | VPIStream | stream, |
uint64_t | backend, | ||
VPIPayload | payload, | ||
VPIImage | input, | ||
VPIImage | output, | ||
uint64_t | flags | ||
) |
#include <vpi/algo/FFT.h>
对单个图像运行直接快速傅里叶变换。
[输入] | stream | 操作将排队到其中的流。
| ||||||
[输入] | backend | 将执行算法的后端。
| ||||||
[输入] | payload | 使用 vpiCreateFFT 创建的负载 (payload) | ||||||
[输入] | input | 空间域中的输入图像。
| ||||||
[输出] | output | 将在其中写入频域结果的图像。 输出的左上角像素表示 DC (0 Hz) 分量。
| ||||||
[输入] | flags | 控制标志。
|
VPI_ERROR_INVALID_ARGUMENT | stream 为 NULL。 |
VPI_ERROR_INVALID_ARGUMENT | input 或 output 为 NULL。 |
VPI_ERROR_INVALID_ARGUMENT | payload 不是使用 vpiCreateFFT 创建的。 |
VPI_ERROR_INVALID_ARGUMENT | input 图像尺寸和格式与 payload 关联的尺寸和格式不匹配。 |
VPI_ERROR_INVALID_ARGUMENT | output 图像格式与 payload 关联的格式不匹配。 |
VPI_ERROR_INVALID_ARGUMENT | 不支持的 flags 。 |
VPI_ERROR_INVALID_ARGUMENT | output 尺寸与输入不一致。 |
VPI_ERROR_INVALID_PAYLOAD_TYPE | payload 无效。 |
VPI_ERROR_INVALID_OPERATION | 所需的后端在 stream 、input 或 output 中未启用。 |
VPI_SUCCESS | 操作成功执行。 |
VPIStatus vpiCreateIFFT | ( | uint64_t | backends, |
int32_t | outputWidth, | ||
int32_t | outputHeight, | ||
const VPIImageFormat | inFormat, | ||
const VPIImageFormat | outFormat, | ||
VPIPayload * | payload | ||
) |
#include <vpi/algo/FFT.h>
为逆快速傅里叶变换算法创建负载 (payload)。
创建的负载 (payload) 随后可以与 vpiSubmitIFFT 一起使用。
[输入] | backends | 将执行算法的 VPI 后端。
|
[输入] | outputWidth, outputHeight | 输出图像尺寸。
|
[输入] | inFormat | 输入图像格式。
|
[输入] | outFormat | 输出图像格式。
|
[输出] | payload | 指向接收创建句柄的负载 (payload) 变量的指针。 |
VPI_ERROR_INVALID_ARGUMENT | payload 为 NULL。 |
VPI_ERROR_INVALID_ARGUMENT | outputWidth 或 outputHeight 超出有效范围。 |
VPI_ERROR_INVALID_ARGUMENT | backends 指的是无效的后端。 |
VPI_ERROR_NOT_IMPLEMENTED | 给定后端不支持 IFFT 算法。 |
VPI_ERROR_INVALID_CONTEXT | 当前上下文已销毁。 |
VPI_IMAGE_FORMAT_INVALID | 不支持 outFormat 。 |
VPI_ERROR_OUT_OF_MEMORY | 无法分配所需的资源。 |
VPI_ERROR_INVALID_OPERATION | 后端在当前上下文中未启用。 |
VPI_ERROR_INVALID_OPERATION | 系统未安装库 libcufft.so.10。 |
VPI_SUCCESS | 操作成功执行。 |
VPIStatus vpiSubmitIFFT | ( | VPIStream | stream, |
uint64_t | backend, | ||
VPIPayload | payload, | ||
VPIImage | input, | ||
VPIImage | output, | ||
uint64_t | flags | ||
) |
#include <vpi/algo/FFT.h>
对单个图像运行逆快速傅里叶变换。
[输入] | stream | 操作将排队到其中的流句柄。
| ||||||
[输入] | backend | 将执行算法的后端。
| ||||||
[输入] | payload | 使用 vpiCreateIFFT 创建的负载 (payload) | ||||||
[输入] | input | 频域中的输入图像。 输入的左上角像素表示 DC (0 Hz) 分量。
| ||||||
[输出] | output | 将在其中写入空间域结果的图像。
| ||||||
[输入] | flags | 控制标志。
|
VPI_ERROR_INVALID_ARGUMENT | stream 为 NULL。 |
VPI_ERROR_INVALID_ARGUMENT | input 或 output 为 NULL。 |
VPI_ERROR_INVALID_ARGUMENT | payload 不是使用 vpiCreateIFFT 创建的。 |
VPI_ERROR_INVALID_ARGUMENT | input 图像尺寸和格式与 payload 关联的尺寸和格式不匹配。 |
VPI_ERROR_INVALID_ARGUMENT | output 图像格式与 payload 关联的格式不匹配。 |
VPI_ERROR_INVALID_ARGUMENT | flags 包含不支持的标志。 |
VPI_ERROR_INVALID_ARGUMENT | output 尺寸与输入不一致。 |
VPI_ERROR_INVALID_PAYLOAD_TYPE | payload 无效。 |
VPI_ERROR_INVALID_OPERATION | 所需的后端在 stream 、input 或 output 中未启用。 |
VPI_SUCCESS | 操作成功执行。 |