Why there is a difference between the dct computed by the MATLAB dct function and one computed by dct matrix multiplication?

2 views (last 30 days)
The result is different, though both methods give inverse transform correctly.

Accepted Answer

David Goodmanson
David Goodmanson on 26 Feb 2018
Edited: David Goodmanson on 26 Feb 2018
Hi Mohsin,
x needs to be a column vector as you did, but you don't need to take the transpose of dctmtx:
x = 1:8
y1 = dct(x')
y2 = dctmtx(8)*x'
y1 - y2
x1 = idct(y1)
x2 = dctmtx(8)\y2
Same results, out and back.

More Answers (0)

Communities

More Answers in the  Power Electronics Control

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!