Convert a 4D segmented matrix to a 3D one?

25 visualizaciones (últimos 30 días)
Mohammad Saleh
Mohammad Saleh el 22 de Sept. de 2019
Respondida: Athul Prakash el 25 de Sept. de 2019
I have a 4D segmented matrix of ones and zeros with the size 4 512 512 150. how do i convert this to a 3D matrix of size 512 512 150?
  1 comentario
Anton Gribovskiy
Anton Gribovskiy el 22 de Sept. de 2019
Converted matrix has less elements than original one. How do you want to remove these extra elements? I think an example would help.

Iniciar sesión para comentar.

Respuesta aceptada

Athul Prakash
Athul Prakash el 25 de Sept. de 2019
Hey Mohammad,
Going by those input and output dimensions, I am assuming that you want to extract a part of the matrix with a given value in dimension 1.
If you want to get ith value from dimension 1, use:
crop = mat(i,:,:,:);
to get 'crop' of size [1 512 512 150].
Then use the squeeze function to remove all dimensions of size 1.
crop = squeeze(crop); %this makes size = [512 512 150]
Have a look at the doc for squeeze
Cheers!

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by