The RGB vectors for white and red color are same for this image (Matlab)

2 views (last 30 days)
I was working with this picture in Matlab to detect color of the circles. This is a 512 by 512 jpeg image.
I am finding the centers of circles using imfindcircles, then I am taking the R,G,B components of some points near center of each circle to detect color.
But, I am confused because for both the red and white circles, I find that the R, G, B components are same [239 227 175].
I am new to image processing, so can anyone explain what's actually happening here.

Accepted Answer

Jan
Jan on 4 Apr 2017
Edited: Jan on 4 Apr 2017
[239, 227, 175] is the color of the background. I guess boldly that you have confused X and Y components of the coordinates.
The red dot has the color [237, 27, 36], the black dot [0, 0, 0] and the white dot is [255, 255, 255].
The problem might get clear, if you post the relevant part of your code.
  4 Comments
Zabir Al Nazi Nabil
Zabir Al Nazi Nabil on 4 Apr 2017
I have found the problem, I was rounding the center coordinates using uint8 which was causing an overflow.
Image Analyst
Image Analyst on 5 Apr 2017
If the image has more than 255 rows or columns, it will clip it to 255 so you couldn't examine any pixels further out. You should have used round() instead of uint8() and then it would be a double but still an integer and you would not have had the problem.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!