save only specefic connected components
Show older comments
Hi, From a gray image , I extract all the connected components using bwconcomp, Then I work on each connected component. I want to draw in a new image with the size of the originam image some specefic connected components. I saw many works based on the area , the biggest component ... but for me I have new parameter that will filter the cinnected components, How can I draw in a new image with the original image size a specific connected component in its original place?? Thank you :)
Answers (1)
Image Analyst
on 1 Mar 2017
Edited: Image Analyst
on 1 Mar 2017
You can extract any component from your labeled image into a new binary image using ismember:
binaryImage = ismember(labeledImage, index);
This will get only one blob - the one that was labeled with a number of "index".
If you want to mask the image with that blob and get a gray scale image then do this:
maskedImage = grayImage; % Initialize
maskedImage(~binaryImage) = 0; % Do the masking.
7 Comments
Flore Massoulié
on 1 Mar 2017
Edited: Flore Massoulié
on 1 Mar 2017
Flore Massoulié
on 1 Mar 2017
Image Analyst
on 1 Mar 2017
index can be an array of indexes if you want to extract several components.
Flore Massoulié
on 1 Mar 2017
Image Analyst
on 1 Mar 2017
Is "F(i).Image" a scalar integer that contains the ID label of the blob you want to extract? If so, then yes, that should work.
Flore Massoulié
on 2 Mar 2017
Image Analyst
on 2 Mar 2017
Since you already have the image of the connected component, you can just use it as a mask on the original image:
If you want to mask the image with that blob and get a gray scale image then do this:
maskedImage = grayImage; % Initialize
mask = F(i).Image > 0; % Convert "the image of the connected component" into a logical mask.
maskedImage(~mask) = 0; % Do the masking.
Categories
Find more on Region and Image Properties 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!