-
Notifications
You must be signed in to change notification settings - Fork 102
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Filter out low-scoring skeletons spawned during inference #717
Comments
This could potentially merged with #640 |
Hi @olinesn,
We'll work on these as enhancements. Thanks!! Talmo |
Since we seem to have gotten a lot of cases where people are marking all nodes as not visible, wanted to state here (at the root) that SLEAP will filter out all empty instances (with all non visible points). Labeling an instance as entirely occluded will not do anything (other than use-up your time): sleap/sleap/nn/data/providers.py Lines 37 to 59 in 833c2d5
|
Thanks for the heads up! |
#1070 implemented this for top-down models, but this still needs to be applied for other models. |
Problem: We only allow for filtering based on instance score during tracking. We should have options for filtering even without tracking (e.g., during the HITL labeling process).
Solution: Add
Predictor
options and associated CLI flags and GUI fields to allow for filtering by score during inference independently of tracking.This should also allow for filtering based on number of animals in addition to an absolute score threshold. This would cover the use case of doing single-animal tracking using multi-animal models.
See #640 for the first point related to including background frames.
Original issue:
As far as I understand, only labelled frames with skeletons are included in the training set. I have a prep where I occasionally have to reach my hand into the cage while the camera is on, and SLEAP inference ends up spawning lots of tracks that are low-scoring skeletons on my glove/arm.
What's the best way to deal with this? Options I can think of include:
1: Is there a way to include frames in the training set that do NOT have any animals in them, to teach the model what's NOT an animal?
2: Can I set a threshold for skeleton score when running inference on a video, and remove all skeletons below a threshold BEFORE they get stitched into tracks?
Thanks!
The text was updated successfully, but these errors were encountered: