> For the complete documentation index, see [llms.txt](https://stage-precision.gitbook.io/grid/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://stage-precision.gitbook.io/grid/camera-calibration/using-the-calibration-object/finishing-and-validating-calibration.md).

# Finishing and Validating Calibration

After enough calibration data has been captured, the calibration result needs to be finalized, saved, assigned, and validated.

This step is important because the Capture Window may still be processing data while Auto Calibrate is active.

Before saving or evaluating the result, make sure the calibration process has finished analysing and solving the captured data.

{% hint style="info" %}
Do not evaluate or save the result while the calibration is still capturing, analysing, or solving. Wait until all process states are idle.
{% endhint %}

***

## Stop Auto Calibrate

Before finishing the calibration, disable **Auto Calibrate** in the Capture Window.

This stops the system from collecting new captures while you inspect the current result.

#### Wait for Idle State

After disabling Auto Calibrate, wait until the process status shows that all stages are idle.

This usually includes:

* **Capture**
* **Analyse**
* **Solve**

Only continue when all stages have finished processing.

{% hint style="warning" %}
If you close or save too early, the final result may not include the latest captured data.
{% endhint %}

#### Inspect the Current Result

Before closing the Capture Window, inspect the current solve.

Check:

* reprojection error
* sensor coverage
* screen coverage
* zoom / focus coverage
* movement coverage
* visual alignment in the Solve Engine Camera View

The result should be stable and visually correct across the range required by the workflow.

***

## Close the Capture Window

When the result looks good and all process states are idle, close the Capture Window.

After closing, Grid Studio may continue with the final solve or output generation, depending on the selected workflow.

#### Final Processing

Wait until the Calibration Object has completed the final processing.

Do not change input maps, profiles, Calibration Screens, Camera Objects, or Axis 2D objects while the final result is being created.

{% hint style="info" %}
Some workflows may take a moment to finish after the Capture Window is closed, especially when Lens Profiles, Alignment Profiles, screen updates, or Axis 2D data are generated.
{% endhint %}

***

## Save Calibration Outputs

After the final solve is complete, save or assign the generated outputs.

The available outputs depend on the selected calibration workflow.

<div align="left"><figure><img src="/files/PdEhrSqDm46pfc0iz4rS" alt="" width="563"><figcaption></figcaption></figure></div>

### Lens Profile Output

Workflows that solve lens calibration can create a **Lens Profile**.

Depending on the workflow and output settings, the Lens Profile can be:

* saved as a new profile
* used to overwrite an existing profile
* assigned directly to a Camera Object

A Lens Profile should be saved when you want to reuse the lens calibration later.

Use a clear name that describes the lens, camera, and lens setup.

Example:

```
CameraA_ZoomLens_24-70mm_LensProfile
```

### Alignment Profile Output

Workflows that solve tracking alignment can create an **Alignment Profile**.

The Alignment Profile aligns the incoming tracking or movement data with the real optical camera image.

Depending on the workflow and output settings, the Alignment Profile can be:

* saved as a new profile
* used to overwrite an existing profile
* assigned directly to a Camera Object

Use a clear name that describes the camera and tracking setup.

Example:

```
CameraA_FreeD_AlignmentProfile
```

### Calibration Screen Updates

Some workflows can update the placement, orientation, or shape of Calibration Screens.

Only save or apply these updates if the Calibration Screens should actually be changed.

{% hint style="warning" %}
If Calibration Screens are already used in Unreal Engine, a media server, or another external system, changing their placement may require re-exporting or updating those systems.
{% endhint %}

### Axis 2D Output

Axis-Pole Calibration can write calibrated movement data into the **Axis 2D** object.

This output allows the Axis 2D object to drive its child Camera Object using the calibrated 3D movement path.

After saving the Axis 2D calibration data, test the movement across the full rail / pole / lift range.

### Camera Object Output

Static calibration workflows can write values directly to a **Camera Object**.

Depending on the workflow, this may include:

* camera position
* camera rotation
* focal values
* distortion-related values

Use this output for static camera setups where no Lens Profile or Alignment Profile is created.

***

## Assign Profiles to the Camera Object

After saving Lens Profiles or Alignment Profiles, assign them to the Camera Object that should use the calibration result.

#### Lens Profile Assignment

Assign the generated Lens Profile to the Camera Object.

This allows the camera to use the calibrated lens distortion and lens behavior.

#### Alignment Profile Assignment

Assign the generated Alignment Profile to the Camera Object.

This allows the camera to align its mapped tracking data with the real optical camera image.

{% hint style="info" %}
A moving Camera Object usually needs both a valid Lens Profile and a valid Alignment Profile.
{% endhint %}

#### Check the Correct Camera Object

Make sure the profiles are assigned to the correct Camera Object.

This is especially important in projects with multiple cameras, multiple Media Inputs, or multiple tracking sources.

{% hint style="warning" %}
Assigning the generated profiles to the wrong Camera Object can make the calibration appear incorrect even if the calibration result itself is valid.
{% endhint %}

***

## Validate in the Distortion Viewer

After the calibration outputs are saved and assigned, validate the result visually.

A common way to do this is with the camera **Distortion Viewer**.

The Distortion Viewer can show the real camera image together with the calibrated virtual camera view.

<div align="left"><figure><img src="/files/dXZ5LPKXvr7tNDiWhHKt" alt="" width="563"><figcaption></figcaption></figure></div>

#### Set the Camera Image Background

Use the same Media Input that was used for calibration as the camera image background.

This allows you to compare the real image with the virtual overlay.

The image should still be the raw camera signal.

#### Check Calibration Screens

For Calibration Screen workflows, check whether the virtual Calibration Screens line up with the real Calibration Images in the camera image.

Move the camera through the calibrated range and check alignment at:

* different positions
* different rotations
* different distances
* different zoom positions
* different focus positions

#### Check Measurement Points

For Manual Marker workflows, check whether Measurement Points line up with their real-world positions in the camera image.

If the overlay does not match, check whether:

* the Measurement Point coordinates are correct
* the correct points were referenced in the Manual Marker Editor
* the pixel positions were placed accurately
* the Lens Profile is valid
* the Alignment Profile is assigned correctly
* the correct map is driving the Camera Object

#### Check Axis 2D Movement

For Axis 2D workflows, move the real system through the calibrated rail / pole / lift range.

Check whether the virtual camera follows the real camera movement correctly.

Pay special attention to:

* movement boundaries
* positions where the rail bends or curves
* high and low pole / lift positions
* positions where the rig may twist or lean
* zoom and focus changes

***

## Validate Across the Full Range

A calibration should not only work at one camera position.

Validate the result across the full range where the camera will be used.

#### Movement Range

For moving cameras, check the result across the full movement range.

This includes:

* center positions
* outer boundaries
* high and low positions
* near and far distances
* different rotations

#### Zoom Range

For zoom lenses, check the result across the calibrated zoom range.

Slowly zoom through the lens range and look for areas where the virtual image drifts away from the real image.

If the error becomes visible at a specific zoom position, capture more data at that position and refine the calibration.

#### Focus Range

If focus-dependent calibration data was captured, check the result across the calibrated focus range.

Move through the relevant focus positions and verify that the overlay stays aligned.

If marker detection was not reliable at some focus positions during calibration, the result may be weaker in those areas.

***

## Send Camera Data to a Renderer

After the calibration is validated, the calibrated camera data can be sent to a renderer or external system.

This is usually done by adding a map output to the calibrated Camera Object.

#### Map Output

A map output can send the calibrated camera data to another system.

Depending on the project, this may include:

* position
* rotation
* lens data
* distortion data
* profile-driven camera values
* other renderer-specific values

#### External Systems

The calibrated camera can be used by external systems such as:

* Unreal Engine
* media servers
* render engines
* XR / AR systems
* other external camera consumers

{% hint style="info" %}
The exact output setup depends on the renderer or external system used in the project.
{% endhint %}

***

## Common Problems After Finishing

If the validation does not look correct, check the most common causes first.

#### Wrong Output Assignment

Make sure the generated Lens Profile and Alignment Profile are assigned to the correct Camera Object.

#### Wrong Media Input

Make sure the Camera Object and Distortion Viewer use the same camera image that was used during calibration.

#### Wrong Map

Make sure the Camera Object is driven by the same map that was used during calibration.

#### Processed Image

Make sure the image is still the raw camera signal.

An already undistorted, distorted, cropped, scaled, or composited image can break the visual match.

#### Screen Position Changed

If Calibration Screens were repositioned during calibration, make sure all external systems use the updated screen positions.

#### Not Enough Coverage

If the result is good in one area but bad in another, the calibration may not have enough coverage.

Capture more data in the area where the error is visible.

#### Bad Lens Range Coverage

If the result drifts during zoom or focus changes, capture more data at the lens positions where the error is greatest.

***

## Before Continuing Checklist

Before using the calibration in production, check the following:

* Auto Calibrate has been stopped.
* Capture, Analyse, and Solve are idle.
* The final solve has completed.
* The Lens Profile has been saved or assigned if created.
* The Alignment Profile has been saved or assigned if created.
* Calibration Screen updates have been saved only if intended.
* Axis 2D calibration data has been written if required.
* Static Camera Object values have been written if required.
* The generated profiles are assigned to the correct Camera Object.
* The correct Media Input is used for validation.
* The Camera Object is driven by the correct map.
* The result has been checked in the Distortion Viewer.
* The calibration has been validated across the required movement, zoom, and focus range.
* Renderer or external system output has been configured if needed.
