I have a text file that contains the pixel values of an image, how do I convert it into matrix and then form the image.
2 views (last 30 days)
Show older comments
0 Comments
Accepted Answer
DGM
on 21 May 2023
Assuming you know what the image size is and how it's stored, you read the file, reshape it, and cast it to a class appropriate for the scale of the data.
giantvector = readmatrix('mypic.txt'); % read the file as a vector
inpict = reshape(giantvector,5,5); % reshape into a predetermined geometry
inpict = uint8(inpict) % cast according the the data scale
imshow(inpict,'border','tight')
3 Comments
DGM
on 21 May 2023
Edited: DGM
on 21 May 2023
You will have to reorient the array however you need to do so, either by flipping it (e.g. flip(), fliplr(), flipud()), rotating it (e.g. rot90(), imrotate()), or transposing it (e.g. transpose(), permute(), or just .'). My guess is that you need to transpose the array, but that's not something I can know.
Image Analyst
on 21 May 2023
@Chittadeep You keep forgetting to attach your data file. If you have any more questions, then attach your data and code to read it in with the paperclip icon after you read this:
and indicate which part of the image should be the top, and the right.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!