A high-performance general-purpose compute library
signal.h
Go to the documentation of this file.
1/*******************************************************
2 * Copyright (c) 2014, ArrayFire
3 * All rights reserved.
4 *
5 * This file is distributed under 3-clause BSD license.
6 * The complete license agreement can be obtained at:
7 * http://arrayfire.com/licenses/BSD-3-Clause
8 ********************************************************/
9
10#pragma once
11#include <af/defines.h>
12
13#ifdef __cplusplus
14
15namespace af
16{
17class array;
18class dim4;
19
35AFAPI array approx1(const array &in, const array &pos,
36 const interpType method = AF_INTERP_LINEAR, const float off_grid = 0.0f);
37
54AFAPI array approx2(const array &in, const array &pos0, const array &pos1,
55 const interpType method = AF_INTERP_LINEAR, const float off_grid = 0.0f);
56
57
58#if AF_API_VERSION >= 37
91 const array &pos, const int interp_dim,
92 const double idx_start, const double idx_step,
93 const interpType method = AF_INTERP_LINEAR, const float off_grid = 0.0f);
94
123 const array &pos0, const int interp_dim0, const double idx_start_dim0, const double idx_step_dim0,
124 const array &pos1, const int interp_dim1, const double idx_start_dim1, const double idx_step_dim1,
125 const interpType method = AF_INTERP_LINEAR, const float off_grid = 0.0f);
126#endif
127
138AFAPI array fftNorm(const array& in, const double norm_factor, const dim_t odim0=0);
139
151AFAPI array fft2Norm(const array& in, const double norm_factor, const dim_t odim0=0, const dim_t odim1=0);
152
165AFAPI array fft3Norm(const array& in, const double norm_factor, const dim_t odim0=0, const dim_t odim1=0, const dim_t odim2=0);
166
167#if AF_API_VERSION >= 31
178AFAPI void fftInPlace(array& in, const double norm_factor = 1.0);
179#endif
180
181#if AF_API_VERSION >= 31
192AFAPI void fft2InPlace(array& in, const double norm_factor = 1.0);
193#endif
194
195#if AF_API_VERSION >= 31
206AFAPI void fft3InPlace(array& in, const double norm_factor = 1.0);
207#endif
208
221AFAPI array fft(const array& in, const dim_t odim0=0);
222
236AFAPI array fft2(const array& in, const dim_t odim0=0, const dim_t odim1=0);
237
252AFAPI array fft3(const array& in, const dim_t odim0=0, const dim_t odim1=0, const dim_t odim2=0);
253
264AFAPI array dft(const array& in, const double norm_factor, const dim4 outDims);
265
278AFAPI array dft(const array& in, const dim4 outDims);
279
291AFAPI array dft(const array& in);
292
303AFAPI array ifftNorm(const array& in, const double norm_factor, const dim_t odim0=0);
304
316AFAPI array ifft2Norm(const array& in, const double norm_factor, const dim_t odim0=0, const dim_t odim1=0);
317
330AFAPI array ifft3Norm(const array& in, const double norm_factor, const dim_t odim0=0, const dim_t odim1=0, const dim_t odim2=0);
331
332#if AF_API_VERSION >= 31
343AFAPI void ifftInPlace(array& in, const double norm_factor = 1.0);
344#endif
345
346#if AF_API_VERSION >= 31
357AFAPI void ifft2InPlace(array& in, const double norm_factor = 1.0);
358#endif
359
360#if AF_API_VERSION >= 31
371AFAPI void ifft3InPlace(array& in, const double norm_factor = 1.0);
372#endif
373
386AFAPI array ifft(const array& in, const dim_t odim0=0);
387
401AFAPI array ifft2(const array& in, const dim_t odim0=0, const dim_t odim1=0);
402
417AFAPI array ifft3(const array& in, const dim_t odim0=0, const dim_t odim1=0, const dim_t odim2=0);
418
429AFAPI array idft(const array& in, const double norm_factor, const dim4 outDims);
430
443AFAPI array idft(const array& in, const dim4 outDims);
444
457
458#if AF_API_VERSION >= 31
471template<int rank>
473 const dim4& dims,
474 const double norm_factor = 1.0);
475#endif
476
477#if AF_API_VERSION >= 31
489template<int rank>
491 const double norm_factor = 1.0);
492#endif
493
494#if AF_API_VERSION >= 31
507template<int rank>
508array fftC2R(const array &in, bool is_odd = false,
509 const double norm_factor = 1.0);
510#endif
511
534AFAPI array convolve(const array& signal, const array& filter, const convMode mode=AF_CONV_DEFAULT, const convDomain domain=AF_CONV_AUTO);
535
553AFAPI array convolve(const array& col_filter, const array& row_filter, const array& signal, const convMode mode=AF_CONV_DEFAULT);
554
570AFAPI array convolve1(const array& signal, const array& filter, const convMode mode=AF_CONV_DEFAULT, const convDomain domain=AF_CONV_AUTO);
571
587AFAPI array convolve2(const array& signal, const array& filter, const convMode mode=AF_CONV_DEFAULT, const convDomain domain=AF_CONV_AUTO);
588
616AFAPI array convolve2NN(const array& signal, const array& filter,
617 const dim4 stride, const dim4 padding, const dim4 dilation);
618
634AFAPI array convolve3(const array& signal, const array& filter, const convMode mode=AF_CONV_DEFAULT, const convDomain domain=AF_CONV_AUTO);
635
646AFAPI array fftConvolve(const array& signal, const array& filter, const convMode mode=AF_CONV_DEFAULT);
647
659
671
683
693AFAPI array fir(const array &b, const array &x);
694
707AFAPI array iir(const array &b, const array &a, const array &x);
708
723AFAPI array medfilt(const array& in, const dim_t wind_length = 3, const dim_t wind_width = 3, const borderType edge_pad = AF_PAD_ZERO);
724
725#if AF_API_VERSION >= 34
739AFAPI array medfilt1(const array& in, const dim_t wind_width = 3, const borderType edge_pad = AF_PAD_ZERO);
740#endif
741
742#if AF_API_VERSION >= 34
757AFAPI array medfilt2(const array& in, const dim_t wind_length = 3, const dim_t wind_width = 3, const borderType edge_pad = AF_PAD_ZERO);
758#endif
759
760#if AF_API_VERSION >= 35
769AFAPI void setFFTPlanCacheSize(size_t cacheSize);
770#endif
771
772}
773#endif
774
775#ifdef __cplusplus
776extern "C" {
777#endif
778
801 const af_interp_type method, const float off_grid);
802
803#if AF_API_VERSION >= 37
833 const af_interp_type method, const float off_grid);
834#endif
835
860 const af_array pos0, const af_array pos1,
861 const af_interp_type method, const float off_grid);
862
863#if AF_API_VERSION >= 37
895 const af_array pos0, const af_array pos1,
896 const af_interp_type method, const float off_grid);
897#endif
898
899
900#if AF_API_VERSION >= 37
941 const af_array pos, const int interp_dim,
942 const double idx_start, const double idx_step,
943 const af_interp_type method,
944 const float off_grid);
945
979 const af_array pos, const int interp_dim,
980 const double idx_start,
981 const double idx_step,
982 const af_interp_type method,
983 const float off_grid);
984
1021 const af_array pos0, const int interp_dim0,
1022 const double idx_start_dim0,
1023 const double idx_step_dim0,
1024 const af_array pos1, const int interp_dim1,
1025 const double idx_start_dim1,
1026 const double idx_step_dim1,
1027 const af_interp_type method,
1028 const float off_grid);
1029
1068 const af_array pos0, const int interp_dim0,
1069 const double idx_start_dim0,
1070 const double idx_step_dim0,
1071 const af_array pos1, const int interp_dim1,
1072 const double idx_start_dim1,
1073 const double idx_step_dim1,
1074 const af_interp_type method,
1075 const float off_grid);
1076#endif
1077
1090AFAPI af_err af_fft(af_array *out, const af_array in, const double norm_factor, const dim_t odim0);
1091
1092#if AF_API_VERSION >= 31
1105AFAPI af_err af_fft_inplace(af_array in, const double norm_factor);
1106#endif
1107
1121AFAPI af_err af_fft2(af_array *out, const af_array in, const double norm_factor, const dim_t odim0, const dim_t odim1);
1122
1123#if AF_API_VERSION >= 31
1136AFAPI af_err af_fft2_inplace(af_array in, const double norm_factor);
1137#endif
1138
1153AFAPI af_err af_fft3(af_array *out, const af_array in, const double norm_factor, const dim_t odim0, const dim_t odim1, const dim_t odim2);
1154
1155#if AF_API_VERSION >= 31
1168AFAPI af_err af_fft3_inplace(af_array in, const double norm_factor);
1169#endif
1170
1183AFAPI af_err af_ifft(af_array *out, const af_array in, const double norm_factor, const dim_t odim0);
1184
1185#if AF_API_VERSION >= 31
1198AFAPI af_err af_ifft_inplace(af_array in, const double norm_factor);
1199#endif
1200
1214AFAPI af_err af_ifft2(af_array *out, const af_array in, const double norm_factor, const dim_t odim0, const dim_t odim1);
1215
1216#if AF_API_VERSION >= 31
1229AFAPI af_err af_ifft2_inplace(af_array in, const double norm_factor);
1230#endif
1231
1246AFAPI af_err af_ifft3(af_array *out, const af_array in, const double norm_factor, const dim_t odim0, const dim_t odim1, const dim_t odim2);
1247
1248#if AF_API_VERSION >= 31
1261AFAPI af_err af_ifft3_inplace(af_array in, const double norm_factor);
1262#endif
1263
1264#if AF_API_VERSION >= 31
1279AFAPI af_err af_fft_r2c (af_array *out, const af_array in, const double norm_factor, const dim_t pad0);
1280#endif
1281
1282#if AF_API_VERSION >= 31
1298AFAPI af_err af_fft2_r2c(af_array *out, const af_array in, const double norm_factor, const dim_t pad0, const dim_t pad1);
1299#endif
1300
1301#if AF_API_VERSION >= 31
1318AFAPI af_err af_fft3_r2c(af_array *out, const af_array in, const double norm_factor, const dim_t pad0, const dim_t pad1, const dim_t pad2);
1319#endif
1320
1321#if AF_API_VERSION >= 31
1337AFAPI af_err af_fft_c2r (af_array *out, const af_array in, const double norm_factor, const bool is_odd);
1338#endif
1339
1340#if AF_API_VERSION >= 31
1355AFAPI af_err af_fft2_c2r(af_array *out, const af_array in, const double norm_factor, const bool is_odd);
1356#endif
1357
1358#if AF_API_VERSION >= 31
1373AFAPI af_err af_fft3_c2r(af_array *out, const af_array in, const double norm_factor, const bool is_odd);
1374#endif
1375
1391AFAPI af_err af_convolve1(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode, af_conv_domain domain);
1392
1408AFAPI af_err af_convolve2(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode, af_conv_domain domain);
1409
1440AFAPI af_err af_convolve2_nn(af_array *out, const af_array signal, const af_array filter,
1441 const unsigned stride_dims, const dim_t *strides,
1442 const unsigned padding_dims, const dim_t *paddings,
1443 const unsigned dilation_dims, const dim_t *dilations);
1444
1460AFAPI af_err af_convolve3(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode, af_conv_domain domain);
1461
1478AFAPI af_err af_convolve2_sep(af_array *out, const af_array col_filter, const af_array row_filter, const af_array signal, const af_conv_mode mode);
1479
1492AFAPI af_err af_fft_convolve1(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode);
1493
1506AFAPI af_err af_fft_convolve2(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode);
1507
1520AFAPI af_err af_fft_convolve3(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode);
1521
1532
1545AFAPI af_err af_iir(af_array *y, const af_array b, const af_array a, const af_array x);
1546
1561 AFAPI af_err af_medfilt(af_array *out, const af_array in, const dim_t wind_length, const dim_t wind_width, const af_border_type edge_pad);
1562
1563#if AF_API_VERSION >= 34
1577 AFAPI af_err af_medfilt1(af_array *out, const af_array in, const dim_t wind_width, const af_border_type edge_pad);
1578#endif
1579
1580#if AF_API_VERSION >= 34
1595 AFAPI af_err af_medfilt2(af_array *out, const af_array in, const dim_t wind_length, const dim_t wind_width, const af_border_type edge_pad);
1596#endif
1597
1598
1599#if AF_API_VERSION >= 34
1611#endif
1612
1613#ifdef __cplusplus
1614}
1615#endif
A multi dimensional data container.
Definition: array.h:37
Generic object that represents size and shape.
Definition: dim4.hpp:26
af_border_type
Definition: defines.h:266
@ AF_PAD_ZERO
Out of bound values are 0.
Definition: defines.h:270
long long dim_t
Definition: defines.h:56
af_err
Definition: defines.h:71
af_conv_domain
Definition: defines.h:313
@ AF_CONV_AUTO
ArrayFire automatically picks the right convolution algorithm.
Definition: defines.h:314
void * af_array
Definition: defines.h:240
#define AFAPI
Definition: defines.h:38
af_interp_type
Definition: defines.h:242
@ AF_INTERP_LINEAR
Linear Interpolation.
Definition: defines.h:244
af_conv_mode
Definition: defines.h:300
@ AF_CONV_DEFAULT
Output of the convolution is the same size as input.
Definition: defines.h:305
AFAPI array medfilt2(const array &in, const dim_t wind_length=3, const dim_t wind_width=3, const borderType edge_pad=AF_PAD_ZERO)
C++ Interface for median filter.
AFAPI af_err af_medfilt2(af_array *out, const af_array in, const dim_t wind_length, const dim_t wind_width, const af_border_type edge_pad)
C Interface for median filter.
AFAPI array medfilt(const array &in, const dim_t wind_length=3, const dim_t wind_width=3, const borderType edge_pad=AF_PAD_ZERO)
C++ Interface for median filter.
AFAPI af_err af_medfilt(af_array *out, const af_array in, const dim_t wind_length, const dim_t wind_width, const af_border_type edge_pad)
C Interface for median filter.
AFAPI array medfilt1(const array &in, const dim_t wind_width=3, const borderType edge_pad=AF_PAD_ZERO)
C++ Interface for median filter.
AFAPI af_err af_medfilt1(af_array *out, const af_array in, const dim_t wind_width, const af_border_type edge_pad)
C Interface for 1D median filter.
AFAPI af_err af_approx1(af_array *out, const af_array in, const af_array pos, const af_interp_type method, const float off_grid)
C Interface for signals interpolation on one dimensional signals.
AFAPI af_err af_approx1_v2(af_array *out, const af_array in, const af_array pos, const af_interp_type method, const float off_grid)
C Interface for the version of af_approx1 that accepts a preallocated output array.
AFAPI af_err af_approx1_uniform(af_array *out, const af_array in, const af_array pos, const int interp_dim, const double idx_start, const double idx_step, const af_interp_type method, const float off_grid)
C Interface for signals interpolation on one dimensional signals along specified dimension.
AFAPI array approx1(const array &in, const array &pos, const interpType method=AF_INTERP_LINEAR, const float off_grid=0.0f)
C++ Interface for data interpolation on one-dimensional signals.
AFAPI af_err af_approx1_uniform_v2(af_array *out, const af_array in, const af_array pos, const int interp_dim, const double idx_start, const double idx_step, const af_interp_type method, const float off_grid)
C Interface for the version of af_approx1_uniform that accepts a preallocated output array.
AFAPI af_err af_approx2_uniform_v2(af_array *out, const af_array in, const af_array pos0, const int interp_dim0, const double idx_start_dim0, const double idx_step_dim0, const af_array pos1, const int interp_dim1, const double idx_start_dim1, const double idx_step_dim1, const af_interp_type method, const float off_grid)
C Interface for the version of af_approx2_uniform that accepts a preallocated output array.
AFAPI af_err af_approx2_v2(af_array *out, const af_array in, const af_array pos0, const af_array pos1, const af_interp_type method, const float off_grid)
C Interface for the version of af_approx2 that accepts a preallocated output array.
AFAPI af_err af_approx2_uniform(af_array *out, const af_array in, const af_array pos0, const int interp_dim0, const double idx_start_dim0, const double idx_step_dim0, const af_array pos1, const int interp_dim1, const double idx_start_dim1, const double idx_step_dim1, const af_interp_type method, const float off_grid)
C Interface for signals interpolation on two dimensional signals along specified dimensions.
AFAPI af_err af_approx2(af_array *out, const af_array in, const af_array pos0, const af_array pos1, const af_interp_type method, const float off_grid)
C Interface for signals interpolation on two dimensional signals.
AFAPI array approx2(const array &in, const array &pos0, const array &pos1, const interpType method=AF_INTERP_LINEAR, const float off_grid=0.0f)
C++ Interface for data interpolation on two-dimensional signals.
AFAPI af_err af_convolve1(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode, af_conv_domain domain)
C Interface for convolution on one dimensional signals.
AFAPI array fftConvolve1(const array &signal, const array &filter, const convMode mode=AF_CONV_DEFAULT)
C++ Interface for convolution on 1D signals using FFT.
AFAPI af_err af_fft_convolve1(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode)
C Interface for convolution on 1D signals using FFT.
AFAPI array convolve1(const array &signal, const array &filter, const convMode mode=AF_CONV_DEFAULT, const convDomain domain=AF_CONV_AUTO)
C++ Interface for convolution on one dimensional signals.
AFAPI af_err af_convolve2_nn(af_array *out, const af_array signal, const af_array filter, const unsigned stride_dims, const dim_t *strides, const unsigned padding_dims, const dim_t *paddings, const unsigned dilation_dims, const dim_t *dilations)
C Interface for 2D convolution.
AFAPI array convolve2(const array &signal, const array &filter, const convMode mode=AF_CONV_DEFAULT, const convDomain domain=AF_CONV_AUTO)
C++ Interface for convolution on two dimensional signals.
AFAPI array fftConvolve2(const array &signal, const array &filter, const convMode mode=AF_CONV_DEFAULT)
C++ Interface for convolution on 2D signals using FFT.
AFAPI af_err af_convolve2(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode, af_conv_domain domain)
C Interface for convolution on two dimensional signals.
AFAPI af_err af_fft_convolve2(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode)
C Interface for convolution on 2D signals using FFT.
AFAPI array convolve2NN(const array &signal, const array &filter, const dim4 stride, const dim4 padding, const dim4 dilation)
C++ Interface for 2D convolution.
AFAPI array convolve3(const array &signal, const array &filter, const convMode mode=AF_CONV_DEFAULT, const convDomain domain=AF_CONV_AUTO)
C++ Interface for convolution on three dimensional signals.
AFAPI af_err af_fft_convolve3(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode)
C Interface for convolution on 3D signals using FFT.
AFAPI array fftConvolve3(const array &signal, const array &filter, const convMode mode=AF_CONV_DEFAULT)
C++ Interface for convolution on 3D signals using FFT.
AFAPI af_err af_convolve3(af_array *out, const af_array signal, const af_array filter, const af_conv_mode mode, af_conv_domain domain)
C Interface for convolution on three dimensional signals.
AFAPI af_err af_convolve2_sep(af_array *out, const af_array col_filter, const af_array row_filter, const af_array signal, const af_conv_mode mode)
C Interface for separable convolution on two dimensional signals.
AFAPI array convolve(const array &signal, const array &filter, const convMode mode=AF_CONV_DEFAULT, const convDomain domain=AF_CONV_AUTO)
C++ Interface for convolution any(one through three) dimensional signals.
AFAPI array fftConvolve(const array &signal, const array &filter, const convMode mode=AF_CONV_DEFAULT)
C++ Interface for FFT-based convolution any(one through three) dimensional signals.
AFAPI array fft2Norm(const array &in, const double norm_factor, const dim_t odim0=0, const dim_t odim1=0)
C++ Interface for fast fourier transform on two dimensional signals.
AFAPI array fft2(const array &in, const dim_t odim0=0, const dim_t odim1=0)
C++ Interface for fast fourier transform on two dimensional signals.
AFAPI void fft2InPlace(array &in, const double norm_factor=1.0)
C++ Interface for fast fourier transform on two dimensional signals.
AFAPI af_err af_fft2(af_array *out, const af_array in, const double norm_factor, const dim_t odim0, const dim_t odim1)
C Interface for fast fourier transform on two dimensional signals.
AFAPI af_err af_fft2_inplace(af_array in, const double norm_factor)
C Interface for fast fourier transform on two dimensional signals.
AFAPI af_err af_fft3_inplace(af_array in, const double norm_factor)
C Interface for fast fourier transform on three dimensional signals.
AFAPI af_err af_fft3(af_array *out, const af_array in, const double norm_factor, const dim_t odim0, const dim_t odim1, const dim_t odim2)
C Interface for fast fourier transform on three dimensional signals.
AFAPI array fft3Norm(const array &in, const double norm_factor, const dim_t odim0=0, const dim_t odim1=0, const dim_t odim2=0)
C++ Interface for fast fourier transform on three dimensional signals.
AFAPI void fft3InPlace(array &in, const double norm_factor=1.0)
C++ Interface for fast fourier transform on three dimensional signals.
AFAPI array fft3(const array &in, const dim_t odim0=0, const dim_t odim1=0, const dim_t odim2=0)
C++ Interface for fast fourier transform on three dimensional signals.
AFAPI af_err af_fft_c2r(af_array *out, const af_array in, const double norm_factor, const bool is_odd)
C Interface for complex to real fast fourier transform for one dimensional signals.
AFAPI af_err af_fft3_c2r(af_array *out, const af_array in, const double norm_factor, const bool is_odd)
C Interface for complex to real fast fourier transform for three dimensional signals.
AFAPI af_err af_fft2_c2r(af_array *out, const af_array in, const double norm_factor, const bool is_odd)
C Interface for complex to real fast fourier transform for two dimensional signals.
array fftC2R(const array &in, bool is_odd=false, const double norm_factor=1.0)
C++ Interface for complex to real fast fourier transform.
array fftR2C(const array &in, const dim4 &dims, const double norm_factor=1.0)
C++ Interface for real to complex fast fourier transform for one dimensional signals.
AFAPI af_err af_fft_r2c(af_array *out, const af_array in, const double norm_factor, const dim_t pad0)
C Interface for real to complex fast fourier transform for one dimensional signals.
AFAPI af_err af_fft2_r2c(af_array *out, const af_array in, const double norm_factor, const dim_t pad0, const dim_t pad1)
C Interface for real to complex fast fourier transform for two dimensional signals.
AFAPI af_err af_fft3_r2c(af_array *out, const af_array in, const double norm_factor, const dim_t pad0, const dim_t pad1, const dim_t pad2)
C Interface for real to complex fast fourier transform for three dimensional signals.
AFAPI af_err af_set_fft_plan_cache_size(size_t cache_size)
C Interface for setting plan cache size.
AFAPI af_err af_fft(af_array *out, const af_array in, const double norm_factor, const dim_t odim0)
C Interface for fast fourier transform on one dimensional signals.
AFAPI array fft(const array &in, const dim_t odim0=0)
C++ Interface for fast fourier transform on one dimensional signals.
AFAPI array dft(const array &in, const double norm_factor, const dim4 outDims)
C++ Interface for fast fourier transform on any(1d, 2d, 3d) dimensional signals.
AFAPI af_err af_fft_inplace(af_array in, const double norm_factor)
C Interface for fast fourier transform on one dimensional signals.
AFAPI array idft(const array &in, const double norm_factor, const dim4 outDims)
C++ Interface for inverse fast fourier transform on any(1d, 2d, 3d) dimensional signals.
AFAPI void fftInPlace(array &in, const double norm_factor=1.0)
C++ Interface for fast fourier transform on one dimensional signals.
AFAPI array fftNorm(const array &in, const double norm_factor, const dim_t odim0=0)
C++ Interface for fast fourier transform on one dimensional signals.
AFAPI af_err af_fir(af_array *y, const af_array b, const af_array x)
C Interface for finite impulse response filter.
AFAPI array fir(const array &b, const array &x)
C++ Interface for finite impulse response filter.
AFAPI array ifft2Norm(const array &in, const double norm_factor, const dim_t odim0=0, const dim_t odim1=0)
C++ Interface for inverse fast fourier transform on two dimensional signals.
AFAPI af_err af_ifft2(af_array *out, const af_array in, const double norm_factor, const dim_t odim0, const dim_t odim1)
C Interface for inverse fast fourier transform on two dimensional signals.
AFAPI array ifft2(const array &in, const dim_t odim0=0, const dim_t odim1=0)
C++ Interface for inverse fast fourier transform on two dimensional signals.
AFAPI af_err af_ifft2_inplace(af_array in, const double norm_factor)
C Interface for fast fourier transform on two dimensional signals.
AFAPI void ifft2InPlace(array &in, const double norm_factor=1.0)
C++ Interface for fast fourier transform on two dimensional signals.
AFAPI array ifft3Norm(const array &in, const double norm_factor, const dim_t odim0=0, const dim_t odim1=0, const dim_t odim2=0)
C++ Interface for inverse fast fourier transform on three dimensional signals.
AFAPI af_err af_ifft3_inplace(af_array in, const double norm_factor)
C Interface for fast fourier transform on three dimensional signals.
AFAPI void ifft3InPlace(array &in, const double norm_factor=1.0)
C++ Interface for fast fourier transform on three dimensional signals.
AFAPI array ifft3(const array &in, const dim_t odim0=0, const dim_t odim1=0, const dim_t odim2=0)
C++ Interface for inverse fast fourier transform on three dimensional signals.
AFAPI af_err af_ifft3(af_array *out, const af_array in, const double norm_factor, const dim_t odim0, const dim_t odim1, const dim_t odim2)
C Interface for inverse fast fourier transform on three dimensional signals.
AFAPI af_err af_ifft(af_array *out, const af_array in, const double norm_factor, const dim_t odim0)
C Interface for inverse fast fourier transform on one dimensional signals.
AFAPI af_err af_ifft_inplace(af_array in, const double norm_factor)
C Interface for fast fourier transform on one dimensional signals.
AFAPI array ifftNorm(const array &in, const double norm_factor, const dim_t odim0=0)
C++ Interface for inverse fast fourier transform on one dimensional signals.
AFAPI void ifftInPlace(array &in, const double norm_factor=1.0)
C++ Interface for fast fourier transform on one dimensional signals.
AFAPI array ifft(const array &in, const dim_t odim0=0)
C++ Interface for inverse fast fourier transform on one dimensional signals.
AFAPI array iir(const array &b, const array &a, const array &x)
C++ Interface for infinite impulse response filter.
AFAPI af_err af_iir(af_array *y, const af_array b, const af_array a, const af_array x)
C Interface for infinite impulse response filter.
Definition: algorithm.h:15
AFAPI array filter(const array &image, const array &kernel)
Image Filtering.
AFAPI void setFFTPlanCacheSize(size_t cacheSize)
C++ Interface for setting plan cache size.