written 7.7 years ago by |
i. The KL Transform is also known as the Hoteling transform or the Eigen Vector transform. The KL Transform is based on the statistical properties of the image and has several important properties that make it useful for image processing particularly for image compression.
ii. The main purpose of image compression is to store the image in fewer bits as compared to original image, now data from neighboring pixels in an image are highly correlated.
iii. More image compression can be achieved by de-correlating this data. The KL transform does the task of de-correlating the data thus facilitating higher degree of compression
iv. There are four major steps in order to find the KL transform :-
(I) Find the mean vector and covariance matrix of the given image x
(II) Find the Eigen values and then the eigen vectors of the covariance matrix
(III) Create the transformation matrix T, such that rows of T are eigen vectors
(IV) Find the KL Transform
Consider an image
(I) Find the mean vector and covariance matrix of the given image x
Now the image is broken down into column vectors as
The mean vector is found out as shown below $m_x= E(x)\space\space\space\space \text {(Equation 1)}$
Where E{x} is the expected value
N = number of columns
The covariance of the vector population is defined as
Covariance $(x) = C_x = E[(x-m_x)(x-m_x)’]\space\space\space\space \text {(Equation 2)} $
The covariance for the vector population of size N can be approximated by the formula
Covariance $(x) = \dfrac 1N ∑_{k=1}^N x_k.x_k’ – m_x.m_x’ \space\space\space\space \text {(Equation 3)} $
The covariance matrix is real and symmetric
(II) Find the Eigen values and then the eigen vectors of the covariance matrix
Let viand $λI$ be the eigen vectors and eigen values of $Cx,$ where $1 \lt = i \lt =N.$
Eigen value can be found out using the equation
$|Cx – λI |= 0$
Where Cx= Covariance matrix
I= Identity Matrix
λ= Eigen Value
Eigen Vector can be found out corresponding to each Eigen vector as shown below
$C_xv_1 = λv_1\space\space\space\space\text { (Finding the first Eigen Vector)}$
(III) Create the transformation matrix T, such that rows of T are eigen vectors
i. The KL Transformation matrix is formed using the Eigen vectors. Each eigen vector is arranged as a row of the transformation matrix.
ii. The vector corresponding to the largest Eigen value is placed on the first row and so o.
iii. This KL Transform matrix, T, is orthogonal
i.e $T^{-1} = T’\\ T.T’ = 1$
(IV) Find the KL Transform
We obtain the KL Transformed image by simply multiplying the Transformation matrix with the centralized image vector $(x-m_x)$
Therefore, $X = T.(x-m_x)$
This is the formula for KL Transform.