7 – Camera Calibration database

The Argus project contains a growing database of camera calibration coefficients using the standard pinhole + radial and tangential distortion model as well as the fisheye or omnidirectional model described in Scaramuzza et al. (2006) and Urban et al. (2015).

These coefficients may be useful for other purposes so we provide them here in an occasionally updated set of tables. Scroll down – the tables are wide so they’re pushed down below the WordPress decorations on the right of the page.

Note that although the settings specify the recording rate in frames per second (fps), this is not expected to influence the camera lens calibration. Furthermore, different “color” GoPro cameras of the same series typically have the same lens properties if they are in the same shooting mode, so you can likely use GoPro Hero3 White settings for a GoPro Hero3 Black as long as they’re in the same resolution and viewing angle.

 

 

 

 

Cameras calibrated with the standard distortion model:

Some definitions:

F = focal length measured in pixels
W = image width in pixels
H = image height in pixels
cx = image center (lateral)
cy = image center (vertical)
A = pixel aspect ratio
k1 = 2nd order radial distortion coefficient
k2 = 4th order radial distortion coefficient
t1 = 1st tangential distortion coefficient
t2 = 2nd tangential distortion coefficient
k3 = 6th order radial distortion coefficient

Camera modelModeFWHcxcyAk1k2t1t2k3
GoPro Hero3 Black720p-120fps-narrow11011280720639.5359.51-0.3590.27900-0.16
GoPro Hero3 White1080p-30fps-wide1230192010809605401-0.320.126000
GoPro Hero4 Black1080p-120fps-wide90019201080959.5539.51-0.250.06000
GoPro Hero4 Black1440p-80fps-wide88319201440959.5719.51-0.2560.081000
GoPro Hero4 Black2.7K-60fps-medium1788270415201351.5759.51-0.25830.0770000
GoPro Hero4 Silver720p-120fps-narrow115012807206403601-0.310.17000

 

 

 

Cameras calibrated with the fisheye distortion model:

Some definitions:

FC = a number specifying the height of the projected upon image plane when undistortion is accomplished
W = image width in pixels
H = image height in pixels
C = parameter C
D = parameter D
E = parameter E
cx = image center (lateral)
cy = image center (vertical)
S = polynomial coefficients (5)
O = other polynomial coefficients (varying number)

Camera modelModeFCWHCDEcxcyS1S2S3S4S5O         
GoPro Hero3 Black720p-60fps-wide412807201.0389624773374790.011039937655688-0.0101601349002573.495968049386204e+026.551208185430136e+02-5.964860064092100e200.000006317642603e2-0.000000002252898e2-0.000000000000015e20.031410779538021e30.262278344036545e30.938094763439947e31.923855551044671e32.568702786546738e32.335637424609530e31.936382148401258e31.294290018279926e3
GoPro Hero3 Black1080p-30fps-wide4192010801.0210486728841610.050700641021834-0.0501741354053675.046272334476868e+029.595023792225445e+02-8.756988129568118e200.000004379234206e2-0.000000001157497e2-0.000000000000005e20.046748122943091e30.436803624621165e31.798819969519065e34.277870045493782e36.535992531565245e36.841467269249026e35.071131915877356e33.380384896639794e31.984422499996136e3
GoPro Hero3 Black2.7k-30fps4270415241.0101036647261660.027626104226261-0.0268423798798267.154242361854845e+021.378448922157604e+03-1.261953803099550e300.000000314144462e3-0.000000000078517e30.000000000000014e30.018207972798881e30.109900472073467e30.378600161566831e30.995200359638239e31.681133481617615e32.745646702683811e32.494533139909354e3
GoPro Hero3 Black2.7kcin-24fps4.8270414401.0101426999657130.056189072228797-0.0554283599982636.719627349026216e+021.348111096592302e+03-1.181168011225933e300.000000353352763e3-0.000000000133837e30.000000000000045e3-0.010915494583628e3-0.097138619196201e3-0.440136716295501e3-1.121502230469040e3-1.480040734347465e3-0.754150026997637e31.352944119973815e32.069996305321981e3
GoPro Hero3 Black4k-15fps4384021601.0011514944536410.038094926574890-0.0379014472441331.002377931339334e+031.953556340432706e+03-1.791690890781179e300.000000202331087e3-0.000000000016437e3-0.000000000000003e30.014726715326858e40.136554923644694e40.554387714551459e41.292957564207057e41.922002588130750e41.924512900717616e41.330366650807437e40.782923639349421e40.418149398196921e4
GoPro Hero3 Black4kcin-12fps4.5409621601.0003030838613870.053757474022190-0.0540217278633101.003594159571279e+032.042792490105998e+03-1.790873060476198e300.000000207063480e3-0.000000000019161e3-0.000000000000003e30.038421375060623e40.377984221587008e41.645626828732992e44.173878402843500e46.827934778214506e47.539572241611399e45.735719261133632e43.019832887177926e41.237259074829096e40.476257082225256e4
GoPro Hero3 Black1440p-48fps4192014401.0002637277063870.036457567337562-0.0361411515931746.859483202825369e+029.575118816472882e+02-8.574307917841457e200.000004533399186e2-0.000000001373757e20.000000000000142e20.040823980616434e30.367763767761128e31.464252736627781e33.379714599070690e35.051762641847280e35.270502471520158e34.011903355856420e32.938078150796307e31.877678532184093e3
GoPro Hero3 Black960p-48fps412809600.9999848210164120.035932434111839-0.0356313999785874.575550574978913e+026.399138833590620e+02-5.729749714788942e200.000007122657255e2-0.000000004471922e20.000000000001889e2-0.015543967682837e3-0.103262099145795e3-0.287575708562884e3-0.383356933536081e3-0.073757842138703e30.494647199061879e31.192731341254540e31.135360273770770e3
GoPro Hero3 BlackWVGA-120fps48484801.0090320720403520.040311274198631-0.0393912904472382.246529853797306e+024.260655495716827e+02-3.889177785982952e200.000009923934804e2-0.000000006709810e20.000000000002219e20.015936841496895e30.109263579553096e30.346182259433937e30.678975611817417e30.857007565813106e31.010455834950723e30.802126886658310e3
GoPro Hero4 Black1440p-80fps-wide4192014400.999938379179311-0.0161878718551880.016810280637347718.4445375924397977.1355515393601-8.477755708037934e200.000003883048139e2-0.000000001510688e20.000000000000937e20.023985653458955e30.203838160012703e30.734981309550883e31.410692016597674e31.452954876183546e30.695737475972601e30.173495542578852e31.092192190554513e31.509061883254690e3
GoPro Hero4 Black2.7k-60fps-wide4270415200.999289595465724-0.0069635408572300.0075330292751977.669108374384379e+021.352406563245692e+03-1.234767106495970e300.000000233157305e3-0.000000000021227e30.000000000000014e30.003495935840111e3-0.000934751560414e3-0.079964826002906e3-0.160849381110099e30.072387040959304e31.641972973579676e32.202560631107756e3
GoPro Hero4 Black4k-30fps-wide4384021600.999855446730588-0.0070724280514270.0076172675963851.088937028247496e+031.920792960011589e+03-1.750339352554267e300.000000156358120e3-0.000000000000341e30.000000000000001e30.012712262204542e30.092259347275331e30.377119290809140e30.901910976373143e32.835853284356173e33.250686093619848e3
GoPro Hero4 Black2.7k 4:3-30fps-wide5.8270420281.002479612109967-0.0024363171098220.0034428345556779.999567386181384e+021.374413779158510e+03-1.186451177097442e300.000000248481215e3-0.000000000042082e30.000000000000027e30.027027547457438e30.204554974397187e30.602623784593015e30.824181901959244e30.477441395049410e30.148197002949612e31.446621729059608e32.067405921832096e3
GoPro Hero4 Black1080p-30fps-wide4192010801.007781524689579-0.0035424830753650.0037429254005065.313744653721496e+029.760901992270241e+02-8.782338276361955e200.000003102319339e20.000000000032907e20.000000000000103e20.005078009041660e30.032201672029899e30.134345783049311e30.351984725390143e31.334363515806159e31.600733049338611e3
GoPro Hero4 Black960p-60fps-wide512809600.999446991404943-0.0010949744283090.0011497610717644.726683719824036e+026.506339006993075e+02-5.612277003834659e200.000004846941429e20.000000000028547e20.000000000000354e20.003928536711933e30.025801577482894e30.103206799918244e30.255378726383932e30.880152554349658e31.032908332215831e3
GoPro Hero4 Black720p-60fps-wide412807200.9997720466856200.002911897081038-0.0026381575419923.517153276518804e+026.508131998317431e+02-5.839327530779753e200.000004546856744e20.000000000271871e20.000000000000303e20.004564589316356e30.025087086078785e30.088378251137011e30.220820620779890e30.873586671326510e31.060824939018812e3
GoPro Hero4 BlackWVGA-240fps-wide48484801.006134958833511-3.294295058161427e-045.270098550859433e-042.355247543774561e+024.308256491888478e+02-3.874821106938145e200.000007030006369e20.000000000073133e20.000000000001439e20.016660776634262e20.102341271571253e20.485609841775483e21.413458342092289e25.800891528406308e27.042820095894670e2
21 comments on “7 – Camera Calibration database
  1. David Clizbe says:

    I am curious if this will be update for the GoPro Hero 6 because that is what I am using at the moment.

    Thanks!

    • Tyson Hedrick says:

      Hi David,

      We do plan to update this to the Hero6 and later GoPros, but don’t have any on-site at the moment. The Patterns & Calibrate modules should be able to produce distortion models good enough for most purposes, and you can use the resulting values with other Argus modules.

      Cheers,
      Ty Hedrick

      • Francisko de Moraes Rezende says:

        Hi Tyson,

        I’m running Argus 2.1 I think (I installed it on 2020-05-26) and it has lens parameters for GoPro Hero6 Black in DWarp. Could I use these values as the camera input values in Wand?

        Cheers, and thanks for developing and maintaining this amazing software 🙂

        Francisko

  2. Danuta Maria Wisniewska says:

    Hello,

    I am planning to use GoPro Hero 6 Black to record penguins in an aquarium. The cameras will be attached to the aquarium walls – on the outside. I would like to use the max fps setting, which means a wide FOV. Plus perhaps a distortion due to the air to water transition? Therefore, I would like to calibrate my cameras using the dot grid. However, I can’t find it. Could you tell me where exactly I should find the “Extras” folder? Or perhaps email me a jpeg or a pdf of the pattern? Thank you in advance.

    Cheers,
    Danuta

  3. Danuta Maria Wisniewska says:

    Hi again,

    I have run into some problems when trying to use the Argus-Calibrate on my .pkl file (with the “Omnidirectional model” for the Distortion parameter). The Log returned the following error:

    Traceback (most recent call last):
    File “c:\python\lib\site-packages\argus_gui-2.1.dev3-py3.6.egg\argus_gui\resources\scripts/argus-calibrate”, line 93, in
    if calibrator.get_initial():
    File “c:\python\lib\site-packages\argus-0.0.9-py3.6.egg\argus\calibrations.py”, line 146, in get_initial
    NameError: name ‘INITIAL_FISHEYE’ is not defined

    Is there a step I have missed, or files I failed to download with Argus? Could you please advise me on how to proceed?
    Thank you in advance for your help.

    Cheers,
    Danuta

  4. Will says:

    How do I get the Fx and Fy for the camera matrix? Only one focal length is given here (F).

    • Tyson Hedrick says:

      Hi Will,
      Argus assumes that Fx and Fy are identical and represents them both with F. This assumption appears to hold for all modern consumer grade hardware and enforcing it makes the optimization process a bit more constrained and thus a bit more reliable.

      Cheers,
      Ty Hedrick

  5. Panos says:

    Hello,

    I love the idea of this site, your database can be really helpful.

    Part of my thesis is a photogrammetric model (in Photoscan) with a GoPro Hero 4 Black. I grabbed a video at 120fps, 1920×1080, Narrow FOV and fisheye distortion. I think that the resolution and the narrow mode can be the cause of different calibration parameters than the ones included in the table above. Could you help me determine them?

    • Tyson Hedrick says:

      Hi Panos,

      I’ll see if we have a lens calibration for the Hero4 black in that shooting mode. However, I’m a bit unclear on your description – you wrote narrow & fisheye, but the GoPro narrow and medium modes are usually best calibrated with a pinhole (i.e. radial + tangential coefficients) model instead of a fisheye model (required for wide modes). Do you have a specific need for fisheye coefficients?

      Cheers,
      Ty Hedrick

  6. Gary says:

    Hi~

    I’d like to use GoPro Hero4 Black as Cameras calibrated, mode:2.7k-60fps-wide.
    Could someone kindly tell me how to use the following parameters in Fisheye camera model for opencv (linl:https://docs.opencv.org/4.1.0/db/d58/group__calib3d__fisheye.html)
    —————————————————————–
    C = parameter C
    D = parameter D
    E = parameter E
    S = polynomial coefficients (5)
    O = other polynomial coefficients (varying number)

    Thanks!

  7. Gary says:

    Thank you for your detailed reply and the suggestion. I’ll look into it.

  8. Mark says:

    Hi there,

    is there a table with the information above for the Hero Session?

    Thank you!

    • Brandon Jackson says:

      Hi, Mark:
      We do not have a Hero Session in house to test. However, Argus is designed for you to make your own profiles. Check out the documentation to see how to film a dot grid, then run Patterns and Calibrate in Argus to make your own profile.
      As one note: if you are filming in a wide mode, choose “Omnidirectional” in Argus-Calibrate. Choose “Pinhole” for medium and narrow modes.

      Cheers,
      Brandon Jackson

  9. Julian says:

    Hey,

    your databse looks great! Do you also have the camera calibration coefficients for the GoPro Hero5 Black (standard distortion model)?
    I am interested in the values of all modes. I could not find a detailed description in the internet. Does someone have an idea where I can find the required information?

    Thank you in advance!

    Cheears

    • Tyson Hedrick says:

      Hi konstantinblum@web.de,

      Unfortunately, we never had a Hero 5 camera in house so I don’t have the calibration parameters for it. If you have one I can walk you through calibrating it. Also, my notes do say that the Hero5 is the first GoPro to have the “linear” mode option, and that the hardware distortion removal of linear mode is more consistent than the Argus software implementation, so you should probably use linear mode. I don’t remember if the Hero 5 has a “narrow/medium/wide” field of view setting or a slider; if it is a slider you’re probably best using the maximum or minimum only since those are the only repeatable settings.

      Cheers,
      Ty Hedric

      • konstantinblum@web.de says:

        Dear Hedric,

        Thank you so much for your fast response.
        The Hero 5 has a narrow/medium/wide field of view setting, but unfortunately nobody remembers in which mode the pictures were recorded.

        Do you know whether there have been big changes according the camera coefficients from Hero 4 to Hero 5?

        Is there a possibility to get the full table with the camera coefficients for the standard distortion model? Above, only parts of the table are visible. This would already be very helpful to get the workflow done.

        Thank you in advance!

        Cheers,
        Julian

        • Tyson Hedrick says:

          Hi Julian,

          Here’s a spreadsheet with the only Hero4 pinhole coefficients I have, they may be of some use – I do have some email correspondence suggesting that the Hero 5 and Hero 4 have pretty similar lens settings.

          Note that all “wide” modes require a fisheye distortion model, only narrow and medium work with the standard pinhole model.

          Do you know if all cameras were using the same mode? Also, it might be possible to use the GoPro-provided software to find out what shooting mode the camera was in; there are several metadata streams in the mp4 file that are GoPro proprietary and Argus can’t read.

          Cheers,
          Ty Hedrick

          Mode focal_length image_width image_height cx cy aspect_ratio k1 k2 t1 t2 k3
          2.7K-60fps-medium 1788 2704 1520 1351.5 759.5 1 -0.2583 0.077 0 0 0
          1080p-120fps-narrow 1780 1920 1080 959.5 539.5 1 -0.255 -0.07 0 0 0.3

          • konstantinblum@web.de says:

            Dear Hedrick,

            thank you so much for the table of coefficients and the information. This was very helpful!

            I will have a closer at the metadata, thank you for that suggestion.

            Cheers,
            Julian

Leave a Reply

Your email address will not be published. Required fields are marked *

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.