グローバルシャッターカメラモジュール

グローバルシャッターカメラモジュールは、ローリングシャッターのアーティファクトなしに高速な動きを捉えるモノクロセンサーです。高速トラッキング、ドローン、マシンビジョンのスナップショットに適しています。このモジュールには MT9V024 または MT9V034 センサーのいずれかが搭載されています。

グローバルシャッターカメラモジュール

完全なデータシート、写真、注文方法については、グローバルシャッターカメラモジュール製品ページ を参照してください。

主な特長

  • 752x480 のグローバルシャッターモノクロセンサー

  • QVGA で 80 FPS、QQVGA で 200 FPS、QQQVGA で 400 FPS

  • 55 dB のダイナミックレンジ

  • すべてのモジュラー型 OpenMV Cam ベースボードと互換性があります

使い方

320x240(QVGA)でグレースケールビデオをストリーミングします:

import csi
import time

csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.GRAYSCALE)
csi0.framesize(csi.QVGA)
clock = time.clock()

while True:
    clock.tick()
    img = csi0.snapshot()
    print(clock.fps())

センサーは低解像度で自動的にピクセルビニングを有効にします。QVGA(320x240)以下では 2x、QQVGA(160x120)以下では 4x となり、読み出し時間が比例して短縮されてフレームレートが上がります。ただし、要求された露出ウィンドウの間センサーは依然として光を積分する必要があるため、より高いレートを実際に達成するには、csi.CSI.auto_exposure で露出の上限を短くすることとフレームサイズの低下を組み合わせてください(画像は暗くなります。追加の照明を見込んでください):

import csi
import time

csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.GRAYSCALE)
csi0.framesize(csi.QQVGA)
csi0.snapshot(time=2000)  # let auto-exposure settle
csi0.auto_exposure(True, exposure_us=5000)  # cap exposure
clock = time.clock()

while True:
    clock.tick()
    img = csi0.snapshot()
    print(clock.fps())

トリガーモードでは、ピクセルの積分が各 csi.CSI.snapshot 呼び出しと正確に揃うため、カメラのフリーランニングなフレームクロックではなくスナップショットにキャプチャが同期します。外部イベントや別のセンサーと同期するのに役立ちます。csi.CSI.ioctlcsi.IOCTL_SET_TRIGGERED_MODE を指定して有効化します。読み出しが次のフレームの積分とパイプライン化されなくなるため、フレームレートはフリーランニングモードのおよそ半分に低下します:

import csi
import time

csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.GRAYSCALE)
csi0.framesize(csi.VGA)
csi0.snapshot(time=2000)

csi0.ioctl(csi.IOCTL_SET_TRIGGERED_MODE, True)

clock = time.clock()
while True:
    clock.tick()
    img = csi0.snapshot()
    print(clock.fps())