Зробіть знімок з терміналу


58

Я хочу мати можливість сфотографуватися за допомогою веб-камери з терміналу. Це зображення буде збережено у файл. Як це можна зробити?

Відповіді:


32

Якщо ви шукаєте щось автоматизоване, webcamце досить пристойно. У ньому є безліч чудових варіантів для переміщення фотографій через Інтернет.

Якщо ви хочете щось більш посібник, і ми говоримо про камеру, підтримувану V4L / UVC (більшість з них), яку ви можете використовувати streamerдля зйомки кадру з пристрою:

streamer -f jpeg -o image.jpeg

Дякую Олі. Не знали, що існувала програма для веб-камер під назвою WEBCAM (Іронія ...). І так, веб-камера знаходиться у списку підтримуваних V4L.
Луїс Альварадо

46

Є ще одна програма, яка може бути використана для зйомки зображень із веб-камери, названої 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.

Сподіваюся, що це допомагає.


9
У моєму випадку, моїй тестовій машині, мені довелося пропустити кадри, щоб отримати правильне зображення. Якщо я зроблю перші кадри, фотографія дуже темна, тому що камера ще не була готова. fswebcam -r 640x480 --jpeg 100 -D 3 -S 13 fswebcam.jpg
msmafra

@tenshimsm я витратив 10 хвилин, щоб зрозуміти, що сталося з моєю fswebcam, а потім видалив пакунок. Встановив його знову лише для того, щоб спробувати ваш підхід, 30 кадрів працювали на мене. Дякую :)
Chirag Bhatia - chirag64

З моїм 5,99 € кровоточивим краєм Sodial веб-камера, avconvпрацює краще.
Авіо

що мені дуже корисно: v4lctl яскравий 50% # apt-get install xawtv
Grzegorz Wierzowiecki

--no-banner (знімає нижній банер із
позначкою

20

Використовуючи 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, захоплений кадр буде дуже темним.


Я віддав перевагу цьому рішенню, оскільки я вже встановив avconv. Крім того, вихід avconv також дає підказки на максимальну роздільну здатність, як показує драйвер v4l, якщо він повинен повернутися на нижчу специфікацію.
крижана вода

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.