3.7. Grooming track data

3.7.1. Introduction
3.7.2. Resampling track and sensor data
3.7.3. Splitting track sections
3.7.4. Joining track sections
3.7.5. Combining track sections
3.7.6. Generating infill segments
3.7.7. Removing Jumps
3.7.8. Transferring a relative track to another host
3.7.9. Smoothing out back-tracking jumps

3.7.1. Introduction

Track data can arrive at Debrief in vary degrees of quality. Traditionally MWC pre-process track data to remove jumps and generally smooth the data. The 2009 Single Sided Reconstruction extensions (see Section 2.3, “Debrief 2001 onwards”) added functionality to Debrief to perform elementary track operations, including smoothing and removal of jumps. One approach to avoiding the jumps commonly associated with data from inertial navigation systems is to load the data in DR mode (see Section 1.5.4, “Import modes”). The alternative is to move the track before/after the jump to line up the two sections.

Figure 3.21. Grooming Track Data

Grooming Track Data

3.7.2. Resampling track and sensor data

On occasion the data loaded into Debrief is of the wrong frequency:

Too dense

a track may have data items at a frequency higher than that necessary for the current analysis, resulting in slower than necessary Debrief performance. Alternately, a period of sensor data may be too dense, obscuring the underlying patterns in the data (such as a bearing fan)

Too sparse

During track reconstruction, it may emerge that the sensor data is of much higher frequency than the position data. After reconstruction, when stepping through a track in time the positions may jump to the specified time - indicating the positions are too sparse. Resolve this by either resampling the positions or by directing the track to use interpolated points.

Problems associated with data density are handled differently between tracks and blocks of sensor data. Tracks are resampled using the ResamplePositionsAt property - which adds or removes position observations as necessary. Sensor data is resampled using the VisibleFrequency property - though note that this does not add or remove points, it merely changes their visibility.

Note: sensor and TUA data have a characteristic where there may be empty periods when the contact is not held. It would be wrong to continue interpolating data points during these periods, so data points are not generated if there is a gap of more than 3 minutes between data points.

3.7.3. Splitting track sections

Before a jump can be removed from a track, the track must be split. To split a track, first decide where the split should be made, and right-click on the point where the split should happen (either on the plot or in the Outline View). The popup menu will provide options to split the track immediately before or after the indicated point.


It might be worthwhile enabling the Start/End time labels attribute so you can see exactly where the start and end times for each track segment begin and end. Refer to tutorial 2, Viewing some data, and the procedure for Adding data to a plot.

Figure 3.22. Splitting Track Sections

Splitting Track Sections

On completion you'll see a visible split in the track, and the track represented as two segments in the Outline View.The track segments are named according to the DTG of their start point. The two track segments can now be manipulated separately (dragged) using the 'drag TMA segment' tool as described later (see Section 12.2.3, “Dragging tracks”).

Figure 3.23. Track Sections Split

Track Sections Split

3.7.4. Joining track sections

Once track segments have been manipulated (see Section 12.2.3, “Dragging tracks”), they can be rejoined. To rejoin tracks, select them both/all in the Outline View (using the Control key as appropriate). Then right-click and select Merge Tracks as shown below. Note, you can select which track becomes the 'host'.

Figure 3.24. Joining Track Sections

Joining Track Sections

The Debrief merge algorithm is not able to handle overlapping tracks, since it cannot resolve which overlapping segment to favour. This is a task best undertaken by the analyst. So, Debrief will produce a warning when the analyst tries to merge overlapping tracks. When it does, just delete one or more overlapping points and trigger the operation again.

Once you have performed a merge operation on a collection of track segments they are no longer relative to the ownship track (in terms of range/bearing). They are now standalone tracks and can by Copy/Paste-d into another Debrief plot if you wish. The equivalent operation to make a TMA Segment standalone is to select Convert [xxx] into standalone track

3.7.5. Combining track sections

On occasion, once a series of track segments have been built up (or created using the Generate TMA wizard) you may wish to combine them in order to make their management easier. If you wish to keep them as individual entities instead of merging them into a single new track segment, you may combine the track segments (available when you right-click on more than one TMA Solution). Performing this operation puts the segments into a single parent track whilst retaining them within this as single entities. This is particularly relevant for TMA Track Segments, since you may wish to continue dragging them individually as you refine your estimates of course/speed.

3.7.6. Generating infill segments

In addition to combining periods of track (legs), Debrief is able to generate sections of track to join existing sections. It performs this using a series of Cubic Spline calculations. The Splines cover Lat, Long, Depth, Course and Speed. In this way, the infill segment introduces track points that provide a smooth transition in the above attributes from one track to the other. The time interval used for the data points in the infill section is taken from the time interval between the first two points of the second segment. On the plot, the infill segment is shown as a dotted line, to indicate that its series of purely calculated positions, and not based on any observed measurements.


These infill sections are actually dynamic. So, as you move/drag your manual TMA legs around, Debrief will recalculate their positions each time you drop the track. Go on, have a go. It's really flash.


If you delete the track segment either side of the dynamic infill track section, then the infill section will also be deleted - since its positions can no longer be calculated.

3.7.7. Removing Jumps

A consequence of submarine dived inertial navigation is that the recorded track shows large jumps each time a GPS position fix is introduced, correcting the accumulated drift whilst dived.

Debrief is able to automatically remove jumps, transforming less accurate track periods so that they tidily match high-confidence (but infrequent) GPS fixes. A jump is determined as two consecutive updates where the speed in the second update is 3 or more times larger than that in the previous update. The following fictional diagram shows a period of drift, with two green markers indicating the start/end of the dived period. A GPS fix was obtained at the green marker near the North-West. Then the submarine dived, and the drift error grew cumulatively. The next GPS fix was obtained at the time of the green marker near the South East.

Figure 3.25. Removing Track Jumps

Removing Track Jumps

To remove jumps for this period, the analyst opens the Outline View, then selects positions for the whole period representing the drift section of track, from the first green marker to the second green marker (inclusive).


Use the shift-key to select a continuous sequence of items

After right-clicking on this period of position data the analyst will select Remove jumps in selected positions. The algorithm determines the size of the large jump at the end of the period, then works through the selected positions, applying a proportion of that large jump to each position, ensuring the green positions remain unchanged.

Figure 3.26. Track Jumps Removed

Track Jumps Removed

In addition to selecting a discrete period of positions, it is possible to right-click on a track's Positions element in the Outline View, then selecting Remove jumps for selected track. But, please note that this will probably give a sub-optimal solution. When the whole track is selected, Debrief uses the first point in that track as the first lock point. For a more accurate tidied track, manually select the positions, ensuring a real GPS fix is used as the first point.


Read more about the algorithm underpinning Remove Jumps in Chapter 3 of the Reference Guide Section 19.4, “Remove Jumps”

3.7.8. Transferring a relative track to another host

Sometimes single-sided reconstruction is performed at a range of fidelities. A DR reconstruction may be used to get maximum accuracy over a couple of hours. In parallel, an OTG reconstruction may be considering the route of a platform over several days. The track segment generated for the first can't be cut/pasted onto the second, because the ownship platform will have followed a different route (DR vs OTG). The following procedure can be used to solve this issue

The track segment from the DR reconstruction can be considered as a set of range/bearing vectors from the DR primary track. We can then generate a new leg of target data by using these offsets to the primary track on the OTG plot.

To do this, right-click on the reconstructed track and select Copy to clipboard as offsets from [Primary track name]. This operation has put the set of offsets, time-stamps, and original track name onto the clipboard.

Next, either from this plot or a large-scale OTG plot, right-click on the new ownship track, and select Create new track by adding clipboard bearings to [Selected track name]. A new track will be added to the plot, where each point was generated by adding an offset to the nearest point-in-time on the subject track.

3.7.9. Smoothing out back-tracking jumps

Figure 3.27. Smoothing back-tracking jumps Jumps

Smoothing back-tracking jumps Jumps

The above illustration shows a phenomenum sometimes encountered in some track recorded track data. Individual points jump back down the path already travelled. These jumps jar with the attention of the person viewing the track plot, and can introduce errors to the single-sided reconstruction.

There is a pattern to the errors. They always just involve a single measurement (not a series of measurements), and the jump is always back along the path already travelled.

An algorithm has been derived to locate, and remove these jumps. The algortihm works as follows:

  1. Walk forwards along the track segment, remembering the previous 3 positions

  2. Once the three previous positions are all populated, they are notionally titled n-3, n-2 and n-1, with hte current position at n.

  3. Calculate the direction from n-3 to n-2. This is the general direction of travel

  4. If n-1 represents a step backwards along this direction, a jump may have happened

  5. If the direction from n to n-2 is back on the original direction, then a jump certainly occurred.

  6. If a jump has occurred, then replace the location of n-1 with a point at the same time that has been interpolated between n-2 and n.