dive icon indicating copy to clipboard operation
dive copied to clipboard

[FEATURE] Type filter option: use highest type score only, not all types when determining what to show

Open mattdawkins opened this issue 3 years ago • 4 comments

When you turn off a specific type in the types panel, it continues to display some boxes that had that type as it's highest for the box, but there are other categories in the same detection (just lower probability) and now the detection displays with that other lower probability type in the main display. We would want an option which does filtering based on the highest type only, and when the highest type is unchecked it does not display those detections.

mattdawkins avatar Dec 30 '21 23:12 mattdawkins

@mattdawkins do you have an example of this? I'm having trouble picturing what the bug is and what the correct behavior is that you're looking for.

waxlamp avatar Jan 12 '22 22:01 waxlamp

I can try and explain this:

  • Imagine you have "fish" and "rocks" in your viewer.
  • You have a track with 60% fish confidence and 20% rock confidence.
  • Your "fish" threshold filter is at 50% and your rock confidence filter is at 10%.
  • So your track appears like a fish -- its confidence is higher.
  • Then you disable all fish using the type checkbox.
  • Now, your track doesn't disappear, it turns into the next highest type, because its rock confidence is still higher than the rock threshold.

This has a particularly neat effect on the histogram: For a pipeline output with many types, as you drag the confidence of one type around, you can see how one "bucket" drains to fill others. For example, you can see how as you threshold down on "Big Fish", the "Medium Fish" bucket starts to fill up, which has lead me to discover that "Aha! This pipeline often can't tell the difference between Big Fish and Medium Fish", particularly if the thresholds are close.

Matt suggests that visibility should be based only on the first value. I trust that some people probably want that. However, I think @BryonLewis put a good bit of effort into making the current behavior work like it does, and the current behavior is more intuitive to me, so I'd want to make sure we really don't want the current behavior anymore before it goes away.

A configuration setting is suggested, which is fine, as long as we remember that every configuration and every optional behavior is a new fork in the tree of possible regressions, and new things to add to the hypothetical list of regression tests.

subdavis avatar Jan 13 '22 02:01 subdavis

I think really the hardest part is how to succinctly convey to the user that "X" configuration toggle changes the behavior in the way that Brandon mentioned.

BryonLewis avatar Jan 13 '22 19:01 BryonLewis

Thanks for the example, Brandon. This makes sense to me now.

Conceptually, this would behave as though someone did a non-linear operation on the detection confidences, setting all but the highest to zero (or, alternatively, removing all but the highest). I can see why this is a reasonable thing to want to see, but I agree with Bryon about carefully presenting the option to the user.

waxlamp avatar Jan 13 '22 22:01 waxlamp