How to apply thinning algorithm to color image
Show older comments
Hi, is there any possible way to apply thinning algorithm to a color image. Exactly like the one I attached. I want to get single line drawing from the color image
Thank you

Answers (1)
Image Analyst
on 16 Apr 2014
Try this for starters:
redChannel = rgbImage(:,:,1);
% Threshold (binarize) the red channel.
binaryImage = redChannel < 227; % Use triangle method to get the # automatically.
% Take largest blob. See attached demo. Then...
thinnedImage = bwmorph(binaryImage, 'skel', inf);
Adapt as necessary.
3 Comments
missC
on 16 Apr 2014
missC
on 16 Apr 2014
Image Analyst
on 16 Apr 2014
You can't. It needs to be binary if you're going to skeletonize. After skeletonization you can convert to color if you want:
black = zeros(size(binaryImage), 'uint8');
rgbImage = cat(2, black, black, uint8(binaryImage));
Weight the components if you want a different color.
Categories
Find more on Modify Image Colors in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!