Ask Your Question

Revision history [back]

Camera/Distortion Model Confusion

Hello People,

so i'm doing some augmented reality Stuff and to do this properly i need to calibrate my camera. Calibration works fine so far, but i'm confused by the camera models used. As of my understandig, OpenCV uses a pixel based model, so the image plane has a size of 1920x1080 i.e. and focal length is also measured in px. I can convert that to real-world units using the pixel/mm relation of the sensor, wich checks out good. So the converted OpenCV focal length matches the focal length given on the lens closely.

However, i'm struggeling with the distortion. I know that OpenCV uses this formula for distortion correction:

Xc = Xd(1+K1r^2+K2*r^4...) with r=sqrt(x^2+y^2)

But what range are Xc and Xd in? Pixels, mm(sensorsize) oder uv?

Also, there is another model, used by some mediaservers & photogrammetry programs wich uses significant smaller coefficients for k1-k3, they can be obtained from the openCV coefficients by this formula:

K1 = K1(openCV)/fx(mm)^2 K2 = K2(openCV)/fx(mm)^4 K3 = K3(openCV)/fx(mm)^6

I dont really have found that much information on this model, except this:!radiallensdistortion.htm But here they are using basically the same formula for lens distortion, so why the different coefficients?

Any links,papers or explanations are very much appreciated.

Thank you and greetings,