Global Shutter kameramodul

A Global Shutter kameramodul egy monokróm érzékelő, amely gyors mozgást rögzít rolling-shutter műtermékek nélkül. Alkalmas nagy sebességű követéshez, drónokhoz és gépi látás pillanatképekhez. A modul vagy az MT9V024, vagy az MT9V034 érzékelővel kerül forgalomba.

Global Shutter kameramodul

A teljes adatlapot, fényképeket és rendelési információkat lásd a Global Shutter kameramodul termékoldalán.

Kiemelt jellemzők

  • 752x480 global-shutter monokróm érzékelő

  • 80 FPS QVGA-nál, 200 FPS QQVGA-nál, 400 FPS QQQVGA-nál

  • 55 dB dinamikatartomány

  • Kompatibilis az összes moduláris OpenMV Cam alaplappal

Használat

Szürkeárnyalatos videó streamelése 320x240 (QVGA) felbontásban:

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())

Az érzékelő alacsonyabb felbontásoknál automatikusan aktiválja a képpont-összevonást — 2x QVGA-nál (320x240) vagy kisebbnél, 4x QQVGA-nál (160x120) vagy kisebbnél —, ami arányosan csökkenti a kiolvasási időt és feljebb tolja a képkockasebességet. A kamerának azonban a kért expozíciós ablakhoz továbbra is integrálnia kell a fényt, ezért a framesize csökkentését párosítsd egy rövidebb expozíciós korláttal a csi.CSI.auto_exposure-on keresztül a magasabb sebességek tényleges eléréséhez (a kép sötétebb lesz — számolj extra megvilágítással):

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())

A triggerelt mód a képpont-integrációt pontosan minden egyes csi.CSI.snapshot híváshoz igazítja, így a felvételek a pillanatképhez szinkronizálódnak, nem pedig a kamera szabadon futó képkocka-órajeléhez — hasznos egy külső eseményhez vagy egy másik érzékelőhöz való szinkronizáláshoz. Engedélyezd a csi.CSI.ioctl-on keresztül a csi.IOCTL_SET_TRIGGERED_MODE-dal — a képkockasebesség nagyjából a szabadon futó mód felére esik, mert a kiolvasás már nem fut futószalagon a következő képkocka integrációjával:

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())