IIC3912 - Tópicos Avanzados de Gráfica Computacional

Francisca T. Gil-Ureta ⋅ 2026

cover.png


En la primera clase de este módulo vimos un overview del pipeline completo. Hoy veremos la primera etapa (SfM) en más detalles.

Nuestro input son imágenes RGB, sin GPS ni pose, y nuestro output es un conjunto de poses de las cámaras y una nube de puntos liguera (sparse)

slide_08_pipeline_annotated.png


Búsqueda de Correspondencias

Extracción de Features

La entrada es un conjunto de imágenes $I = \{I_i\}$. Para cada una, el detector produce un conjunto de features locales $F_i = \{(x_j, f_j)\}$ .

El requisito clave para las features es la invarianza*:* la misma zona del mundo debe producir descriptores similares independiente de la escala, rotación o iluminación.

image.png

<aside> 🍎

Los descriptores SIFT (Scale-Invariant Feature Transform) y sus derivados son el estándar, pero features aprendidas (ML) compiten en calidad.

</aside>


Feature Matching

El matching compara descriptores entre pares de imágenes: para cada feature en la imagen $I_a$, busca el feature más similar en la imagen $I_b$.

La salida es un conjunto de pares $C = \{\{I_a, I_b\}\}$ con sus correspondencias $M_{ab}$ — pero esas correspondencias son solo por apariencia: no hay garantía de corrección geométrica.

<aside> 🍎

El enfoque naïve compara todos los features de A con B y tiene complejidad cuadrática en el numero de features — prohibitiva para colecciones grandes. Sistemas reales usan métodos de Vecinos Cercanos Aproximados (Approximate Nearest Neighbor; ANN) cómo KD-trees, o indices basados en hashing.

</aside>

image.png