XR - Geometry Calibration

Lets Smode know the position of cameras and Led Screens in the real world

1) Theory


How to let know Smode the positions of cameras and screens ?
That's the job for the geometry calibration. This calibration part will enable to Smode to detect the positions of the screens in the real stage to adjust the virtual one.
The calculation works thanks April Tag and April Tag detector modifier, called Locators
The geometry calibration part consist of taking a sufficient number of shoot called Single frame of differents points of view of your real stage with April Tag broadcasted in screens. During this step, you will have to do succinctly:
  • Take a shoot (= store an single frame)
  • Moove the camera
  • Take a shoot (= store an single frame)
  • Moove the camera
  • Take a shoot (= store an single frame)
  • Moove the camera
  • etc

You don't have to store a frame that display all the screen. But be sure to detect enough of April Tag. Modify the focus of your camera if needed.

2) Before Starting a geometric Calibration

Before launching the latency calibration, you must ensure that:
  1. Ensure that the Led Screen used to make the floor is at the top of the Layer tree in the Stage
  2. Your Smode is fully optimised in graphical perfomances. Use the Profile feature if needed.
  3. The frame rate is stable. If not, it might be because your set-up isn't fully genlocked
  4. You are filming every impacted screens
  5. the camera does not move
  6. Check the Default resolution of your camera to fit the reality.
    If your Physical Camera is in a Stage Elements Group, select the Group and go in Advanced Parameter
    If not, Select your Stage and go in Advanced Parameter
  7. Ask the people who setted up the tracking device where de 0 is on the stage (might be on a corner of the floor). Moove the Real Camera to this point and, on Smode, reach manually this point by changing the position of the the Tracking System.
  8. Check that the tracker of the camera has an orientation correction and placement correction at 0. Also check that the tracker moves consistently on the up-down, front-back and left-right axes.

  9. [Only for Stype world]: Also ensure that the camera position is correctly supported by Stype (seen by all cameras).below is not good:
  10. [Only for Stype world]: Calibrate the min and max zoom of the Stype Device
  11. Exclude items not to be calibrated: Geometric calibration has the possibility to readjust the placement of the displays in Smode to fill in the differences with their actual positions. If you do not wish to change the placement of a screen, disable the relevant settings:

Once you ensure the previous points, you can start a geometry calibration.

3) UI Check-out

Go to the GEometry Tab of the Calibrator Editor
1) Viewport : Display the stream of the XR CalibratorVideo Input
2) Enable Detector : Enable the detection of April Tag and display helpers in the viewport.
3) Detection count : Number of April Tag detected. (result of the April Tag detector modifier
4) Tracker informations : Display the current position orientation of the Tracker of the Physical Camera such as the deviation. A positive value of Position Deviation and Orientation Deviation means that your tracker is currently mooving.
5) Send Locators : Display a April Tag Grid in each Led screens.
6) Store Single Frame : Trigger to store a frame for calibration
7) List of single frames : every single frames appears in that list
8) Single frame information: display the number of April Tag detected for each screens and the pixel gap between their position in the video input stream and the stage simulation.
9) Evaluate : Make an average evaluation of the pixel gap
10) Calibrate : Start a calibration.
11) Console output
12) Save as Calibration State : Save the calibration results asa calibration state.
13) Calibration States list : Every calibrations results can be called back as states. They appears in that list. Learn more about XR - Geometry Calibration

4) Calibration process


Enable "Send Locator" (1) wait until the "Standard deviation" parameter for position and orientation reaches 0 (2).
This data represents "jitter" in the signal output from Stype. Either the camera is not yet stable or there is a problem, look for point 2 and stype. Verify that a sufficient number of tags are detected (3). If necessary, adjust the Focus and use the Enable detector function (4) without being on Air to view the detected tags in the viewport

Move the camera, wait until it is stable (Position/orientation deviation) then store single frame (5).
Steps to be repeated several times.

A correct frame, little error, 187 Tags detected on the GROUND, 199 on the "JAR" led screen and 200 on the "COUR" led screen.
Calibrate (7)
Delete frames that contain too many errors (above the evaluation average). Double click on them to see the stored values. You can Right click on the stored frame and delete the suspicious measurements or the entire frames (so it wont be taken in account during the calibration)

5) Export Calibration

If you are satisfied with the calibration, export it. This will create a .geocal file directly in the Smode project.

6) TroubleShoots

  1. Suspicious measurements
    if there is many mistakes in measurement:
    The camera has mooved (even a little) during the shoot of the viewpoint, or the tracking system receiving weird signal. The latency has not been correcly calibrated or is not relevant anymore. Your setup might not be genlocked.
    If the measures are not that many (as the example above):
    Delete frames that contain too many errors (above the evaluation average). Double click on them to see the stored values. You can Right click on the stored frame and delete the suspicious measurements or the entire frames (so it wont be taken in account during the calibration)

See Also: