Tanie rozwiązanie do robienia zdjęć z użyciem wielu (> 2) kamer w synchronizacji (genlock czy LANC?)

10

Prowadzę badania nad zjawiskami naturalnymi w wizji komputerowej i szukam metody kręcenia wideo z różnych ujęć kamery. Prawdopodobnie obiekt porusza się bardzo nieregularnie, dlatego wszelkie problemy z synchronizacją między aparatami będą stanowić problem. Wyobraź sobie płomień lub płynącą wodę, trudno powiedzieć dokładnie, ale będzie to raczej mikrosekund niż milisekund. Będę chciał użyć aż 8 kamer, idealnie ograniczonych budżetem, a nie możliwością ich synchronizacji.

Aparaty, do których należy ten dział, to lustrzanki Canon, jednak po wielu poszukiwaniach synchronizacja ich, szczególnie z tym poziomem dokładności, wydaje się niemożliwa. Dlatego jeśli uda mi się znaleźć niedrogie aparaty, które można łatwo zsynchronizować, możemy być w stanie je kupić.

Wydaje mi się, że dwie dostępne opcje to genlock i LANC. Z tego, co mogę powiedzieć, nie zdobędę jednego aparatu z funkcją genlocka za mniej niż, powiedzmy, 5000 funtów. Nawet zapominając o sygnale genlock, to dla nas zbyt wiele, aby pozwolić sobie na jeden, nie mówiąc już o 8. Sprawa Sony / Canon LANC wydaje się bardziej wykonalna, jednak nie mogę znaleźć żadnych wiarygodnych informacji na temat tego, jak to zrobić lub jakie kamery faktycznie to obsługują, które są już dostępne. Ciągle uderzam w ślepe zaułki, próbując w to spojrzeć, i to nie pomaga, że ​​przeważnie wszyscy robiąc to, próbują kręcić tylko w stereo. Czy ktoś może mi doradzić, jakiej konfiguracji potrzebowalibyśmy i ile by to z grubsza kosztowało? A może istnieje jakieś inne rozwiązanie synchronizacji, które ktoś chciałby polecić? Łatwość i koszt to najważniejsze czynniki!

Dzięki! I mam nadzieję, że to nie brzmi jak pytanie o rekomendacje dotyczące zakupów. Chociaż chcę iść na zakupy, naprawdę potrzebuję tylko pomocy w zrozumieniu technik synchronizacji, a potem ustalę, co kupić!

Andrew Chinery
źródło
Jeśli martwisz się różnicą 8 milisekund, czy nie uważasz, że musisz wypożyczyć aparaty, które nagrywają w ultra-slomo, np. 200 fps +? Blokada GEN prawdopodobnie byłaby włączona na tych krzywkach.
Idealnie chciałbym móc wynająć takie rzeczy, ale znowu koszty są wygórowane. Nic, co znalazłem na poziomie konsumenta, nie ma genlocka, nawet kamery o wysokiej fps. A nawet „wysoka fps” wciąż nie jest wystarczająco wysoka, aby zapewnić synchronizację podobną do genlocka za pomocą tylko clapperboard. Nadal trudno mi nawet wyśledzić, czy kamera ma genlock, czy nie. Wydaje się, że jest to rzecz zrozumiała w branży, o której jestem całkowicie nieświadomy. W każdym razie dzięki za odpowiedź na tak stary wątek :).
Andrew Chinery
Zadałem podobne pytanie, jeśli jesteś zainteresowany: video.stackexchange.com/questions/12312/...
Kozuch,

Odpowiedzi:

5

Rok po opublikowaniu tego pytania otrzymuję kilka dodatkowych komentarzy i odpowiedzi, co jest naprawdę świetne. Technicznie jest to nadal problem, ale pozwólcie, że podzielę się tym, czego nauczyłem się w ubiegłym roku, na wypadek, gdyby ktoś natknął się na tę stronę z podobnym problemem.

Wymyśliliśmy dwa niedrogie rozwiązania problemu, który - jak sądzę - zadziała w odpowiednich warunkach.

  1. Użyj szybkiego światła stroboskopowego. Działa to tylko wtedy, gdy obiekt nie emituje światła (niestety nie dla mnie) i można go umieścić w bardzo ciemnym pokoju. Chwyć bardzo szybkie, bardzo dokładne światło stroboskopowe, a następnie ustaw je tak, aby gasło na tej samej częstotliwości co aparaty, powiedzmy 50 fps / 50hz. Następnie ustaw czas otwarcia migawki wszystkich kamer na 1/50 sekundy, tzn. Migawka jest zawsze otwarta. Umieść obiekt w bardzo ciemnym pokoju i ustaw przysłonę tak, aby wideo wydawało się czarne bez światła. Następnie rozświetl światłem stroboskopowym. Filmy zostaną naturalnie zsynchronizowane, ponieważ jedyne światło, które otrzymują, pochodzi ze stroboskopu i dzieje się to raz na klatkę. Trudność polega na uzyskaniu wystarczająco precyzyjnego strobowania. Ale słyszę, że są one używane w ciężkich procesach produkcyjnych do sprawdzania noży / kół / pasów itp., Których nie można wyłączyć. Zapalasz narzędzie tylko stroboskopem, który ma analogową kontrolę, i powoli zwiększasz prędkość stroboskopu, a po osiągnięciu częstotliwości narzędzia wydaje się, że zwalnia i ostatecznie zatrzymuje się. Teraz możesz sprawdzić problemy. Tylko tego nie dotykaj;).
  2. Użyj sygnału vsync na kompozytowym wideo z kamer. Jest to inspirowane przez http://samj.snappages.com/ . Sygnał ten jest wysyłany regularnie co ramkę, a przy pomocy elektroniki można zmierzyć różnicę między sygnałem w dwóch (lub więcej) różnych kamerach. Następnie możesz włączyć i wyłączyć aparat (lub w niektórych aparatach zrobić zdjęcie. Więcej o tym później ...) i zmierzyć go ponownie, i tak dalej. Jeśli masz sprytne wyczucie czasu w cyklu zasilania, możesz zbliżyć je do siebie w granicach progu. Nie próbowaliśmy tego tylko dlatego, że nie zbudowaliśmy obwodu i doszliśmy do wniosku, że byłoby to zbyt kłopotliwe do pracy, szczególnie z więcej niż 2 kamerami.

Jak powiedziałem, nie skończyliśmy robić żadnego z nich. Ostatecznie złożyliśmy ofertę na finansowanie niedrogiego systemu, zaprojektowanego właśnie do tego celu, od firmy takiej jak NorPix. Są one synchronizowane przez sieć Ethernet i są konfigurowane. Nigdy nie byłem w stanie dowiedzieć się, jak dokładnie (protokół itp.) Używają sieci Ethernet do synchronizacji, więc jeśli ktoś chce wyjaśnić, że byłbym bardzo zainteresowany. Ostatnim razem, gdy byłem aktualizowany, powiedziano mi, że znaleźliśmy trochę pieniędzy, ale oczywiście, jeśli wiesz coś o biurokracji akademickiej, nie zdziwisz się, gdy dowiesz się, że wciąż czekam na sprzęt!

Jeśli ktoś ma magiczny pomysł, który umożliwia niedrogą synchronizację, wciąż jestem otwarty na sugestie.

Na zakończenie wspomnę w moich testach o strategii, która nie działała. I to jest ten na tej stronie: http://3dfilmfactory.com/index.php?option=com_content&view=article&id=93:gen-lock-canon-5d-mark-ii-cameras-and-shoot-3d

To prawda, że ​​mamy inny sprzęt, Canon 60D, i mieliśmy bardzo tanie bezprzewodowe wyzwalacze migawki poza marką. Nie mam jednak powodu, aby sądzić, że spowodowały zauważalną różnicę w konfiguracji łącza. Testy przeprowadziłem za pomocą urządzenia LED, jak zasugerował Bokan w swojej odpowiedzi, a średnia różnica w synchronizacji spadła tylko o około 1 ms po użyciu bezprzewodowego spustu migawki w porównaniu z testami kontrolnymi, a czasem pogorszyło się. Nie przeprowadziłem żadnej analizy statystycznej, ale podejrzewam, że nie będzie to znaczące w porównaniu z przypadkiem. Myślę, że jest bardzo prawdopodobne, że Fabryka Filmów 3D albo nie kręciła materiału, w którym zauważyliby problem z synchronizacją, albo ich droższy sprzęt dawał nieco bardziej niezawodny wynik, który wciąż nie jest tak wymierny. Skalowałem do więcej niż 2 kamer, ja ”

Jednak użycie zdalnego spustu migawki powoduje zresetowanie wideo. Jeśli użyjesz przycisku „nagrywania” na aparatach (lub pilocie), wówczas po prostu zacznie zapisywać materiał, który jest już przetwarzany. Innymi słowy, jeśli mierzysz synchronizację w kilku różnych testach bez wyłączania aparatu, robienia zdjęcia lub pozostawiania go w trybie oszczędzania energii, synchronizacja będzie taka sama. Możesz włączyć ten mechanizm do powyższego numeru podejścia (2): zamiast włączać i wyłączać kamery, można robić zdjęcia, dopóki sygnały vsync nie znajdą się w linii. To byłoby fajne urządzenie, po prostu nigdy nie udało nam się go zbudować.

Jeszcze raz dziękuję za wszelkie sugestie. Mam nadzieję, że kiedyś ktoś uzna to za przydatne, a miesiące, które zmarnowałem, próbując je rozwiązać, zaoszczędzą komuś trochę czasu!

Andrew Chinery
źródło
Wygląda na to, że ten facet robi hack HW z vsync, aby zsynchronizować kompozytowe wideo: letsmakerobots.com/node/29869
Kozuch
2

Zrobiłem 4 aparaty DSLR ze sprzętem Nikon (D7000 i D3S). W przypadku naszych ujęć po prostu zrobiliśmy klapkę po tym, jak wszystkie kamery potoczyły się ORAZ tuż przed cięciem, więc mieliśmy dwa punkty synchronizacji. Nasz najdłuższy strzał miał około 18 minut i nie było zauważalnego dryfu w synchronizacji w naszym systemie pocztowym. Chociaż genlock jest PREFEROWANYM sposobem, odkryłem, że wiele urządzeń cyfrowych jest ~ wystarczająco blisko ~ (cholera, nakręciłem teledysk z odtwarzaniem z płyty CD boombox i aparatu o stałej prędkości (nie sterowanej kryształem) silnik i to było SPOT ON.

W przypadku czegoś, co brzmi mniej niż minuta, jak brzmi twój projekt, jestem całkiem pewien, że nie będziesz musiał martwić się synchronizacją.

Po prostu weź clapboard, upewnij się, że wszystkie kamery widzą go wyraźnie i działają, a następnie klaśnij w dół. Bez przycinania, jsut ponownie ustaw ostrość i długość ogniskowej tam, gdzie jest to potrzebne do ujęcia. Wykonaj ujęcie, a następnie ponownie bez cięcia, pomniejsz widok, aby wszystkie osiem kamer widziało klapkę, i klaszcz. NASTĘPNIE możesz wyciąć swoje kamery. Zsynchronizuj klatki, w które uderza klaps we wszystkich 8 strzałach i viola.

Powodzenia!

dwwilson66
źródło
2
Problemem nie jest dryf, ale raczej milisekundowe różnice między kamerami, które mają miejsce podczas uruchamiania. np. nawet zakładając, że filmuję obie kamery z prędkością 60 klatek na sekundę, co oznacza ~ 16ms pomiędzy „ujęciami” w filmie. W najgorszym przypadku dwie kamery mogą mieć 8 ms na zewnątrz i byłoby to całkowicie niemożliwe do skorygowania w trybie postu, możliwe jest tylko przesunięcie jednej klatki „w lewo lub w prawo” bez interpolacji / udawania większej liczby klatek na sekundę, a jedna klatka to ruch 16 ms, więc przechodzisz od bycia 8ms do 8ms z przodu. W przypadku wielu przedmiotów prawdopodobnie nie stanowi to problemu, ale niestety nie migotanie płomieni! W każdym razie dzięki.
Andrew Chinery
1

Jeśli twoje badania wymagają analizy ruchu, powinieneś rozważyć strzelanie z dużą liczbą klatek na sekundę. Domyślnie uzyskasz lepszą synchronizację, ponieważ błąd synchronizacji nie może przekroczyć odstępu czasu między dwiema ramkami.

Fotografowanie w wysokiej liczbie klatek na sekundę w wysokiej rozdzielczości kosztuje dużo, ale możesz wymienić rozdzielczość na FPS na tanich aparatach (takich jak aparaty sportowe). Rozdzielczość jest często mniej ważna niż nam się wydaje. Wizja komputerowa ma dokładność subpikselową, jeśli przesuniesz biały obiekt na czarnym tle, krawędź zostanie wygładzona (szara). Jeśli twoje oprogramowanie weźmie pod uwagę te szare odcienie, teoretycznie może uzyskać precyzję o szerokości 1/256 pikseli. Ale aby to zadziałało, musisz mieć nieskompresowane dane, ponieważ kompresja kwantyzuje kolor, a zatem zmienia informacje.

W przypadku taniego rozwiązania synchronizacji mogę pomyśleć o tym:

  • połącz wszystkie przyciski startu ze sobą elektrycznie
  • zbuduj małe urządzenie led z kilkoma diodami wyświetlającymi dokładny czas w formacie binarnym (jedna dioda na bit), pokaż to urządzenie każdej kamerze, a następnie ręcznie zsynchronizuj ujęcia. Rodzaj zaawansowanego klaśnięcia.

Różnicę synchronizacji można rozwiązać po stronie oprogramowania. Jeśli badasz ruch, możesz przeanalizować go w 2D dla każdej kamery, a następnie interpolować wyniki z jednej kamery, aby zgadnąć, jaka była pozycja w momencie wykonania drugiej kamery. Zapytaj, czy nie jest to dla ciebie jasne.

Ta kompensacja oprogramowania jest zdecydowanie najlepszym rozwiązaniem. Zwłaszcza, jeśli musisz zrekompensować efekt rolety, który ma większość aparatów. Górna część kadru jest fotografowana nieco przed dolną częścią kadru.

bokan
źródło
Zdecydowanie lepsza jest wysoka liczba klatek na sekundę, rozdzielczość wcale nie jest dużym problemem (chociaż wiele aparatów o wysokiej rozdzielczości z niską rozdzielczością również ma fatalną jakość obrazu). Ale poprzedni badacze (z których pracy pracuję) powiedzieli mi, że synchronizacja przewodów jest konieczna dla ich systemu. Aby to naśladować tylko przy wysokiej prędkości klatek, potrzebowałbym ponad 1000 FPS. Może mógłbym uciec z mniejszą ilością, ale tak naprawdę zadałem to pytanie z powodu niezrozumienia metod synchronizacji sprzętu. Mamy już urządzenie LED, jak sugerujesz. Ale dziękuję za odpowiedź!
Andrew Chinery
Pamiętaj, że robienie zdjęcia polega wyłącznie na uchwyceniu światła. Potrzebujesz jak najwięcej światła, aby uzyskać krótszy czas otwarcia migawki i ostre zdjęcia.
bokan
Tak, i właśnie dlatego aparaty o niskiej rozdzielczości mają również okropną jakość przy wysokich częstotliwościach klatek. Mimo że filmowanie ognia oznacza, że ​​dostajesz całkiem sporo światła! Sprawdziliśmy odszkodowanie za oprogramowanie, które powoduje więcej problemów niż rozwiązuje w tym przypadku. Szukam „prawdziwej prawdy”, będą one wykorzystywane do rekonstrukcji, a artefakty ruchu będą powodować ogromne problemy, nawet ignorując fakt, że podważyłoby to twierdzenie, że pochodzą z prawdziwych danych. Również badania przeprowadzone w szczególności nad płomieniami wykazały, że interpolacja ram jest prawie niemożliwa.
Andrew Chinery
-1

Myślę, że rozwiązanie jest dość proste, trzymaj duży stoper przed dwiema kamerami przez pierwsze kilka sekund; podczas edycji można łatwo zsynchronizować. Użyłem tych metod, działając dobrze.

Tapas Roy
źródło
1
To nie jest rozwiązanie. Prawidłowym rozwiązaniem jest zakup kamer obsługujących GENLOCK. GENLOCK zapewnia synchronizację migawek obu kamer. Po prostu nie ma innego mechanizmu, który mógłby zagwarantować spójność synchronizacji w oparciu o każdą próbę uruchomienia kamer w tym samym czasie.
Michael Tiemann
@MichaelTiemann jest poprawny. Jak wskazałem powyżej, problemem nie było wyrównanie filmu podczas edycji, w rzeczywistości pojedyncze wyładowanie lampy błyskowej jest znacznie prostsze (ponieważ kręciliśmy w ciemności). Problem polegał na synchronizacji faktycznego przechwytywania samych ramek. Ponieważ wydaje mi się, że skomentowałem również rozwiązanie, w którym ostatecznie skorzystaliśmy, kupując kamery, które miały odpowiednią synchronizację (nie wiem, czy to GENLOCK, czy inaczej, pochodzą one od naukowej firmy produkującej aparaty fotograficzne i pracowały nad siecią Ethernet). To wszystko było 5 lat temu! Ale doceniam, że to pytanie wciąż sporadycznie dostaje komentarze ...
Andrew Chinery