Forum Discussion
zalo
12 years agoExplorer
DIY 6 DoF Optical Position Tracking - Now with added Leap!
zalo's Optical Positional Tracking
For the last few months I have been working on an Optical Positional tracking solution. I'm coming close to maximizing the functionality to cost ratio. It utilizes a single Playstation Eye mounted near the ceiling to track two lit LEDs on the Oculus Rift. With this information and the orientation information from the rift itself I can determine the full 6 DoF Position and Orientation of the rift in a large cone of view. It also does not matter which direction the rift is looking, and can be utilized to calibrate yaw instead of the magnetometer. The innovation (over similar systems like Johnny Chung Lee's) comes from the fact that I am using the Rift's IMU to fill in the missing orientation information that would normally be captured Optically (but would restrict the freedom of movement). I am using a PSEye and Processing to funnel the point tracking data to Unity at 125 Hz.
The whole system comes out to ~$35 (Tripod, Camera, LEDs).
What do you think?
-Update 7/19/13-
Positional Tracking and the Leap
At the beginning I calibrated where the leap was by placing the rift on top of it.
For the last few months I have been working on an Optical Positional tracking solution. I'm coming close to maximizing the functionality to cost ratio. It utilizes a single Playstation Eye mounted near the ceiling to track two lit LEDs on the Oculus Rift. With this information and the orientation information from the rift itself I can determine the full 6 DoF Position and Orientation of the rift in a large cone of view. It also does not matter which direction the rift is looking, and can be utilized to calibrate yaw instead of the magnetometer. The innovation (over similar systems like Johnny Chung Lee's) comes from the fact that I am using the Rift's IMU to fill in the missing orientation information that would normally be captured Optically (but would restrict the freedom of movement). I am using a PSEye and Processing to funnel the point tracking data to Unity at 125 Hz.
The whole system comes out to ~$35 (Tripod, Camera, LEDs).
What do you think?
-Update 7/19/13-
Positional Tracking and the Leap
At the beginning I calibrated where the leap was by placing the rift on top of it.
11 Replies
- meanfigHonored GuestVery cool. Money well spent I have to say might even try this DIY set up. :D
- geekmasterProtegeThat is looking good, and certainly an inexpensive solution. The jitter looks small enough that you could probably get used to it. Could that jitter be filtered out with jerk (differential acceleration) clamping, or by discarding jerk-vector statistical outliers?
- zaloExplorerIt's true, you can kind of get used to it because the head tracking from the IMU is still super smooth, but it's not something I want my system to have.
I'll try brighter wide-angle LEDs first and if that doesn't work then I'll look into filtering. Smooth jerking will probably fix the problem (as it often does in life ;) ). - geekmasterProtege
"zalo" wrote:
Smooth jerking will probably fix the problem (as it often does in life ;) ).
In the real world, jerk filters are often called shock absorbers. We can do that in software too. - PatimPatamProtegeVery good, i think this is probably the cheapest and easiest DIY to get positional tracking that we are going to get (even though i still want to explore the option of not relying on a camera above the user, which obviously complicates matters a bit).
I would suggest try to apply a standard Kalman filter, it gave me some pretty good results with OpenCV. - Felix12gHonored GuestThat looks like a nice and cheap setup. What sort of distances do you need for the view on the camera?
- zaloExplorer
"Felix12g" wrote:
What sort of distances do you need for the view on the camera?
With bright enough LEDs, the detection distance can be very far. The ceiling-mount easily detected my rift on the floor. It also works up to about six inches from the camera (the jitter disappearing when it's right up next to it).
Here is a diagram that illustrates the capture volume:
CaptureVolume.png
Also, the RFC thread just inspired me to make another leap/rift mashup where the leap is used normally, but tracked in relation to the point of view to give you real virtual hands! I'll use an extra calibration step to calibrate where the leap is located by placing the rift on top of it. - zaloExplorerPositional Tracking and the Leap
I'm combining my Oculus Rift Positional Tracking System with some basic leap motion input. Positional Tracking is the enabling technology that allows the Leap properly in VR (since you have to know where the HMD is relative to the leap). At the beginning of this video I calibrate the Leap's position by setting my rift down on top of it. - svenProtegeExcellent, I have bought some IR LEDs for optical tracking with a PS Eye camera myself and was going to play around with it. Are you using one of the existing software packages for optical tracking?
- ArneOdlandHonored GuestOutstanding work zalo in the area of position tracking. And just as important is the low cost!
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
- 2 years ago