Please note that this is an extension of a previous question: Interpolating a sparse list of two-dimensional coordinates
We have an ordered array of coordinates corresponding to the position of an object in a set of camera frames $(f_1,...,f_N) \in F$, which we're tracking with an imperfect object recognition algorithm. As a result, in any given frame, we sometimes fail to identify the object, and we sometimes identify multiple copies of the object. We're left with noisy data that looks something like this:
OrderedArray = {{{70.8938, 216.539},{70.89,216.54}}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {{71.0656,216.573}}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {{67.6546, 220.338}}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {{70.9211, 216.364}}, {{70.9184, 216.346}}, {{70.9079, 216.349}}, {{70.9046, 216.335}}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {},{}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {{70.951, 216.705}}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {{70.9621,216.586}}, {{70.918, 216.576}}, {{70.9116, 216.559}}, {{70.9189,216.581}}, {{70.9115, 216.565}}, {{70.9294, 216.552}}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {}, {{67.0276, 218.154}}};
Where the position of a coordinate in the array corresponds to a particular image frame. Here's a listplot output for a larger version of my data set:
I'd like to generate a "best guess" for the motion of my object from frame to frame provided this noisy data, and with the constraint that the object cannot move more than a Euclidean distance $D$ from frames $f_i$ to $f_{(i+1)}$.
How might I best use the intepolation tools in Mathematica 9 to "guess" the shape of the curve followed by the object? I'd ideally like to specify that the object follows a linear trajectory, or, say, a trajectory characterized by a polynomial of bounded degree.
Update: In response to Thies Heidecke's comment on filters, here, I'm tracking a moving object that changes direction fairly slowly. The curve fitting the data should be fairly smooth.