I have an image X(m by n) and it is sent to a segmentation process. The new image, Y(m by n), contains 9 segments. However, the segments are some random shapes (I mean, they are not square or rectangular).

Now I need to apply other algorithms separately on each segment. Noting that the segments are non-square or non-rectangular, I cannot use techniques such as BlockProc.

How can I read each segment separately and then apply a specific process only on that segment? Thank you very much.

有帮助吗?

解决方案

You can use

Props=regionprops(YourBinaryImage, 'Image');

Then retrieve a cell of the individual objects with Props.Image Then apply the function of your choice to each object using cellfun, for example.

Hope it helps.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top