Ask Your Question

Do I really need calibration for laptop camera? [closed]

asked 2017-10-19 02:48:30 -0500

I have run calibration sample and don't see difference between initial and undistorted images. I guess, laptop driver already uses appropriate correction coefficients.

edit retag flag offensive reopen merge delete

Closed for the following reason the question is answered, right answer was accepted by ya_ocv_user
close date 2017-10-23 08:37:39.656973


After camera calibration, distortion coefficients and intrinsec parameters are estimated.

"laptop driver already uses appropriate correction coefficients." : that's new! Can you give a reference?

LBerger gravatar imageLBerger ( 2017-10-19 03:44:57 -0500 )edit

From photographs have nearly infinite depth of field, everything appears in focus. As there's no lens distortion, wide angle images remain absolutely rectilinear.

That's exactly what I see on my images. Looks like the simplest pinholes don't need correction at all.

ya_ocv_user gravatar imageya_ocv_user ( 2017-10-19 07:32:56 -0500 )edit

I haven't found any reference that a driver corrects distortion, but I looked through Microsoft pipeline for video processing. They have a wide range of tools including for high quality media, can encode various formats, compress, etc, but no single mention of such operations as correction. They enumerate available cameras, pick one, capture frames, and send them to Direct3D for display. It is supposed that camera calibration should be done at factories.

ya_ocv_user gravatar imageya_ocv_user ( 2017-10-19 09:49:00 -0500 )edit

1 answer

Sort by ยป oldest newest most voted

answered 2017-10-23 05:17:13 -0500

For theory look here. In order to use solvePnP() for 3D reconstruction, we must supply 2 blocks of camera parameters: distortion coefficients and camera matrix. If images have no visible distortion, the coefficients may be set to 0. Camera matrix contains 3 values: focal length f expressed in pixels and optical center (cx, cy). Ideally, the optical center is in the center of the image. My calibration with 640x480 pictures rendered exactly that (319.5, 239.5). The only parameter which could require calibration is focal length. For me f is approx 600. It affects scaling according to formula M = f /(f - S1) where M - magnification, S1 - distance from object to lens plane, but this formula is for cameras with moving lens and focusing. Laptop pinholes have no focusing so focal length is useless. Instead, distance d between lens and sensor should be used M = d / S1. Thus scaling is proportional to d, but its exact value is not needed because we choose an arbitrary object coordinate system and solvePnP() calculates scaling factors from correspondence between object and image points.

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2017-10-19 02:48:30 -0500

Seen: 161 times

Last updated: Oct 23 '17