opencv geometry computer-vision homography

opencv - ¿Cómo se puede saber si una matriz de homografía es aceptable o no?



geometry computer-vision (1)

La mejor manera de saber si la homografía es aceptable es.

1- Toma los puntos de una imagen y reproyecta usando la homografía computada.

//for one 3D point, this would be the projection px'' = H * px; py'' = H * py; pz'' = H * pz;

2- Calcula la distancia euclidiana entre los puntos reproyectados y los puntos reales en la imagen.

Error de reproyección para un punto. p es el punto proyectado yq es el punto real.

3- Establezca un umbral que decida si el error de reproyección es aceptable.

Por ejemplo, un error de más de un píxel no sería aceptable para muchas aplicaciones de seguimiento.

Al utilizar la función findHomography de OpenCV para estimar una homografía entre dos conjuntos de puntos, a partir de diferentes imágenes, algunas veces obtendrá una mala homografía debido a valores atípicos dentro de sus puntos de entrada, incluso si usa RANSAC o LMEDS.

// opencv java example: Mat H = Calib3d.findHomography( src_points, dst_points, Calib3d.RANSAC, 10 );

¿Cómo se puede saber si la matriz de homografía 3x3 resultante es aceptable o no?

He buscado una respuesta aquí en Stackoverflow y en Google y no pude encontrarla.

Encontré este artículo, pero es un poco críptico para mí:

"El error geométrico para homografías"