> Can some one explain or point me to a paper with the proof of how the
> DCT matrix transformation
>
> Y=DCT(X) = AXA' (where A is the DCT transform matrix, X is the input
> data matrix, Y is the transformed
> data coeff's)
>
> A(u,v) = (1/N)^(1/2) for u =0
> A(u,v) = (2/N)^(1/2) * cos(PI*(2v+1)*u/(2*N)) for u >0
>
> is equivalent to the DCT def:
>
> N-1 N-1
> Y(u,v) = alpha(u) * alpha (v) * sum sum X(x,y) * cos(PI*(2x+1)*u/
> (2*N)) * cos(PI*(2y+1)*v/(2*N))
> x y
>
> with alpha(u) = (1/N)^(1/2) for u =0
> alpha(u) = (2/N)^(1/2) for u > 0
If you rewrite AXA' as (AX)A', and consider what's happening in each
matrix multiplication (and also consider how a 2D DCT is formed from
1D DCTs), it should become apparent how the two are equivalent.
--
Oli
Reply by wallge●June 14, 20072007-06-14
Can some one explain or point me to a paper with the proof of how the
DCT matrix transformation
Y=DCT(X) = AXA' (where A is the DCT transform matrix, X is the input
data matrix, Y is the transformed
data coeff's)
A(u,v) = (1/N)^(1/2) for u =0
A(u,v) = (2/N)^(1/2) * cos(PI*(2v+1)*u/(2*N)) for u >0
is equivalent to the DCT def:
N-1 N-1
Y(u,v) = alpha(u) * alpha (v) * sum sum X(x,y) * cos(PI*(2x+1)*u/
(2*N)) * cos(PI*(2y+1)*v/(2*N))
x y
with alpha(u) = (1/N)^(1/2) for u =0
alpha(u) = (2/N)^(1/2) for u > 0
thanks in advance