Here is a menu script that will adaptively reduce the keyframes for tracking points only, using a similar algorithm to the Freehand tool. Chucky's already done the beta testing for it, so if anyone else is interested in playing with this motion capture stuff (or you just want to have a laugh at some amateurish code

), feel free to give it a try as well.
rt_reduce_channel_keys_v0.1.zip
It should be pretty self-explanatory, but here's a few tips to get you started:
It only works on tracking points at the moment, but it would be possible to make it operate on any channel if there is a demand for it.
At the moment it's undoable, so if you get a bit overzealous with your tolerance settings and blow away too many keys you can undo to get them back. I've found the best way to use it is to run it multiple times, slowly increasing the tolerance settings each time until it's as smooth as you want it.
I also added a feature so you can specify a start and end frame for it to operate on. If you keep the "entire channel duration" box checked, you won't have to worry about setting this.
The "Frame Scale" parameter is only used for the angle tolerance and controls how stretched out or bunched up the timeline motion curve is (like zooming in and out in graph mode). With a setting of 1, the number of pixels per frame is equal to the pixel tolerance. I just left it at 1 during my tests and it seemed to work OK.
One thing I did notice with my testing is, the smoother you make it, the more "disconnected" the tracking points seem. I think it's because my script operates on each tracking point individually so they no longer have keys on the same frames. Let me know if it's an issue and I could think about adding an option to process the tracking points all at once, so if one point has requires a key on a particular frame they all do.
By the way, Chucky, I made a few internal changes to how it handles start and end frames, so you might want to redownload it.