MATLAB Answers


How can I define red color in HSV space

Asked by THUONG NGUYEN VAN on 4 May 2013
Latest activity Commented on by Image Analyst
on 10 Nov 2013

I have problem when using webcam to detect and track object by masking colors in HSV space. my code work well with yellow, green or blue color but red color.

I already define the threshold for these colors

please help me.

here is my code

      %  red       
          hueThresholdLowred1 = 0.05; hueThresholdHighred1 = 0.97;
  		saturationThresholdLowbred1 = 0.3; saturationThresholdHighred1 = 1;
  		valueThresholdLowred1 = 0.01; valueThresholdHighred1 = 1;
% find red color
 hueMaskred1 = (hImage1 <= hueThresholdLowred1)&(hImage1 >= hueThresholdHighred1);
	saturationMaskred1 = (sImage1 >= saturationThresholdLowbred1) & (sImage1 <= saturationThresholdHighred1);
	valueMaskred1 = (vImage1 >= valueThresholdLowred1) & (vImage1 <= valueThresholdHighred1);
    redObjectsMask1 = hueMaskred1 & saturationMaskred1 & valueMaskred1;



1 Answer

Answer by Walter Roberson
on 4 May 2013
 Accepted answer

It is not possible for a number to be both less than 0.05 and greater than 0.97. Your statement

hueMaskred1 = (hImage1 <= hueThresholdLowred1)&(hImage1 >= hueThresholdHighred1);

is wrong (at least in terms of the values you set for those thresholds.)

Are you looking for values that are between 0.97 and 1, together with values that are between 0 and 0.05 ? Sounds like a narrow range to me, but if it is what you are looking for, change the "&" to "|"


thanks for your help, I already changed as follow your advice. finally it work.

on 10 Nov 2013

how define green object on live webcam ? please code..

See several color segmentation demos in my File Exchange: Feel free to modify any of them.

Join the 15-year community celebration.

Play games and win prizes!

Learn more
Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!