LODESTONETechnical report TR-2026-01 · revision 3Հայերեն
Contents
  1. Cover and contents
  2. 1Introduction
  3. 2State of the art
  4. 3Physics of detection and identification
  5. 4System architecture
  6. 5Induction subsystem
  7. 6Radar subsystem
  8. 7Positioning and timing
  9. 8Signal processing and machine learning
  10. 9Work plan
  11. 10Team and responsibilities
  12. 11Budget and funding
  13. 12Risks, safety and quality
  14. AAppendices
Chapter 8

Signal processing and machine learning

From raw samples to target position, class and size.

This chapter describes how raw samples become target estimates: demodulation, background removal, inversion of the dipole model, classification, fusion with radar, and evaluation.

8.1Data flow

  1. Demodulation. Each block of codec samples is transformed by one FFT. The complex values at the twelve tone bins of each receiver are divided by those of the corresponding transmit current reference. The result is a response matrix per block: transmitters × receivers × tones.
  2. Time stamping. The PPS edges in the audio stream assign GPS time to each block; the pose estimate (Chapter 7) is interpolated to that time.
  3. Background removal. A background spectrum measured without a target is subtracted. Ground response is estimated along the track with a moving median and fitted with the viscous-soil model (Chapter 3).
  4. Detection. Candidate targets are local maxima of the residual signal on the position map.
  5. Inversion. For each candidate, all blocks within about one metre are used to fit the dipole model.
  6. Classification and fusion. Orientation-independent features are classified and combined with radar results.

8.2Dipole inversion

The unknowns for one target are its position (3), its orientation (3) and the three principal polarizabilities \(\beta_1, \beta_2, \beta_3\) at each of the twelve tones (36 complex values). The forward model computes the coil fields \(\mathbf h_\text{tx}\) and \(\mathbf h_\text{rx}\) from the known coil geometry and pose, and predicts each measurement from the tensor model in Chapter 3. Position and orientation are found by non-linear least squares (Levenberg–Marquardt, several starting points). For fixed geometry the polarizabilities follow by linear least squares. The quality of the fit and the covariance of the estimates are stored with each result.

8.3Features

8.4Classification

Simulator exact sphere · spheroids · FEM random depth & orientation + soil and noise models Sandbox captures known objects & depths labelled by hand split train/test by OBJECT Measurements V(TX i, RX j, tone k) complex, ÷ TX current Physics inversion location (x, y, depth) orientation β₁, β₂, β₃ across frequency Classifier gradient boosting on orientation-free β-spectra location Prediction type (ferrous · ring · coin · can …) · size position & depth · confidence end-to-end network (needs more data)
Figure 8.1.Processing pipeline. The physics model removes position and orientation before classification. An end-to-end network on raw measurements is kept as a comparison but needs considerably more data.

The baseline classifier is gradient boosting on the features above. It works with a few hundred examples. A one-dimensional convolutional network on the \(\beta_i(\omega)\) curves is trained for comparison. Class labels are ferrous / non-ferrous and a shape class (coin or disc, ring, rod or nail, can or hollow body, foil, other). Size is estimated by regression. Every prediction is reported with a calibrated probability.

8.4.1Simulation

The forward model is cheap to evaluate, so large training sets can be generated: exact solutions for spheres, analytical approximations for spheroids and finite-element models for selected real shapes. Depth, orientation, position, noise and soil response are drawn at random. Models are trained on simulated data and calibrated and validated on measured data. Performance is only reported on measured data.

8.5Fusion with radar

The division of work between the two sensors is shown in Figure 6.4. Fusion is carried out at the level of candidate targets. A candidate is kept if both sensors detect it, or if one sensor detects it with high confidence. Radar depth is used as a prior in the induction inversion. Because the two sensors are on the same GPS time line and pose is known, their detections can be associated by position.

8.6Evaluation protocol

8.7Data management

Every capture is stored as raw codec samples (FLAC, lossless) with a JSON metadata file. The metadata records time, operator, site, soil condition, coil configuration, tone plan, pose track, ground truth (object identifier, depth, orientation, position) and the software version. Files are named site_date_run_capture, checksummed, and copied to the project server nightly. Object records include photographs, dimensions, mass and material. The released dataset carries a data sheet describing collection, known biases and licence. Code is kept in the project's Git repository on the team server; every result in the report refers to a tagged commit.