İçindekiler:

Hızlandırılmış Video Nasıl Yapılır: 7 Adım
Hızlandırılmış Video Nasıl Yapılır: 7 Adım

Video: Hızlandırılmış Video Nasıl Yapılır: 7 Adım

Video: Hızlandırılmış Video Nasıl Yapılır: 7 Adım
Video: Telefonda Video Hızlandırma ve Yavaşlatma - Ders 5 2024, Kasım
Anonim
Image
Image

Bu Eğitilebilir Kitapta, hızlandırılmış bir video yapmak için kullandığım adımları detaylandıracağım. Görüntüleri elde etmek için kullandığım sistem ve donanım bir Linux bilgisayar ve ağ tabanlı bir IP kameradır. Linux bilgisayarda bir komut dosyası çalışır ve her x saniyede bir IP kamerayı yoklar, bir görüntü alır, yeniden boyutlandırır, saat ve tarih damgasını vurur ve bilgisayarın sabit diskine kaydeder. Görüntülerden video oluşturmak için bir Windows PC'de iki farklı ücretsiz uygulamayı ele alacağım ve bir seçenek olarak Linux kullanmaya bakacağım.

Görüntüler elde ederken, her görüntü arasındaki süreyi ya da iyi görünen ve çok uzun ya da kısa olmayan bir video oluşturmak için saatte veya günde kaç görüntüye ihtiyacınız olacağını bulmanız gerekir.

Benim buz kapalı video durumunda. İlk gün gün doğumundan hemen önce her 20 saniyede bir görüntü yakaladım ve ertesi gün gün batımına doğru ilerledim. Gece görüntülerinin çoğunu videoya işlemeden önce kaldırdım, ancak "ayın yükselişini" sürdürmeye karar verdim.

Bu bana yaklaşık 4, 430 görüntü bırakıyor. Videoyu saniyede 25 kare kullanarak üretirsem uzunluk şöyle olur:

4, 430 / 25 = 177.2 saniye uzunluğunda. 177.2 saniye yaklaşık 3 dakikadır.

İnşa edilen bir ev gibi bir şeyi yakalamak istiyorsanız, her 3 ila 5 dakikada bir başlamak için iyi bir yer olacaktır.

Ne sıklıkta ve ne kadar süreyle fotoğraf çekmem gerektiğine bağlı olarak, birini iki farklı yöntem için kullanıyorum.

1. Adım: Bir IP Kameradan Görüntüler

IP Kameradan Görüntüler
IP Kameradan Görüntüler

Video gözetiminde veya tam hareketli web kameralarında kullanılan çoğu IP kamera, bir web tarayıcısı aracılığıyla hareketsiz bir-j.webp

"https:///snap.jpg"

Gezegen kamerası için:

"https:///image.cgi?çözünürlük=1920x1080"

Kamera markanız için kullanmak için url'yi Google'da aramanız gerekecek.

Yakaladığım hem Ubiquiti hem de Planet görüntüleri 1920x1080 boyutundadır (her kamera için varsayılan olarak 1080 kameradır). Bu boyutla, büyük miktarda veri ve büyük bir video dosyası elde edersiniz. Resmi aldığımda yeniden boyutlandırmayı ve diske yazmayı seviyorum ve bu adımı betiğimde göstereceğim. ImageMagick araçlarının bir parçası olan convert kullanıyorum.

Adım 2: Görüntü Yakalama - Yöntem 1

Görüntü Yakalama - Yöntem 1
Görüntü Yakalama - Yöntem 1
Görüntü Yakalama - Yöntem 1
Görüntü Yakalama - Yöntem 1

Bu yöntemi, buzlanma gibi daha kısa olayları yakalamak için kullanıyorum. Bu yöntemi, bir olaya taşınma ve kurulum gibi bir şeyi yakalamak için kullanabilirsiniz - birkaç saat veya 1 veya 2 gün süren ve bir videoya işlemeden önce gece vakti gibi istenmeyen görüntüleri manuel olarak kaldırabileceğiniz bir şey.

Linux altında, Ubiquiti kameram için bir komut dosyası şöyle görünür:

#!/bin/bash

# doğru klasöre git

cd /home/steve/iceoff

# Ubiquiti - ubnt kamera

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

# görüntülerin nereye yazılacağı

ubnt_dir=/home/steve/iceoff/ubnt

# görüntüler arasındaki gecikme

gecikme=20

# döngü

doğru yaparken

# dosya adını damgalamak için saati/tarihi kullanın - bunun döngü bölümünde olması gerekir

şimdi=$(/bin/date '+%Y%m%d%H%M%S')

# resmi alın ve ubnt-j.webp" />

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

# ubnt-j.webp

convert -geometry 1024x "$ubnt_dir/ubnt.jpg" "$ubnt_dir/${now}.jpg"

# gecikme süresi için uyu, sonra başka bir görüntü al

/bin/uyku "$gecikme"

tamamlamak

Komut dosyası ne yapar:

görüntünün ağda/kamerada olduğu yere bir değişken URL ayarlayın

ubnt_dir değişkenini görüntüleri kaydetmek istediğimiz yere ayarlayın (betiği çalıştırmadan önce dizini oluşturmanız gerekir)

değişken gecikmesini görüntüler arasında kaç saniye olarak ayarlayın - bu, görüntüler arasındaki süreyi değiştirmeyi kolaylaştırır, sadece bu değişkeni değiştirin ve komut dosyasını yeniden çalıştırın

while true do ile bir döngü başlatın - bu döngüler, komut dosyasını bir ctrl-c ile durdurana kadar devam etmelidir

değişkeni şimdi yıl, ay, gün, saat, saniye olarak ayarlayın

16 Şubat 2019 saat 13:00'ten 8 dakika 29 saniye sonra 20190216130829 gibi görünür

URL'den bir resim almak için wget'i kullanın ve onu resim klasörümüze ubnt-j.webp

ubnt-j.webp

gecikme değişkeninde saniye sayısı kadar uyku

geri dönün ve doğru do adımında başlayın

Bu betiği çalıştırmak için hesabıma giriş yapıyorum ve terminalden çalıştırıyorum - bu, bir gölün buz tabakası gibi bir şeyi yakalamak için iyidir - bir veya iki gün içinde yapılır ve her 20 saniyede bir görüntüye ihtiyacım var.

Adım 3: Görüntü Yakalama - Yöntem 2

Görüntü Yakalama - Yöntem 2
Görüntü Yakalama - Yöntem 2

Bir binanın inşaatı gibi daha uzun zaman aralıkları veya bir yıllık zaman atlamalı projeler için farklı bir görüntü yakalama yöntemi kullanıyorum. Bunun için cron kullanıyorum.

Cron, her x dakikada, saatte, günde veya ayda bir komut çalıştıran bir yardımcı programdır. Böylece komutun ne zaman çalışacağını dakika, saat, gün, ayın günü vb. bazında uyarlayabilirsiniz. Linux sistemindeki bir kullanıcının kendi cron işi olabilir ve bu onların crontab dosyasında tutulur.

Aylarca süren ve her X dakikada bir görüntü aldığım bir zaman atlamalı için bir cron işi ve biraz farklı bir komut dosyası kullanıyorum, çünkü cron komut dosyasını her çağıracağından bir döngü (doğru do ve yapılırken) gerektirmez X numarası dakika.

Komut dosyasını yalnızca X dakikada bir çalıştırmak için kullanmakla kalmaz, aynı zamanda belirli saatler arasında çalışacak şekilde kısıtlayabilirsiniz, böylece çok fazla gece görüntüsünü kaldırmak zorunda kalmazsınız. Mevsim ve gündüz saatleri değiştikçe, cron işimi onu yansıtacak şekilde değiştiriyorum.

Bir cron işi oluşturmak için Linux sunucunuza giriş yapın ve şunu çalıştırın: crontab -e Bu, crontab'ınızın bir düzenlemesini başlatacaktır. Crontab dosyamda şöyle bir satır var:

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

*/5, her 5 dakikada bir çalıştır anlamına gelir

4-23, sabah 4'ten akşam 11'e kadar çalıştırmak anlamına gelir (bu benim için mevsime göre değişir)

İlk *, ayın her günü çalıştırmak anlamına gelir

İkinci *, yılın her ayı çalıştırmak anlamına gelir

Üçüncü *, haftanın her günü çalıştırmak anlamına gelir

/home/steve/timelapse/get.ubnt, çalışan komut dosyası adıdır

/dev/null 2>&1, standart çıktıyı null olarak ve tüm hataları boş olarak koymak anlamına gelir - buna sahip değilseniz, cron işi her çalıştığında e-posta alırsınız.

Komut dosyam /usr/steve/timelapse/get.ubnt şuna benziyor:

#!/bin/bash

cd /home/steve/zaman atlamalı

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

şimdi=$(/bin/date '+%Y%m%d%H%M%S')

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

geometriyi dönüştür 1024x ubnt-j.webp" />

Bu komut dosyası ne yapar:

/home/steve/timelapse olarak değiştir

görüntünün ağda/kamerada olduğu yere bir değişken URL ayarlayın

değişkeni şimdi yıl, ay, gün, saat, dakika, saniye olarak ayarlayın (böylece son-j.webp

resmi URL'den alın ve ubnt.jpg'ye yazın

doğru oranı koruyarak görüntüyü 1024 piksel genişliğinde yeniden boyutlandırın ve dosyayı tarih/saat damgası olarak yazın.

Önceki yöntemde/komut dosyasında olduğu gibi, dosya adlarını sıralı hale getirecek ve kareleri doğru sırada olan videoyu oluşturmamızı sağlayacaktır. Birkaç günlük görüntü elde ettikten sonra, video dosyasını oluşturmak için bunları Windows PC'mdeki bir klasöre kopyalayacağım. Dosyaları aynı ağda olduklarından ve açık metin olan oturum açma/şifre internette görünmediğinden normalde Windows PC'deki dosyaları almak için ftp kullanırım.

Adım 4: Görüntüleri bir Windows PC'ye Kopyalayın

Görüntüleri bir videoya işlemek üzere Linux sisteminden bir Windows PC'ye kopyalamak için FTP kullanıyorum.

Bunun için kullandığım windows programı FileZilla Client. Tercih ettiğiniz herhangi bir ftp istemcisini, hatta Windows'taki komut satırı sürümünü bile kullanabilirsiniz.

Ne yaptığınızı biliyorsanız, Samba veya NFS'yi de kullanabilir ve Linux dosyalarının Windows'ta bir klasör olarak görünmesini sağlayabilirsiniz.

Adım 5: Video Oluşturma - Photolapse 3

Video Oluşturma - Photolapse 3
Video Oluşturma - Photolapse 3
Video Oluşturma - Photolapse 3
Video Oluşturma - Photolapse 3
Video Oluşturma - Photolapse 3
Video Oluşturma - Photolapse 3

Artık görüntüler elimizde olduğuna göre, bir video dosyası oluşturmak için bunları birleştirmemiz gerekiyor.

Bunu yapmak için kullanabileceğiniz birçok program var ve farklı programlar denemek isteyebilirsiniz.

Ancak, bir veya iki günlük buzlanma sırasında yakaladığım gibi nispeten az sayıda görüntü için Windows Photolapse 3 programını kullanıyorum - ne yazık ki artık güncellenmiyor ve artık bunun için orijinal web sitesini bulamıyorum. Ancak yine de bir dizi "indirme" sitesinden edinilebilir. Hızlı bir google araması iyi olmalı.

Bu programla ilgili güzel olan şey, tek bir ikili dosya olmasıdır, bu nedenle kurulum yoktur. Sadece ikili dosyayı indirin ve çalıştırın. Dezavantajı, çok sayıda dosyayı işlemeyecek olmasıdır. Devasa derken muhtemelen 20 bin veya daha fazlasını kastediyorum, ancak yaklaşık 5.000 görüntü içeren buz gibi videom gibi bir şey için gayet iyi.

Programı başlatın, sol üstteki kutuda detaya inin veya resimlerinizin nerede saklandığını bulun, ardından saniyedeki kare sayısını girin (daha küçük bir sayı videonun ağır çekim olarak görünmesini sağlar). Ardından "Mevcut klasörden dosyaları yükle" düğmesini tıklayın

Photolapse, her kareyi yükleyecek ve önizleyecek ve videonun nasıl görüneceği hakkında bir fikir edineceksiniz.

Tüm klasörü işlemeyi bitirdiğinde, "Film Oluştur" düğmesine tıklayın, isterseniz dosya adını değiştirin, ardından "Kaydet"e tıklayın.

Ardından, video için bir sıkıştırma yöntemi seçmeniz veya sıkıştırılmamış halde bırakmanız gerekir. "Microsoft Video 1" kullanıyorum. Geriye kalan tek şey "Tamam" ı tıklamak

Farklı bir sıkıştırma yöntemi veya codec bileşeni seçmek için tüm adımları tekrar uygulamanız gerekecek olsa da, sıkıştırılmış videoya ihtiyacınız varsa burada farklı ayarları denemeye değer.

Bu adımda ekran görüntüleri için kullandığım görüntüler orijinal buzlanma görüntülerinden bazılarıydı. 1024x576 piksellik 1191 resim kullandım. Yaklaşık 110MB disk alanı kapladılar. Sıkıştırılmış video 235MB boyutundaydı ve sıkıştırılmamış video 1.96 GB idi.

Adım 6: Videoyu Oluşturma - VirtualDub

Videoyu Oluşturma - VirtualDub
Videoyu Oluşturma - VirtualDub
Videoyu Oluşturma - VirtualDub
Videoyu Oluşturma - VirtualDub
Videoyu Oluşturma - VirtualDub
Videoyu Oluşturma - VirtualDub

Kullandığım diğer program VirtualDub

Zip dosyalarını buradan indirin. 32 bit ve 64 bit sürümü var

Dosyaları kendi klasörlerine açın.

Resimlerinizle yapmanız gereken şeylerden biri, onları sırayla yeniden numaralandırmaktır. Komut dosyalarımın oluşturduğu gibi tarih/saat damgası dosya adlarını kullanmak VirtualDub ile çalışmayacaktır. Dosyaları yeniden numaralandırmanın birkaç yolu vardır:

Önce dosyalarınızın yedeğini alın, ardından başka bir yedek alın. Ardından ikinci kopyayı kullanarak:

Görüntüleri içeren klasörü açın, görünümü "detaylar" olarak değiştirin, listedeki ilk dosyayı vurgulayın, tüm dosyaları seçmek için ctrl-a'ya basın, sağ tıklayın ve "yeniden adlandır" seçeneğini seçin. Dosya adını 1 olarak değiştirin ve enter tuşuna basın.

Bu, dosya listesini işleyecek ve 1-j.webp

İkinci yol, Irfanview adlı bir program kullanmaktır. Dosyaları sırayla 1.jpg, 2.jpg, 3-j.webp

Dosyalar yeniden adlandırıldıktan sonra VirtualDub'ı başlatın, "dosya"yı ve ardından "video dosyasını aç"ı tıklayın. Sıralamanızdaki ilk jpg'yi seçin ve ardından "Aç"a tıklayın. Bu, sırayla numaralandırılmış tüm dosyaları yükleyecektir.

"Video" yu ve ardından "Kare Hızı"nı tıklayın, bunu 30 olarak değiştirin (veya denemek istediğiniz kare hızı ne olursa olsun)

"Video" ve ardından "Sıkıştırma" yı tıklayın - photolapse 3'te olduğu gibi "Microsoft video 1" kullandım

Görüntüleri işlemeye başlamak için "Dosya"yı ve ardından "AVI olarak kaydet"i tıklayın. Dosyayı adlandırın ve ardından "Kaydet" e tıklayın

Bu, işlemeyi başlatacak ve ne kadar süreceğini gösterecektir.

VirtualDub'ı kullanmanın daha fazla adımı olmasına rağmen, photolapse 3'ten daha fazla dosya işleyecektir.

VirtualDub kullanarak 88.000'den fazla görüntüyle bir zaman atlamalı yaptım.

7. Adım: Sonuç

Hızlandırılmış videoları görüntülemek için VLC veya Windows'un kendi medya oynatıcısı gibi bir program kullanabilirsiniz.

Görüntü yakalamanın ve hızlandırılmış çekim yapmanın pek çok yolu vardır.

Bir canon kameranız varsa, bazı modellerde, kamerayı intervalometre modunda kullanmanıza ve her x saniyede bir fotoğraf çekmenize izin verecek 3. parti bellenim CHDK vardır.

Deney çok! Umarım bu Eğitilebilir Tabloyu ilginç bulmuşsunuzdur ve bir zaman atlamalı yaparsanız, yorumlarda ona bir bağlantı bıraktığınızdan emin olun.

Önerilen: