Flujo óptico
Técnica que representa el movimiento aparente de cada píxel entre fotogramas consecutivos como un campo vectorial. Tecnología fundamental para el análisis de vídeo, la detección de movimiento y la estabilización de imagen.
El flujo óptico estima el vector de movimiento 2D de cada píxel entre dos o más imágenes temporalmente consecutivas, capturando cómo se mueven los objetos y la cámara dentro de una escena. Es un componente fundamental del análisis de vídeo, proporcionando información de movimiento por píxel o por característica que los algoritmos posteriores utilizan para seguimiento, segmentación y predicción.
El cálculo del flujo óptico se basa en la suposición de constancia de brillo: la intensidad de un píxel no cambia entre fotogramas en intervalos de tiempo cortos. Esta suposición produce la ecuación de restricción del flujo óptico Ix*u + Iy*v + It = 0, donde Ix, Iy son gradientes espaciales, It es el gradiente temporal, y (u, v) es el vector de flujo a estimar.
| Método | Cómo funciona | Flujo obtenido e implementación |
|---|---|---|
| Lucas-Kanade | Supone flujo uniforme dentro de una ventana local y lo resuelve por mínimos cuadrados | Flujo disperso en los puntos característicos rastreados. cv2.calcOpticalFlowPyrLK() |
| Farneback | Aproxima la vecindad de cada píxel con un polinomio cuadrático | Campo de flujo denso que cubre cada píxel. cv2.calcOpticalFlowFarneback() |
| Aprendizaje profundo | Modelos CNN y Transformer como FlowNet, PWC-Net y RAFT. RAFT refina el flujo de forma iterativa con un volumen de correlación | Claramente más preciso que los métodos clásicos, vanguardia en Sintel y KITTI |
Flujo disperso
Flujo denso
Las aplicaciones abarcan detección de movimiento (combinada con sustracción de fondo), estabilización de vídeo (compensación de vibración de cámara), interpolación de fotogramas (generación de fotogramas intermedios para cámara lenta), reconocimiento de acciones y conducción autónoma (estimación del movimiento circundante). El despliegue en tiempo real aprovecha implementaciones en GPU y arquitecturas ligeras optimizadas para velocidad de inferencia.