Chcę móc zrobić zdjęcie za pomocą kamery internetowej z terminala. Ten obraz zostanie następnie zapisany w pliku. Jak można to zrobić?
command-line
webcam
Luis Alvarado
źródło
źródło
Istnieje inna aplikacja, której można użyć do przechwytywania obrazów z kamery internetowej o nazwie Fswebcam . możesz to zainstalować za pomocą
możesz wykonać próbny strzał za pomocą następującego polecenia.
W powyższej składni kodu
-r
oznacza rozdzielczość obrazu,--jpeg
oznacza typ formatu obrazu, a85
jego standard jakości-D
oznacza opóźnienie ustawione przed przechwyceniem.Teraz twój obraz został ostatecznie zapisany pod nazwą web-cam-shot.jpg.
Mam nadzieję, że to pomaga.
źródło
fswebcam -r 640x480 --jpeg 100 -D 3 -S 13 fswebcam.jpg
avconv
działa lepiej.--no-banner
(usuwa dolny baner ze znacznikiem czasu)Za pomocą
avconv
lubffmpeg
możesz także przechwycić ramkę z urządzenia. Na przykład:lub
Otworzy się to
/dev/video0
jakovideo4linux2
kompatybilne urządzenie, ustawi rozdzielczość640x480
, przesyła strumieniowo przez 2 sekundy (00:00:02
lub po prostu2
), a następnie przechwytujeone
pojedynczą klatkę, zapisując ją/tmp/out.jpg
.Sprawdź, czy Twoje urządzenie jest
/dev/video0
, ponieważ może być inne.Dostępne rozdzielczości zależą od kamery internetowej. Mój idzie do 640x480 i sprawdziłem to za pomocą narzędzia o nazwie
qv4l2
, które służy do konfiguracji urządzenia video4linux2.Ten
-ss
parametr umożliwia prawidłowe uruchomienie urządzenia. Tutaj, w moich testach, efekt włączania pojawia się podczas włączania aparatu, więc jeśli tylko pominę-ss 2
, przechwycona klatka będzie bardzo ciemna.źródło
Możesz także spróbować uvccapture .
źródło