How to convert an array to an image?

17 views (last 30 days)
I have a 1*784 matrix, I need to convert it to a 28*28 image, can anyone please tell me how to do it?I used reshage, imagesc for this, but the picture doesn't seem right, any suggestions would be a great help. I'm attaching a file which contains X_train which contains pixels of 12,000 images as row vectors, I'm supposed to study the 12,000th image, it is a 9, but I'm getting some weird shape.
Thank You

Accepted Answer

Walter Roberson
Walter Roberson on 4 Mar 2018
images = permute(reshape(uint8(X_train),12000,28,28),[3 2 1]);
image(images(:,:,12000)); colormap(gray(256));

More Answers (2)

Jahnavi Mrudula Mudduluru
It works.
Thanks a lot!!!!

Fatih Sandayuk
Fatih Sandayuk on 28 Dec 2019
hello!
how did you studied the 12 000th picture? I have the same Problem, but matlab says taht unit 8 is not defined.
THANK YOU!
  1 Comment
Walter Roberson
Walter Roberson on 28 Dec 2019
You might have accidentally typed unit8 instead of uint8

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!