Entendiendo el error de reproyección
En la calibración de cámaras, el error de reproyección (RPE) es de vital importancia. ¿Qué es exactamente y cómo podemos interpretarlo? Este artículo pretende arrojar algo de luz sobre este importante tema, que a veces se entiende un poco mal.
¿Qué es el error de reproyección?
Formalmente, un error de reproyección es:
Vector 2d de la diferencia entre el punto medido y el proyectado
A continuación, puede ver cómo Calibrator visualiza tanto el punto medido (cruz verde) como el proyectado (círculo rojo). Debido a que el error individual tiende a ser mucho menor que un solo píxel, Calibrator dibuja el error de reproyección como una versión escalada 10x utilizando una línea roja.
Llamemos al punto medido $p_{ij}$. Aquí $i$ denota el identificador único del punto en el tablero de calibración y $j$ el número de pose/imagen. En la configuración de calibración de la cámara, sus coordenadas se encuentran utilizando un algoritmo de detección de características, por ejemplo, un detector de tablero de ajedrez, un detector de cuadrícula circular, etc. El trabajo del detector es encontrar el objetivo de calibración en la imagen. Este paso suele ir seguido de una optimización de subpíxeles, en la que se utilizan los valores de la imagen circundante para determinar realmente la posición de la característica con una precisión muy por debajo de 1 píxel.
El punto proyectado $\breve{\vec{p}} _{ij}$ se obtiene tomando las coordenadas nominales de la placa de calibración del punto $i$-ésimo, aplicando la transformación extrínseca de la pose $j$-ésima y, por último, aplicando el mapeo de proyección de la cámara. La transformación extrínseca es una roto-traslación 3D que relaciona el marco de coordenadas local del objetivo de calibración en la pose/toma específica con el marco de coordenadas de la cámara. El mapeo de proyección de la cámara depende del modelo de cámara (matemático) que se esté utilizando. Los modelos de cámara más comunes realizan una proyección en perspectiva combinada con una distorsión de lente no lineal.
La función objetivo que se minimiza en la calibración de la cámara es:
$$\sum_i{\sum_j{||\vec{p}_{ij} - \breve{\vec{p}} _{ij}||^2}} \quad ,$$
- es decir, se minimiza la suma de los cuadrados de la norma/longitud de todos los errores de reproyección. En otras palabras, el proceso de calibración ajusta todos los parámetros extrínsecos y de la cámara de modo que los puntos se proyecten lo más cerca posible del lugar donde se midieron.
Lo más común es que el software de calibración informe la raíz cuadrada media de todas las normas de error de reproyección y lo llame simplemente error de reproyección .
$$\textrm{RPE}_{\textrm{RMS}} = \sqrt{1/N \cdot \sum_i{\sum_j{||\vec{p}_{ij} - \breve{\vec{p}} _{ij}||^2}} }$$
Tenga cuidado: a veces también se informa la media o la mediana del error de reproyección, y la nomenclatura no es 100% consistente en la literatura.
$$\textrm{RPE}_{\textrm{media}} = 1/N \cdot \sum_i{\sum_j{||\vec{p}_{ij} - \breve{\vec{p}} _{ij}||}} $$
$$\textrm{RPE}_{\textrm{mediana}} = \textrm{mediana}(||\vec{p}_{ij} -\breve{\vec{p}} _{ij}||)$$
Especialmente en el caso de valores atípicos graves, estas cantidades podrían diferir significativamente. En conclusión, técnicamente el error de reproyección es una única cantidad vectorial, pero en la mayoría de los casos se entiende por error de reproyección una estadística (RMS) de todos los errores de reproyección .
¿Cuáles son las fuentes de error?
¿Por qué el RPE nunca llega a ser exactamente cero? Hay algunas fuentes que contribuyen a este error y que no se pueden eliminar por completo.
En primer lugar, está el ruido característico, es decir, la detección no perfecta de los puntos de referencia o círculos en un objetivo de calibración. Se puede desglosar en ruido de imagen (compuesto por corriente oscura, ruido de disparo y ruido de cuantificación) y error/sesgo del detector.
En segundo lugar, el modelo matemático de la cámara podría no ser lo suficientemente flexible para modelar con precisión el complejo comportamiento óptico de la lente y el sensor.
En tercer lugar, el objetivo de calibración, que normalmente se supone que es perfecto, podría no serlo. En el caso de las placas planas, la rigidez y la estabilidad de la temperatura son cruciales y, si no son lo suficientemente buenas, darán lugar a un RPE más alto.
Por último, es posible que la estimación inicial utilizada para la calibración no haya estado próxima al mínimo global, lo que conduce a una solución no óptima.
Las fuentes de error pueden ser imparciales y estocásticas, o sesgadas, lo que podría desviar el proceso de calibración. La pregunta importante es si los errores están correlacionados con los parámetros de la cámara o no.
A modo de ejemplo, si bien el ruido de la imagen contribuye al RPE, su naturaleza estocástica conduciría a un efecto neto cero en la solución si se utilizan suficientes imágenes y coordenadas de características.
Un objetivo de calibración impreso en una impresora láser normal podría fácilmente tener un sesgo porque el verificador no es cuadrado, etc. Este efecto contribuirá al RPE y muy probablemente sesgará la solución encontrada.
¿Qué nos dice el RPE?
Ahora que hemos definido claramente el error de reproyección y analizado sus fuentes, podemos entender qué significado real tiene.
En primer lugar, tenga en cuenta que las unidades de RPE son píxeles. Por lo tanto, con un sensor de cámara de mayor resolución y píxeles más pequeños, esperaríamos automáticamente un RPE más alto. Al multiplicar el RPE por el tamaño de píxel del sensor dado (normalmente unos pocos micrómetros), se obtiene una cantidad comparable que, mediante trigonometría, se puede utilizar para derivar el error equivalente a la distancia de trabajo.
Como tal, el RPE da una indicación de con qué precisión somos capaces de detectar características y con qué precisión proyectamos coordenadas 3D.
Sin embargo, el RPE de las imágenes de calibración utilizadas es un error de entrenamiento : fue el número más bajo alcanzado con los datos proporcionados. Como es habitual en estadística, corremos el riesgo de sobreajuste si nos centramos solo en el RPE. Por ejemplo, si utilizamos muy pocas imágenes de calibración, cubriendo solo una pequeña parte de la imagen y con muchos parámetros de calibración activos (modelo de cámara flexible), lo más probable es que logremos un RPE muy bajo. Un análisis más detallado de la estructura de covarianza nos permite estimar el error de prueba, que es mucho más propicio.
Con Calibrator , podemos analizar los errores de proyección y triangulación y, por lo tanto, cuantificar nuestra calibración con estadísticas que son mucho más significativas y comparables que el RPE, y nos dicen qué tan precisa podemos esperar que sea la configuración de la cámara dada en unidades del mundo real.