hi,
my approach is based on matching unique features with a base image, and the image that is photographed.
using this 'feature tracking', you can calculate the transformation that the feature have gone,
and this is how the camera has 'moved' from the base image to the image at hand.
i am a very experienced image processing developer.
I've done projects ranging from stereo vision, to image compression, filtering and more...
you can contact me for further details.