RadarDopplerFFT#
Functions#
- NVCVStatus pvaDopplerFFTCreate(NVCVOperatorHandle *handle, NVCVTensorRequirements const *const inTensorRequirements, NVCVTensorRequirements const *const winTensorRequirements, NVCVTensorRequirements const *const outTensorRequirements, PVADopplerFFTParams const *const params)
Constructs an instance of the DopplerFFT operator.
- NVCVStatus pvaDopplerFFTSubmit(NVCVOperatorHandle handle, cudaStream_t stream, NVCVTensorHandle const in, NVCVTensorHandle const win, NVCVTensorHandle out)
Submits the DopplerFFT operator to a CUDA stream.
- NVCVStatus pvaDopplerFFTSubmit(NVCVOperatorHandle handle, cupvaStream_t stream, NVCVTensorHandle const in, NVCVTensorHandle const win, NVCVTensorHandle out)
Submits the DopplerFFT operator to a cuPVA stream.
Functions#
- NVCVStatus pvaDopplerFFTCreate(
- NVCVOperatorHandle *handle,
- NVCVTensorRequirements const *const inTensorRequirements,
- NVCVTensorRequirements const *const winTensorRequirements,
- NVCVTensorRequirements const *const outTensorRequirements,
- PVADopplerFFTParams const *const params,
Constructs an instance of the DopplerFFT operator.
Limitations:
The number of chirps must be in the range [2, 1024) and must be factorizable using only factors of 2, 3, 4, and 5. The number of Doppler bins can’t be greater than the number of chirps. PVA_DOPPLER_FFT_OUTPUT_LAYOUT_RANGE_DOPPLER_RX only supported for 8 RX channels and number of chirps in the range [32, 900].
Input: Data Layout: [HCW, NHCW] W: Number of range bins. C: Number of RX channels. H: Number of chirps.
Batches: [1]
Rank: 3 for [HCW] or 4 for [NHCW].
Data Type
Allowed
8bit Unsigned
No
8bit Signed
No
16bit Unsigned
No
16bit Signed
No
32bit Unsigned
No
32bit Signed
No
32bit Float
No
64bit Float
No
2x16bit Unsigned
No
2x16bit Signed
No
2x32bit Unsigned
No
2x32bit Signed
Yes
Input: Data Layout: [W, NW] W: Number of coefficients. Must be the same as the number of chirps in the input tensor.
Batches: [1]
Rank: 1 for [W] or 2 for [NW].
Data Type
Allowed
8bit Unsigned
No
8bit Signed
No
16bit Unsigned
No
16bit Signed
No
32bit Unsigned
No
32bit Signed
Yes
32bit Float
No
64bit Float
No
2x16bit Unsigned
No
2x16bit Signed
No
2x32bit Unsigned
No
2x32bit Signed
No
Output: Data Layout: [HCW], [NHCW] only when N = 1 If outputLayout is PVA_DOPPLER_FFT_OUTPUT_LAYOUT_DOPPLER_RX_RANGE: H: Number of Doppler bins. C: Number of RX channels. W: Number of range bins. If outputLayout is PVA_DOPPLER_FFT_OUTPUT_LAYOUT_RANGE_RX_DOPPLER: H: Number of range bins. C: Number of RX channels. W: Number of Doppler bins. If outputLayout is PVA_DOPPLER_FFT_OUTPUT_LAYOUT_RANGE_DOPPLER_RX: H: Number of range bins. C: Number of Doppler bins. W: Number of RX channels.
Batches: [1]
Rank: 3 for [HCW] or 4 for [NHCW] only when N = 1.
Data Type
Allowed
8bit Unsigned
No
8bit Signed
No
16bit Unsigned
No
16bit Signed
No
32bit Unsigned
No
32bit Signed
No
32bit Float
No
64bit Float
No
2x16bit Unsigned
No
2x16bit Signed
No
2x32bit Unsigned
No
2x32bit Signed
Yes
Input/Output Dependency:
Property
Input == Output
Data Layout
N/A
Data Type
Yes
Number
Yes
Channels
Yes
Width
N/A
Height
N/A
- Parameters:
handle – [out] Where the operator instance handle will be written to.
Must not be NULL.
inTensorRequirements – [in] Pointer to the NVCVTensorRequirements structure which contains input Tensor layout rank, shape and data type information.
winTensorRequirements – [in] Pointer to the NVCVTensorRequirements structure which contains window Tensor layout rank, shape and data type information.
outTensorRequirements – [in] Pointer to the NVCVTensorRequirements structure which contains output Tensor layout rank, shape and data type information.
params – [in] Pointer to the DopplerFFT parameters. PVADopplerFFTParams. Pass NULL to use the operator’s default parameters.
- Return values:
NVCV_ERROR_INVALID_ARGUMENT – Handle is null or some parameter is outside valid range.
NVCV_ERROR_OUT_OF_MEMORY – Not enough memory to create the operator.
NVCV_ERROR_INVALID_IMAGE_FORMAT – Image format is invalid.
NVCV_SUCCESS – Operation executed successfully.
- NVCVStatus pvaDopplerFFTSubmit(
- NVCVOperatorHandle handle,
- cudaStream_t stream,
- NVCVTensorHandle const in,
- NVCVTensorHandle const win,
- NVCVTensorHandle out,
Submits the DopplerFFT operator to a CUDA stream.
Note
CUDA stream support requirements:
PVA SDK 2.7.0 or later
Jetpack 7 or later
DriveOS 7 or later
x86 Emulator is not supported
- Parameters:
handle – [in] Handle to the operator.
stream – [in] Handle to a valid CUDA stream.
in – [in] Input tensor handle.
win – [in] Window tensor handle.
out – [out] Output tensor handle.
- Return values:
NVCV_ERROR_INVALID_ARGUMENT – Handle is null.
NVCV_ERROR_INTERNAL – Internal error in the operator, invalid types passed in.
NVCV_SUCCESS – Operation executed successfully.
- NVCVStatus pvaDopplerFFTSubmit(
- NVCVOperatorHandle handle,
- cupvaStream_t stream,
- NVCVTensorHandle const in,
- NVCVTensorHandle const win,
- NVCVTensorHandle out,
Submits the DopplerFFT operator to a cuPVA stream.
- Parameters:
handle – [in] Handle to the operator.
Must not be NULL.
stream – [in] Handle to a valid cuPVA stream.
in – [in] Input tensor handle.
win – [in] Window tensor handle.
out – [out] Output tensor handle.
- Return values:
NVCV_ERROR_INVALID_ARGUMENT – Handle is null.
NVCV_ERROR_INTERNAL – Internal error in the operator, invalid types passed in.
NVCV_SUCCESS – Operation executed successfully.