MATLAB Answers

Kamali M
0

After obtaining the pixel values of an image..how to store those pixel values in an array?

Asked by Kamali M
on 18 Dec 2018
Latest activity Answered by Saipraveen on 30 Sep 2019
After obtaining the pixel values of an image..how to store those pixel values in an array?

  4 Comments

Show 1 older comment
clc;
close all;
my_image =imread('football.jpg');
figure,imshow(my_image);title('Orginal Image In Colour');
my_image=rgb2gray(my_image);
figure,imshow(my_image);title('Orginal Image In Gray scale');
% my_image = imresize(my_image,[512 512]); if you want to fix image size as constant
[rows,columns,depth]=size(my_image); % Here row and columns of particular image are fetched
for R=1:rows
for C=1:columns
pixel=my_image(R,C);
disp (R)
end
end
If this isnt correct please say that method also along with how to load them in an array?
thanks in advance.
Kamali, you have to explain better what it is you want to do. As commented you already have the pixels in an array. It's the my_image array

Sign in to comment.

Tags

4 Answers

Answer by madhan ravi
on 18 Dec 2018
 Accepted Answer

pixel = cell(1,rows);
ctr = 1;
for R=1:rows
for C=1:columns
pixel{ctr}=my_image(R,C);
disp (R)
end
ctr = ctr+1;
end
celldisp(pixel)
[pixel{:}] % double array

  6 Comments

Thank you Guillaume , you are completely right , just noticed after answering the my_image was already stored.
ACTUALLY my input is a 256X320 but i get only a single row with 256 elements in it.
my_image =imread('football.jpg');
my_image=rgb2gray(my_image);
[rows,columns,depth]=size(my_image);
pixel = cell(1,rows);
ctr = 1;
for R=1:rows
for C=1:columns
pixel{ctr}=my_image(R,C);
end
ctr = ctr+1;
end
celldisp(pixel)
disp ([pixel{:}]); % double array
what are the necessary changes in it?
thanks in advance.
@kamali see sir Walter's answer this is not the correct approach as mentioned by the peers.

Sign in to comment.


Answer by Walter Roberson
on 18 Dec 2018

The pixel values are already stored in my_image and do not need to be stored again .

  0 Comments

Sign in to comment.


Answer by Kamali M
on 18 Dec 2018

@madhan sir, please tell me what should i change i dont get it..
thank u sir.

  1 Comment

What data type do you need as output? What array size do you need as output? What difference do you intend between "pixel values" that you want stored, compared to what is already in my_array ?

Sign in to comment.


Answer by Saipraveen on 30 Sep 2019

For the information of other users, In this file exchange - https://www.mathworks.com/matlabcentral/fileexchange/72535-image-to-c-c-array-converter, I have written a script to generate an array from an image. I convert the input image to monochrome and store the pixel values in hex format in a different file. It could be modified to suit your needs.
Hope that helps.

  0 Comments

Sign in to comment.