Solución barata para disparar con varias (> 2) cámaras sincronizadas (¿genlock o LANC?)

10

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 muy erráticamente, por lo tanto, cualquier problema de sincronización entre las cámaras será un problema. Imagine una llama o agua que fluye, es difícil de 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 cámaras réflex digitales de Canon, sin embargo, después de muchas búsquedas, parece imposible sincronizarlas, especialmente con este nivel de precisión. Por lo tanto, si puedo encontrar cámaras asequibles que puedan sincronizarse 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 con capacidad genlock por menos de £ 5000. Incluso olvidando la señal genlock, eso es demasiado para que podamos pagar una, 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 configurarlo o qué cámaras son realmente compatibles, que están disponibles ahora. Sigo golpeando callejones sin salida tratando de investigar esto, y no ayuda que la mayoría de los que lo hacen estén tratando de disparar 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 necesito ayuda para comprender las técnicas de sincronización, ¡y averiguaré qué comprar después de eso!

Andrew Chinery
fuente
Si le preocupa una diferencia de 8 milisegundos, ¿no cree que necesita alquilar cámaras que disparan en ultra slomo como 200 fps +? El bloqueo GEN probablemente se incluiría en esas cámaras.
Idealmente, me encantaría poder alquilar tales cosas, pero nuevamente el costo es prohibitivo. Nada de nivel de consumidor (que he encontrado) tiene genlock, incluso las cámaras de alta resolución. E incluso 'high fps' aún no es lo suficientemente alto como para proporcionar una sincronización de tipo genlock con solo una claqueta. Todavía me resulta muy difícil incluso rastrear si una cámara tiene genlock o no, parece una cosa entendida por la industria, algo de lo que estoy completamente ajeno. De todos modos, gracias por responder a un hilo tan viejo :).
Andrew Chinery
Hice una pregunta similar en caso de que esté interesado: video.stackexchange.com/questions/12312/…
Kozuch

Respuestas:

5

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 para el problema que creo que funcionarán, en las condiciones adecuadas.

  1. Use una luz estroboscópica de alta velocidad. Esto solo funciona si el sujeto no emite luz (desafortunadamente no es el caso para mí) 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. Luego 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 ajuste la apertura de modo que el video se vea negro sin la luz. Luego ilumina con la luz estroboscópica. Los videos se sincronizarán naturalmente, porque la única luz que obtienen es del estroboscopio, y ocurre una vez por cuadro. La dificultad es obtener una luz estroboscópica lo suficientemente precisa. Pero escuché que se usan en operaciones pesadas de fabricación para inspeccionar cuchillas / ruedas / correas, etc., que no se pueden apagar. Enciende la herramienta solo con una luz estroboscópica que tiene control analógico, y aumenta lentamente la velocidad de la luz estroboscópica, y cuando alcanza la frecuencia de la herramienta, parecerá que se ralentiza y finalmente se detiene. Ahora puedes inspeccionar los problemas. Simplemente 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 encender y apagar la cámara (o en algunas cámaras, tomar una foto. Más sobre eso más tarde ...) y medirla nuevamente, y así sucesivamente. Si es inteligente con el tiempo en el ciclo de energía, puede acercarlos cada vez más a un umbral. No terminamos intentando esto solo porque no terminamos construyendo el circuito, y pensamos que sería demasiado complicado trabajar con él, especialmente con más de 2 cámaras.

Como dije, no terminamos haciendo ninguno de estos. Terminamos haciendo una oferta de financiación para un sistema no económico, uno diseñado para este propósito exacto, de una compañía como NorPix. Estos se sincronizan a través de Ethernet y se configuran. Nunca pude averiguar exactamente cómo (protocolo, etc.) usan Ethernet para sincronizarse, así que si alguien quiere explicar eso, me interesaría mucho. La última vez que me actualizaron, me dijeron que habíamos encontrado algo de dinero, pero, por supuesto, si sabes algo sobre burocracia académica, ¡no te sorprenderás al descubrir que todavía estoy esperando el equipo!

Si alguien tiene una idea mágica que logra una verdadera sincronización a bajo costo, todavía estoy abierto a sugerencias.

Para cerrar, mencionaré una estrategia que no funcionó en mis pruebas. Y ese es el que está en 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 60Ds, y teníamos obturadores inalámbricos muy baratos fuera de marca. Sin embargo, no tengo ninguna razón para pensar que causaron alguna 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 disminuyó aproximadamente 1 ms después de usar el disparador inalámbrico en comparación con las pruebas de control, y a 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 su hardware más costoso dio un resultado un poco más confiable que todavía no es medible tan diferente. Escalando a más de 2 cámaras, yo '

Sin embargo, utilizando el disparador remoto hace restablecer 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 dejarla entrar en modo de ahorro de energía, entonces la sincronización será la misma. Podría incorporar este mecanismo al número de enfoque (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 pudimos construirlo.

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

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

Hice tomas DSLR de 4 cámaras con equipo Nikon (D7000 y D3S). Para nuestras tomas, simplemente hicimos una palmada después de que todas las cámaras rodaron Y justo antes de cortar, así que tuvimos dos puntos de sincronización. Nuestro disparo más largo fue de aproximadamente 18 minutos, y no hubo una deriva notable en sincronización en nuestro sistema posterior. Aunque genlock es el camino PREFERIDO, descubrí que muchos equipos digitales están ~ lo suficientemente cerca ~ (diablos, grabé un video musical con reproducción desde un boombox de CD y una cámara de velocidad constante (no controlada por cristal) motor y estaba ENCENDIDO.

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

Simplemente obtenga una tablilla, asegúrese de que todas las cámaras puedan verla claramente y ESTÁN EN FUNCIONAMIENTO, luego aplauda. Sin cortar, jsut reposicione su enfoque y distancia focal donde lo necesite para la toma. Capture la toma, luego, nuevamente sin cortar, aleje el zoom hacia donde las ocho cámaras pueden ver el clapstick y aplauda. ENTONCES puedes cortar tus cámaras. Sincronice los cuadros donde el clapstick golpea en las 8 tomas, e viola.

¡Buena suerte!

dwwilson66
fuente
2
El problema no es deriva, sino 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 "tomas" en el video. En el peor de los casos, dos cámaras podrían estar a 8 ms y esto sería totalmente irrecuperable en la publicación, solo es posible mover un cuadro "izquierda o derecha" sin interpolar / falsificar un fps más alto, y un cuadro es un movimiento de 16 ms, por lo que pasas de estar 8ms detrás a 8ms delante. Para muchas asignaturas esto probablemente no sea un problema, ¡pero desafortunadamente no son llamas parpadeantes! Gracias de cualquier manera.
Andrew Chinery
1

Si su investigación involucra algún análisis de movimiento, debería considerar disparar a FPS alto. Obtendrá una mejor sincronización por defecto ya que el error de sincronización no puede exceder el espacio de tiempo entre dos cuadros.

Disparar a una velocidad de fotogramas alta en alta resolución cuesta mucho, pero puede 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íxel; si mueve un objeto blanco sobre un fondo negro, el borde tendrá un alias (gris). Si su software tiene en cuenta estos tonos grises, en teoría puede obtener una precisión de 1/256 de ancho de píxel. 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:

  • enlace todos los botones de inicio juntos eléctricamente
  • construya un pequeño dispositivo led con varios leds que muestren el tiempo exacto 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 la tomó. Pregunte si esto no está claro para usted.

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

bokan
fuente
Definitivamente es preferible una alta velocidad de fotogramas, la resolución no es un gran problema (aunque muchas cámaras de baja resolución de alta velocidad de fotogramas también tienden a tener una calidad de imagen terrible). Pero los investigadores anteriores (cuyo trabajo estoy trabajando) me dijeron que la sincronización de cables es necesaria para su sistema. Para emular eso solo con una alta velocidad de fotogramas, necesitaría más de 1000 FPS. Tal vez podría salir con menos, pero realmente publiqué la pregunta por falta de comprensión de los métodos de sincronización de hardware. Ya tenemos un dispositivo LED como usted sugiere. Pero gracias por la respuesta!
Andrew Chinery
Recuerde que tomar una foto solo se trata 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.
bokan
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 grabar en video sí 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 la "verdad fundamental", estos se utilizarán para reconstrucciones y los artefactos de movimiento causarán problemas masivos, incluso ignorando el hecho de que socavaría la afirmación de ser de datos reales. Además, la investigación realizada en llamas en particular ha demostrado que es casi imposible interpolar marcos.
Andrew Chinery
-1

Creo que la solución es bastante simple, mantenga el cronómetro grande frente a dos cámaras durante los primeros segundos; durante la edición se puede sincronizar fácilmente. Usé estos métodos, trabajando bien.

tapas roy
fuente
1
Esta no es una solución. La solución correcta es adquirir cámaras compatibles con GENLOCK. GENLOCK asegura que los obturadores de ambas cámaras estén sincronizados. Simplemente no hay otro mecanismo que el que pueda garantizar una coherencia de sincronización basada en cualquier intento de iniciar las cámaras al mismo tiempo.
Michael Tiemann
@MichaelTiemann es correcto. Como he señalado anteriormente, el problema no era alinear el video durante la edición, de hecho, una sola descarga flash es mucho más simple (ya que estábamos filmando en la oscuridad). El problema era sincronizar la captura real de los cuadros en sí. Como creo que también comenté que la solución que utilizamos fue comprar cámaras que tenían una sincronización adecuada (no sé si era GENLOCK o de lo contrario, provenían de una compañía científica de cámaras y funcionaban a través de Ethernet). También esto fue todo hace 5 años! Pero aprecio esta pregunta todavía de vez en cuando recibe comentarios ...
Andrew Chinery