Solución económica para filmar con múltiples (>2) cámaras sincronizadas (¿genlock o LANC?)

Estoy investigando fenómenos naturales en la visión por computadora y estoy buscando un método para grabar videos desde múltiples ángulos de cámara. Es probable que el sujeto se mueva de forma muy errática, por lo que cualquier problema de sincronización entre las cámaras será un problema. Imagine una llama o agua que fluye, es difícil decir exactamente, pero tendrá que ser microsegundos en lugar de milisegundos. Querré usar hasta 8 cámaras, idealmente limitadas por el presupuesto en lugar de la capacidad de mantenerlas sincronizadas.

Las cámaras que posee el departamento son Canon DSLR, sin embargo, después de mucho buscar, parece inviable sincronizarlas, especialmente con este nivel de precisión. Por lo tanto, si puedo encontrar cámaras asequibles que se puedan sincronizar fácilmente, podríamos comprar algunas.

Las dos opciones disponibles para mí parecen ser genlock y LANC. Por lo que puedo decir, no voy a conseguir una sola cámara compatible con genlock por menos de, digamos, £ 5000. Incluso olvidando la señal genlock, eso es demasiado para que podamos pagar uno, y mucho menos 8. Lo de Sony/Canon LANC parece más factible, sin embargo, no puedo encontrar ninguna información confiable sobre cómo configurar esto o qué cámaras realmente lo admiten que están disponibles ahora. Sigo llegando a callejones sin salida tratando de investigar esto, y no ayuda que la mayoría de las personas que hacen esto intenten filmar solo en estéreo. ¿Alguien puede aconsejarme sobre qué configuración necesitaríamos y cuánto costaría aproximadamente? ¿O si hay alguna otra solución de sincronización que alguien quisiera recomendar? ¡La facilidad y el costo son los factores más importantes!

¡Gracias! Y espero que esto no suene como una pregunta de recomendación de compras. Si bien quiero ir de compras, realmente solo necesito ayuda para comprender las técnicas de sincronización, ¡y decidiré qué comprar después de eso!

Si te preocupa una diferencia de 8 milisegundos, ¿no crees que necesitas alquilar cámaras que disparen en ultra cámara lenta como 200 fps o más? El bloqueo GEN probablemente estaría incluido en esas cámaras.
Idealmente, me encantaría poder alquilar esas cosas, pero nuevamente el costo es prohibitivo. Nada a nivel de consumidor (que he encontrado) tiene genlock, incluso las cámaras de fps altos. E incluso los 'fps altos' todavía no son lo suficientemente altos como para proporcionar una sincronización similar a la de un genlock con solo una claqueta. Todavía me resulta muy difícil rastrear si una cámara tiene genlock o no, parece una cosa entendida por la industria, de la que soy completamente ajeno. De todos modos, gracias por responder a un hilo tan antiguo :).
Hice una pregunta similar en caso de que esté interesado: video.stackexchange.com/questions/12312/…

Respuestas (4)

Un año después de publicar esta pregunta, recibo algunos comentarios y respuestas adicionales, lo cual es realmente genial. Técnicamente sigue siendo un problema, pero permítanme compartir lo que aprendí en el último año, en caso de que alguien más tropiece en esta página con un problema similar.

Se nos ocurrieron dos soluciones económicas al problema que creo que funcionarán, en las condiciones adecuadas.

  1. Utilice una luz estroboscópica de alta velocidad. Esto solo funciona si el sujeto no emite luz (lamentablemente, no es mi caso) y se puede colocar en una habitación muy oscura. Obtenga una luz estroboscópica muy rápida y precisa, luego configúrela para que se apague a la misma frecuencia que las cámaras, digamos 50 fps / 50 hz. A continuación, ajuste la velocidad de obturación de todas las cámaras a 1/50 de segundo, es decir, el obturador siempre está abierto. Coloque el sujeto en una habitación muy oscura y configure la apertura de modo que el video se vea negro sin luz. Luego ilumine con la luz estroboscópica. Los videos se sincronizarán naturalmente, porque la única luz que reciben es la luz estroboscópica, y sucede una vez por cuadro. La dificultad es obtener una luz estroboscópica lo suficientemente precisa. Pero escuché que se usan en operaciones de fabricación pesada para inspeccionar cuchillas, ruedas, correas, etc., que no se pueden apagar. Encienda la herramienta solo con una luz estroboscópica que tenga un control analógico y aumente lentamente la velocidad de la luz estroboscópica y, a medida que alcance la frecuencia de la herramienta, parecerá que disminuye la velocidad y finalmente se detiene. Ahora puede inspeccionar en busca de problemas. No lo toques ;).
  2. Use la señal vsync en el video compuesto de las cámaras. Esto está inspirado en http://samj.snappages.com/ . Esta señal se envía regularmente en cada cuadro y, con algunos dispositivos electrónicos, puede medir la diferencia entre la señal en dos (o más) cámaras diferentes. Luego puede apagar y encender la cámara (o en algunas cámaras, tomar una foto. Más sobre eso más adelante...) y medirla nuevamente, y así sucesivamente. Si es inteligente con el tiempo en el ciclo de potencia, puede acercarlos más y más hasta un umbral. No terminamos intentando esto solo porque no terminamos construyendo el circuito, y pensamos que sería demasiado complicado trabajar con esto, especialmente con más de 2 cámaras.

Como dije, no terminamos haciendo ninguno de estos. Terminamos presentando una oferta de financiación para un sistema económico, diseñado exactamente para este propósito, de una empresa como NorPix. Estos se sincronizan a través de Ethernet y vienen configurados. Nunca pude averiguar cómo exactamente (protocolo, etc.) usan Ethernet para sincronizar, así que si alguien quiere explicarme, estaría muy interesado. La última vez que me informaron, me dijeron que sí encontramos algo de dinero, pero, por supuesto, si sabes algo sobre la burocracia académica, ¡no te sorprenderá saber que todavía estoy esperando el equipo!

Si alguien tiene una idea mágica que logre una verdadera sincronización de forma económica, todavía estoy abierto a sugerencias.

Para cerrar, mencionaré una estrategia que no funcionó, en mis pruebas. Y ese es el de este sitio web: http://3dfilmfactory.com/index.php?option=com_content&view=article&id=93:gen-lock-canon-5d-mark-ii-cameras-and-shoot-3d

De acuerdo, tenemos hardware diferente, Canon 60D, y disparadores de obturador inalámbricos sin marca muy baratos. Sin embargo, no tengo ninguna razón para pensar que causaron una diferencia notable en la configuración del enlace. Configuré pruebas usando un dispositivo LED, como sugirió Bokan en su respuesta, y la diferencia promedio en la sincronización solo se redujo en aproximadamente 1 ms después de usar el disparador inalámbrico en comparación con las pruebas de control, y algunas veces empeoró las cosas. No hice ningún análisis estadístico, pero sospecho que no sería significativo en comparación con el azar. Creo que es muy probable que 3D Film Factory no estuviera filmando material en el que notarían el problema de sincronización, o que su hardware más caro dio un resultado un poco más confiable que aún no es tan diferente. Escalando a más de 2 cámaras, yo'

Sin embargo , usar el disparador remoto reinicia el video. Si usa el botón 'grabar' en las cámaras (o un control remoto), simplemente comienza a guardar el metraje que ya se está procesando. En otras palabras, si mide la sincronización en varias pruebas diferentes sin apagar la cámara, tomar una foto o dejar que entre en modo de ahorro de energía, entonces la sincronización será la misma. Podría incorporar este mecanismo en el enfoque número (2) anterior: en lugar de apagar y encender las cámaras, podría tomar fotografías hasta que las señales vsync estuvieran en línea. Sería un dispositivo genial, simplemente nunca llegamos a construirlo.

Gracias de nuevo por cualquier sugerencia. ¡Espero que algún día alguien encuentre esto útil, y los meses que desperdicié tratando de resolverlo le ahorrarán un poco de tiempo a alguien!

Este tipo parece hacer un truco HW con vsync para sincronizar un video compuesto: letsmakerobots.com/node/29869

He hecho tomas DSLR de 4 cámaras con equipo Nikon (D7000 y D3S). Para nuestras tomas, simplemente hicimos un clapstick después de que todas las cámaras rodaran Y justo antes de cortar, por lo que teníamos dos puntos de sincronización. Nuestro tiro más largo duró unos 18 minutos y no hubo una desviación notable en la sincronización en nuestro sistema de publicación. Aunque genlock es la forma PREFERIDA de hacerlo, descubrí que una gran cantidad de equipos digitales están ~lo suficientemente cerca~ (diablos, grabé un video musical con la reproducción de un estéreo portátil de CD y una cámara de velocidad constante (no controlada por cristal) motor y fue SPOT ON.

Para algo que dura menos de un minuto, como suena su proyecto, estoy bastante seguro de que no tendrá que preocuparse por la sincronización.

Simplemente tome una tablilla, asegúrese de que todas las cámaras puedan verla claramente y que ESTÉN FUNCIONANDO, luego aplauda. Sin cortar, simplemente cambie la posición de su enfoque y distancia focal donde lo necesite para la toma. Capture la toma, luego, nuevamente sin cortar, vuelva a alejar el zoom hasta donde las ocho cámaras puedan ver el clapstick y aplauda. ENTONCES puedes cortar tus cámaras. Sincroniza los cuadros donde golpea la claqueta en los 8 disparos, e viola.

¡Buena suerte!

El problema no es la deriva, sino las diferencias de milisegundos entre las cámaras que ocurren al inicio. por ejemplo, incluso suponiendo que estoy filmando ambas cámaras a 60 fps, eso significa que hay ~16 ms entre "disparos" en el video. En el peor de los casos, dos cámaras podrían estar a 8 ms y esto sería totalmente incorregible en la publicación, solo es posible mover un cuadro "hacia la izquierda o hacia la derecha" sin interpolar/simular un fps más alto, y un cuadro es un movimiento de 16 ms, por lo que pasas de estar 8ms por detrás a 8ms por delante. Para muchos sujetos, esto probablemente no sea un problema, ¡pero desafortunadamente no son llamas parpadeantes! Gracias de cualquier manera.

Si su investigación implica algún análisis de movimiento, debería considerar disparar a FPS altos. Obtendrá una mejor sincronización de forma predeterminada, ya que el error de sincronización no puede exceder el intervalo de tiempo entre dos fotogramas.

Disparar a una alta velocidad de fotogramas en alta resolución cuesta mucho, pero puedes cambiar la resolución por FPS en cámaras baratas (como las cámaras deportivas). La resolución es a menudo menos importante de lo que pensamos. La visión por computadora tiene una precisión de subpíxeles, si mueve un objeto blanco sobre un fondo negro, el borde tendrá un alias (gris). Si su software tiene en cuenta estos tonos grises, teóricamente puede obtener una precisión de 1/256 píxeles de ancho. Pero para que esto funcione, debe tener datos sin comprimir porque la compresión cuantifica el color y, por lo tanto, cambia la información.

Para una solución de sincronización barata, puedo pensar en esto:

  • conectar todos los botones de inicio juntos eléctricamente
  • construya un pequeño dispositivo LED con varios LED que muestren la hora precisa en binario (un LED por bit), muestre este dispositivo a cada cámara y luego sincronice manualmente las tomas. Tipo de aplauso avanzado.

La diferencia de sincronización podría manejarse en el lado del software. Si está estudiando el movimiento, puede analizarlo en 2D para cada cámara, luego interpolar los resultados de una cámara para adivinar cuál era la posición en el momento en que la otra cámara tomó la fotografía. Pregunte si esto no está claro para usted.

Esta compensación de software es definitivamente el camino a seguir. Especialmente si tienes que compensar también el efecto de obturador que tienen la mayoría de las cámaras. La parte superior del encuadre se toma ligeramente antes de la parte inferior del encuadre.

Una velocidad de cuadros alta es definitivamente preferible, la resolución no es un gran problema en absoluto (aunque muchas cámaras de baja resolución y alta velocidad de cuadros también tienden a tener una calidad de imagen terrible). Pero investigadores anteriores (en cuyo trabajo estoy trabajando) me dijeron que la sincronización por cable es necesaria para su sistema. Para emular eso solo con una alta velocidad de cuadros, necesitaría más de 1000 FPS. Tal vez podría salirme con la mía con menos, pero realmente publiqué la pregunta debido a la falta de comprensión de los métodos de sincronización de hardware. Ya tenemos un dispositivo LED como sugieres. Pero gracias por la respuesta!
Recuerda que tomar una foto se trata solo de capturar la luz. Necesita tanta luz como sea posible para obtener un tiempo de obturación más rápido e imágenes nítidas.
Correcto, y es por eso que las cámaras de baja resolución tienden a tener una calidad terrible también a altas velocidades de cuadro. ¡Aunque filmar fuego significa que obtienes mucha luz! Investigamos la compensación de software, y eso crea más dolores de cabeza de los que resuelve en este caso. Estoy buscando 'verdad básica', estos se usarán para reconstrucciones y los artefactos de movimiento causarán problemas masivos, incluso ignorando el hecho de que socavaría la afirmación de que provienen de datos reales. Además, la investigación realizada en llamas en particular ha demostrado que es casi imposible interpolar fotogramas.

Creo que la solución es bastante simple, sostenga un cronómetro grande frente a dos cámaras durante los primeros segundos; durante la edición se puede sincronizar fácilmente. Utilicé este método, funcionando bien.

Esta no es una solución. La solución correcta es adquirir cámaras que admitan GENLOCK. GENLOCK asegura que los obturadores de ambas cámaras estén sincronizados. Simplemente no existe otro mecanismo que pueda garantizar la coherencia de la sincronización en función de cualquier intento de iniciar las cámaras al mismo tiempo.
@MichaelTiemann es correcto. Como señalé anteriormente, el problema era no alinear el video durante la edición, de hecho, una sola descarga de flash es mucho más simple (ya que estábamos filmando en la oscuridad). El problema era sincronizar la captura real de los propios fotogramas. Como creo que también comenté, la solución que terminamos usando fue comprar cámaras que tuvieran la sincronización adecuada (no sé si era GENLOCK o no, venían de una compañía de cámaras científicas y funcionaban a través de ethernet). ¡También esto fue todo hace 5 años! Pero aprecio que esta pregunta todavía reciba comentarios de vez en cuando...