-
Notifications
You must be signed in to change notification settings - Fork 146
Tracker Pose Calibration
#WORK IN PROGRESS
#Overview In order to setup your PSMove tracking space we need to compute the location and orientation of each of the PSMove cameras you have connected. Additionally, if you plan to use the service with an HMD we need to determine where the PSMove tracking space is relative to HMD tracking space. If you have an HMD, make sure it's connected first and you have started SteamVR.
Begin the calibration process by selecting the "Compute Tracker Poses" option in the "Tracker Settings" menu:
#Step 1: Verify your HMD tracking (optional) The first screen you are presented in the camera pose tool lets you test that your HMD is tracking as expected. You should see a blue wireframe shape representing the chaperone bounds provided by SteamVR and a model of an HMD (currently it's always an Oculus DK2 model) showing the tracking position and orientation of the HMD. If the HMD doesn't track as expected, make sure you have SteamVR started and restart PSMoveService and then relaunch the PSMoveConfigTool.
#Step 2: Verify your tracking camera video feeds The next screen allows you verify that your PSMove tracking cameras are streaming video properly. Sometimes the camera drivers can get in a bad state the and video feed can start cutting out. Cycle through the camera feeds with "Previous Tracker" and "Next Tracker" buttons (if you have more than one tracker). If one of the video feeds isn't working, go take a look at the Troubleshooting-(Windows) wiki page.
#Step 3: Select the camera pose estimation method There are two techniques for computing camera poses: "HMD Coregistration" and "Calibration Mat". The first method is easier to do and recommended if you only have one tracking camera, but can sometimes be less accurate and it requires that you have an HMD. The second method is more accurate and recommended if you are using more than one camera, but is a bit more involved and does not require an HMD.
#Step 4a: Coregistration with HMD Camera pose estimation by HMD Coregistration involves attaching a psmove controller to your HMD and moving the pair around in front of the tracking cameras. The config tool records the position of the PSMove controller relative to each PSMove tracking camera and the HMD position relative to the HMD tracker. We then compute the transform needed to align the recorded PSMove positions with the recorded HMD positions. This transform is the location and orientation of the PS3EYE camera relative to the HMD tracker.
##Attaching the PSMove to your HMD Before you can coregister you need to firmly attach your PSMove to your HMD. If the PSMove slides around much during coregistration you won't get a good alignment transform. If you are careful, it's possible to firmly hold the PSMove on top of the HMD.
I personally use a small velcro square to attach my PSMove to my DK2. I recommend putting the scratchy side on the HMD and the fuzzy size on the PSMove. I did this backwards. I am now full of regret:
Once the PSMove is attached you can start recording poses. As you do you'll see a yellow ribbon showing the strip of samples you recorded for the HMD positions. Recording typically only lasts a few seconds.
If all went well you should see the camera frustums for each tracking camera you have as well as the tracked PSMove controller position. Hopefully when you hold the PSMove close to your HMD is should be correspondingly close on screen. If things look way off, try re-running the calibration. Sometimes it takes a few tries to get a good alignment. If you still can't get good camera pose estimation, consider trying the calibration mat method described next.
#Calibration Mat
#Proceed to the next step Steam-VR-Driver-Setup