Interpolating Marker Data

Marker data recovered from optical systems often contain gaps in the sampled postion signals corresponding to each marker. Traditionally, these gaps are filled in using a combination of automatic interpolation, and manual editin.g

The main goal of this project was to explore various methods of recovering the missing data using fully automatic means.


Part 1: Marker Data

The data used for the project consisted of marker data from an optical system. The data provided had been processed so that correspondences were provided. Unfortunately the correspondences were not wholey accurate.

Part 2: Interpolation Methods

Interpolation methods are usefull when the missing data has useful recordered values about the gap which can be used for interpolation. If the missing data occurs at either end of the recorded sequence, interpolation fails, as illustrated in the figure below.

Despite this shortcoming, interpolation techniques are worth considering for two reasons. First, they are easy to implement, and second, they are generally faster than more accurate methods. This makes them suitable for real-time systems.

Point Interpolation

Point interpolation processes each marker signal independently and interpolates marker position to fill in missing data. While this method works well for small gaps where little movement occurs, it does not work well for large gaps, or gaps where the markers motion is due to complex articulated motion.

The figure above shows the poor placement of a knee marker using linear interpolation of the markers position over a gap of over 700 frames.

Offset Interpolation

Offset interpolation uses all available links of the articulated figure to generate the positions of missing markers. Each link connected to the marker is expressed as an offset from the opposite marker. The interpolation then occurs over the offsets, instead of the raw position. By interpolating in a space local to the marker, as opposed to the global space, the interploation works much better over longer gaps with more complex motions.

Sample Results

Point Interpolation Offset Interpolation

The two animations above illustrate the two how well each interpolation technique "fills in" missing data. The point interpolation clearly fails at several points. The offset interpolation also appears to fail when interpolating the knee, however this is due to the fact that the knee had been mislabeled and is in the wrong location.

However, both motions fail to recover a reasonable motion for the pirouette.

Bad Knee Correspondence

Interpolation Error

We can measure how well the interpolation predicts the actual location of the missing markers by taking a known marker signal and comparing it to the signal that interpolation predicts.

The graph above shows the x-coordinate of of the right knee, as well as the two interpolated coordinates. The interpolation occured over a gap of 50 frames. Notice that the linear point interpolation is in fact a line. On the other hand the offset interpolation more closely matches the actual shape of the curve.

In general, the offset interpolation performed better than point interpolation. However, both forms of interpolation had troubles with long gaps. The graph below illustrates the accumulated error as the gaps grew in frame number. Notice that both perform better with the upper back than the knee. This is because the upper back is much more stable during the running motion.

The main problem with large gaps is that it is very difficult to recover the high frequency components that are missing. With small gaps, or gaps over which the motion is primarily low frequency this is not a problem.

Summary

The problem of filling in missing marker data can be solved fairly reliably over short gaps, or medium gaps where there is little complex motion. As the gaps increase in length, or the motion increases complexity, these methods fail, just as sampling theory tells us they should.

Given this, interpolating the joint offsets provides better results than simply interpolating the markers themselves. This is because more information is used to reconstruct the path of the missing marker.

While optimization methods my give "better" results, at least according to the objective function, they are still going to suffer the same problems that large gaps cause. High frequency motion will be very difficult to recover correctly.