Terminalden bir resim çekin


58

Terminaldeki web kamerasını kullanarak fotoğraf çekmek istiyorum. Bu görüntü daha sonra bir dosyaya kaydedilir. Bu nasıl yapılabilir?

Yanıtlar:


32

Otomatik bir şey arıyorsanız webcam, oldukça iyi. Fotoğrafları Internet üzerinden itmek için birçok hoş seçeneğe sahiptir.

Daha fazla manuel bir şey istiyorsanız streamerve aygıttan bir kare çekmek için kullanabileceğiniz V4L / UVC (çoğu) tarafından desteklenen bir kameradan bahsediyoruz :

streamer -f jpeg -o image.jpeg

Sağol Oli. WEBCAM adlı bir web kamerası programı bilmiyordum (İroni ...) vardı. Ve evet, web kamerası V4L destekli listesinde.
Luis Alvarado

46

Fswebcam olarak adlandırılan web kamerasından görüntüleri yakalamak için kullanılabilecek başka bir uygulama daha var . ile yükleyebilirsiniz

sudo apt-get install fswebcam

Aşağıdaki komutla bir örnek çekimi yapabilirsiniz.

fswebcam -r 640x480 --jpeg 85 -D 1 web-cam-shot.jpg

Yukarıdaki kod sözdiziminde, -rGörüntü çözünürlüğü, --jpeggörüntünün biçim türünü 85ve kalite standardını gösterir, -Dyakalamadan önce ayarlanan gecikmeyi ifade eder.

Şimdi resminiz sonunda web-cam-shot.jpg adıyla kaydedildi.

Umarım yardımcı olur.


9
Benim durumumda, test makinem, resmi düzeltmek için çerçeveleri atlamam gerekti. İlk kareleri çekersem, kamera henüz hazır olmadığı için resim çok karanlık. fswebcam -r 640x480 --jpeg 100 -D 3 -S 13 fswebcam.jpg
msmafra

tenshimsm fswebcam ile neyin yanlış olduğunu bulmak için 10 dakika harcadım ve daha sonra paketi çıkardım. Sadece yaklaşımınızı denemek için tekrar yükledim, 30 kare benim için çalıştı. Thanks :)
Chirag Bhatia - chirag64

5,99 € kanama kenarım sayesinde Sodial webcam, avconvdaha iyi çalışır.
Avio

Yararlı yaralarim şudur: v4lctl bright 50% # apt-get install xawtv
Grzegorz Wierzowiecki

--no-banner (alt başlığı zaman damgasıyla kaldırır)
João Cartucho

20

avconvVeya tuşunu kullanarak ffmpegcihazınızdan bir çerçeve de yakalayabilirsiniz. Örneğin:

avconv -f video4linux2 -s 640x480 -i /dev/video0 -ss 0:0:2 -frames 1 /tmp/out.jpg

veya

ffmpeg -f video4linux2 -s 640x480 -i /dev/video0 -ss 0:0:2 -frames 1 /tmp/out.jpg

Bu, uyumlu bir cihaz /dev/video0olarak açılacak video4linux2, çözünürlüğü ayarlayacak 640x480, 2 saniye akacak ( 00:00:02veya basitçe 2), sonra onetek kareyi yakalayarak kaydedecektir /tmp/out.jpg.

Cihazınızın sizin /dev/video0için farklı olabileceğinden emin olun.

Mevcut çözünürlükler web kameranıza göre değişir. Mine 640x480'e kadar çıkıyor ve qv4l2bir video4linux2 cihazı yapılandırmak için kullanılan bir araçla kontrol ettim .

-ssParametre cihazı doğru bir şekilde başlatmak için izin vermek için kullanılır. Testlerimde, kamera açılırken bir solma efekti var, bu yüzden, sadece atlarsam -ss 2, çekilen çerçeve çok karanlık olacak.


Avconv'u zaten kurduğum için bu çözümü tercih ettim. Ayrıca, avconv çıktısı, v4l sürücüsü daha düşük bir spesifikasyona geri dönmesi gerekip gerekmediğini gösterdiği gibi, maksimum çözünürlüğe de ipucu verir.
buzlu su

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.