I have been thinking a lot about how to convert between various frame rates. Basic frame rate conversion works by dropping or duplicating frames. For example converting 30fps material to 25fps material will drop one frame in every six. More advanced techniques such as those employed by Motion Perfect or MSU AFRC are able to create new frames based on the existing frames that exist. These frames are more than a simple blend of the existing frames and use motion detection algorithms to resolve an intermediate frame from two source frames.
The approach that I would like to try is to use tricubic interpolation this is similar to the well known bicubic interpolation that is used to scale images in two dimensions. Tricubic interpolation operates in three dimensions x y and t. While there exists a library for calculating interpolated points in three dimensions, I have no clue how to use the library for my purposes because I do not yet fully understand how to compute the numerical derivatives.