Crear videos estéreo sincronizados usando cámaras web

Estoy usando OpenCV para capturar transmisiones de video de dos cámaras web USB (Microsoft LifeCam Studio) en Ubuntu 14.04. Estoy usando un código de VideoCapture muy simple (fuente aquí) y estoy tratando de ver al menos dos videos sincronizados entre sí.

Usé aplicaciones de cronómetro de Android (UltraChron Stopwatch Lite yCronómetro) en mi Samsung Galaxy S3 mini para darme cuenta de que mis imágenes vistas no están sincronizadas (mostrar diferentes horas en el cronómetro).

Los cuadros se sincronizan tal vez en el 50% del tiempo. Las diferencias de tiempo de fotogramas que obtengo son de 0 a aproximadamente 300 ms con un promedio de aproximadamente 120 ms. Parece que la cantidad de tiempo de espera utilizado tiene muy poco efecto en la sincronización (lo mismo para 1000ms o 2000ms). Traté de minimizar el tiempo de espera (waitKey (1) para que el bucle OpenCV funcione) y leí cada X iteración del bucle; esto dio peores resultados que waitKey (1000). Corro en FullHD pero bajar la resolución a 640x480 no tuvo ningún efecto.

Un resultado ideal sería una transmisión de video estéreo 100% sincronizado que tenga X FPS. Como dije, hasta ahora uso OpenCV para ver imágenes fijas de video, pero no me importa usar nada más para obtener el resultado deseado (también puede estar en Windows).

¡Gracias por la ayuda de antemano!

EDITAR: En mi búsqueda de hardware de bajo costo, me doy cuenta de que probablemente sea posible realizar alguna piratería de hardware básico (enlace aquí) e inyecte una sola señal de reloj en múltiples módulos de cámara simultáneamente para obtener la sincronización deseada. El tipo que hizo eso parece haber desarrollado suPlaca de cámara GENLOCKed (llamada NerdCam1) e incluso unplaca de cámara estéreo sincronizada que ahora vende por unos 200 €.

Sin embargo, tengo casi cero capacidad de piratería de hardware. Además, no estoy seguro de si tal inyección de reloj es posible para resoluciones superiores al estándar NTSC / PAL (ya que parece ser una solución "analógica"). Además, preferiría una opción de línea de base variable donde ambas cámaras no se soldarían en una sola placa.

Respuestas a la pregunta(1)

Su respuesta a la pregunta