LiDAR SurveyPerth property mapping
Sensors & Methods

Boresight calibration — the small angles that scale up

A perfectly-calibrated LiDAR sensor with a perfectly-corrected trajectory can still produce a cloud that's metres off the ground. The reason is usually boresight — three rotation angles between the sensor and IMU that nobody talks about, and that quietly determine whether a capture survives independent QA.

· 10 min read·LiDARSurvey.com.au

If you've ever delivered a LiDAR capture with great PPK trajectory residuals, great strip alignment internally, and wildly-wrong absolute positions against ground checkpoints, you've probably met a boresight calibration problem. The trajectory says the sensor was here, pointing this way; the sensor disagrees with the IMU about the second half; and every point in the cloud is consequently shifted by the boresight error multiplied by the range.

The fix isn't complicated. The failure to do it correctly — or to recheck it periodically — is one of the more common sources of systematic bias in production LiDAR work. This article walks through what boresight is, why sub-degree errors scale to centimetres on the ground, and how to validate calibration from the QA pack without having to do the maths yourself.

What boresight actually is

A LiDAR system has two reference frames that need to agree:

The two frames should be perfectly aligned — sensor zero-degrees pointing exactly where the IMU says it's pointing. In practice, they aren't. The misalignment is a 3D rotation between the two frames, parameterised as three small angles:

These three numbers are the boresight calibration. They're recorded in the trajectory-processing software and applied to every pulse before the cloud is generated.

If they're correct, the cloud is positionally accurate. If they're off, every point in the cloud carries a shift proportional to range.

Why sub-degree errors matter

Boresight errors look small in degrees and large on the ground. The relationship is linear with range:

ground_offset = range × tan(boresight_error)

For typical drone LiDAR at 100 m AGL:

| Boresight error | Ground offset @ 100 m | @ 200 m | | --------------- | ---------------------- | ------- | | 0.01° | 17 mm | 35 mm | | 0.05° | 87 mm | 175 mm | | 0.1° | 175 mm | 349 mm | | 0.5° | 873 mm | 1,746 mm|

For engineering-grade accuracy (±20 mm RMSE vertical at 100 m AGL), boresight angles need to be within about 0.006° — six thousandths of a degree.

That precision isn't achievable by mechanical mounting alone. It's achievable only through software calibration, and only with good calibration data.

How boresight calibration is performed

The standard calibration procedure uses dedicated flights over known features:

1. Calibration site selection. A site with strong geometric variation — sharp building edges, roof corners, hard surface markers — captured in good conditions. Open terrain doesn't work because there's nothing to align against.

2. Cross-pattern flight. The drone flies multiple perpendicular passes — typically 4-8 strips arranged in a cross or grid pattern. Each strip captures the same site from a different direction.

The geometric trick: a boresight error in roll shows up differently when the sensor passes north-to-south versus east-to-west. With enough cross-passes, the calibration software can solve for all three angles simultaneously by minimising the overlap discrepancy between strips.

3. Forward + reverse passes. Each direction flown both forward and reverse exposes any direction-dependent error (usually a small calibration shift due to platform vibration).

4. Software fit. Calibration software (TerraMatch, Inertial Explorer Boresight module, manufacturer-specific tools) ingests the multi-strip cloud and solves for the three boresight angles that minimise overlap discrepancy across all strip pairs.

5. Result validation. The calibrated boresight is applied back to the original strips; the residual overlap discrepancy should drop dramatically (typically from hundreds of millimetres to single-digit millimetres).

Dedicated calibration typically takes 15-30 minutes of airtime per sensor + 1-2 hours of processing. Worth doing thoroughly on first installation and periodically thereafter.

How often calibration drifts

Boresight isn't fixed forever. It drifts under several conditions:

A reputable operator has a calibration log that documents the date and value of each calibration. Worth asking for it.

The on-the-fly alternative

Modern pipelines can sometimes solve boresight as a side-effect of strip alignment on the project itself, rather than from dedicated calibration flights:

  1. Capture the project as normal
  2. Run strip alignment software with the boresight angles as free parameters (in addition to the usual position + orientation adjustments per strip)
  3. The fitted boresight that minimises strip discrepancy is the on-the-fly calibration

When this works:

When it doesn't:

For most production projects, on-the-fly works fine. For projects that need defensible boresight (high-accuracy work, multi-vendor compatibility, audit trail), dedicated calibration remains the gold standard.

Per-strip vs per-project calibration

A subtle question: does the boresight applied to each strip in a project come from a single global calibration, or are the strips calibrated independently?

Per-project calibration uses one set of boresight angles for all strips in the project. Simpler, faster, accepts that strip-to-strip drift gets handled by strip alignment downstream. Appropriate for most production work.

Per-strip calibration allows different boresight angles per strip (or per flight session within a project). More accurate where thermal conditions drifted between strips, more processing work. Appropriate for projects with very tight accuracy requirements or captures over multiple days.

Most operators default to per-project calibration. If your project's accuracy spec is at the engineering edge (±15 mm or tighter), per-strip is worth specifying.

Validating calibration from the QA pack

Two QA signatures expose boresight problems:

1. Strip alignment residuals. The post-strip-alignment overlap discrepancy between adjacent strips should be small (under 10-15 mm typically). Large strip discrepancies are the first signature of uncorrected boresight error — the calibration was wrong, and the software couldn't fully reconcile the strips despite alignment.

2. Spatial pattern in checkpoint residuals. A boresight error produces a systematic residual pattern that varies with strip and with position within strip. The spatial residual map shows it as a tilt or rotation in the residuals — not random scatter.

(For the full residuals page interpretation, see reading a residuals report.)

A QA pack with healthy strip alignment + random residual scatter

Common calibration mistakes

Three patterns we see in marginal projects:

Skipping calibration on new sensor installations. A new sensor arrives, gets mounted on the drone, gets flown the same day. The factory boresight from the spec sheet is applied; nobody verifies. The project ships with systematic position bias that the QA pack would have surfaced.

Trusting factory calibration after maintenance. The sensor gets sent in for service; comes back with the original factory boresight values applied; nobody re-validates. Maintenance inevitably shifts mechanical alignment; the post-maintenance boresight is almost never the pre-maintenance value.

Not re-validating after thermal shock. Capture campaigns across seasons (summer-to-winter, day-to-night, hot tarmac to cold dawn) shift sensor alignment. Operators with a "set once, forget" approach to calibration accumulate undocumented bias.

Calibration over featureless terrain. Dedicated calibration flights over open flat ground don't constrain the boresight angles geometrically — the optimiser finds a fit but it's weakly constrained. Calibration sites need geometric variety.

TL;DR

Boresight is the three-angle calibration between sensor and IMU frames. Sub-degree errors translate linearly to ground offsets: 0.01° at 100 m = 17 mm. For engineering accuracy, calibration needs to be within about 0.006°.

Calibration is performed via dedicated cross-pattern flights at a site with strong geometric variation; on-the-fly calibration from project data is a viable alternative when the project has sufficient variety. Re-calibration is required after sensor maintenance, thermal cycling and airframe events; periodic re-validation is prudent for production work.

QA pack signatures of bad boresight: large strip-alignment residuals, systematic spatial pattern in checkpoint residuals, non-zero mean. A capture with healthy QA across all three is calibration-clean.

If your project is at the engineering accuracy edge and you have any concern about systematic bias, the calibration log is worth asking for. Reputable operators document every calibration with date, location and result.


Project quote

Got a project where calibration provenance matters?

For high-accuracy or audit-defensible projects, our calibration log is part of the QA pack — every value documented, every change traceable. Tell us the accuracy spec and we'll confirm calibration currency at scoping.