I have 65536 real data points saved from an image. I have used reshape command to make square matrix. But result I am getting is 16 by 256 . Why is it so? Can I reconstruct the image ??
This is the .txt file http://m.uploadedit.com/b017/1372387722318.txt and code i used is
a = load('fname.txt'); y=reshape (a,256,256)
but instead of 256 by 256 it is showing 16 by 256
I have downloaded your data file, and went like
a=load('1372387722318.txt'); y=reshape (a,256,256);
whos Name Size Bytes Class Attributes
a 65536x1 524288 double y 256x256 524288 double
and everything is just fine to me. So, the only possible error is that: you have another file with a name (fname.txt) in your directory which is not the same file you uploaded (1372387722318.txt). Check this out and I'm pretty sure you'll have it working.
It is impossible that Matlab's reshape changes the number of elements of the processed array. Therefore I'm convinced, that something completely different went wrong:
which reshape -all
This is what you should do for an image with 65536 pixels that you want to make square:
nelem = numel(A); side = sqrt(nelem);
Areshaped = reshape(A,side,side);
Play games and win prizes!Learn more