Connected Components on Input Image

1 次查看(过去 30 天)
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.

采纳的回答

Image Analyst
Image Analyst 2014-2-21
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 个评论
Algorithms Analyst
Algorithms Analyst 2014-2-21
How can I get the coodinates of the bounding box rectangle from tintedImage?
Image Analyst
Image Analyst 2014-2-21
Originally you said you didn't need it. Anyway, you can just use regionprops
labeledImage = bwlabel(binaryImage);
measurements = regionprops(labeledImage, 'BoundingBox');
allBoundingBoxes = [measurements.BoundingBox];

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by