Warning using bwareafilt: "Some objects were not selected"

6 Ansichten (letzte 30 Tage)
Nut
Nut am 20 Jan. 2017
Kommentiert: Walter Roberson am 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.

Akzeptierte Antwort

Anand
Anand am 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 Kommentare
Nut
Nut am 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 am 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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by