2D Z-transform explained

The 2D Z-transform, similar to the Z-transform, is used in multidimensional signal processing to relate a two-dimensional discrete-time signal to the complex frequency domain in which the 2D surface in 4D space that the Fourier transform lies on is known as the unit surface or unit bicircle.[1] The 2D Z-transform is defined by

Xz(z1,z2)=

infty
\sum
n1=0
infty
\sum
n2=0

x(n1,n2)

-n1
z
1
-n2
z
2

where

n1,n2

are integers and

z1,z2

are represented by the complex numbers:

z1=

j\phi1
Ae

=A(\cos{\phi1}+j\sin{\phi1})

z2=

j\phi2
Be

=B(\cos{\phi2}+j\sin{\phi2})

The 2D Z-transform is a generalized version of the 2D Fourier transform. It converges for a much wider class of sequences, and is a helpful tool in allowing one to draw conclusions on system characteristics such as BIBO stability. It is also used to determine the connection between the input and output of a linear shift-invariant system, such as manipulating a difference equation to determine the system's transfer function.

Region of Convergence (ROC)

The Region of Convergence is the set of points in complex space where:

ROC=|Xz(z1,z2)|<infty

In the 1D case this is represented by an annulus, and the 2D representation of an annulus is known as the Reinhardt domain.[2] From this one can conclude that only the magnitude and not the phase of a point at

(z1,z2)

will determine whether or not it lies within the ROC. In order for a 2D Z-transform to fully define the system in which it means to describe, the associated ROC must also be know. Conclusions can be drawn on the Region of Convergence based on Region of Support of the original sequence

(n1,n2)

.

Finite-support sequences

A sequence with a region of support that is bounded by an area

(M1,M2)

within the

(n1,n2)

plane can be represented in the z-domain as:

Xz(z1,z2)=

M1
\sum
n1=0
M2
\sum
n2=0

x(n1,n2)

-n1
z
1
-n2
z
2

Because the bounds on the summation are finite, as long as z1 and z2 are finite, the 2D Z-transform will converge for all values of z1 and z2, except in some cases where z1 = 0 or z2 = 0 depending on

x(n1,n2)

.

First-quadrant and wedge sequences

Sequences with a region of support in the first quadrant of the

(n1,n2)

plane have the following 2D Z-transform:

Xz(z1,z2)=

infty
\sum
n1=0
infty
\sum
n2=0

x(n1,n2)

-n1
z
1
-n2
z
2

From the transform if a point

z01,z02

lies within the ROC then any point with a magnitude

\left|z1\right|\left|z01\right|;\left|z2\right|\left|z02\right|

also lie within the ROC. Due to these condition, the boundary of the ROC must have a negative slope or a slope of 0. This can be assumed because if the slope was positive there would be points that meet the previous condition, but also lie outside the ROC. For example, the sequence:

xn(n1,n2)=

n
a
1\delta(n

1-n2)u[n1,n2]

has the

z

transform

Xz(z1,z2)=

1
1-
-1
az
1
-1
z
2

It is obvious that this only converges for

\left|a\right|<\left|z01\right|\left|z02\right|=ln(\left|a\right|)<ln(\left|z01\right|)-ln(\left|z02\right|)

So the boundary of the ROC is simply a line with a slope of -1 in the

ln(z01),ln(z02)

plane.

In the case of a wedge sequence where the region of support is less than that of a half plane. Suppose such a sequence has a region of support over the first quadrant and the region in the second quadrant where

n01=-Ln02

. If

l

is defined as

l=01+Ln02

the new 2D Z-Transform becomes:

Xz(z1,z2)=

infty
\sum
n1=0
infty
\sum
n2=0

x(l-Ln2,n2)

-l+Ln2
z
1
-n2
z
2

This converges if:

\left|z1\right|\left|z01\right|;\left|

-L
z
1

z2\right|\left|

-L
z
01

z02\right|

These conditions can then be used to determine constraints on the slope of the boundary of the ROC in a similar manner to that of a first quadrant sequence. By doing this one gets:

ln(\left|z1\right|)ln(\left|z01)\right|)

and

ln(\left|z2\right|)Lln(\left|z1)\right|)+(ln(\left|z02)\right|)-Lln(\left|z01)\right|))

Sequences with region of support in all quadrants

A sequence with an unbounded Region of Support can have an ROC in any shape, and must be determined based on the sequence

(n1,n2)

. A few examples are listed below:

xn(n1,n2)=

2
(-n
2
-n
2
)
1
e

will converge for all

z1,z2

. While:

xn(n1,n2)=

(n1)
a
(n2)
a

,a1

will not converge for any value of

z1,z2

. However, These are the extreme cases, and usually, the Z-transform will converge over a finite area.

A sequence with support over the entire

n1,n2

can be written as a sum of each quadrant sequence:

xn(n1,n2)=x1(n1,n2)+x2(n1,n2)+x3(n1,n2)+x4(n1,n2)

Now suppose:

x1(n1,n2)=\begin{cases} xn(n1,n2),&ifn1>0,n2>0\\ 0.5xn(n1,n2),&ifn1=0,n2>0;n1>0,n2=0\\ 0.25xn(n1,n2),&ifn1=n2=0\\ 0,otherwise \end{cases}

and

x2(n1,n2),x3(n1,n2),x4(n1,n2)

also have similar definitions over their respective quadrants. Then the Region of convergence is simply the intersection between the four 2D Z-transforms in each quadrant.

Using the 2D Z-transform to solve difference equations

A 2D difference equation relates the input to the output of a Linear Shift-Invariant (LSI) System in the following manner:

K1-1
\sum
k1=0
K2-1
\sum
k2=0

b(k1,k2)y(n1-k1,n2-k2)=\sum

R1-1
r1=0
R2-1
\sum
r2=0

a(r1,r2)x(n1-r1,n2-r2)

Due to the finite limits of computation, it can be assumed that both a and b are sequences of finite extent. After using the z transform, the equation becomes:

Yz(z1,z2)\sum

K1-1
k1=0
K2-1
\sum
k2=0

b(k1,k2)z

-k1
1
-k2
z
2

=Xz(z1,z2)\sum

R1-1
r1=0
R2-1
\sum
r2=0

a(r1,r2)z

-r1
1
-r2
z
2

This gives:

Hz(z1,z2)=

Yz(z1,z2)
Xz(z1,z2)

=

R1-1
\sum
R2-1
\sum
r2=0
a(r1,r2)z
-r1
1
-r2
z
2
r1=0
K1-1
\sum
K2-1
\sum
k2=0
b(k1,k2)z
-k1
1
-k2
z
2
k1=0

=

Az(z1,z2)
Bz(z1,z2)

Thus we have defined the relation between the input and output of the LSI system.

Using the 2D Z-transform to determine stability

Shanks' Theorem I

For a first quadrant recursive filter in which

Hz(z1,z2)=

1
Bz(z1,z2)
. The filter is stable iff:[3]

Bz(z1,z2)0

for all points

(z1,z2)

such that

\left|z1\right|1

or

\left|z2\right|1

.

Shanks' Theorem II

For a first quadrant recursive filter in which

Hz(z1,z2)=

1
Bz(z1,z2)
. The filter is stable iff:

Bz(z1,z2)0,\left|z1\right|1,\left|z2\right|=1

Bz(z1,z2)0,\left|z1\right|=1,\left|z2\right|1

Huang's Theorem

For a first quadrant recursive filter in which

Hz(z1,z2)=

1
Bz(z1,z2)
. The filter is stable iff:

Bz(z1,z2)0,\left|z1\right|1,\left|z2\right|=1

Bz(a,z2)0,\left|z2\right|1

for any

a

such that

\left|a\right|1

Decarlo and Strintzis' Theorem

For a first quadrant recursive filter in which

Hz(z1,z2)=

1
Bz(z1,z2)
. The filter is stable iff:

Bz(z1,z2)0,\left|z1\right|=1,\left|z2\right|=1

Bz(a,z2)0,\left|z2\right|1

for any

a

such that

\left|a\right|=1

Bz(z1,b)0,\left|z1\right|1

for any

b

such that

\left|b\right|=1

Calculation of 2D Z-transforms

Approach 1: Finite sequences

For finite sequences, the 2D Z-transform is simply the sum of magnitude of each point multiplied by

z1,z2

raised to the inverse power of the location of the corresponding point. For example, the sequence:

x(n1,n2)=3\delta(n1,n2)+6\delta(n1-1,n2)+2\delta(n1,n2-1)+4\delta(n1-1,n2-1)

has the Z-transform:

X(z1,z2)=3+

-1
6z
1

+

-1
2z
2

+

-1
4z
1
-1
z
2

As this is a finite sequence the ROC is for all

z1,z2

.

Approach 2: Sequences with values along only

n1

or

n2

For a sequence with a region of support on only

n1=0

or

n2=0

, the sequence can be treated as a 1D signal and the 1D Z-transform can be used to solve for the 2D Z-transform. For example, the sequence:

Xz(z1,z2)=\begin{cases} \delta(n1),&if0n2N-1\\ 0,otherwise \end{cases}

Is clearly given by

u[n2]-u[n2-N]

.

Therefore, its Z-transform is given by:

Xz(z1,z2)=

-1
1+z
2
-2
+z
2
-N+1
+...+z
2

Xz(z1,z2)=\begin{cases} N,&ifz2=1\\

-N
1-z
2
-1
1-z
2

,otherwise \end{cases}

As this is a finite sequence the ROC is for all

z1,z2

.

Approach 3: Separable sequences

A separable sequence is defined as

x(n1,n2)=f(n1)g(n2)

For a separable sequence, finding the 2D Z-transform is as simple as separating the sequence and taking the product of the 1D Z-transform of each signal

f(n1)

and

g(n2)

. For example, consider the sequence

x(n1,n2)=

n1+n2
a

u[n1,n2]=

n1
a
n2
u[n
1]a

u[n2]=f(n1)g(n2)

.

Its Z-transform is given by

Xz(z1,z2)=Fz(z1)G(z2)=(

1)(
-1
1-az
1
1
-1
1-az
2

)=

1
-1
(1-az
-1
)(1-az
2
)
1
.

The ROC is given by

\left|z1\right|>\left|a\right|

;

\left|z2\right|>\left|a\right|

.

Notes and References

  1. Siamak Khatibi, “Multidimensional Signal Processing: Lecture 11”, BLEKINGE INSTITUTE OF TECHNOLOGY, PowerPoint Presentation.
  2. Dan E. Dudgeon, Russell M. Mersereau, “Multidimensional Digital Signal Processing”, Prentice-Hall Signal Processing Series,, 1983.
  3. Ed. Alexander D. Poularikas, “The Handbook of Formulas and Tables for Signal Processing”, Boca Raton: CRC Press LLC, 1999.