Connected Components on Input Image

1 view (last 30 days)
Hi all
I want to visualize my compnents on original input image. I have performed foregorund detection by some background subtraction algorithm. Let say I have foregorund mask fgmask and input frame I.I have performed the connected component analysis like that
I=input Image;
FgMask=binary Image;
labelImage=bwlabel(FgMask,8);
blobMeasurements = regionprops(labeledImage, I, 'all');
numberOfBlobs = size(blobMeasurements, 1);
Now what I want to do, actually I do not need bounding box on foreground region, I want to label foregorund region into original input Image (foregorund region should be labeled from red colours) instead of bounding box.HOw can I perform that??
Every help is appreciated.

Accepted Answer

Image Analyst
Image Analyst on 21 Feb 2014
You can tint your image red in the foreground regions
redChannel = grayImage; % Initialize.
redChannel(binaryImage) = 255; % Max out red in foreground pixels.
% Create an RGB image.
tintedImage = cat(3, redChannel, grayImage, grayImage);
imshow(tintedImage);
  4 Comments
Algorithms Analyst
Algorithms Analyst on 21 Feb 2014
How can I get the coodinates of the bounding box rectangle from tintedImage?
Image Analyst
Image Analyst on 21 Feb 2014
Originally you said you didn't need it. Anyway, you can just use regionprops
labeledImage = bwlabel(binaryImage);
measurements = regionprops(labeledImage, 'BoundingBox');
allBoundingBoxes = [measurements.BoundingBox];

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!