MATLAB Answers

CIE-LCH colorspace range for skin color detection

6 views (last 30 days)
Ahmed El Sheikh
Ahmed El Sheikh on 30 Sep 2016
Answered: Image Analyst on 21 Oct 2016
I am working on image segmentation depending upon color detection, a code was sent to me including a certain range of color tones it does not work well. and I am searching for help right now.
if true
(C >= 11.64 && C <= 27.82) && (H >= 36.17 && H <= 64.17) && (L >= 32.49 && L <= 73.46)
end

Answers (2)

David Verrelli
David Verrelli on 21 Oct 2016
The syntax looks wrong.
Try perhaps:
if (C >= 11.64 && C <= 27.82) && (H >= 36.17 && H <= 64.17) && (L >= 32.49 && L <= 73.46)
% Do stuff
else
% Do alternative stuff
end
.
  1 Comment
Ahmed El Sheikh
Ahmed El Sheikh on 21 Oct 2016
syntax is not wrong, I wrote it that way to note the segmentation condition nothing else

Sign in to comment.


Image Analyst
Image Analyst on 21 Oct 2016
Try the Color Thresholder on the Apps tab of the tool ribbon to find the values.
Or try the color segmentation demos in my File Exchange: http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862
and see the other attached demo that works for skin on the demo image that ships with MATLAB.
Finally, see the skin gamut with the skin_color.m demo (attached) to see why simple thresholding in any color space will not get you all skin colors for all Fitzpatrick skin types.

Community Treasure Hunt

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

Start Hunting!