InicioIA y Aprendizaje AutomaticoPrediccion Inmediata del Tiempo — Flujo Optico en Vivo

🌦️ Prediccion Inmediata del Tiempo — Flujo Optico en Vivo

Sigue un campo de precipitacion simulado hacia adelante en el tiempo usando estimacion real de movimiento por flujo optico entre fotogramas sucesivos tipo radar, extrapolando el movimiento de lluvia a corto plazo.

IA y Aprendizaje Automatico3DAvanzado60 FPS
ai-weather-nowcasting ↗ Abrir independiente

About this simulation

This simulation runs a real optical-flow pipeline on a synthetic precipitation field: a cluster of drifting, breathing Gaussian "rain cells" rendered as a radar-like intensity grid. Between every pair of consecutive frames, a genuine Lucas-Kanade solve builds real spatial gradients (Ix, Iy) and a temporal gradient (It) for each estimation window, then solves the 2×2 least-squares normal equations for that window's motion vector — exactly the algorithm used in classical computer-vision motion tracking. The resulting flow field is then used to semi-Lagrangian advect the current frame forward by a chosen horizon, producing a short-term rainfall nowcast that is compared, cell by cell, against the true future field.

🔬 Que muestra

Tres mapas de calor sincronizados: el campo de precipitacion en vivo con las flechas de vector de movimiento estimadas superpuestas bloque por bloque, la prediccion extrapolada tras el horizonte elegido, y el campo futuro real que la tormenta realmente alcanza. Un grafico continuo sigue el RMSE de la prediccion frente a una base ingenua de persistencia (asumir que nada cambia) para que puedas ver exactamente cuanta habilidad real de prediccion anade el flujo estimado.

🎮 Como usarlo

Ajusta los controles de velocidad y direccion real de la tormenta — estos impulsan la simulacion subyacente, no las flechas visibles. Ajusta el tamano de la ventana de estimacion de Lucas-Kanade (mayor = estimaciones de movimiento mas suaves pero mas borrosas) y el horizonte de prediccion (cuantos fotogramas hacia adelante extrapolar). Reproduce o avanza paso a paso la simulacion y observa como se actualizan en vivo el flujo estimado, el RMSE de la prediccion y la puntuacion de habilidad frente a persistencia. Reiniciar genera una tormenta nueva con posiciones de celdas de lluvia nuevas y variacion de deriva independiente.

💡 Sabias que...?

Los sistemas operativos de prediccion inmediata de precipitacion, como NIMROD del servicio meteorologico del Reino Unido y muchas herramientas basadas en radar, usan extrapolacion tipo flujo optico para tiempos de anticipo de hasta unas dos horas, porque un modelo meteorologico numerico completo es demasiado lento para volver a ejecutarse cada pocos minutos. Mas alla de ese horizonte, la habilidad se derrumba frente a la persistencia — precisamente el crecimiento del RMSE que puedes ver ocurrir en tiempo real al subir el control del horizonte en esta simulacion.

Frequently asked questions

Que es el flujo optico y como lo calcula esta simulacion?

El flujo optico es el campo de movimiento 2D aparente entre dos imagenes tomadas con poco tiempo de diferencia. Esta simulacion usa el metodo clasico de Lucas-Kanade: para cada pequena ventana de la cuadricula de precipitacion calcula gradientes espaciales reales Ix e Iy (diferencias centrales de intensidad en x e y) y el gradiente temporal It (el cambio de intensidad entre el fotograma anterior y el actual), y luego resuelve el sistema de ecuaciones normales por minimos cuadrados 2×2 Σ[Ix²,IxIy;IxIy,Iy²]·[u,v] = −Σ[IxIt,IyIt] para la velocidad (u,v) de esa ventana. Nada esta guionizado — las flechas que ves son la salida literal de esa resolucion lineal ejecutada sobre los datos reales del fotograma.

How is the future "nowcast" field generated from the flow?

Una vez estimado el campo de velocidad por ventana, la simulacion realiza adveccion semi-lagrangiana: para cada celda del fotograma actual traza hacia atras a lo largo del vector de flujo local y muestrea bilinealmente la intensidad en esa ubicacion previa, produciendo el campo un fotograma despues. Repetir este paso de trazado y muestreo para el horizonte elegido extrapola el campo de precipitacion hacia adelante bajo el supuesto de flujo congelado — exactamente la tecnica que usan los sistemas operativos de prediccion por radar para tiempos de anticipo de unas pocas decenas de minutos, donde entrenar un modelo meteorologico numerico completo seria demasiado lento.

Por que la prediccion se aleja de la realidad a medida que crece el horizonte?

Dos fuentes de error distintas se combinan con la longitud del horizonte. Primero, la propia estimacion de flujo optico se mide solo a partir de un unico par de fotogramas, por lo que capta el movimiento de la tormenta en un instante, no su evolucion futura completa. Segundo, la tormenta subyacente no es un patron rigido que se traslada uniformemente — cada celda de lluvia simulada deriva a su propio ritmo ligeramente distinto y su intensidad y radio varian con el tiempo, de modo que un campo de velocidad congelado se desajusta cada vez mas de el movimiento real cuanto mas lejos se extrapola. Ambos efectos son limitaciones reales de la prediccion por flujo optico, no artefactos de la simulacion.

What does the RMSE and "skill vs persistence" stat mean?

RMSE (root-mean-square error) is computed cell by cell between the nowcast field and the true future field, so smaller is better. Persistence — simply assuming the field does not change at all over the horizon — is the standard naive baseline in nowcasting research. "Skill vs persistence" reports the percentage RMSE reduction of the optical-flow nowcast relative to that persistence baseline; a positive number means the estimated motion field is adding real forecasting value beyond doing nothing, which is the bar every operational nowcasting system has to clear.

Que cambian los controles de tamano de ventana de estimacion y horizonte?

La ventana de estimacion fija el tamano de cada bloque de Lucas-Kanade: ventanas mas pequenas resuelven movimiento mas fino pero tienen menos muestras de gradiente para promediar, haciendo la resolucion 2×2 mas ruidosa en regiones suaves de poca textura (el clasico problema de apertura); ventanas mas grandes son mas estables pero mezclan movimientos distintos dentro del bloque. El horizonte fija cuantos fotogramas hacia adelante se usa el campo de flujo congelado para advectar el fotograma actual — los horizontes cortos suelen ser precisos, mientras que los horizontes largos exponen los limites del supuesto de flujo congelado y tipicamente elevan el RMSE respecto a la base de persistencia.

Es esta una implementacion real de flujo optico o una aproximacion visual?

Es una implementacion genuina. Los gradientes Ix, Iy e It se calculan directamente a partir de la cuadricula de intensidad renderizada, el sistema de ecuaciones normales 2×2 se resuelve de forma exacta (con una salvaguarda de determinante para bloques casi singulares de poca textura), y el campo vectorial resultante es lo que realmente impulsa la adveccion semi-lagrangiana usada para la prediccion — el mismo proceso de tres etapas (gradientes, resolucion por minimos cuadrados, adveccion) que usan los sistemas reales de prediccion basados en Lucas-Kanade y de estimacion de movimiento en video, simplificado a un campo escalar 2D en lugar de video RGB.

⚙ Bajo el capo

Una resolucion real de flujo optico Lucas-Kanade estima el movimiento entre fotogramas sucesivos de precipitacion a partir de gradientes Ix/Iy/It reales, y luego la adveccion semi-lagrangiana usa ese flujo para extrapolar una prediccion — evaluada en vivo frente a la realidad y una base de persistencia mediante RMSE.

Canvas 2DOptical FlowLucas-KanadeNowcastingAdvection

3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)