How to get the pixel color values in one command?

4 vues (au cours des 30 derniers jours)
saravanakumar D
saravanakumar D le 22 Jan 2014
I want to get the color pixel value in one line command or syntax.
I know we have to use get below syntax Red=Image(x,y,1); Green=Image(x,y,2); Blue=(Image(x,y,3);
But it make program too long.
I have to check the color of each pixel in image. So Is there any other syntax to get the specified pixel color range in one array.
I want the output like this
= 255 242 0

Réponse acceptée

Bruno Pop-Stefanov
Bruno Pop-Stefanov le 22 Jan 2014
Modifié(e) : Bruno Pop-Stefanov le 22 Jan 2014
Yes, the color is a vector of three values. To access the color of pixel (x,y), you can write:
color = squeeze( Image(x,y,:) );
and color will be a vector of length 3.
Thanks to Walter Roberson for suggesting using squeeze.
As Image Analyst noted in the comments, you can also use the impixel function.
  3 commentaires
Walter Roberson
Walter Roberson le 22 Jan 2014
squeeze(RGB(56,54,:))
Image Analyst
Image Analyst le 22 Jan 2014
For what it's worth, there's also an impixel() function.

Connectez-vous pour commenter.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 22 Jan 2014
disp(reshape(Image, [], 3));
  1 commentaire
saravanakumar D
saravanakumar D le 22 Jan 2014
i didn't understand this syntax. how it is working?

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by