3d aray of images to 2d image

2 views (last 30 days)
Kris zenitis
Kris zenitis on 19 Feb 2014
Answered: David Young on 19 Feb 2014
I ve got a 3d array of images 60000x28x28 (28x28 image size) and I want to plot the first image for example. A = a(1,:,:) creates a 3d array 1x28x28. I want to create just the 28x28 2d array image in order to plot it. How can i do so? A = a(1,:,:); imshow(A), return
??? Error using ==> imageDisplayValidateParams>validateCData at 114 Unsupported dimension
Error in ==> imageDisplayValidateParams at 31 common_args.CData = validateCData(common_args.CData,image_type);
Error in ==> imageDisplayParseInputs at 79 common_args = imageDisplayValidateParams(common_args);
Error in ==> imshow at 199 [common_args,specific_args] = ...

Answers (2)

Azzi Abdelmalek
Azzi Abdelmalek on 19 Feb 2014
Edited: Azzi Abdelmalek on 19 Feb 2014
im=rand(60000,28,28)
out=permute(im,[3 2 1])
out(:,:,1); % is the first image
out(:,:,2); % is the second image
%and so on

David Young
David Young on 19 Feb 2014
A = squeeze(a(1, :, :));

Categories

Find more on Image Processing Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!