Inherent to any tracking system is the noisy output. To appreciate this problem all one has to do is place a dead animal in the arena and track it: sometimes the location data vacillate irregularly every so often between two (or more) pixels (see figure 1). A one-pixel distance on the screen involves, in our setting, a 1cm distance in the arena. A dead mouse might thus accumulate a considerable total distance traveled. When tracked at the necessary rate (for short stops to be captured) of 25 or 30 frames per second, such distance per frame implies that the dead mouse has been traveling at a speed of 25-30 cm/s !
As this example illustrates, some measures are more vulnerable than others to tracking noise arising from the granulated pixel data. The distance traveled and the speed are vulnerable because they depend on more than one coordinate, so that the noise terms in the measuring of each coordinate add up. In general, as “endpoints” become more complex and depend on more coordinates, they will be more affected by noise, and it is very easy to reach a situation where the signal-to-noise ratio is lower than 1, even when the original noise appears to be small. Instead of solving this problem in every measure separately, it is clearly preferable to solve it once and for all on the raw data, and then apply any desired measure to the corrected data.
Smoothing is of course the way to reduce system noise. Not all smoothing methods, however, were created equal. Moving Averages, for example, a very popular smoothing method, severely lowers speed peaks while increasing the speed during slowing down or stops (thus turning the abrupt stops into slowing down episodes). SEE Path Smoother solves this by employing the Robust LOWESS method, which uses a moving time window, constructed around each data point in turn. The data within each time window are fitted with a polynomial using least-square optimization, further weighted by the distance from the center of the window (that is, the data points nearer in time to each coordinate contribute more to its smoothed location than the farther data points). The Robust LOWESS algorithm used in SEE Path Smoother, furthermore, can be used to give a direct smoothed estimation of the speed, by computing the slope of the above polynomial in every time window. This gives a more accurate smoothing of the speed than any other method we are aware of.
For some measures, it is preferable to use a method that applies only very local smoothing but is still robust. Running Medians is such a method, which is used in SEE Path Smoother for recognizing stops.