Repository navigation
Beginner struggling to improve mAP with multi-animal bottom-up ID (social interaction, heavy overlap, identity tracking) #2868
Replies: 1 comment 1 reply
|
Hi @naaguilarr !
OKS is a measure of how close the keypoints are between a GT and a predicted instance. Averaging that over all matched pairs (GT-prediction) gives the mean OKS. mAP is a hit/ miss metric, repeated at ten increasingly strict bars. We take OKS thresholds from 0.50 up to 0.95 and ask at each one, roughly, how many of your predictions count as correct then average those ten answers. (That's the COCO convention) So a raw score of 0.72 clears the 0.50–0.70 thresholds and then drops off: very few of them clear 0.80, 0.85, 0.90 or 0.95, and those contribute almost nothing to the average. That's why mAP is 0.44. I would recommend checking the distance errors in the metrics. If the 90%/95% percentiles are large, that's a localization issue. Also look at the visibility metrics to see how many GT nodes were predicted vs. missed.
First thing to try would be increasing the receptive field (blue box in the training dialog window), it needs to be roughly as big as your animal. Right now it's 156 px, which is smaller than one of your animals. Raise Max Stride 32 → 64 (and filter rate to 1.5), which takes the receptive field to 316 px. If the keypoint localization is an issue, try setting sigma to 2.5 and output stride to 2 just for the first "Output stride" in the head config! One thing worth checking, open model_config:
head_configs:
multi_class_bottomup:
class_maps:
classes:It should list exactly two names for classes. If you see more than two, we might have to go back and look at the tracks assigned to the instance in the slp project.
The skeleton looks quite solid. On labels: having 1,065 across 12 videos is already a good set. If you want to focus on the overlapping ones: Generate some suggestion frames -> Run your current model on that -> Sort by score (check the suggestions tab -> Proofread a few of the bad ones esp. the high-overlap and mounting frames -> Retrain. Correcting 100 frames where the model is currently failing will help more than adding 500 easy ones. On the ID model generally: these can be tricky with similar-looking animals. I do see a mark on one of them, which I assume is the key to telling them apart, and from your predictions it does look like the model is managing it. Still, it'd be a worthwhile experiment to try a plain bottom-up model plus tracking instead. You might get some identity switches that way, but it would tell you whether the identity head is costing you pose accuracy worth knowing if the receptive field change doesn't move things enough. Let us know if you have any questions! Thanks, Divya |







Hi @naaguilarr !
OKS is a measure of how close the keypoints are between a GT and a predicted instance. Averaging that over all matched pairs (GT-prediction) gives the mean OKS. mAP is a hit/ miss metric, repeated at ten increasingly strict bars. We take OKS thresholds from 0.50 up to 0.95 and ask at each one, roughly, how many of your predictions count as correct then average those ten answers. (That's the COCO convention) So a raw score of 0.72 …