How to separate hand region after using multi-otsu's thresholding?

2 次查看(过去 30 天)
The attached image is the output after appling multi-otsu's thrsholding using 2 threshold value. How can I separate the hand region now ?
Remember the approah should be adaptive.

回答(1 个)

Image Analyst
Image Analyst 2022-9-24
Simply use ==. Assuming the hand is the brightest in your quantized, 3-level image:
maxGL = max(yourImage(:))
binaryImage = yourImage == maxGL;
% Extract only the largest blob:
binaryImage = bwareafilt(binaryImage, 1); % Binary image of only the hand.
If you want to crop it out to a separate, smaller image for some reason (probably not necessary though), you can do:
% Find Bounding Box:
props = regionprops(binaryImage, 'BoundingBox');
% Extract that bounding box out into it's own, smaller image.
handOnly = imcrop(binaryImage, props.BoundingBox);
  6 个评论
Zara Khan
Zara Khan 2022-9-25
Sir it will be nice to create this ground truth image when there is few images but working with almost 1500 images will be hard. If I will be not comparing then how will show that my segmentation algorithm is doing great job
Image Analyst
Image Analyst 2022-9-26
You can prove it did a great job because, without any "right answer", who is to say otherwise? With no authoritative right answer, no one can complain that your segmentation is not perfect.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by