Voglio poter scattare una foto utilizzando la webcam dal terminale. Questa immagine verrà quindi salvata in un file. Come si può fare?
Voglio poter scattare una foto utilizzando la webcam dal terminale. Questa immagine verrà quindi salvata in un file. Come si può fare?
Se stai cercando qualcosa di automatico webcam
è abbastanza decente. Ha molte opzioni per spingere le foto su Internet.
Se vuoi qualcosa di più manuale e stiamo parlando di una fotocamera supportata da V4L / UVC (la maggior parte di questi) puoi utilizzare streamer
per acquisire un frame dal dispositivo:
streamer -f jpeg -o image.jpeg
C'è un'altra applicazione che può essere utilizzata per catturare le immagini dalla webcam denominata come Fswebcam . puoi installarlo con
sudo apt-get install fswebcam
puoi fare un esempio con il seguente comando.
fswebcam -r 640x480 --jpeg 85 -D 1 web-cam-shot.jpg
Nella sintassi del codice sopra, -r
sta per Image resolution, --jpeg
stand per il tipo di formato dell'immagine & amp; 85
per il suo standard di qualità, -D
sta per delay set before capture.
Ora la tua immagine è finalmente salvata con il nome di web-cam-shot.jpg.
Spero che ti aiuti.
Usando avconv
o ffmpeg
, puoi anche catturare un fotogramma dal tuo dispositivo. Ad esempio:
avconv -f video4linux2 -s 640x480 -i /dev/video0 -ss 0:0:2 -frames 1 /tmp/out.jpg
o
ffmpeg -f video4linux2 -s 640x480 -i /dev/video0 -ss 0:0:2 -frames 1 /tmp/out.jpg
Questo aprirà /dev/video0
come dispositivo compatibile video4linux2
, imposta la risoluzione su 640x480
, stream per 2 secondi ( 00:00:02
o semplicemente 2
), quindi cattura one
frame singolo, salvandolo a /tmp/out.jpg
.
Verifica se il tuo dispositivo è /dev/video0
, in quanto può essere diverso per te.
Le risoluzioni disponibili dipendono dalla tua webcam. Il mio va fino a 640x480 e l'ho controllato con uno strumento chiamato qv4l2
, che è usato per configurare un dispositivo video4linux2.
Il parametro -ss
viene utilizzato per consentire al dispositivo di avviarsi correttamente. Qui nei miei test, c'è un effetto di dissolvenza durante l'accensione della fotocamera, quindi, se ometto solo -ss 2
, la cornice catturata sarà molto scura.
Puoi anche provare uvccapture .
uvccapture -m
Leggi altre domande sui tag command-line webcam