Points only camera calibration?
Here an exact example of what you want

http://www1.cs.columbia.edu/~atroccol/3DPhoto/3D-2D_registration.html

The math broken down step by step

https://dsp.stackexchange.com/questions/1727/3d-position-estimation-using-2d-camera

If you need help with UI code, such as picking 3d or 2d points with a python modaloperator, I am happy to help with that.

EDIT:  I have made a partially working module
code:  https://github.com/patmo141/odc_public/blob/master/image_object_registration.py
blend:  https://www.dropbox.com/s/rqk9rrh9a4rw9ez/image_object_registration.blend?dl=0

https://youtu.be/Edk9uA5Yl5k

-Patrick