Warning using bwareafilt: "Some objects were not selected"

7 vues (au cours des 30 derniers jours)
Nut
Nut le 20 Jan 2017
Commenté : Walter Roberson le 20 Jan 2017
Hi,
I'm using the function bwareafilt to select the twelve largest objects on a binary image. Sometimes, this warning occurs:
Warning: One or more ties for n-th place occurred when selecting objects. Some objects were not selected.
What does it mean, in details? It seems it doesn't affect my processing, I can't observe any visible effect.
And how can I avoid its occurrence?
Thanks for your answers, warm regards.

Réponse acceptée

Anand
Anand le 20 Jan 2017
This typically means there were 2 or more objects with the same area, i.e. a tie. So bwareafilt had to pick some and leave out the rest.
For example, if image BW has 5 objects of areas 10, 15, 15, 20 and 25 and you ask for the 3 largest objects, you will get the warning. This is because only one among the 2 objects with area 15 was picked.
BW = [true(1,10),false,true(1,15),false,true(1,15),false,true(1,20),false,true(1,25)];
BWsel = bwareafilt(BW,3);
  2 commentaires
Nut
Nut le 20 Jan 2017
Thanks for your answer, it addressed me to investigate the problem.
It's exactly like you wrote, I lost an object. Using bwareafilt, is there a way to avoid this behaviour? I want the n largest objects, including both with the same area. Why to neglect one of them?
Thank you again.
Walter Roberson
Walter Roberson le 20 Jan 2017
After you run the area filter, ask for the area of all of the results, take max and min, and then go back and rerun the area filter using that max and min instead of asking for such and such a number of results.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Computer Vision with Simulink dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by