M-TRANSFORM ALGORITHM
A new orthogonal transform, the Malakooti transform (M-TRANFORM), analogous to the Hadamard transform,
has been developed to represent the time series signals with a set of coefficients called the M coefficients. These
set of coefficients contain useful information about the spectral characteristics of the underlying time series and can
be used for data transmission and compression. Many time series signal are highly redundant; speech, image, and
other periodic signals fall into this category. The M-transform representation enables one to represent the desired
signal with fewer coefficients, resulting in a saving of transmission bandwidth and memory.
This transform, like the Hadamard transform, has a complete orthonormal set and has an important role in
signal and image processing applications. It has been shown [1] that the time series signals obtained from a two-
dimensional shape can be represented with a few coefficients for pattern recognition and shape classification.
Similarly, speech signals are represented by a set of coefficients for spectral estimation and word recognition. In all
these cases, the right singular vectors of the correlation matrix are used as an orthogonal basis for the solution
space. For this reason and many others, unitary transforms or an orthonormal basis, in particular a complete
orthonormal basis, should receive more attention than other transforms which have no unitary property.
Complete Orthonormal Set
A set of linearly independent vectors ๐ฃ1,, ๐ฃ2, โฆ ๐ฃ๐ is said to be orthonormal if it is self-reciprocal, i.e., if the
vectors are all mutually orthogonal and have unit norm as
๐ฃ๐โ ๐ฃ๐ = {
1 ๐ = ๐0 ๐ โ ๐.
(EQ-1)
If time series signals and are represented by a linear combination of a set of orthonormal vectors
๐ = โ ฮฑi๐๐=1 vi (EQ-2)
and ๐ = โ ฮฒi vi
๐
๐=1 (EQ-3)
Then their inner product < ๐, ๐ >, is easy to find. The inner product of X and Y is obtained as
< ๐, ๐ > = < โ ๐ผ๐ ๐ฃ๐ , โ ๐ฝ๐ ๐ฃ๐ >๐๐=1
๐๐=1 (EQ-4)
= โ โ ๐ผ๐ ๐ฝ๐โ ๐ข๐
โ ๐ข๐
๐
๐=1
๐
๐=1
= โ ๐ผ๐
๐
๐=1
๐ฝ๐โ
= < ๐ผ, ๐ฝ >.
An orthonormal set is said to be complete if any additional non-zero orthonormal vector is superfluous. If a
signal is approximated by a linear combination of the first m vectors of complete orthonormal set with dimension n,
then the norm of the error can be reduced by choosing m sufficiently large. In the next section, a method for
generating the complete orthonormal sets of vectors, m-transform vectors, with the Eigen analysis of the spanned
space is presented.
Generation of M-transform Matrix
Assume that the order-1 M-transform matrix, ๐๐ , is equal to one,
๐๐ = 1, (EQ-5)
and the order-2 M-transform matrix, ๐1 , is formed according to
๐1 = [๐๐๐ ๐๐๐๐
โ๐๐๐๐ ๐๐๐] (EQ-6)
๐1 = [๐ ๐๐
โ๐๐ ๐],
Where a and b are constant parameters.
The matrix M is a 2 x 2 anti-symmetric unitary matrix
๐1๐ ๐1 = ๐1๐1
๐ = ๐ ๐ผ, (EQ-7)
Where the matrix I is a 2 x 2 identity matrix and constant parameters c is equal to the determinant of ๐1. Thus,
c = ๐2 (1 + ๐2) (EQ-8)
and ๐1 inverse is given as
๐1โ1 =
๐1๐
C (EQ-9)
Similarly, the order-3 M-transform matrix, ๐2, can be obtained according to
๐2 = [๐๐1 ๐๐๐1
โ๐๐๐1 ๐๐1] (EQ-10)
The matrix ๐2 is a 4 x 4 anti-symmetric unitary matrix
๐2๐๐2 = ๐2๐2
๐ = ๐ถ2 ๐ผ, (EQ-11)
where the matrix I is an 4 x 4 identity matrix, C is given in (EQ-8), and the inverse of is calculated according to
๐2โ1 =
๐2๐
๐ถ2 , (EQ-12)
Without loss of generality, the 2๐ x 2๐ M-transform matrix, ๐๐ can be obtained from
๐๐ = [
๐๐๐โ1 ๐๐๐๐โ1โ๐๐๐๐โ1 ๐๐๐โ1
], (EQ-13)
and ๐๐ inverse is given according to
๐๐โ1 =
๐๐๐
๐ถ๐ , (EQ-14)
Using the Kronecker product notation
๐ด โจ ๐ต = [
๐11 ๐ต
๐21 ๐ต
๐12 ๐ต
๐22 ๐ตโฏ
๐1๐ ๐ต
๐2๐ ๐ต
โฎ โฎ๐๐1 ๐ต ๐๐2 ๐ต โฏ ๐๐๐ ๐ต
], (EQ-15)
the M-transform matrices can written according to
๐1 = ๐1 โจ ๐๐ = [๐๐๐ ๐๐๐๐
โ๐๐๐๐ ๐๐๐] , (EQ-16)
and ๐2 = ๐1 โจ ๐1 (EQ-17)
= ๐1 โจ (๐1 โจ ๐๐)
=(๐1 โจ ๐1) โจ ๐๐
= ๐1(2)
โจ ๐๐
= ๐1(1)
โจ ๐1,
where ๐1(2)
is the Kronecker power 2 of ๐1 and the symbol โจ denotes the Kronecker product. Similarly,
๐3 = ๐1 โจ ๐2 (EQ-18)
= ๐1 โจ ๐1(2)
โจ ๐๐
= ๐1(3)
โจ ๐๐
= ๐1(2)
โจ ๐1
.
.
๐๐ = ๐1 โจ ๐๐โ1 (EQ-19)
= ๐1โจ ๐1(๐โ1)
โจ ๐๐
= ๐1(๐)
โจ ๐๐
= ๐1(๐โ1)
โจ ๐1,
It has been shown that, (EQ-64) - (EQ-67), that the eigenvalues of a 4 x 4 matrix D, ๐๐
D = ๐ด โจ ๐ต, (EQ-20)
can be calculated from the product of the eigenvalues of B, ๐๐, and the eigenvalues of A, ๐พ๐, according to
๐1 = ๐1 ๐พ1 , (EQ-21)
๐2 = ๐2 ๐พ1, (EQ-22)
๐3 = ๐พ1๐2, (EQ-23)
๐4 = ๐พ2๐2, (EQ-24)
Thus, the eigenvalues of the M-transform matrices can be obtained from a recursive algorithm proposed in the
following section.
Eigenvalues-Eigenvectors of M-transform Matrices
Assume that constant parameters a and b are given as a=1 and b=2.
Thus,
๐1 = [1 2
โ2 1], (EQ-25)
and
๐2 = [
1โ2โ2 4
2 1โ4โ2
2 โ4 1
โ2
4 2 2 1
], (EQ-26)
The eigenvalues, ๐๐(1)
, and eigenvectors, ๐๐(1)
, of ๐1 are,
๐1(1)
= 1 + ๐2 , (EQ-27)
๐2(1)
= 1 โ ๐2, (EQ-28)
๐1(1)
= { ๐0.7071
โ0.7071, (EQ-29)
๐2(1)
= {0.7071
โ๐0.7071, (EQ-30)
where the eigenvalues of are complex conjugates of each other. Using the Kronecker product relationship
between ๐1 and ๐2, Equation (EQ-20) , the eigenvalues of ๐2, ๐๐(2)
, are calculated according to
๐๐(๐)
= ๐๐(๐)
๐๐(๐)
, (EQ-31)
= (๐ + ๐๐) (๐ + ๐๐)
= -3+j4
๐๐(๐)
= ๐๐(๐)
๐๐(๐)
, (EQ-32)
= (1 โ ๐2) (1 + ๐2)
= 5
๐๐(๐)
= ๐๐(๐)
๐๐(๐)
, (EQ-33)
= (1 + ๐2) (1 โ ๐2)
= 5
= ๐๐โ(๐)
๐๐(๐)
= ๐๐(๐)
๐๐(๐)
, (EQ-34)
= (1 โ ๐2) (1 โ ๐2)
= โ3 โj4
= ๐๐โ(๐)
.
The matrix ๐2 has two complex conjugate eigenvalues. Using the complex conjugate property half of the
eigenvalues of ๐2 can be obtained without any calculation.
In general eigenvalues of the 2๐ฟ โ 2๐ฟ transform, ๐๐ฟ, are calculated recursively form the proposed algorithm as
follows
1. Calculate the eigenvalues of ๐1
๐1(1)
= ๐ + ๐๐๐ (EQ-35)
๐2(1)
= ๐ โ ๐๐๐ (EQ-36)
2. for K=2 to L do
N=2๐ (EQ-37)
for i=1 to N/2 do;
๐๐(๐)
= ๐๐(๐โ1)
๐1(1)
(EQ-38)
๐๐โ๐+1(๐)
= ๐๐โ(๐)
(EQ-39)
End do
End do
The eigenvectors of the L-th order M-transform are obtained from a new procedure based on the eigenvectors
of the lower order M-transform. The proposed eigenvector algorithm calculates half of the eigenvectors of the ๐๐ฟ
matrix from a simple procedure. This method, which requires few operations, is incomparable with a direct method
where the dimension of ๐๐ฟ is high. To show the effectiveness of the proposed eigenvector algorithm, the
eigenvectors of the ๐2 matrix are calculated using the Eigen characterization of the ๐1 matrix.
The characteristic equation of the ๐1 matrix is given as
๐(๐) = ๐2- 2a๐+ ๐2(1 + ๐2) (EQ-40)
or
๐2 = 2๐๐ โ ๐2(1 + ๐2) (EQ-41)
Using the Cayley-Hamilton theorem gives
๐12 = 2๐๐1 โ ๐2 (1 + ๐2)๐ผ
= ๐ก๐[๐1]๐1 โ ๐๐๐ก[๐1]๐ผ. (EQ-42)
Assume that ๐ is the eigenvalue of ๐2 corresponding to the eigenvector, X,
X = [Xu
Xl] (EQ-43)
Thus, the eigenvectors of the ๐2 matrix are related by the following relationships
๐2X = ๐X (EQ-44)
(๐2 โ ๐๐ผ )๐ = 0. (EQ-45)
Substituting for ๐2 and x into (EQ-45) gives
[00
] = [ ๐๐1 โ ๐๐ผ ๐๐๐1
โ๐๐๐1 ๐๐1 โ ๐๐ผ] (EQ-46)
or
(๐๐1 โ ๐๐ผ) ๐ฅ๐ข + ๐๐๐1 ๐ฅ๐ = 0 . (EQ-47)
and
โ๐๐๐1 ๐ฅ๐ข + (๐๐1 โ ๐๐ผ)๐ฅ๐ = 0. (EQ-48)
Since abโ 0, ๐ฅ๐ can be obtained from (EQ-48) as
๐ฅ๐ = โ 1
๐๐ ๐1
โ1 (๐๐1 โ ๐๐ผ)๐ฅ๐ข . (EQ-49)
Substituting for ๐ฅ๐ into (EQ-48) gives
โ๐๐๐1๐ฅ๐ข โ (๐๐1 โ ๐๐ผ) 1
๐๐๐1
โ1 (๐๐1 โ ๐๐ผ) ๐ฅ๐ข = 0 (EQ-50)
or
1
๐๐ [2๐๐๐1 โ ๐2(1 + ๐2) ๐1
2 โ ๐2๐ผ] ๐1โ1 ๐ฅ๐ข = 0. (EQ-51)
Similarly, ๐ฅ๐ข can be obtained from (EQ-48)
๐ฅ๐ข = 1
๐๐๐1
โ1 (๐๐1 โ ๐๐ผ)๐ฅ๐. (EQ-52)
Substituting for ๐๐ข into Equation (EQ-48) gives
(๐๐1 โ ๐๐ผ) [1
๐๐ ๐1
โ1 (๐๐1 โ ๐๐ผ) ๐๐] + ๐๐๐1 ๐๐ = 0 (EQ-53)
Or
1
๐๐ [๐2 (1 + ๐2)๐1
2 โ 2๐๐๐1 + ๐2๐ผ]๐1โ1 ๐๐ = 0 (EQ-54)
Substituting for ๐12 from (EQ-42) into (EQ-53) gives
2๐[๐2 (1 + ๐2) โ ๐] [๐1 โ1
2๐ (๐2 (1 + ๐2) + ๐)๐ผ] ๐1
โ1 ๐๐ = 0 (EQ-55)
Similarly, Substituting for from (EQ-42) into (EQ-50) gives
2๐[๐2 (1 + ๐2) โ ๐] [๐1 โ1
2๐ (๐2 (1 + ๐2) + ๐)๐ผ] ๐1
โ1 ๐๐ข = 0 (EQ-56)
Two eigenvalues of ๐2 are calculated from (EQ-57) and (EQ-58) according to
๐2(2)
= ๐2(1 + ๐2)
= ๐๐๐ก[๐1] (EQ-57)
and
๐3(2)
= ๐2(1 + ๐2)
= ๐๐๐ก [๐1] (EQ-58)
or
๐2(2)
= ๐3(2)
= ๐2(1 + ๐2)
= (๐ + ๐๐๐) (๐ โ ๐๐๐) (EQ-59)
where (๐ + ๐๐๐)and (๐ โ ๐๐๐) are the eigenvalues of the ๐1 matrix. Thus,
๐2(2)
= ๐3(2)
(EQ-60)
๐1(1)
= ๐2(1)
= ๐๐๐ก [๐1]. (EQ-61)
The remaining two eigenvalues of ๐2 are calculated from the following relationship,
๐1 โ 1
2๐ (๐2(1 + ๐2) + ๐)๐ผ = 0 (EQ-62)
and
2๐๐1 โ ๐2 (1 + ๐2)๐ผ โ ๐๐ผ = 0 (EQ-63)
Equation (EQ-63) indicates that the remaining eigenvalues of ๐2 are related to the eigenvalues of ๐1 according to
๐1(2)
= 2๐๐1(1)
โ ๐2 (1 + ๐2) (EQ-64)
= ๐ก๐ [๐1] ๐1(1)
โ ๐๐๐ก [๐1]
= 2๐ ๐1(1)
โ ๐1(1)
๐2(1)
= ๐1(1)
[2๐ โ ๐2(1)
].
Substituting for ๐2(1)
from (EQ-36) into (EQ-64) gives
๐1(2)
= ๐1(1)
[2๐ โ (๐ โ ๐๐๐)]
= ๐1(1)
(๐ + ๐๐๐)
= ๐1(1)
๐1(1)
(EQ-65)
Similarly,
๐4(2)
= 2๐ ๐2(1)
โ ๐2 (1 + ๐2) (EQ-66)
= ๐ก๐ [๐1] ๐2(1)
โ ๐๐๐ก [๐1]
= 2๐ ๐2(1)
โ ๐1(1)
๐2(1)
= ๐2(1)
[2๐ โ ๐1(1)
]
= ๐2(1)
[2๐ โ (๐ + ๐๐๐)]
= ๐2(1)
(๐ โ ๐๐).
Thus,
๐4(2)
= ๐2(1)
๐2(1)
. (EQ-67)
Assume that ๐4(2)
is an eigenvector of ๐2 , where
๐4(2)
= [
1
๐๐(๐๐1 โ ๐4
(2)๐ผ)๐2
(1)
๐1๐2(1)
]. (EQ-68)
๐2(1)
is the eigenvector of ๐1 , and ๐4(2)
, and ๐4(2)
are the eigenvalues and eigenvector of ๐2 , respectively. Using
Equation (EQ-45), the eigenvalues- eigenvector of ๐2 can be written according to
[๐2 โ ๐4(2)
๐ผ]๐4(2)
= 0
= [(๐๐1 โ ๐4
(2)๐ผ)
1
๐๐(๐๐1 โ ๐4
(2)๐ผ)๐2
(1)+ ๐๐๐1
2๐2(1)
โ๐๐๐1 (1
๐๐) (๐๐1 โ ๐4
(2)๐ผ)๐2
(1)+ (๐๐1 โ ๐4
(2)๐ผ)๐1๐2
(1)]
= [1
๐๐(๐2(1 + ๐2)๐1
2 โ 2๐๐4(2)
๐1 + ๐42(2)
๐ผ)๐2(1)
0] (EQ-69)
Substituting for ๐12 from (EQ-42) into (EQ-69) gives
[๐2 โ ๐4(2)
๐ผ]๐4(2)
= [1
๐๐(๐2(1 + ๐2) โ ๐4
(2))[2๐๐1 โ (๐2(1 + ๐2) + ๐4
(2))๐ผ]๐2
(1)]
= [1
๐๐(๐๐๐ก๐1 โ ๐4
(2))[๐ก๐(๐1)๐1 โ (๐๐๐ก(๐1) + ๐4
(2))๐ผ]๐2
(1)] (EQ-70)
Substituting for ๐4(2)
from (EQ-67) into (EQ-70) gives
[๐2 โ ๐4(2)
๐ผ]๐4(2)
= [1
๐๐[2๐๐๐ก(๐1) โ ๐2
(1)๐ก๐(๐1)]๐ก๐ (๐1)[๐1 โ ๐2
(1)๐ผ]๐2
(1)]
= [00
] (EQ-71)
Thus, ๐4(2)
, is an eigenvector of ๐2 corresponding to ๐4(2)
.
Similarly, ๐1(2)
is an eigenvector of ๐2 corresponding to ๐1(2)
, where
๐1(2)
= [1
๐๐(๐๐1 โ ๐1
(2)๐ผ)๐1
(1)
๐1
]. (EQ-72)
Since ๐1 is nonsingular, ๐1(2)
and ๐4(2)
are linearly independent. The other two eigenvector of ๐2 , ๐2(2)
and ๐3(2)
are
selected so that
๐ = [๐1(2)
, ๐2(2)
, ๐3(2)
, ๐4(2)
] (EQ-73)
Are linearly independent, and
ฮ = ๐โ1 ๐2 ๐ (EQ-74)
is a diagonal matrix.
This analysis clearly shows that half of the eigenvectors of ๐๐ can be obtained from a straight-forward
procedure and the other half can be selected so that T = ๐1(๐)
, ๐2(๐)
, โฆ , ๐๐(๐)
is a linearly independent set. The
proposed M-transform, whose eigenvalues are calculated from a simple recursive algorithm and half of its
eigenvectors are calculated from a few simple operations, can be used as an orthogonal basis to represent many
signal and image processing applications. Moreover, the number of distinct eigenvalues of ๐๐ฟ is L+1 as opposed to
an L-th order Hadamard transform, ๐ป๐ฟ , which only has two distinct eigenvalues[2]. The eigenvalues of the ๐๐ฟ
transform can be used as feature parameters if the elements of the ๐๐ฟ matrix are the autocorrelation lags of the
observation and by proper selection of the a and b constants.
References:
[1] Mohammad V Malakooti, Keith Teague, โCARMA Model method of two-dimensional shape
classification: An Eigen system approach vs. the LP Norm, ICASSP, Vol. 12, 1987.
[2] Clark R. Givens, โSome observations on eigenvectors of Hadamard Matrices of order 2nโ
, Linear Algebra and its
Applications, Vol. 56, Jan. 1984, pp245-250.