Operations that applies the Fast Fourier Transform and its inverse to 2D images. More...
Functions | |
VPIStatus | vpiCreateFFT (VPIBackend backend, uint32_t inputWidth, uint32_t inputHeight, const VPIImageFormat inFormat, const VPIImageFormat outFormat, VPIPayload *payload) |
Creates payload for direct Fast Fourier Transform algorithm. More... | |
VPIStatus | vpiSubmitFFT (VPIStream stream, VPIPayload payload, VPIImage input, VPIImage output, uint32_t flags) |
Runs the direct Fast Fourier Transform on single image. More... | |
VPIStatus | vpiCreateIFFT (VPIBackend backend, uint32_t outputWidth, uint32_t outputHeight, const VPIImageFormat inFormat, const VPIImageFormat outFormat, VPIPayload *payload) |
Creates payload for inverse Fast Fourier Transform algorithm. More... | |
VPIStatus | vpiSubmitIFFT (VPIStream stream, VPIPayload payload, VPIImage input, VPIImage output, uint32_t flags) |
Runs the inverse Fast Fourier Transform on single image. More... | |
Inverse FFT flags. Valid flags to be used in \ref vpiSubmitIFFT. They | |
#define | VPI_IFFT_DENORMALIZED (1u) |
Do not normalize the output. More... | |
Operations that applies the Fast Fourier Transform and its inverse to 2D images.
Both FFT and inverse FFT need a payload created during application initialization phase, where image dimensions, input and output types are defined. The payload then can be used to submit operations on different images, as long as their dimensions and types match what was defined during payload creation.
#define VPI_IFFT_DENORMALIZED (1u) |
#include <vpi/algo/FFT.h>
Do not normalize the output.
This leads to faster execution as normalization isn't usually needed. Absense of this flag will scale the output, dividing it by the total pixel count. This makes the output the exact inverse of direct Fast Fourier Transform.
VPIStatus vpiCreateFFT | ( | VPIBackend | backend, |
uint32_t | inputWidth, | ||
uint32_t | inputHeight, | ||
const VPIImageFormat | inFormat, | ||
const VPIImageFormat | outFormat, | ||
VPIPayload * | payload | ||
) |
#include <vpi/algo/FFT.h>
Creates payload for direct Fast Fourier Transform algorithm.
The created payload can then be used with vpiSubmitFFT.
[in] | backend | VPI backend that will execute the algorithm. |
[in] | inputWidth,inputHeight | Dimensions of the input/output images to be used. |
[in] | inFormat | Input image format. |
[in] | outFormat | Output image format. |
[out] | payload | Pointer to memory where the created payload handle will be written to. |
VPIStatus vpiCreateIFFT | ( | VPIBackend | backend, |
uint32_t | outputWidth, | ||
uint32_t | outputHeight, | ||
const VPIImageFormat | inFormat, | ||
const VPIImageFormat | outFormat, | ||
VPIPayload * | payload | ||
) |
#include <vpi/algo/FFT.h>
Creates payload for inverse Fast Fourier Transform algorithm.
The created payload can then be used with vpiSubmitIFFT.
[in] | backend | VPI backend that will execute the algorithm. |
[in] | outputWidth,outputHeight | Output image dimensions. |
[in] | inFormat | Input image format. |
[in] | outFormat | Output image format. |
[out] | payload | Pointer to memory where the created payload handle will be written to. |
VPIStatus vpiSubmitFFT | ( | VPIStream | stream, |
VPIPayload | payload, | ||
VPIImage | input, | ||
VPIImage | output, | ||
uint32_t | flags | ||
) |
#include <vpi/algo/FFT.h>
Runs the direct Fast Fourier Transform on single image.
[in] | stream | The stream where the operation will be queued in. |
[in] | payload | Payload created with vpiCreateFFT |
[in] | input | Input image in space domain. |
[out] | output | Image where the result in frequency domain will be written to. |
[in] | flags | Control flags, currently it must be set to 0. |
VPIStatus vpiSubmitIFFT | ( | VPIStream | stream, |
VPIPayload | payload, | ||
VPIImage | input, | ||
VPIImage | output, | ||
uint32_t | flags | ||
) |
#include <vpi/algo/FFT.h>
Runs the inverse Fast Fourier Transform on single image.
[in] | stream | A stream handle where the operation will be queued in. |
[in] | payload | Payload created with vpiCreateIFFT |
[in] | input | Input image in frequency domain. |
[out] | output | Image where the result in space domain will be written to. |
[in] | flags | Control flags, 0 for default processing, where output scaled. |