Developer Reference

  • 2020.2
  • 07/15/2020
  • Public Content
Contents

Convolution and Correlation Data Allocation

This section explains the relation between:
  • mathematical finite functions
    u
    ,
    v
    ,
    w
    introduced in Mathematical Notation and Definitions ;
  • multi-dimensional input and output data vectors representing the functions
    u
    ,
    v
    ,
    w
    ;
  • arrays
    u
    ,
    v
    ,
    w
    used to store the input and output data vectors in computer memory
The convolution and correlation routine parameters that determine the allocation of input and output data are the following:
  • Data arrays
    x
    ,
    y
    ,
    z
  • Shape arrays
    xshape
    ,
    yshape
    ,
    zshape
  • Strides within arrays
    xstride
    ,
    ystride
    ,
    zstride
  • Parameters
    start
    ,
    decimation

Finite Functions and Data Vectors

The finite functions
u(p)
,
v(q)
, and
w(r)
introduced above are represented as multi-dimensional vectors of input and output data:
inputu(i
1
,...,i
dims
)
for
u
(p
1
,...,p
N
)
inputv(j
1
,...,j
dims
)
for
v
(q
1
,...,q
N
)
output(k
1
,...,k
dims
)
for
w
(r
1
,...,r
N
).
Parameter
dims
represents the number of dimensions and is equal to N.
The parameters
xshape
,
yshape
, and
zshape
define the shapes of input/output vectors:
inputu(i
1
,...,i
dims
)
is defined if
1
i
n
xshape
(
n
)
for every
n=1,...,
dims
inputv(j
1
,...,j
dims
)
is defined if
1
j
n
yshape
(
n
)
for every
n=1,...,
dims
output(k
1
,...,k
dims
)
is defined if
1
k
n
zshape
(
n
)
for every
n=1,...,
dims
.
Relation between the input vectors and the functions
u
and
v
is defined by the following formulas:
inputu(i
1
,...,i
dims
)=
u
(p
1
,...,p
N
)
, where
p
n
= P
n
min
+ (i
n
-1)
for every
n
inputv(j
1
,...,j
dims
)=
v
(q
1
,...,q
N
)
, where
q
n
=Q
n
min
+ (j
n
-1)
for every
n
.
The relation between the output vector and the function
w(r)
is similar (but only in the case when parameters
start
and
decimation
are not defined):
output(k
1
,...,k
dims
)= w(r
1
,...,r
N
)
, where
r
n
=R
n
min
+ (k
n
-1)
for every
n
.
If the parameter
start
is defined, it must belong to the interval
R
n
min
start(n)
R
n
max
. If defined, the
start
parameter replaces
R
min
in the formula:
output(k
1
,...,