RaspberryPi picamera - eiichiromomma/CVMLAB GitHub Wiki

(RaspberryPi) picamera

Pythonからカメラモジュールを制御するパッケージ

連続処理

Webcamのようにループで連続してメモリに読み取るにはio.BytesIOを用意してcapture_continuousに渡せば良い。その際にtruncate()とseek(0)が必要。

import io
import picamera
import numpy as np
import cv2

stream= io.BytesIO()
key=0
with picamera.PiCamera() as camera:
    for foo in camera.capture_continuous(stream,format='jpeg',use_video_port=True,resize=(640,480)):
        stream.truncate()
        stream.seek(0)
        data = np.fromstring(stream.getvalue(),dtype=np.uint8)
        image = cv2.imdecode(data,1)
        cv2.imshow('test',image)
        key=cv2.waitKey(100)
        if key == 27:
            break
cv2.destroyAllWindows()