Reklama
Patrz, jak chmury się poruszają lub rośnie sadzonka. Fotografia poklatkowa może naprawdę dać ci wyobrażenie o tym, jak świat działa na poziomie makroskopowym, ponad wszystko, co można sobie wyobrazić w normalnym ludzkim doświadczeniu czasu. Lub innymi słowy: może zmienić oglądanie suchej farby w coś całkiem interesującego. Niestety, profesjonalny sprzęt poklatkowy - dodając możliwość obracania lub przenoszenia aparatu - jak dżin może kosztować nawet 1000 USD. Dziś stworzymy podstawowy kontroler poklatkowy bez ruchu - dla DSLR lub kamery internetowej USB - za pomocą tylko Raspberry Pi.
Koniecznie sprawdź wszystkie nasze inne świetne Projekty Raspberry Pi też.
DSLR
Jak zwykle cała nasza praca z Pi będzie wykonywana za pomocą wiersza poleceń SSH, a my możemy pobierać pliki przy użyciu SFTP z tymi samymi poświadczeniami, jeśli zapisałeś je na Pi zamiast w aparacie. Jeśli nie masz pewności, jaki jest adres IP urządzenia Pi, zaloguj się do routera i przejrzyj listę aktualnie podłączonych urządzeń - powinien on zgłaszać się poprawnie.
Rozpocznij od zainstalowania niezbędnego oprogramowania:
sudo apt-get install gphoto2. sudo apt-get install imagemagick.
GPhoto2 to narzędzie wiersza polecenia do bezpośredniego interfejsu z obsługiwanymi kamerami DSLR (zobacz pełną listę tutaj). Użyłem Canona Rebel T4i / 650D Recenzja i podarunek Canon Rebel T4i dSLRCanon właśnie wypuścił na rynek nowy Rebel T4i - pierwszą (z wielu miejmy nadzieję) przygodę w świecie dotykowym DSLR. Ten aparat jest wyższy od Canona Rebel T3i (co czyni go trzecim ... Czytaj więcej . Teraz podłącz aparat do Pi przez USB.
Ponieważ użyłem automatycznych wartości ISO i trybu AV, konfiguracja jest stosunkowo prosta i możemy przechwycić serię za pomocą tylko wiersza poleceń - narzędzie zawiera wbudowane parametry poklatkowe. Oto najbardziej podstawowe polecenie, którego możesz użyć do przetestowania możliwości:
gphoto2 --capture-image-and-download
który prześle plik do twojego Pi, lub
gphoto2 --capture-image
aby zachować obraz w aparacie. Przy 8 MB pop, najlepiej trzymać je w aparacie i wykonać połączenie filmu po fakcie z komputera PC lub Mac.
Ważny: Domyślnie obrazy są zapisywane w pamięci SD-RAM, a nie na karcie pamięci w aparacie. To znaczy, że stracisz je wszystkie (mówię z doświadczenia). Aby upewnić się, że faktycznie oszczędzają, musimy najpierw ustawić cel przechwytywania:
gphoto2 --get-config / main / settings / capturetarget.
Spójrz na listę danych wyjściowych i ustaw cel w następujący sposób, zastępując 1 z tym, który jest pokazany jako karta.
gphoto2 --set-config / main / settings / capturetarget = 1.
Aby wykonać zdjęcie w trybie poklatkowym, dołącz -FA i -JA aby określić całkowitą liczbę ramki chcesz uchwycić i czas interwał między każdym. W tym przykładzie przechwytywanie co 30 sekund w sumie 1440 klatek, co w przypadku filmu 24 klatek na sekundę będzie równe około minucie. Nie sądzę, by bateria mojego aparatu i tak wytrzymała, ale zobaczę, ile dostanę.
gphoto2 --capture-image -F 1440 -I 30.
Jedno dziwactwo, o którym należy pamiętać; po wykonaniu polecenia aparat może się wyłączyć i przestać odpowiadać - konieczne będzie ręczne przełączenie wyłącznika zasilania (przynajmniej w moim modelu tak było). Podczas użytkowania nie powinno to stanowić problemu w terenie, ale do celów testowych robi się dość denerwujące. Jeśli znasz rozwiązanie tego problemu, daj mi znać w komentarzach!
Robienie filmu
Prześlij pliki na komputer stacjonarny w celu przetworzenia. Na komputerze Mac odkryłem, że najłatwiej jest użyć wiersza polecenia, ale potrzebujesz XCode, Homebrew, i MPlayer najpierw zainstalowany. Aby to zrobić, najpierw pobierz Xcode z App Store (jest bezpłatny), a następnie z Preferencje -> Pliki do pobrania kartę, włącz Narzędzia wiersza poleceń.
Następnie uruchom (pojedynczo):
ruby
Powinieneś teraz mieć zainstalowane niezbędne komponenty kodujące. Uruchom następujące polecenia, aby najpierw utworzyć listę przechwyconych plików .jpg, a następnie wprowadzić tę listę do mencodera, narzędzia służącego do tworzenia filmów. Zmień wartość FPS, jeśli wolisz, aby film był odtwarzany szybciej.
Płyta CD
ls * .jpg> list.txt. mencoder -nosound -ovc lavc -lavcopts vcodec = mpeg4: aspekt = 16/9: vbitrate = 8000000 -vf skala = 640: 480 -o timelapse.avi -mf typ = jpeg: fps = 24 mf: //@list.txt.
Oto, na czym skończyłem, używając 24 klatek na sekundę z 330 klatek rejestrowanych co minutę od rana do popołudnia. Pogoda w Wielkiej Brytanii jest naprawdę taka zła, od słonecznej po zachmurzenie w 5-minutowych odstępach w ciągu dnia. Westchnienie.
Aby zakodować film w systemie Windows lub jeśli wolisz korzystać z GUI, pobierz Avidemuxi postępuj zgodnie z poniższym samouczkiem wideo. Upewnij się, że twoje zdjęcia są kolejno ponumerowane.
https://www.youtube.com/watch? v = GZmkfk-YrG4 # t = 73
Korzystanie z kamery internetowej USB
Oczywiście nie każdy ma lustrzankę cyfrową, ale zamiast kupowania drogiego oficjalnego modułu aparatu dla Raspberry Pi, można również wykonywać zdjęcia poklatkowe przy użyciu gotowego urządzenia USB kamera internetowa - w moim przypadku PS3 Eye, które zwykle jest dość kłopotliwe, aby rozpocząć pracę na komputerze PC lub Mac, ale działa od razu po wyjęciu z pudełka. Może być konieczne użycie zasilanego koncentratora USB, a obsługa kamery jest szkicowy.
Najpierw sprawdź, czy kamera internetowa została poprawnie wykryta.
ls -l / dev / video *
Mamy nadzieję, że zobaczysz / dev / video0 na liście w następujący sposób:
Następnie możemy przystąpić do instalacji oprogramowania do przechwytywania kamery internetowej i zrobić zdjęcie próbne.
sudo apt-get install fswebcam.
fswebcam -d / dev / video0 -r 640x480 test.jpeg.
Usuń plik za pomocą:
rm test.jpg.
Zrób kilka zdjęć próbnych, aby umożliwić odpowiednie ustawienie kamery, a następnie przystąpimy do pisania filmu poklatkowego.
Ekspozycja poklatkowa mkdir. nano runtimelapse.
Wklej w następujący sposób:
#! / bin / bash. # Kontroler timelapse dla kamery internetowej USB DIR = / home / pi / timelapse x = 1. while [$ x -le 1440]; do filename = $ (data -u + "% d% m% Y_% H% M-% S"). jpg fswebcam -d / dev / video0 -r 640x480 $ DIR / $ nazwa pliku x = $ (($ x + 1)) spać 10; Gotowe;
Do celów testowych ustawiłem czas oczekiwania między zdjęciami na 10 sekund. Gdy faktycznie zaczniesz przechwytywać, możesz zamiast tego zmienić to na każdą minutę. Zmień następujący wiersz, aby określić liczbę klatek do przechwycenia, w przykładzie jest on ustawiony na 1440:
while [$ x -le 1440]; robić.
Aby skrypt był wykonywalny, użyj:
chmod 755 runtimelapse.
Następnie uruchom go za pomocą:
./runtimelapse.
Robienie filmu
Nadal w wierszu polecenia SSH spróbujemy zszyć film bezpośrednio na Pi - jeśli wykonałeś tysiące zdjęć, a kamera jest wyżej rozdzielczość może być przerażająco powolna, w takim przypadku przewiń w górę do instrukcji filmowych dla DSLR i przenieś pliki na komputer za pomocą SFTP.
timelapse cd. ls * .jpg> list.txt. sudo apt-get install mencoder. mencoder -nosound -ovc lavc -lavcopts vcodec = mpeg4: aspekt = 16/9: vbitrate = 8000000 -vf skala = 640: 480 -o timelapse.avi -mf typ = jpeg: fps = 24 mf: //@list.txt.
Jeśli wszystko wydaje się dobrze, ale plik wyjściowy ma 0 KB, oznacza to, że w folderze temp urządzeń nie ma wystarczającej ilości miejsca. Rozwiązałem to przy czystej instalacji i ponownym rozszerzeniu systemu root - wygląda na to, że BTSync pomieszał niektóre pliki tymczasowe.
Oto skończona scena z kamery internetowej USB, od późnego popołudnia do ciemności.
Było to o wiele łatwiejsze, niż się spodziewałem - i nie zdziwiłbym się, gdyby ktoś w komentarzach opisał jeszcze łatwiejszą metodę! Wypróbuj fascynujące spojrzenie na życie, które inaczej trudno zrozumieć, i udostępnij link do swoich dzieł w komentarzach lub innych filmach poklatkowych, które uważasz za szczególnie inspirujące.
James ma licencjat z zakresu sztucznej inteligencji i jest certyfikowany przez CompTIA A + i Network +. Jest głównym programistą MakeUseOf i spędza wolny czas grając w paintball VR i gry planszowe. Buduje komputery od dziecka.