端末から写真を撮る


58

ターミナルからウェブカメラを使用して写真を撮ることができます。この画像はファイルに保存されます。これをどのように行うことができますか?

回答:


32

自動化されたものを探しているなら、webcamかなりまともです。インターネット上で写真をプッシュするための素敵なオプションがたくさんあります。

さらにマニュアルが必要な場合は、V4L / UVCでサポートされているカメラ(ほとんどの場合)を使用streamerして、デバイスからフレームをキャプチャすることができます。

streamer -f jpeg -o image.jpeg

オリありがとう。WEBCAM(The irony ...)というWebカメラプログラムが存在することを知りませんでした。そして、はい、ウェブカメラはV4Lサポートリストにあります。
ルイスアルバラード

46

Fswebcamという名前のWebカメラから画像をキャプチャするために使用できる別のアプリケーションがあります 。あなたはそれをインストールすることができます

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 14

@tenshimsm私はfswebcamの何が問題なのかを理解するのに10分費やし、パッケージを削除しました。あなたのアプローチを試すためだけに再びそれをインストールしました。30フレームが私のために働きました。ありがとう:)
チラグバティア-chirag64 14

私の5.99€の最先端のSodialウェブカメラを使用すると、avconvうまく機能します。
Avio

私が助けてくれたのは:v4lctl bright 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ドライバーがより低い仕様にフォールバックする必要があるかどうかを示すため、最大解像度のヒントも提供します。
アイスウォーター

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.