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
- 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.
- 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.
- 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).
- Detection. Candidate targets are local maxima of the residual signal on the position map.
- Inversion. For each candidate, all blocks within about one metre are used to fit the dipole model.
- 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
- The three curves \(\beta_i(\omega)\), normalised by their high-frequency values: they describe the shape and material class independently of orientation and depth.
- The quadrature peak frequency and width of each curve (Chapter 3): relaxation time and geometry.
- The sign of the low-frequency in-phase response: ferrous or non-ferrous.
- The ratios \(\beta_1 : \beta_2 : \beta_3\): sphere, elongated or flat object.
- The absolute magnitude together with the fitted depth: size.
- Where available, radar features: echo polarity, estimated resonance poles and depth.
8.4Classification
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
- Split by object. Training and test sets never share a physical object. Otherwise the model learns individual objects and the test score is meaningless.
- Blind test. Test objects are buried by a team member who is not involved in the analysis; positions and identities are revealed only after the predictions have been submitted.
- Metrics. Classification accuracy with 95% confidence intervals, confusion matrices, calibration of probabilities, size error, position error, and detection rate against false alarms per square metre.
- Reference. The same test set is also assessed with the target-identity reading of a commercial detector, to measure the improvement.
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.