Forum Discussion
sven
13 years agoProtege
Positional tracking calibration
I'm still hopeful regarding the idea of approximating positional tracking for scenarios with limited mobility (e.g. the users sitting on a chair) with the accelerometers inside the rift tracker. I ...
geekmaster
13 years agoProtege
"Tgaud" wrote:
You can't define position by accelerometers.
Because on the long run, it becomes inaccurates.
You cannot truthfully make such an absolute statement. It all depends on your application, and what environmental constraints you define for that application.
You can have relatively accurate positional tracking from the Rift tracker data if you assume a fixed sitting or standing position, which is normal for a wired device. You just need to set that as your average "home" position. There are plenty of research papers that document how to do this.
Of course, for mobile applications, you need to add GPS or other positional data to periodically recalibrate your IMU-based position data to prevent "long run inaccuracy". In that case, your statement is correct, but not in the typical Rift DK usage situation.
The key to getting useful positional tracking data from an IMU such as is used in the Rift DK, is to detect proper recalibration points, such as when sitting or standing erect, or just using the mean position as a home reference point. Another important thing to prevent drift is to force the velocity to zero whenever the head (natural) stops moving for a moment to obtain a clear and sharp view (for minimal motion blur). This can all be done with relatively simple software algorithms, but it can be much more effective if you take skeletal models and full-body gesture recognition into account, along with motion prediction using a short time series of recent tracker data.
For really accurate positional computation, snap-vector analysis is commonly used for accurate low-latency motion prediction (such as is used in quad-copter swarm formation flying):
http://www.seas.upenn.edu/~dmel/mellingerICRA11.pdf
In the "long run", you will always be seated (or standing) in the same spot while using the Rift, and you can periodically recalibrate to that known home position.
FYI, the snap-vector (i.e. "joust") is the second derivative of the acceleration vector:
https://info.aiaa.org/Regions/Western/Orange_County/Newsletters/AIAAOC_SnapCracklePop_docx.pdf
But most applications do not go beyond jerk-vectors.
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device
Other Meta Support
Related Content
- 12 months ago
- 2 years ago