PYTHON PICAMRA
python-picamera
はラズベリーパイカメラモジュールと
Pythonとのインターフェースで、Python2.7(もしくはそれ以上)とPython3.2(もしくはそれ以上)
のバージョンで使用可能です。
このライブラリはDave Jonesによって制作されメンテナンスされています。
カメラのセットアップページも確認しておいてください。
インストール
python-picamera
ライブラリはRaspbianアーカイブで利用可能です。
apt
を使ってインストールしてください。
sudo apt-get update
sudo apt-get install python-picamera
Python3のパッケージはsudo apt-get install python3-picamera
でインストールできます。
オフラインのドキュメントは
sudo apt-get install python-picamera-docs
で利用可能です。
使い方
最初に、PythonプロンプトもしくはPythonスクリプトの一番上で、次を入力します。
import picamera
これでスクリプトからライブラリが利用可能になります。 それでは、PiCameraクラスのインスタンスを生成しましょう。
camera = picamera.PiCamera()
そして写真を撮ります。
camera.capture('image.jpg')
上下左右の反転
カメラが上下逆に置かれている場合には、
raspistill
コマンドと同じように、
上下左右の反転を適用します。
これをhflip
とvflip
プロパティを直接変更することで行います。
camera.hflip = True
camera.vflip = True
Pythonのキーワードになっていますので、True
のT
は大文字を使うようにしてください。
プレビュー
スクリーンにカメラフィードのプレビューを表示することができます。
警告: この処理はデフォルトでPythonのセッションと重なって表示されます。
プレビューの停止に問題があった場合には、
Pythonのセッションを終了させるためにCtrl+D
を押せば
たいていの場合は画面が元に戻ります。
camera.start_preview()
プレビュー画面を消して元の画面に戻すには、stop_preview
メソッドが使用できます。
camera.stop_preview()
SSHを使って別のコンピュータからラズベリーパイにアクセスし、 Pythonプロンプトを開いてこれらのコマンドを入力すると、 ラズベリーパイに接続されたモニタ(SSH接続にきている別のコンピュータのモニタではない)にプレビューを表示することができます。
カメラの設定
プロパティの値を設定することで、他にもカメラの設定を変更することができます。例えば、
camera.brightness = 70
これは明るさ設定をデフォルトの50
から70
に変更します
(設定値の範囲は0から100)。
他の設定も利用可能です。ここでは、それぞれのデフォルトの設定値を示します。
camera.sharpness = 0
camera.contrast = 0
camera.brightness = 50
camera.saturation = 0
camera.ISO = 0
camera.video_stabilization = False
camera.exposure_compensation = 0
camera.exposure_mode = 'auto'
camera.meter_mode = 'average'
camera.awb_mode = 'auto'
camera.image_effect = 'none'
camera.color_effects = None
camera.rotation = 0
camera.hflip = False
camera.vflip = False
camera.crop = (0.0, 0.0, 1.0, 1.0)
スリープ
time
モジュールのsleep
を使うことで
コマンドの間にスリープを入れることができます。
import picamera
from time import sleep
camera = picamera.PiCamera()
camera.capture('image1.jpg')
sleep(5)
camera.capture('image2.jpg')
プレビューで設定を調整するためにsleep
を使うこともできます。
camera.start_preview()
for i in range(100):
camera.brightness = i
sleep(0.2)
録画
5秒の動画を撮るには次のようにします。
camera.start_recording('video.h264')
sleep(5)
camera.stop_recording()
ドキュメント
python-picamera
の完全なドキュメントは
picamera.readthedocs.orgで利用可能です。
開発
python-picamera
プロジェクトはDave Jones
によって制作されメンテナンスされています。
ソースコードは github.com/waveform80/picamera
で確認でき、issueを作成したりプロジェクトに貢献することができます。
このページについて
このページはラズベリーパイ財団が権利を保有するRaspberry Pi Documentationを五十嵐システムズが日本語訳したものです。
Creative Commons Attribution 4.0 International Licenceのもとで公開されております。
原文はhttps://github.com/raspberrypi/documentationの成果によって作成されています。
なお、このページは2015年6月に翻訳しており、それ以後の更新内容は翻訳に反映していないため、内容が原文とは異なる場合があります。