> For the complete documentation index, see [llms.txt](https://docs.phoenixlidar.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.phoenixlidar.com/lidarmill-cloud/workflow/processing-tools/navlab-pipeline.md).

# NavLab Pipeline

NavLab uses PPK (post-processed kinematic) GNSS processing techniques to process raw trajectory data and produce a trajectory suitable for pointcloud production. **This step is performed prior to running the SpatialFuser pipeline.**&#x20;

## Video Tutorial

{% embed url="<https://youtu.be/bgIK0jfE5Tc?t=500>" %}

## Select Navlab Postprocessing

To begin processing your trajectory data, create a NavLab Pipeline by navigating to the Pipelines tab. Click the **+** sign in the bottom right corner to add a pipeline. Under **Select Processing**, choose **Navlab**. LiDARMill indicates the types of input files required, and the type of output file that it will create. Click **Next** to move forward.&#x20;

<figure><img src="/files/pLUnMnfahUdRE7FqTXIQ" alt=""><figcaption></figcaption></figure>

### Select **I**nput Files/Artifacts

NavLab can process multiple navigation files and reference stations at the same time. Once you've selected the files you'd like to use in processing, click **Next**.

<figure><img src="/files/EEA8SpCYlQSEWlGUI8Tw" alt=""><figcaption></figcaption></figure>

### Processing **T**ime Range

&#x20;Adjust the start and stop times for processing if desired.&#x20;

![](/files/-McFUriFUEk9qMkmb3RM)

### Configure Navigation Rover Settings

It is recommended to use the default parameters populated here. If you acquired data in the incorrect rover profile, however, you could correct for that by editing the parameters here. &#x20;

Minimum alignment velocity can be configured based on your flight plan's kinematic alignment speed (straight line, \~50 - 100 m).  It is not mandatory to configure this field.&#x20;

Note: Lever arm offsets are measured along the Novatel vehicle frame (X vehicle-right, Y vehicle-forward, Z vehicle-up). For Body to IMU rotation, rotate the vehicle frame into the IMU frame by rotating around the vehicle axes in ZXY order (rotate around rotated axes for the 2nd and 3rd rotation). Refer to the [Navigation System Basics](/data-acquisition-and-uav-piloting/navigation-and-alignment-techniques/navigation-system-basics.md) section of the user manual for more information.

<figure><img src="/files/ziuaqZ8mYNStk5dtifC5" alt=""><figcaption></figcaption></figure>

**Configure Reference Station**&#x20;

Inputting correct reference station position is a very important step in trajectory post processing. Select from the available post processed positions in the drop down menu, or enter your own **Custom** position if you positioned your reference station over a known ground point.

{% hint style="info" %}
OPUS solutions requires that observations were made at least 24 hours prior to processing.
{% endhint %}

![Manually Input Custom Coordinate](/files/-McFVf0mukGyDA0BIKlq)

![OPUS Refined Coordinates](/files/-McFVvgiUFooxKbPMvML)

{% hint style="info" %}
For best results, input your reference station in the same datum as your GCPs and resulting LiDAR point cloud
{% endhint %}

### Additional Trajectory Export Formats

There are additional trajectory export formats that you can enable. These are common trajectory formats that may be needed if the data is being processed or analyzed outside of LiDARMill. In most cases, it's not necessary to enable any of these. Click **Finish** to create NavLab pipeline.&#x20;

<figure><img src="/files/PGzKltMpVxmKOZRQqTgM" alt=""><figcaption></figcaption></figure>

Once created, view files and artifacts associated with the created pipeline under its **General** tab. When completed, the post processed trajectory and Trajectory Report will be located here. You can check the progress of the NavLab pipeline under **Job Runs** .

{% tabs %}
{% tab title="General tab" %}

<figure><img src="/files/XNpuu5hiUwZw80aLVxLP" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Job Runs tab" %}

<figure><img src="/files/0WA51KyJGM8HLIXVLkwf" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

LiDARMill will include in the name of your trajectory a string of characters according to how it was processed:&#x20;

* First character, P or G: PPP or differential GNSS processing
* Second character, T or L: Tightly coupled or loosely coupled inertial processing&#x20;
* Third character, Inertial processing dynamics model:
  * A: Airborne
  * G: Ground vehicle
  * P: Pedestrian
  * M: Marine
  * U: UAV
* Fourth character, V or 0: Doppler used or not
* Fifth character, A or 0: PPP-AR engine utilized for downloading precise ephemerides.&#x20;
* Sixth character, M or 0: Multi-pass processing enabled
* Seventh character, P or 0: Precise files downloaded

In the example above, the trajectory *20220922-163103\_<mark style="color:blue;">GTAVAMP</mark>-2228-405643-2228-406180.cts* was processed using differential GNSS, tightly coupled inertial processing, airborne dynamics model, doppler velocity information enabled, AR engine enabled, multi-pass processing enabled, and precise files were downloaded.&#x20;

{% hint style="info" %}
LiDARMill processes your trajectory in the cloud, so you can navigate to another screen within the application, visit another website, or close your browser, and post-processing will continue in the background. LiDARMill will automatically send you an email when processing is complete, if you selected that option when initiating the pipeline.
{% endhint %}
