raspistill コマンドを使った写真撮影
Raspberry Pi のアクセサリとして発売されている Camera Module V2 を使って写真を撮影してみます。「Raspberry Pi Camera Module V2 で写真と動画を撮影する」では、 Python の Picamera パッケージを使いましたが、ここではデフォルトで用意されている raspistill コマンドを使って写真を撮影してみます。
環境
- Raspberry Pi 3 model B+
準備
はじめに、 Camera Module V2 を Raspberry Pi に接続します。
カメラモジュールは、フラットケーブルの先に小さな基盤がついた小さな部品になります。
![Camera Module V2](/assets/img/raspberry_pi/pi_camera_v2_01.png)
Raspberry Pi 本体にカメラを接続するコネクタがあるので接続します。
![カメラ用コネクター](/assets/img/raspberry_pi/raspberry_pi3bp.png)
インターフェイスの有効化
ハードウェアの準備ができたら、カメラインターフェイスを有効にします。
ターミナルを起動し、次のコマンドを実行します。
$ sudo raspi-config
[5. Iterfacing Options] - [P1. Camera] を選択し、カメラを有効にします。
![Iterfacing Options](/assets/img/raspberry_pi/raspi_config01.png)
![Camera の有効化](/assets/img/raspberry_pi/raspi_config02.png)
vcgencmd コマンドを使用してカメラモジュールが正しく動作しているか確認します。
$ vcgencmd get_camera
supported=1 detected=1
カメラが認識されていること、「supported=1 detected=1」と表示されます。
写真を撮影してみる
カメラモジュールが正常に認識できていることを確認できたので写真を撮影してみます。
ターミナルで「 sudo raspistill -o image.jpg 」と入力し raspistill コマンドを実行します。
$ sudo raspistill -o image.jpg
コマンドを実行すると撮影された画像が画面上に5秒ほど表示され、Home ディレクトリに image.jpg が保存されます。(リモート接続の場合は、プレビューされないようです。)
raspistill コマンドには、多くのオプションが用意されており ISO 感度など指定して撮影することもできます。
$ sudo raspistill -ISO 400 -o image.jpg
エフェクトもかけられるようです。
画像に関するオプション(Image parameter commands)
引数 | 設定内容 |
---|---|
-q, –quality | jpeg の品質 (0 - 100) |
-r, –raw | jpeg メタデータに Bayer 配列データを追加する |
-l, –latest | 最新の完全なイメージをファイル名>filename<にリンクします。 |
-t, –timeout | 撮影までの時間をミリ秒単位で指定する。指定しない場合は5秒。 |
-th, –thumb | サムネイルパラメータを設定 (x:y:quality) |
-d, –demo | デモモードで実行する。撮影は行わない。 |
-e, –encoding | 出力ファイルのエンコード指定 (jpg, bmp, gif, png) |
-x, –exif | EXIFタグの指定 (‘key=value’の形式) |
-tl, –timelapse | ミリ秒で指定した間隔でこま撮り。%dはフレーム番号。 (Try: -o img_%04d.jpg) |
-fp, –fullpreview | 撮影する写真とモニターに映るプレビュー画面を同じサイズにする。 |
-k, –keypress | ENTER キーで撮影し、X キーを押してから ENTER キーで終了します。 |
-s, –signal | 別のプロセスからの SIGUSR1 または SIGUSR2 を待つ |
-g, –gl | ビデオレンダリングコンポーネントを使用する代わりに、プレビューをテクスチャに描画します。 |
-gc, –glcapture | カメライメージの代わりにGLフレームバッファをキャプチャします。 |
-bm, –burst | ‘バーストキャプチャモード’を有効にします。 |
-dt, –datetime | 出力パターン(%d)を DateTime ( MonthDayHourMinSec )に置き換えます。 |
-ts, –timestamp | 出力パターン(%d)を UNIX のタイムスタンプ(1970年以降の秒数)で置き換えます。 |
-fs, –framestart | 出力パターンの開始フレーム番号(%d) |
-rs, –restart | JPEG再起動間隔(noneの場合はデフォルトの0) |
共通設定に関するオプション(Common Settings commands)
引数 | 設定内容 |
---|---|
-?, –help | ヘルプ |
-w, –width | イメージの幅を設定 |
-h, –height | イメージの高さを設定 |
-o, –output | 出力ファイル名(stdoutに書き込むには ‘-o -‘を使います。) |
-v, –verbose | 実行中に詳細情報を出力します。 |
-cs, –camselect | カメラの選択(番号) |
-md, –mode | センサーモードの指定 |
-gps, –gpsdexif | リアルタイムのGPS情報を出力します。 |
プレヴューに関するオプション(Preview parameter commands)
引数 | 設定内容 |
---|---|
-p, –preview | プレビューウィンドウの設定>‘x,y,w,h’< |
-f, –fullscreen | フルスクリーンプレビューモードを指定 |
-op, –opacity | プレビューウィンドウの不透明度(0-255) |
-n, –nopreview | プレビューウィンドウを表示しません。 |
画質?画像?に関するオプション(Image parameter commands)
引数 | 設定内容 |
---|---|
-sh, –sharpness | 画像のシャープネスを設定(-100 - 100) |
-co, –contrast | 画像コントラストを設定(-100 - 100) |
-br, –brightness | 画像の明るさを設定 (0 - 100) |
-sa, –saturation | 画像の彩度を設定(-100 to 100) |
-ISO, –ISO | ISOを設定 |
-vs, –vstab | 手振れ補正 |
-ev, –ev | EV補償を設定する - 1/6ストップのステップ |
-ex, –exposure | 露出モードを設定 |
-fli, –flicker | Set flicker avoid mode |
-awb, –awb | AWBモードを設定 |
-ifx, –imxfx | イメージ効果を設定 |
-cfx, –colfx | 色効果を設定する(U:V) |
-mm, –metering | 測光モードを設定 |
-rot, –rotation | 画像回転を設定(0 - 359) |
-hf, –hflip | 水平フリップを設定 |
-vf, –vflip | 垂直フリップを設定 |
-roi, –roi | Set region of interest (x,y,w,d as normalised coordinates [0.0-1.0]) |
-ss, –shutter | マイクロ秒単位でシャッタースピードを設定 |
-awbg, –awbgains | AWBゲインを設定 - AWBモードをオフにする必要があります |
-drc, –drc | DRCレベルを設定 |
-st, –stats | Force recomputation of statistics on stills capture pass |
-a, –annotate | 注釈フラグまたはテキストを有効または無効にする。 |
-3d, –stereo | 立体モードを選択する |
-dec, –decimate | ステレオイメージの半分の幅/高さ |
-3dswap, –3dswap | カメラの順番を入れ替える |
-ae, –annotateex | Set extra annotation parameters (text size, text colour(hex YUV), bg colour(hex YUV), justify, x, y) |
-ag, –analoggain | Set the analog gain (floating point) |
-dg, –digitalgain | Set the digital gain (floating point) |
-set, –settings | Retrieve camera settings and write to stdout |
露出モードのオプション
- off
- auto
- night
- nightpreview
- backlight
- spotlight
- sports
- snow
- beach
- verylong
- fixedfps
- antishake
- fireworks
AWBモードのオプション
- off
- auto
- sun
- cloud
- shade
- tungsten
- fluorescent
- incandescent
- flash
- horizon
画像エフェクトモードのオプション
- none
- negative
- solarise
- sketch
- denoise
- emboss
- oilpaint
- hatch
- gpen
- pastel
- watercolour
- film
- blur
- saturation
- colourswap
- washedout
- posterise
- colourpoint
- colourbalance
- cartoon
測光モードのオプション
- average
- spot
- backlit
- matrix
ダイナミックレンジ圧縮(DRC)オプション
- off
- low
- med
- high