So it’s time for a technical blog, written especially for the Gyro Gearlooses of this world. Today’s article will be about radiometric calibration, this is a less known technique to improve your camera calibration.
With the development of a 3D measurement system, it’s important to make sure you choose the right camera, lens and illumination for your application. Once this is done, the first thing you need to do for precise measurements, is to calibrate your camera.
Typically you take a calibration plate with known geometry and capture several snapshots of the plate with different orientations to estimate the position of the camera ánd the intrinsic values (like distortion coefficients, focal length, pitch and principal points). Once your calibration is finished, you obtain a transformation matrix to convert pixels into real world coordinates. There will always be some error, which you want to be as low as possible. A calibration reprojection error describes the geometric error corresponding to the image distance between the projected and measured one.
The calibration method mentioned above assumes that the pixels of the camera sensors are linear. This means that twice as much energy on the sensor should result in twice the amount of gray value on the image. In reality however, this is not the case. That’s makes radiometric calibration so practical. This technique is necessary to improve the sine wave representation of the projector in our val-IT Flex, resulting in lower reprojection errors.
So how does this work? It’s actually pretty simple, and there are quite a lot of open source and commercial image processing libraries (HALCON, for example) available where this method can be found. With fixed aperture, you have to take different snapshots with different exposures (make sure to avoid under/overexposure).
When using a projector you could change the exposure with a fixed camera exposure to achieve the same effect. If you take a fixed ratio between different exposures you should in theory get a linear gray value response, as exposure behaves logarithmic. Often we choose an exposure ratio of 0.5 and aim for an exposure where we don’t exceed the max gray value intensity (typically 255). By inverting the response (using a polynomial model) you can create a lookup table that compensates each pixel.
With radiometric calibration we significantly reduce the reprojection error of the camera calibration. We are even able to provide better real world coordinates of the calibration plate which further reduces the error; often with factor 2. So, you can probably imagine that radiometric calibration is an easy but very effective way for the calibration of the scanned objects in our val-IT Flex. Got curious? You can always contact our colleague Anouar (firstname.lastname@example.org), he’ll tell you more about it.