Spisu treści:

Jak zrobić film poklatkowy: 7 kroków
Jak zrobić film poklatkowy: 7 kroków

Wideo: Jak zrobić film poklatkowy: 7 kroków

Wideo: Jak zrobić film poklatkowy: 7 kroków
Wideo: Jak zrobić animacje poklatkową z LEGO - warsztaty stopmotion #WSZYSCYRAZEMZANAUKE 2024, Lipiec
Anonim
Image
Image

W tej instrukcji opiszę szczegółowo kroki, których używam, aby zrobić film poklatkowy. System i sprzęt, którego używam do uzyskiwania obrazów, to komputer z systemem Linux i kamera sieciowa IP. Skrypt uruchamia się na komputerze z systemem Linux i co x sekund odpytuje kamerę IP, pobiera obraz, zmienia jego rozmiar, oznacza go datą i godziną oraz zapisuje go na dysku twardym komputera. Aby stworzyć wideo z obrazów, omówię dwie różne aplikacje freeware na komputerze z systemem Windows i rozważę użycie Linuksa jako opcji.

Pozyskując obrazy, musisz określić czas między każdym obrazem lub ile obrazów na godzinę lub dzień będziesz potrzebować, aby stworzyć film, który wygląda dobrze i nie jest zbyt długi ani krótki.

W przypadku mojego filmu z lodem. Robiłem zdjęcie co 20 sekund tuż przed wschodem słońca pierwszego dnia i przechodziłem od razu do zachodu słońca następnego dnia. Usunąłem większość zdjęć nocnych, zanim przetworzyłem je na wideo, ale postanowiłem zachować „wschód księżyca”

Pozostało mi około 4430 obrazów. Jeśli wyprodukuję wideo przy użyciu 25 klatek na sekundę, długość będzie wynosić:

4,430/25 = 177,2 sekundy. 177,2 sekundy to prawie 3 minuty.

Jeśli chciałbyś uchwycić coś takiego jak budowany dom, to co 3 do 5 minut byłoby dobrym miejscem do rozpoczęcia.

W zależności od tego, jak często i na jak długo muszę robić zdjęcia, używam jednego na dwie różne metody.

Krok 1: Obrazy z kamery IP

Obrazy z kamery IP
Obrazy z kamery IP

Większość kamer IP używanych w monitoringu wideo lub w kamerach z pełnym ruchem umożliwia oglądanie nieruchomego obrazu-j.webp

„https:///snap.jpg”

W przypadku aparatu Planet:

„https:///image.cgi?rozdzielczość=1920x1080”

Musisz wygooglować adres URL swojej marki aparatu.

Zarówno obrazy Ubiquiti, jak i Planet, które przechwytuję, mają rozmiar 1920x1080 (domyślnie dla każdej kamery, ponieważ są to kamery 1080). Przy takim rozmiarze otrzymujesz ogromną ilość danych i ogromny plik wideo. Lubię zmieniać rozmiar obrazu, gdy go chwytam i zapisuję na dysku, a pokażę ten krok w moim skrypcie. Używam convert, który jest częścią narzędzi ImageMagick.

Krok 2: Przechwytywanie obrazów - metoda 1

Przechwytywanie obrazów - metoda 1
Przechwytywanie obrazów - metoda 1
Przechwytywanie obrazów - metoda 1
Przechwytywanie obrazów - metoda 1

Używam tej metody do uchwycenia krótszych wydarzeń, takich jak ice-off. Możesz użyć tej metody, aby uchwycić coś takiego jak wejście i ustawienie wydarzenia - coś, co zajmuje kilka godzin lub 1 lub 2 dni i gdzie możesz ręcznie usunąć niechciane obrazy, takie jak pora nocna, przed przetworzeniem na wideo

Pod Linuksem skrypt dla mojej kamery Ubiquiti wygląda tak:

#!/kosz/bash

# idź do właściwego folderu

cd /home/steve/iceoff

# Ubiquiti - kamera ubnt

URL="https://192.168.2.114/snap.jpg"

# gdzie pisać obrazy

katalog_ubnt=/dom/steve/iceoff/ubnt

# opóźnienie między obrazami

opóźnienie=20

# pętla

podczas gdy prawda?

# użyj godziny/daty do oznaczenia nazwy pliku - musi to być w sekcji pętli

now=$(/bin/data '+%Y%m%d%H%M%S')

# pobierz obraz i zapisz go jako ubnt.jpg

/usr/bin/wget -q -O "$ubnt_dir/ubnt.jpg" -t 1 $URL

# zmień rozmiar obrazu ubnt-j.webp

konwertuj -geometria 1024x "$ubnt_dir/ubnt.jpg" "$ubnt_dir/${now}.jpg"

# spać przez czas opóźnienia, a następnie uzyskać kolejny obraz

/bin/sleep "$opóźnienie"

Gotowe

Co robi skrypt:

ustaw zmienny adres URL na miejsce, w którym znajduje się obraz w sieci/kamerze

ustawiamy zmienną ubnt_dir na miejsce, w którym chcemy zapisywać obrazy (przed uruchomieniem skryptu trzeba będzie utworzyć katalog)

ustawić opóźnienie zmiennej na ile sekund między obrazkami - ułatwia to zmianę czasu pomiędzy obrazami, wystarczy zmienić tę zmienną i ponownie uruchomić skrypt

rozpocznij pętlę od while true do - ta pętla powinna trwać, dopóki nie zatrzymasz skryptu za pomocą ctrl-c

ustaw zmienną teraz jako rok, miesiąc, dzień, godzinę, sekundę

16 lutego 2019 r. o 8 minutach i 29 sekundach po godzinie 13:00 wyglądałby jak 20190216130829

użyj wget, aby pobrać obraz z adresu URL i zapisać go jako ubnt-j.webp

przekonwertuj obraz ubnt-j.webp

spać przez liczbę sekund w zmiennej opóźnienia

wróć i zacznij od chwili, gdy prawda zrób krok

Aby uruchomić ten skrypt, loguję się na swoje konto i uruchamiam go z terminala - więc jest to dobre do uchwycenia czegoś w rodzaju lodu na jeziorze - robię to za dzień lub dwa i potrzebuję obrazu co 20 sekund.

Krok 3: Przechwytywanie obrazów - metoda 2

Przechwytywanie obrazów - metoda 2
Przechwytywanie obrazów - metoda 2

W przypadku dłuższych upływów czasu, takich jak budowa budynku lub roczny projekt poklatkowy, wykorzystuję inny sposób robienia zdjęć. Do tego używam crona.

Cron to narzędzie, które uruchamia polecenie raz na x minut, godziny, dni lub miesiące. Możesz więc dostosować czas działania polecenia według minuty, godziny, dnia, dnia miesiąca itp. Użytkownik w systemie Linux może mieć własne zadanie crona i jest ono przechowywane w jego pliku crontab.

Przez okres czasu, który trwa przez miesiące, kiedy otrzymuję obraz co X minut, używam zadania crona i nieco innego skryptu, ponieważ nie wymaga pętli (gdy prawda i gotowe), ponieważ cron będzie wywoływał skrypt co Liczba X minut.

Nie tylko możesz go używać do uruchamiania skryptu co X minut, ale możesz ograniczyć go do uruchamiania w określonych godzinach, dzięki czemu nie musisz usuwać wielu nocnych obrazów. Wraz ze zmianą pory roku i dnia zmieniam pracę crona, aby to odzwierciedlić.

Aby utworzyć zadanie cron, zaloguj się do serwera Linux i uruchom: crontab -e Rozpocznie to edycję twojego crontab. Mój plik crontab ma taką linię:

*/5 4-23 * * * /home/steve/timelapse/get.ubnt >/dev/null 2>&1

*/5 oznacza bieganie co 5 minut

4-23 oznacza uruchamianie go od 4 rano do 23:00 (dla mnie zmienia się to wraz z sezonem)

Pierwszy * oznacza uruchamianie go każdego dnia miesiąca

Drugie * oznacza uruchamianie każdego miesiąca w roku

Trzecie * oznacza uruchamianie każdego dnia tygodnia

/home/steve/timelapse/get.ubnt to nazwa skryptu, który się uruchamia

/dev/null 2>&1 oznacza ustawienie standardowego wyjścia na null, a wszelkie błędy na null - jeśli nie masz tego, otrzymasz e-mail za każdym razem, gdy uruchomione zostanie zadanie cron.

Mój skrypt /usr/steve/timelapse/get.ubnt wygląda tak:

#!/kosz/bash

cd /home/steve/timelapse

URL="https://192.168.2.114/snap.jpg"

now=$(/bin/data '+%Y%m%d%H%M%S')

/usr/bin/wget -q -O ubnt-j.webp

przelicz -geometria 1024x ubnt-j.webp" />

Co robi ten skrypt:

zmień na /home/steve/timelapse

ustaw zmienny adres URL na miejsce, w którym znajduje się obraz w sieci/kamerze

ustaw teraz zmienną na rok, miesiąc, dzień, godzinę, minutę, sekundę (abyśmy mogli później oznaczyć czas/datę ostatecznego obrazu jpg)

pobierz obraz z adresu URL i napisz go do ubnt.jpg

zmień rozmiar obrazu do szerokości 1024 pikseli, zachowując prawidłowe proporcje i zapisz plik jako znacznik daty/czasu.

Podobnie jak w przypadku poprzedniej metody/skryptu, sprawi, że nazwy plików będą sekwencyjne i umożliwi nam utworzenie wideo z klatkami we właściwej kolejności. Po kilku dniach zdjęć skopiuję je do folderu na moim komputerze z systemem Windows, aby utworzyć plik wideo. Zwykle używam ftp, aby pobrać pliki na komputerze z systemem Windows, ponieważ znajdują się one w tej samej sieci, a login/hasło w postaci zwykłego tekstu nie jest widoczny w Internecie.

Krok 4: Skopiuj obrazy na komputer z systemem Windows

Aby skopiować obrazy z systemu Linux na komputer z systemem Windows w celu przetworzenia na wideo, używam FTP.

Program Windows, którego używam do tego, to FileZilla Client. Możesz użyć dowolnego klienta FTP, nawet wersji wiersza poleceń w systemie Windows.

Jeśli wiesz, co robisz, możesz również użyć Samby lub NFS i sprawić, by pliki Linuksa pojawiły się jako folder w systemie Windows.

Krok 5: Tworzenie wideo - Photolapse 3

Tworzenie wideo - Photolapse 3
Tworzenie wideo - Photolapse 3
Tworzenie wideo - Photolapse 3
Tworzenie wideo - Photolapse 3
Tworzenie wideo - Photolapse 3
Tworzenie wideo - Photolapse 3

Teraz, gdy mamy już obrazy, musimy je połączyć, aby utworzyć plik wideo.

Istnieje wiele programów, których możesz użyć do tego celu i możesz poeksperymentować z różnymi programami.

Jednak w przypadku stosunkowo niewielkiej liczby zdjęć, jakie robię podczas jednego lub dwóch dni wolnego od lodu, używam programu Windows Photolapse 3 - który niestety nie jest już aktualizowany i nie mogę już znaleźć dla niego oryginalnej strony internetowej. Jednak jest on dostępny na wielu stronach „z pobieraniem”. Szybkie wyszukiwanie w Google powinno wystarczyć.

To, co jest / było miłe w tym programie, to to, że jest to pojedynczy plik binarny, więc nie ma instalacji. Po prostu pobierz plik binarny i uruchom go. Minusem jest to, że nie przetworzy dużej liczby plików. Przez ogromne mam na myśli prawdopodobnie 20 tysięcy lub więcej, ale dla czegoś takiego jak mój filmik z lodem z około 5 000 zdjęć jest w porządku.

Uruchamiasz program, w lewym górnym rogu rozwijasz lub znajdujesz, gdzie przechowywane są Twoje obrazy, a następnie wstawiasz liczbę klatek na sekundę (mniejsza liczba sprawi, że wideo będzie wyświetlane w zwolnionym tempie). Następnie kliknij przycisk "Załaduj pliki z bieżącego folderu"

Photolapse załaduje i wyświetli podgląd każdej klatki, a Ty zorientujesz się, jak będzie wyglądał film.

Po zakończeniu przetwarzania całego folderu kliknij przycisk „Utwórz film”, zmień nazwę pliku, jeśli chcesz, a następnie kliknij „Zapisz”.

Następnie musisz wybrać metodę kompresji wideo lub pozostawić je nieskompresowane. Używam "Microsoft Video 1". Pozostało tylko kliknąć „OK”

Chociaż będziesz musiał ponownie wykonać wszystkie kroki, aby wybrać inną metodę kompresji lub kodek, warto wypróbować tutaj inne ustawienia, jeśli potrzebujesz skompresowanego wideo.

Obrazy, których użyłem do zrzutów ekranu w tym kroku, pochodziły z oryginalnych obrazów lodu. Użyłem 1191 obrazów o wymiarach 1024x576 pikseli. Zajmowali około 110 MB miejsca na dysku. Skompresowany film miał rozmiar 235 MB, a nieskompresowany 1,96 GB

Krok 6: Tworzenie wideo - VirtualDub

Tworzenie wideo - VirtualDub
Tworzenie wideo - VirtualDub
Tworzenie wideo - VirtualDub
Tworzenie wideo - VirtualDub
Tworzenie wideo - VirtualDub
Tworzenie wideo - VirtualDub

Innym programem, z którego korzystałem, jest VirtualDub

Pobierz pliki zip tutaj. Dostępna jest wersja 32-bitowa i 64-bitowa

Rozpakuj pliki do ich własnego folderu.

Jedną z rzeczy, które musisz zrobić ze swoimi obrazami, jest sekwencyjna zmiana ich numeracji. Używanie nazw plików sygnatury daty/godziny, takich jak moje skrypty, nie będzie działać z VirtualDub. Istnieje kilka sposobów zmiany numeracji plików:

Najpierw utwórz kopię zapasową plików, a następnie kolejną kopię zapasową. Następnie korzystając z drugiego egzemplarza:

Otwórz folder ze zdjęciami, zmień widok na "szczegóły", zaznacz pierwszy plik na liście, naciśnij ctrl-a, aby zaznaczyć wszystkie pliki, kliknij prawym przyciskiem myszy i wybierz "zmień nazwę". Zmień nazwę pliku na 1, a następnie naciśnij Enter.

Spowoduje to przetworzenie listy plików i dodanie (1).jpg, następnie (2)-j.webp

Drugim sposobem jest użycie programu o nazwie Irfanview. Ma tryb wsadowy, w którym można kolejno zmieniać nazwy plików na 1.jpg, 2.jpg, 3-j.webp

Po zmianie nazwy plików uruchom VirtualDub, kliknij „plik”, a następnie „otwórz plik wideo”. Wybierz pierwszy-j.webp

Kliknij „Wideo”, a następnie „Szybkość klatek”, zmień to na 30 (lub inną liczbę klatek, którą chcesz wypróbować)

Klikam "Wideo" a potem "Kompresja" - tak jak przy photolapse 3 użyłem "Microsoft video 1"

Aby rozpocząć przetwarzanie obrazów, kliknij „Plik”, a następnie „Zapisz jako AVI”. Nazwij plik, a następnie kliknij „Zapisz”

Rozpocznie to przetwarzanie i pokaże, jak długo to potrwa.

Chociaż w użyciu VirtualDub jest więcej kroków, przetworzy więcej plików niż photolapse 3.

Zrobiłem timelapse z ponad 88 000 zdjęć za pomocą VirtualDub.

Krok 7: Wniosek

Aby oglądać filmy poklatkowe, możesz użyć programu takiego jak VLC lub własnego odtwarzacza multimedialnego systemu Windows.

Jest wiele, wiele sposobów robienia zdjęć i robienia timelapse.

Jeśli masz aparat firmy Canon, dla niektórych modeli dostępne jest oprogramowanie firmowe CHDK innej firmy, które umożliwia korzystanie z aparatu w trybie interwałometru i robienie zdjęć co x sekund.

Wiele eksperymentów! Mam nadzieję, że uznałeś ten Instructable za interesujący, a jeśli zrobisz timelapse, zostaw link do niego w komentarzach.

Zalecana: