3D DCT basis matrix in Matlab

Hi,
I am working in compressive sensing, lets say I have video blocks size 7x7x20, 7x7 image patchs and 20 frames each block.
I need the 3D DCT basis matrix in order to work with this blocks, I don't need to perform the transform I just need the elements of the basis.
For 2D I've been doing:
D1 = dctmtx(7);
D2 = kron(D1,D1);
This gives me the 2D DCT basis matrix that allows me to work with 7x7 image patches, now I need to extend this to 7x7x20 video blocks and I'm not sure how should I do it.
Thank you in advance.

1 comentario

Firman
Firman el 18 de Jun. de 2015
Hi, there is a great code for applying N-dimensional DCT. You can find it here.

Iniciar sesión para comentar.

Respuestas (0)

Preguntada:

Ana
el 3 de Jun. de 2014

Comentada:

el 18 de Jun. de 2015

Community Treasure Hunt

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

Start Hunting!

Translated by