Getting pixel values from an image

11 views (last 30 days)
Hello, I am new to Matlab and I have a question concerning getting pixel values of an image. I have a 994x994 image and want to get every pixel value in the row 497. Could you please advise what command(s) I should use? Thank you very much.
I have loaded the image in Matlab with Imtool command and there is a pixel region window in which it shows all the pixel values I need. I am wondering if I could export them in an excel file? Thanks again.
Regards

Accepted Answer

Thorsten
Thorsten on 22 Jul 2016
Edited: Thorsten on 22 Jul 2016
If your image is stored in I, like from the command
I = imread('peppers.png');
the Matlab syntax to select the element in row 497, column 1 would be
x = I(497,1);
and the syntax to select all elements uses the column operator : as a shorthand for 1:end
x = I(497, :);
  3 Comments
Thorsten
Thorsten on 22 Jul 2016
I've updated my response.
Gannian Zhang
Gannian Zhang on 24 Jul 2016
Hi Thanks so much for the explanation. I have finally solved this problem. :-)

Sign in to comment.

More Answers (1)

Azzi Abdelmalek
Azzi Abdelmalek on 22 Jul 2016
You can use imread to import your image like this
Im=imread('YourImage.tif') % for example
row497=Im(497,:,:)
You can export your image to an excel file
xlswrite('file.xlsx',Im)
  4 Comments
Gannian Zhang
Gannian Zhang on 24 Jul 2016
Hi, thanks for your reply.
The original image was a coloured one which had three channels showing different pixel values. I wanted to convert it into a grey image first before analysis.
Could you please let me know how to do that? And how can I export data from i=1 to i=997 please? Regards.
Gannian Zhang
Gannian Zhang on 24 Jul 2016
Hi Thank you for your help. I have finally solved the problem.

Sign in to comment.

Categories

Find more on Convert Image Type 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!