SlimeVR / SlimeVR-Server

Server app for SlimeVR ecosystem
https://slimevr.dev
Apache License 2.0
680 stars 177 forks source link

Block AutoBone with high error values #1185

Closed ButterscotchV closed 1 month ago

ButterscotchV commented 2 months ago

Reasonable error values should be around 0.01, though this is not always the case. I've set the max value to 0.03 which should more than cover the 99% SD for the 26 decent recordings I had. Also we never use the "actual height" thingy on the GUI so please just get rid of it lol, people get confused about it and play with it expecting it to magic their height to be better but it does literally nothing. I also fixed a couple other smol things related to AutoBone.

If a user really wants to go ahead with a bad result, they can change the new config maxFinalError and then idk become a giraffe or smth.

This needs to be expanded to have a proper GUI implementation as per #1148. Currently it just says AutoBone has had an error and that's not particularly helpful. Ideally, this should never happen if the user hasn't messed something up, so even if we can't quite tell the user properly yet, we should prevent it.

Experiments

29 recordings from different people and hardcoding a height of 1.5m

All recordings

0.043686678 (SD 0.128893488)

Reasonable recordings (filtered outliers, 26 recordings)

0.012765342 (SD 0.005549119)

Per-recording

Per-recording data (long) 0.008044279 (SD 0.0057397415) 0.009722101 (SD 0.007074401) 0.015543836 (SD 0.010885314) 0.014618757 (SD 0.009086363) 0.009230162 (SD 0.0056077885) 0.009911836 (SD 0.0057559223) 0.009756888 (SD 0.0061521004) 0.011781562 (SD 0.007694296) 0.012112306 (SD 0.008847282) 0.010388792 (SD 0.008162508) 0.010495536 (SD 0.0074977623) 0.010657617 (SD 0.006366505) 0.008758609 (SD 0.0051170522) 0.024134938 (SD 0.010787795) 0.019134283 (SD 0.012941342) 0.016917534 (SD 0.009113287) 0.062933 (SD 0.035469808) 0.7079585 (SD 0.14270139) 0.013365535 (SD 0.010532115) 0.006882551 (SD 0.004092141) 0.009488388 (SD 0.0062766294) 0.021189123 (SD 0.008023828) 0.031142853 (SD 0.03875999) 0.010448145 (SD 0.0082971575) 0.16412327 (SD 0.10965322) 0.009217768 (SD 0.00449746) 0.009072132 (SD 0.0046666353) 0.0117462985 (SD 0.008824699) 0.008137071 (SD 0.006440156)