Skip to content

The use of Geotagging function

AndriksonsM edited this page Jun 19, 2026 · 6 revisions

Geotagging is a post-processing procedure that embeds precise geospatial coordinates (latitude, longitude (for the .SGY files only), and altitude (for the rest of data files)) into sensor data files, including those produced by magnetometers, ground-penetrating radar (GPR), and related instruments. It is useful because many sensors record measurements without reliable positioning metadata or with positions that are inaccurate due to GNSS limitations, clock drift, system latency or some software errors. By synchronizing sensor observations with high-quality navigation solutions (e.g., RTK/PPK), geotagging enables accurate spatial referencing of each measurement, which is essential for mapping, gridding, and interpretation in GeoHammer, GIS and domain-specific software. Geotagging is typically necessary when:

  • Position and sensor data are logged by separate systems
  • RTK/PPK processing is performed after acquisition
  • Timestamps do not align perfectly and require time-offset correction
  • The acquisition rate differs between the positioning stream and the sensor stream, requiring interpolation.

Main functions

  • Extracts coordinates and altitude from Position Solution Files and injects them into data files to update using timestamp-based synchronization
  • Interpolates coordinates when observations are not available at the exact acquisition time
  • Supports SEG-Y files (commonly used for GPR data)
  • Supports all GeoHammer templates

Templates

Data files Position solution files
Echo sounder NMEA log RTKLib .pos files
SENSYS MagDrone R1 and R3 data (.CSV) KlauPPK .pos files
Geometrics MagArrow data (.CSV) UgCS SkyHub position.csv logs
SEG-Y files with GPR data
Potentially any .CSV format via a custom template

Previously, UGcS-Geotagger was distributed as a standalone application; it has now been fully integrated into GeoHammer as a built-in workflow component.


In this tutorial we'll use data MagArrow Mk2 magnetometer data, that can be downloaded here.
Data was gathered using a Geometrics MagArrow Mk2 magnetometer over the SPH Engineering's test range with buried pipes and barrels.
Comprehensive analysis of this survey "UAV-based magnetometer comparison: utilities detection test" can be read here.



0. Prior any work is done to the existing files, make a backup for both position and data files, as they will be overwritten!

  1. First, we need to export MagArrow Mk2 data (.magdata) into a .CSV (raw data output) file format using Geometrics Survey Manager As we are doing all the filtering in GeoHammer, we'll leave decimation (samples/sec) filter box untouched and include records without locations as we'll use our position file for precise coordinates.
image
  1. Now that we have the more easily usable .csv file, we can start GeoHammer and open the Geotagging function.
image
  1. In the Position Files window, drag and drop the position .csv file, or use the Add file button.
    If you have multiple position and data files, you can specify the relevant folders, and the Geotagging function will automatically link the corresponding files. For example, this is useful when one folder contains position files and another folder contains data files. In this window, you can also check the start and end times to make sure the correct files have been selected.
    Once the data file and position file have been imported, click the blue Process button at the bottom of the window.
image

When the Geotagging function has been completed, we can open the newly-acquired, GNSS precise data file in Geohammer and do the rest of processing. For comparison, we'll show an unmodified flight, where the RTK wasn`t properly working and the newly made file, with precise coordinates.

image

Clone this wiki locally