> For the complete documentation index, see [llms.txt](https://horus-make-sense.gitbook.io/documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://horus-make-sense.gitbook.io/documentation/tutorials/working-with-horus-recordings/recording-system-calibration.md).

# Recording System Calibration

Match Imagery to the Positions

When configuring the recording systems, lever arms are set to account for the offset between the camera(s) and the IMU. However, due to slight tolerances in the mounting of the cameras, their orientation might be slightly off.  This can have an impact when you would like to do any measurements.

To correct for these differences a calibration is required. this chapter describes how to accomplish this.\
To do the calibration you will require the following:

* A GIS file containing accurate outlines of any building, road marking, etc.
* Horus recording(s) along a route from which the lines of the GIS file can be seen.

{% hint style="info" %}
If required, post-process the positions first prior to continuing.
{% endhint %}

The best method of calibration is to use GIS data as a reference, if you do not have (access to) this type of data, then there is a method to do it without, but expect the accuracy of the calibration to degrade.

{% tabs %}
{% tab title="With GIS Data" %}

1. Open a recording with the Horus Movie Player. This recording should pass the GIS data.
2. Load the GIS data.

   1. Open the 'Layers Manager' via the 'Modules' menu.
   2. Click on 'Import Layer'. ![](https://lh7-rt.googleusercontent.com/docsz/AD_4nXeGTHjMtW_N5gfWcuTgeP6k4czWNW1P1U1M5vbVY4kcGyMVQZVGvvNuQYdO_58QMEiXF-Wjr9TX4FvYc3DnmdWZAVE8DfbRlI09zcJYtiXoTwxltZe48X2BfmbLABeLHr2k79eL8kCxkU3RaIks5FI9u4qH?key=J7Sx_vvponDOvCXiphQdPQ)
   3. Select the Filetype, select the GIS file and press the ‘connect’ button.\
      Verify the projection format and press ‘Ok’ to load the layer.
   4. Refresh the frame or move to a frame near the GIS data to show it in the viewport.

   <figure><img src="https://3462221526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFCe67imy4ipkDut6uMDi%2Fuploads%2FhxSXjXg5244Eht7ENSxt%2Fimage.png?alt=media&amp;token=6a2433e2-2178-4902-aa57-7a542b0ac0a1" alt=""><figcaption><p>Before Calibration</p></figcaption></figure>
3. Use the Yaw, Pitch, Roll sliders to move the image so that aligns with the GIS data.\
   ![](https://3462221526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFCe67imy4ipkDut6uMDi%2Fuploads%2Fx5Jhs2lCMS0CkppQoRKV%2Fimage.png?alt=media\&token=fe65417a-332e-488c-bbf4-e9248e8967b4)
4. Set the Camera height to the ground if you have not done so already.
5. Save the changes.\
   Go to File -> Save View (\*.hsf), and overwrite the existing setup.hsf of the recording.\
   ![](https://3462221526-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FFCe67imy4ipkDut6uMDi%2Fuploads%2FhSy7MLAw5FwXdsB2UbYD%2Fimage.png?alt=media\&token=f87af126-c540-4d7c-a8a4-81cd192563e8)
6. Copy this updated setup.hsf to any existing recordings.
7. Update the recording system's pipeline. (Link will be added later)
   {% endtab %}

{% tab title="Without GIS Data" %}

{% endtab %}
{% endtabs %}

At the end of this process the GIS data should correctly outline the imagery.

<figure><img src="https://lh7-rt.googleusercontent.com/docsz/AD_4nXfjZjjslodk6epvLCKvI2IuyCogU1bThyrxNZC9Q3IkEiBrlFVJnYCrf7NiZmo8jw2Dn3gOYJ3QChBq9w3ObV4-iGzxdx5tG4mmXSDhHtupcQhmOcfFuNUlZ4BEzjfqw691J24_8tKeYEMKaOZz9DiKmNtB?key=J7Sx_vvponDOvCXiphQdPQ" alt=""><figcaption><p>After Calibration</p></figcaption></figure>

In the instance that you have a one or more standard cameras instead of a 360 cameras, then you may need the 'Immersive Views Builder' module to project the images correctly.
