Thursday, August 15, 2013

What to do about lens distortion

All machine vision lenses produce a distorted image. Yes, a better quality lens may have so little that it’s undetectable by eye, but it’s still there. So what do you do about it?

This, my friend, is why we have calibration targets. They’re not just for converting pixels to inches; they can be used to calculate a table of correction factors that are applied to every subsequent image.

Now there are two types of calibration target: the dot pattern and the checkerboard. Most of my experience is with the dot pattern, which is perhaps unfortunate because it’s my understanding that the checkerboard is more robust. (So why do I use the dot pattern? Because that’s what LabVIEW seems to like.)

Now despite setting my best friend, Google, to work on this, I’ve not found any studies or reports on the merits of either method. So if you know of anything, please use the Comment function to share your knowledge.


Anonymous said...

I have heard both dots and checker boards are better than the other from different people. I have found a greater selection of dot patterns commercially available than checker boards and I have not found many sources for either type.

Further I have not found a source for checker board patterns that are traceable to a standard. I don't doubt that any of the companies that do manufacture them could provide a checker board grid that is traceable to a standard but it would likely be a custom product.

As to a grid that is traceable to a standard, this can be important to those applications where gauging is being performed. It lends credence to the calibration of the camera just like the calibration of any other gauge. It doesn't necessarily make the calibration better, just provides a link to a known standard.

Anonymous said...

The dot grid is fine if the calibration target is being viewed at basically 90 degrees. If the dot grid is being viewed at an angle, the center of the image ellipse that gets formed by each dot is no longer the physical center of the circle (which is usually assumed). The checkerboard calibration target instead has intersections of lines, and a line when imaged at an angle to the camera is still a line. If you need to perform 3D calibration use a checkerboard, and if you need just a 2D lens distortion map a dot grid is fine.

Anonymous said...

Have you looked at Max Levy?