Mejores prácticas de calibración

Una calibración precisa es fundamental para el rendimiento en la mayoría de las tareas de visión artificial y computacional. A continuación, se enumeran nuestras mejores prácticas, las cuales hemos encontrado mediante una amplia experimentación y análisis teóricos.

  1. Elija el objetivo de calibración del tamaño adecuado. Debe ser lo suficientemente grande como para limitar correctamente los parámetros. Idealmente, debería cubrir al menos la mitad del área total al verse frontoparalelo en las imágenes de la cámara.
  2. Realice la calibración a la distancia de trabajo (WD) aproximada de su aplicación final. La cámara debe enfocarse a esta distancia y el enfoque y la apertura del objetivo no deben modificarse durante ni después de la calibración.
  3. El objetivo debe tener un alto número de características. Es preferible usar patrones precisos. Sin embargo, en algún momento la robustez de la detección se ve afectada. Recomendamos usar patrones precisos para cámaras de más de 3 MPx y si la iluminación es controlada y adecuada.
  4. Recopile imágenes de diferentes áreas e inclinaciones. Mueva el objetivo para cubrir completamente el área de la imagen y procurar una cobertura uniforme. La distorsión de la lente se puede determinar correctamente a partir de imágenes frontoparalelas, pero la estimación de la distancia focal y del punto principal depende de la observación del escorzo . Incluya imágenes frontoparalelas e imágenes tomadas con la placa inclinada hasta +/- 45 grados, tanto horizontal como verticalmente. Inclinar más no suele ser recomendable, ya que la precisión de la localización de características se ve afectada y puede resultar sesgada.
  5. Use una buena iluminación. Esto a menudo se pasa por alto, pero es fundamental. El objetivo de calibración debe estar preferiblemente iluminado de forma difusa mediante iluminación fotográfica controlada. Las fuentes puntuales intensas generan una iluminación desigual, lo que puede dificultar la detección y no aprovechar al máximo el rango dinámico de la cámara. Las sombras también pueden tener el mismo efecto.
  6. Tener suficientes observaciones. Normalmente, la calibración debe realizarse en al menos 6 observaciones (imágenes) de un objetivo de calibración. Si se utiliza una cámara de orden superior o un modelo de distorsión, es beneficioso realizar más observaciones.
  7. Considere usar objetivos con codificación única, como las placas ChArUco. Estas permiten recopilar observaciones desde los bordes del sensor y la lente de la cámara, lo que limita eficazmente los parámetros de distorsión. Además, permiten recopilar datos incluso cuando algunos puntos característicos no cumplen los demás requisitos.
  8. La precisión de la calibración depende del objetivo de calibración utilizado. Utilice únicamente objetivos impresos con láser o inyección de tinta para validar y probar.
  9. Montaje correcto del objetivo de calibración y la cámara. Para minimizar la distorsión y la curvatura en objetivos grandes, móntelos verticalmente o sobre un soporte rígido. En estos casos, considere mover la cámara en lugar del objetivo. Utilice un trípode de calidad y evite tocar la cámara durante las adquisiciones.
  10. Elimine las observaciones incorrectas. Inspeccione cuidadosamente los errores de reproyección, tanto por vista como por característica. Si alguno de estos aparece como atípico, exclúyalo y recalibre.
  11. Obtener un error de reproducción bajo no equivale a una buena calibración de la cámara, sino que simplemente indica que los datos/evidencias proporcionados pueden describirse con el modelo utilizado. Esto podría deberse a un sobreajuste. Las incertidumbres de los parámetros indican la precisión con la que se limitó el modelo de cámara elegido.
  12. Analice los errores de reproyección individuales. Su dirección y magnitud no deben correlacionarse con la posición; es decir, deben apuntar de forma caótica en todas direcciones. El software Camera Calibrator de Calib.io proporciona visualizaciones potentes para investigar los errores reproyectados.

Seguir estas prácticas debería garantizar la calibración más exacta y precisa posible.

¿Tienes alguna pregunta, comentario o información adicional? Publícalo a continuación.

Regresar al blog

14 comentarios

@Ernest: This depends on the detection and sub pixel algorithms you are using and also on the contrast and image noise present. It usually needs testing. We would generally not recommend having squares smaller than 20×20px in the image. If detections look ok, bad numbers you are seeing are probably caused by other issues/bugs.

Calib.io

Hi, Your site is all very helpful. I am using your square based calibration target. Is there a minimum recommended resolution for each square in the image? For example, at my working distance, each square in the target is about 20×20 pixels on the ‘full frontal’ 640×512 image, but of course as I tilt the board for other views the squares appear smaller. OpenCV routine is returning bad numbers for focal length causing ‘undistorted()’ image to appear as if they were taken by a fisheye lens when in fact I am using 12mm lens with low distortion. Should I be using a target with larger (but fewer) squares? Thanks!

Ernest Merrill

@Toby: the offset could very well be due to diffraction in the glass. With the glass exactly perpendicular to the optical axis, you would (ideally) expect no shift of the principal point but a slight change of focal length.

Calib.io

Thank you for the excelent recommendations for calibration.

I have calibrated a camera with and without a cover glass and found the center offset to be 129 pixels with the cover glass! (3096×2080 camera) could this indicate an incorrect camera calibration or could this be due to the cover glass?

Toby Hijzen

@Eugene, the short answer would be no, you do not need to cover different distances. In fact, it is usually advisable to have the calibration target at the exact focus distance (albeit tilted to observe foreshortening), or at least at the hyperfocal distance. Moving further away would constraint a smaller image area which would not help.
Non-central general camera models would be the exception, but these are usually not called for. If you suspect the camera to exhibit distance-dependent projection, moving to different distance could help average the parameters in a standard model such that they work well under all conditions which your application calls for.

Calib.io

Deja un comentario

Ten en cuenta que los comentarios deben aprobarse antes de que se publiquen.