how to know the number of regions of the image?

3 views (last 30 days)
As Bdg
As Bdg on 17 Jul 2017
Commented: As Bdg on 31 Jul 2017
Hi! I have a color segmented image. i need to know the number of regions of the image , and the size of each region. Can anyone help me please?

Answers (2)

Guillaume
Guillaume on 17 Jul 2017
Edited: Guillaume on 17 Jul 2017
You use regionprops on your segmented image. The number of elements in the structure array it returns is the number of regions. The Area field or the BoundingBox field of the structure gives you the size, depending on what you call size.
  3 Comments
Guillaume
Guillaume on 17 Jul 2017
Edited: Guillaume on 17 Jul 2017
I'm not sure what an inverse wavelet transform of a labeled image gives you. If it's still a label image then you can use regionprops on it. If it's not, then you need to segment it again using an appropriate method, possibly another watershed.
I don't really understand why you'd want to apply an inverse wavelet transform to the result of a watershed segmentation.
As Bdg
As Bdg on 26 Jul 2017
I'm using multiresolution approach for image segmentation. i constructed the pyramid using the wavelet transform , i segmented the image using watershed at a lower resolution, but now i need to go back to my original image . that's why i need to apply an inverse wavelet transform . And after applying it i have to merge the regions and refine regions borders, so i need to define the regions after the inverse wavelet transform. If i'll use another watershed, the image will be more over-segmented , however my goal is to avoid this over-segmentation and minimise the number of regions.

Sign in to comment.


Image Analyst
Image Analyst on 27 Jul 2017
Use bwlabel() on your segmented (binary) image - that's one way.
[~, numRegions] = bwlabel(segmentedImage);
  8 Comments

Sign in to comment.

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!