Я хочу иметь возможность сделать снимок с помощью веб-камеры с терминала. Затем это изображение будет сохранено в файл. Как это можно сделать?
Существует еще одно приложение, которое можно использовать для захвата изображений с веб-камеры под названием Fswebcam. вы можете установить это с помощью
sudo apt-get install fswebcam
вы можете сделать пробный снимок с помощью следующей команды.
fswebcam -r 640x480 --jpeg 85 -D 1 web-cam-shot.jpg
В приведенном выше синтаксисе кода , -r
расшифровывается как Разрешение изображения , --jpeg
подставка для типа формата изображения & 85
за его стандарт качества, -D
обозначает задержку, установленную перед захватом.
Теперь ваше изображение, наконец, сохранено с помощью web-cam-shot.jpg имя.
Надеюсь, это поможет.
Если вы ищете что-то автоматизированное webcam
это довольно прилично. В нем есть множество прекрасных опций для отправки фотографий через Интернет.
Если вам нужно что-то более ручное, и мы говорим о камере, поддерживаемой V4L / UVC (большинство из них), вы можете использовать streamer
чтобы захватить кадр с устройства:
streamer -f jpeg -o image.jpeg
С помощью avconv
или ffmpeg
, вы также можете захватить кадр со своего устройства. Например:
avconv -f video4linux2 -s 640x480 -i /dev/video0 -ss 0:0:2 -frames 1 /tmp/out.jpg
или
ffmpeg -f video4linux2 -s 640x480 -i /dev/video0 -ss 0:0:2 -frames 1 /tmp/out.jpg
Это откроет /dev/video0
как video4linux2
совместимое устройство, настройте разрешение на 640x480
, поток в течение 2 секунд (00:00:02
или просто 2
), затем захватите one
один кадр, сохраняя его в /tmp/out.jpg
.
Проверьте, работает ли ваше устройство /dev/video0
, так как для вас это может быть по-другому.
Доступные разрешения зависят от вашей веб-камеры. Мой достигает 640x480, и я проверил его с помощью инструмента под названием qv4l2
, который используется для настройки устройства video4linux2.
То -ss
параметр используется для обеспечения правильного запуска устройства. Здесь, в моих тестах, наблюдается эффект затухания при включении камеры, поэтому, если я просто опущу -ss 2
, захваченный кадр будет очень темным.
Вы также можете попробовать uvccapture.
uvccapture -m