when plotted in Octave p = [ 15.12999711 0 -1.3923953 0 -0.04025535 0 1 0 ]; , the curve trends upwards. Will the k1k2k3 show positive values on the plot for barrel/pincushion? If so, how do I invert this?

However, in the 24x36 rectangle of the 35 mm format […]

so they probably use mm (or percent) of distortion in a “35 mm” picture, which is physically 36x24 mm in size. the largest distance is from center to a corner, which is ~21.6 mm. I expect the plots in that paper to have that range, and you’ll find that “21.6” number in many of their number examples.

most cameras aren’t like that. OpenCV works with pixels.

you didn’t say what each number in your given vectors means. are they really in the standard order of distCoeffs from OpenCV? what’s the size of your picture in pixels?

using numbers from the tutorial (the XML/YAML file shown at the end) and equations from the documentation above (omitting zero coefficients), I get this picture:

distortion factor over true radius (take difference to 1.0 as error):

distorted radius over true radius:

(the example uses a 640x480 picture, so the maximum radius is 400 pixels)