optical_flow_farneback
SKILL.md
optical_flow_farneback
El flujo óptico de Farnebäck calcula el movimiento entre frames consecutivos. Los videos en loop o reproducidos tienen patrones de movimiento no naturales detectables con este análisis.
When to use
Usar sobre la secuencia de frames del video de liveness para detectar ataques de replay y videos pregrabados.
Instructions
- Capturar mínimo 10 frames consecutivos del video de liveness.
- Convertir a escala de grises.
- Calcular flujo óptico entre pares de frames:
flow = cv2.calcOpticalFlowFarneback(prev_gray, curr_gray, None, 0.5, 3, 15, 3, 5, 1.2, 0). - Calcular magnitud y ángulo del flujo:
magnitude, angle = cv2.cartToPolar(flow[..., 0], flow[..., 1]). - Analizar estadísticas de magnitud: desviación estándar muy baja indica movimiento artificial.
- Detectar loops: comparar el flujo acumulado entre frame 0 y frame N — si converge a 0, hay loop.
- Analizar consistencia temporal: el movimiento natural tiene varianza creciente, no periódica.
Notes
- Combinar con rPPG (Remote Photoplethysmography) para detección de vida aún más robusta.
- Sensible a iluminación variable; normalizar antes del análisis.
Weekly Installs
1
Repository
davidcastagnetoa/skillsFirst Seen
13 days ago
Installed on
mcpjam1
claude-code1
replit1
junie1
windsurf1
zencoder1