¿Cómo se relaciona el algoritmo RANSAC con la visión por computadora?

Tome el ejemplo de tratar de calcular una homografía (mapeo) entre dos imágenes. Se extraen varios cientos de puntos clave de cada imagen y el objetivo es unirlos y calcular la transformación que minimiza el error de reproyección después de proyectar puntos de una imagen a otra según la transformación. Sin embargo, al hacer coincidir puntos en una imagen con otra, puede haber valores atípicos (coincidencias incorrectas) que corromperán la estimación de la homografía.

Aquí es donde entra RANSAC. Elija un subconjunto de los puntos de una imagen, haga coincidir estos con la otra imagen y calcule la transformación que minimiza el error de reproyección. Elija otro subconjunto de puntos, combínelos y calcule otra homografía. Enjuague y repita un par de veces usando un subconjunto diferente de puntos clave cada vez. Luego seleccione la homografía que tenga el mínimo error de reproyección.

Este video me pareció útil para comprender el algoritmo RANSAC.

En realidad, lo que está haciendo es encontrar la transformación de los diversos puntos que comparan los dos cuadros. Los puntos se eligen al azar o en función de un conjunto de características definidas, y se corresponden en el segundo cuadro. Si su coincidencia es correcta para el punto, los puntos se unen para formar una matriz de homografía. Los puntos que no coinciden actúan como valores atípicos.

Puede que esto no sea “Visión por computadora”, pero RANSAC puede usarse para calcular la homografía entre dos imágenes mediante el uso de dos conjuntos de puntos SIFT. Esto significa que si tiene una imagen de referencia y se le presenta una segunda imagen, puede probar si la imagen de referencia está contenida dentro de la segunda imagen Y puede calcular la transformación.

Función Matching + Homography para encontrar objetos

More Interesting

¿Cómo se recupera la información de las cajas negras?

Hay muchas distribuciones de probabilidad presentes en las estadísticas, ¿cómo debería uno usarlas? En general, veo personas que usan distribución gaussiana en algoritmos de aprendizaje automático.

Visión por computadora: ¿cómo es la detección de objetos usando los puntos clave SIFT escala / rotacionalmente invariante?

¿Qué quieres decir con aprendizaje profundo?

Quiero pasar el tiempo dado para el proyecto del último año para aprender ML. ¿Cómo empiezo?

¿Qué sucede cuando las computadoras aprenden a componer música mejor que los humanos?

¿Cómo estimar la divergencia KL si no se conoce el posterior? En inferencia variacional, KL se utiliza para encontrar una distribución que se aproxime al verdadero posterior, pero el KL requiere conocer el posterior mismo. ¿Cómo se trata esto?

Cómo interpretar los resultados de dos modelos de clasificación.

¿Cuál es el algoritmo de aprendizaje automático más rápido para implementar para la detección de fraudes?

¿Por qué el aprendizaje por refuerzo no era popular antes de que el aprendizaje profundo apareciera en escena?

¿Cómo debe un principiante en Machine Learning enfocar una declaración de problema?

¿Puede word2vec considerarse aprendizaje profundo?

¿Qué algoritmos / tecnologías se usaron para hacer Siri?

¿Qué idioma debo usar para tensorflow?

¿Qué métodos de aprendizaje automático simples e intuitivos ofrecen el mayor valor?