extract regions detected by watershed segmentation
9 views (last 30 days)
Show older comments
Hello,
I have found this code in image processing toolbox of matlab for image segmentation through watershed function:
Really, I gaven't understood the code, and I want to extract regions detected after segmentation with the function watershed and represent each region with its dominant color. So can you help me?
I want to extract those regions, so where find them?
Thanks
1 Comment
Image Analyst
on 22 May 2013
Related to her other question: http://www.mathworks.com/matlabcentral/answers/65055-dominant-color-for-an-rgb-image
Answers (2)
Image Analyst
on 22 May 2013
Once you have the binary image, you simply call regionprops() for each color channel to get the color for that color channel in each labeled region. See my demos for examples: http://www.mathworks.com/matlabcentral/fileexchange/?term=authorid%3A31862
% Extract the individual red, green, and blue color channels.
redChannel = rgbImage(:, :, 1);
greenChannel = rgbImage(:, :, 2);
blueChannel = rgbImage(:, :, 3);
% Now do your marker controled watershed segmentation
% to get your binary image. Then:
labeledImage = bwlabel(binaryImage);
% Make color measureents.
measurementsRed = regionprops(labeledImage, redChannel, 'MeanIntensity');
measurementsGreen = regionprops(labeledImage, greenChannel, 'MeanIntensity');
measurementsBlue = regionprops(labeledImage, blueChannel, 'MeanIntensity');
3 Comments
See Also
Categories
Find more on Image Segmentation and Analysis in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!