Modul Cameră cu obturator global¶
Modulul Camerei cu obturator global este un senzor monocrom care captează mișcarea rapidă fără artefacte de obturator rulant. Potrivit pentru urmărire de mare viteză, drone și instantanee de viziune artificială. Modulul vine fie cu senzorul MT9V024, fie cu MT9V034.
Pentru fișa tehnică completă, fotografii și comenzi, consultați pagina de produs a Modulului Cameră cu obturator global.
Caracteristici principale¶
senzor monocrom cu obturator global, 752x480
80 FPS la QVGA, 200 FPS la QQVGA, 400 FPS la QQQVGA
interval dinamic de 55 dB
Compatibil cu toate plăcile de bază modulare OpenMV Cam
Utilizare¶
Transmiteți flux video în tonuri de gri la 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())
Senzorul activează automat gruparea pixelilor (binning) la rezoluții mai mici — 2x la QVGA (320x240) sau mai mic, 4x la QQVGA (160x120) sau mai mic — ceea ce reduce proporțional timpul de citire și crește rata de cadre. Camera trebuie totuși să integreze lumina pentru fereastra de expunere solicitată, așa că asociați reducerea dimensiunii cadrului cu o limită de expunere mai scurtă prin csi.CSI.auto_exposure pentru a atinge efectiv ratele mai mari (imaginea va fi mai întunecată — planificați iluminare suplimentară):
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())
Modul declanșat aliniază integrarea pixelilor exact cu fiecare apel csi.CSI.snapshot, astfel încât capturile se sincronizează cu instantaneul, mai degrabă decât cu tactul de cadru liber al camerei — util pentru sincronizarea cu un eveniment extern sau cu un alt senzor. Activați-l prin csi.CSI.ioctl cu csi.IOCTL_SET_TRIGGERED_MODE — rata de cadre scade la aproximativ jumătate față de modul liber, deoarece citirea nu se mai suprapune cu integrarea cadrului următor:
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())