Current Plan: Analyze the joint movement for each component of a given joint hierarchy.
- Start with the segment’s parent, like the shoulder joint (FL1), and run a script to query the tz and ty values across each frame. There is a trick to this though: Since the rotoscoped joint isn’t fixed in space, set up a “centroid-like” locator and subtract this from the joint’s position information.
- Now you have a text file with the tz and ty spatial information across each frame. These values are pretty rough since they were from rotoscoped video footage with little control. Don’t forget that.
- upload the images later
- Now, by looking at the data, try and estimate as many “clean” periods as you can. Shave off the rest of the data.
- In Matlab, periodically extend these values.
- Might have to filter by doing some windowing… probably not at first.
- Run an FFT on the data with Matlab. You should be getting spikes indicating the dominant frequencies.
- Take around 5 to 10 of the most prominant spikes. These frequencies will be used as the coefficients in the next step.
- Create a sine wave generator for each of the prominant frequencies from the previous step. Use the frequencies as the coefficients for the sine wave generator.
- Sum the sine wave generators to receive the output function that should fit the input data.
LINKS on FFTs:
LINKS on FFTs in Python and setting up SciPy and NumPy: