Skip to content
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

Open
CodeWitchBella opened this issue Jan 7, 2022 · 4 comments
Open

Question about the math. #72

CodeWitchBella opened this issue Jan 7, 2022 · 4 comments

Comments

@CodeWitchBella
Copy link

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.

@pushrax
Copy link
Owner

pushrax commented Jan 7, 2022

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)

@CodeWitchBella
Copy link
Author

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.

@bdunderscore
Copy link
Collaborator

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).

bdunderscore added a commit to bdunderscore/OpenVR-SpaceCalibrator that referenced this issue Sep 26, 2022
@A-Ivan
Copy link

A-Ivan commented Nov 20, 2022

@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?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants