# LiDAR Sensor

The LiDAR Sensor layer displays the LiDAR information included within a mission. You can configure the numerous parameters associated with the sensors or cameras from this interface.

{% hint style="info" %}
When accessing this interface in Work Offline Mode, any modifications done will apply to the exported LAS/LAZ file that will be created when Exporting to LAS.‌
{% endhint %}

## Acquisition

The Acquisition tab displays the acquisition parameters for the LiDAR sensor corresponding to the loaded PLP file. This is useful if the user wants to see the acquisition parameters that were set for the session.

{% hint style="warning" %}
These settings cannot be changed in Work Offline mode. They are simply read-only parameters.‌
{% endhint %}

### LiDAR Sensors

#### Velodyne <a href="#velodyne" id="velodyne"></a>

For a Velodyne sensor, these parameters include the Sensor IP address, the rotational velocity of the sensor, and the return mode as well.

![SpatialExplorer Velodyne LiDAR sensor local settings Acquisition interface‌](/files/-M_gqQv6S1VBRqTX0g-7)

#### RIEGL <a href="#riegl" id="riegl"></a>

For a RIEGL sensor, there are more parameters displayed such as the Measurement Program and Mirror speed.

![SpatialExplorer RIEGL LiDAR sensor local settings Acquisition interface‌](/files/-M_gqasgE4f74J32XZhd)

### Sessions <a href="#sessions" id="sessions"></a>

The Sessions window displays the number of LiDAR files created during a mission. A new LiDAR file is created when a LiDAR sensor switches states, from OFF to SLT/ACT and back to OFF. The number of LiDAR files created depends on the amount of times a LiDAR sensor was activated.‌

There is a checkbox next to each individual LiDAR session. If that checkbox is unchecked, the LAS file created during exporting will NOT include LiDAR data from that one specific LiDAR file.

![Unchecking LiDAR session in SpatialExplorer local settings Acquisition tab‌](/files/-M_gqekiqFPj80dDIEeZ)

## Calibration <a href="#calibration" id="calibration"></a>

These fields allow editing of the LiDAR’s range-sensing calibration values. These options should not be altered unless necessary.

{% hint style="info" %}
When accessing this interface in Work Offline Mode, any modifications done will apply to the exported LAS/LAZ file that will be created when Exporting to LAS.
{% endhint %}

![SpatialExplorer LiDAR sensor local settings Calibration interface‌](/files/-Ma-TCsiN3TOgOxMB8rJ)

### Mounting Transform (IMU to Sensor) <a href="#transform-imu-to-sensor" id="transform-imu-to-sensor"></a>

These fields apply a transformation from the center of the IMU to the center of the LiDAR sensor. The Translation fields define the offset from the center of the IMU to the LiDAR’s optics. The Rotation (extrinsic ZXY order) fields define how the LiDAR sensor is oriented relative to the IMU.‌

* **Translation** - The translations (X,Y and Z) along the IMU axis between the center of navigation (IMU reference point) and the LiDAR reference point
* **Rotation (XYZ order)** - The rotations between the IMU frame and the LiDAR sensor frame&#x20;

### Mounting Calibration (IMU to Sensor) <a href="#corrections-in-sensor-frame" id="corrections-in-sensor-frame"></a>

These fields apply systematic IMU frame to sensor frame misalignment corrections commonly referred to as "boresight calibration" corrections

* **Translation** - Translation corrections along the IMU axis between the center of navigation (IMU reference point) and the LiDAR reference point
* **Rotation (XYZ order)** - LiDAR boresight misalignment corrections - IMU to sensor (roll, pitch, yaw

### Encoder Calibration

Some sensors have their encoder mounted improperly, such that the center of encoder doesn't match the center of spin axis. This introduces an error when getting encoder reads, most of which manifests as a sine. Thus, a correction sine can be fit with phase and amplitude to the encoder readings.

* **EEA** - Encoder Error Amplitude (degrees)
* **EEP** - Encoder Error Phase (degrees)

### Per-laser Calibration

These fields apply corrections to each laser individually

* **Translation (XYZ)** - Physical offset of the given laser to the center of sensor. Usually, X and Y will not be used and Z will be set to vertical offset on the spin axis for multilaser systems.
* **Rotation (XYZ)** - Per-laser rigid rotation calibration (applies to legacy calibrations)
* **Range Scale** - Applies a scale factor (multiplier) to the range reading.
* **Range Offset** - Applies an offset for the range reading.
  * Range scale and offset parameters will adjust the range such that: rangeNew = rangeOld \* rangeScale + rangeOffset.
* **Scan Angle Scale** - Applies a scale factor (multiplier) to the scan angle reading. Scan angle is the angle in spin direction, as reported by the encoder
* **Scan Angle Offset** - Applies an offset for the scan angle reading. The offset is applied

  in spin-axis direction and is in degrees.

  * Scan angle scale and offset parameters will adjust the range such that: scanAngleNew = scanAngleOld \* scanAngleScale + scanAngleOffset
* **Tilt Angle Scale** - Applies a scale factor (multiplier) to the tilt angle. Tilt Angle is the angle between the laser and the spin axis. Notice this will have a different effect than rotation, as it will not move the spin axis, rather it will adjust the angle between the laser and the spin axis.
* **Tilt Angle Offset** - Applies an offset for the tilt angle.
  * Tilt angle scale and offset parameters will adjust the range such that: tiltAngleNew = tiltAngleOld \* tiltAngleScale + tiltAngleOffset.

## Processing <a href="#processing" id="processing"></a>

The Processing tab allows for adjustment of the visible point cloud displayed.

![SpatialExplorer Velodyne LiDAR sensor local settingsProcessing interface](/files/-M_gqsX6oXeEOSeX0ATp)

![SpatialExplorer RIEGL LiDAR sensor local settings Processing interface‌](/files/-M_gqwChHUuS4ENNWn2q)

### Blocking Out Frustums <a href="#blocking-out-frustums" id="blocking-out-frustums"></a>

In some payload configurations, the LiDAR sensor can be mounted in such a way that it might constantly scan parts of the vehicle or craft, (i.e. a portion of a car’s roof or a UAV’s landing gear). This will create reflections in the resulting 3D point cloud. There are two options to prevent this from happening:‌

* Set the minimum range value to a value greater than difference of the distance from the LiDAR sensor to the obstacle.
* Block certain frustums, which are angular regions. Up to four regions can be blocked at the same time.

In order to calculate frustums, you must know the orientation of the LiDAR sensor as it is mounted. For a Velodyne sensor, it is indicated by the cable being 180 degrees. For a RIEGL sensor, it is indicated by R logo on the front of the sensor.

![Field of View Orientation for Velodyne Sensors](/files/-M_gr1BGEkMotcdVNMjD)

![Field of View Orientation for RIEGL Sensors‌](/files/-M_gr6NnA-xJtTQH49dN)

You then select a horizontal min/max and a vertical min/max of the range you would like to block as well as a min/max distance range. RIEGL sensors do not have a vertical min/max option because they are line scanners and therefore do not have a vertical field of view. Horizontal refers to the 360 degree rotation of the scanner, so essentially to the left/right of your vehicle. Vertical refers to forward and backward.‌

To block out frustums you need to set each of the 3 parameters (Horizontal, Vertical, and Range) to include the points you wish to block. In this example below, we are blocking everything that is to the Right and Behind the vehicle. Points are masked that meet all criteria for the mask: Horizontal 330 to 360, and Vertical 0 and +45, and range 0 to 500.

![Frustums example with Velodyne sensor](/files/-M_grAWny05Kn1NrD1JY)

![Frustums example with Velodyne sensor‌](/files/-M_grDhUhdSp0qgwl4Zl)

You might need to set up more than 1 filter such as using one frustum to block from 0 to 90 degrees and another to block from 180 to 270 degrees. For example, if you want to preserve only 40 degrees, +20 and -20 from nadir, then you will need to set up 2 filters. First filter should block points if they are 0-160 degrees horizontal, and 0-1000 (or whatever your maximum range is for the scan) meters range. The second should block points if they are 200-360 degrees horizontal and 0-1000 meters range.‌

It is recommend adjust these parameters and inspect them in SpatialExplorer before fusing them and exporting your point cloud to a LAS/LAZ.‌

### Filtering <a href="#filtering" id="filtering"></a>

#### Auto Downsamping (Velodyne) <a href="#auto-downsamping-velodyne" id="auto-downsamping-velodyne"></a>

The fields in the Auto Downsampling group box control which data from the LiDAR will be fused. Each single laser can be included or excluded by checking the corresponding boxes.‌

#### Rotational Resolution (Velodyne) <a href="#rotational-resolution-velodyne" id="rotational-resolution-velodyne"></a>

The Rotational Resolution slider allows skipping entire firing sequences. If the slider is set all the way to the right, the sensor will NOT skip any firing sequences. If the slider bar is set all the way to the left, it will skip 4 firing sequences.‌

#### Returns to Fuse <a href="#returns-to-fuse" id="returns-to-fuse"></a>

The Returns to fuse option can be used to fuse only certain echoes/returns.‌

#### Downward FOV <a href="#downward-fov" id="downward-fov"></a>

The Downward FoV slider will filter the point cloud based on the downward field of view. A value of 360 degrees will display/fuse the entire point cloud. A value of 90 degrees will display/fuse the point cloud with 45 degrees on each side, with nadir towards the ground.

![Downward FOV slider in SpatialExplorer‌](/files/-M_grI1tn8l7v-qweXLI)

#### Valid Reflectance (Riegl)

The allowed range of reflectance values to be included during pointcloud generation. To reduce noise in a pointcloud, it can be beneficial to reduce the valid reflectance range to -15 to +127 dB.

![](/files/-McM-E2pnTngvF53YxrJ)

#### Range <a href="#range" id="range"></a>

The Range option has two parameters, “near” and “far”. The “near” parameter will filter out and not fuse any points captured within the specified distance. The “far” parameter will include and fuse any points captured within the specified distance.

![SpatialExplorer Available Data Range option](/files/-M_grMT631L-xdrtiknP)

## Tools...

Near the bottom, there is a “Tools” button that includes several utilities for various functions.‌

#### Load Sensor Transform from LDR or PLP File

This tool is useful for loading a lidar calibration profile to update/replace and existing calibration.&#x20;

Example: A boresight calibration was not stored to rover during time of acquisition, however, you need to update the PLP file to include the boresight calibration prior to generating a pointcloud in Spatial Explorer.&#x20;

![Uncalibrated LiDAR](/files/-McLXLgKaMy47v1xXceo)

Click "Tools..." > " Load Sensor Transform from LDR or PLP File" > then navigate to a PLP file that includes the proper LiDAR calibration for your system > "Open"

Select the LiDAR Sensor to load transforms and corrections from and then click "OK"

![](/files/-McLXvAMVa8Gg7nDlkcs)

Click "OK"

![](/files/-McLY0Qh-QzWbSqBLIoS)

Review the loaded calibration parameters and click "Apply" then "OK" to exit the window. At the top left of Spatial Explorer click File > Save Project in order to save calibration to your active PLP file.

![Calibrated LiDAR](/files/-McLYCrRV5Laf--twfWJ)

#### Apply Terrasolid Boresighting... <a href="#apply-terrasolid-boresighting" id="apply-terrasolid-boresighting"></a>

This tool is useful to make adjustments to the LiDAR sensor rotations. When adjusting the LiDAR rotation, do **NOT** adjust the individual axis rotation values. Instead use the Terrasolid Boresighting tool. This tool will take into account any minor changes to the translation values resulting from changes in rotation.‌

Each rotation has a maximum of 90 degree. For example, to apply a heading adjustment of 180 degrees, it is necessary to apply two separate changes in heading because the maximum value the tool recognizes is 90 degrees, therefore doing it twice equates to 180 degree change in heading.‌

In the "Calibration" tab of the LiDAR tools dialog, use the "Tools" button to "Apply TerraSolid boresighting'" to the LiDAR sensor. When it asks for a file, click "Cancel" and from there you can input manual changes.&#x20;

![](/files/-McLUCwSgmoe9RJVO72X)

Ensure to "Apply" any changes before exiting the Settings window. If there is a .cloud file loaded, make sure to "[Recompute](https://docs.phoenixlidar.com/lidarmill-desktop/user-interface/windows/project-management-window/point-clouds#recompute-points)" the cloud to apply any new changes to the existing .cloud file.‌

#### Reset Laser Corrections...

This tool resets LiDAR mounting calibration, encoder calibration, and per-laser calibration.&#x20;

![](/files/-McLUyD9O-NKC6mdDWJQ)

####


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs-6.phoenixlidar.com/lidarmill-desktop/user-interface/windows/project-management-window/lidars/ldr-x.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
