-
Notifications
You must be signed in to change notification settings - Fork 110
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
Question about the math. #72
Comments
The rotation algorithm is able to figure out the amount and direction of rotation, but not the point the rotation is applied around. It would be better to solve for the whole transform at once using a simpler linear equation as described here #1 When I implemented that approach the calibration was less robust, but it was probably due to a mistake on my end or at least a missed opportunity. I ended up just keeping the current implementation since it does work fairly well, but if I were going to make further changes I’d probably try this other approach again. You can read about my attempt in #1 (comment) |
Thank you for the quick response 🙂 I am currently in the process of implementing and measuring your calibration algorithm for my master's thesis. I will likely end up trying to improve on in some meaningful way. I'll report back if I am successful in doing so. |
FYI - I've implemented this suggestion in my fork and hope to merge soon (looking for final test feedback before I pull the trigger on the big merge). |
@CodeWitchBella, did you manage to measure the calibration algorithm and/or compare it to some groundtruth? I'm thinking of using this for system for one of my PhD projects (I need to combine the Quest 2 with the index controllers, a Vive v3.0 tracker - which goes on the user's waist, and 4 v2.0 base stations). It would be great if you have some work/paper which measures/validates of this system that I could reference. @bdunderscore, did you manage to test your implementation and integrate into this repository? If so, when do you plan on merging with this repository? |
I read through the calibration code and noticed that you first calibrate rotation and throw away all the samples. Then you collect a new list of samples and finally calibrate the translation. What is the reason for this? Is it only so that the new sample set is transformed by the rotation, or is there a more fundamental reason for them to be new samples?
I wonder if it would be possible to make the calibration faster by using the original set of samples for the translation step too.
The text was updated successfully, but these errors were encountered: