How to get the pixel color values in one command?

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

 Accepted Answer

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 Comments

Yes it worked. but i din't get result as i want. I get this result
>> color=RGB(56,54,:); >> color
color(:,:,1) =
0
color(:,:,2) =
0
color(:,:,3) =
0
i wanna a matrix to compare with other colors. Like, Red=[237 28 36]; yellow=[255 242 0];
So i need same as this of matrix as result.
For what it's worth, there's also an impixel() function.

Sign in to comment.

More Answers (1)

disp(reshape(Image, [], 3));

Community Treasure Hunt

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

Start Hunting!