Модуль камери OV5640 FPC¶
Модуль камери OV5640 FPC — це компактний 5-мегапіксельний кольоровий датчик із ковзним затвором та автофокусом. Він кріпиться до базових плат OpenMV Cam через роз’єм плата-до-плати для малогабаритних конструкцій.
Для повного технічного паспорту, фотографій та замовлення перегляньте сторінку продукту OV5640.
Примітка
Наразі не підтримується на OpenMV N6.
Особливості¶
5MP (2592x1944) датчик із ковзним затвором
Автофокус, діафрагма F2.0, змінна фокусна відстань
Використання¶
Потокова передача відео QVGA (320x240) RGB565 — OV5640 працює як звичайний модуль камери для будь-якого конвеєра обробки зображень:
import csi
import time
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.RGB565)
csi0.framesize(csi.QVGA)
clock = time.clock()
while True:
clock.tick()
img = csi0.snapshot()
print(clock.fps())
OV5640 також має вбудований компресор JPEG — встановіть pixformat на csi.JPEG, і датчик передає стислі кадри безпосередньо до OpenMV Cam через шину камери, звільняючи хост для обробки замість кодування. Керуйте якістю стиснення (0-100) за допомогою csi.CSI.quality — вищі значення зберігають більше деталей ціною більших кадрів.
Захват кадрів JPEG з роздільною здатністю 1280x720 (HD):
import csi
import time
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.JPEG)
csi0.framesize(csi.HD)
csi0.quality(90)
clock = time.clock()
while True:
clock.tick()
img = csi0.snapshot()
print(clock.fps())
Захват кадрів JPEG з роздільною здатністю 1920x1080 (FHD):
import csi
import time
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.JPEG)
csi0.framesize(csi.FHD)
csi0.quality(90)
clock = time.clock()
while True:
clock.tick()
img = csi0.snapshot()
print(clock.fps())
Захват кадрів JPEG з повними 5MP — 2592x1944 (WQXGA2):
import csi
import time
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.JPEG)
csi0.framesize(csi.WQXGA2)
csi0.quality(90)
clock = time.clock()
while True:
clock.tick()
img = csi0.snapshot()
print(clock.fps())
OV5640 має об’єктив автофокусу з голосовим котушковим приводом. Запустіть однократний прохід автофокусу через csi.CSI.ioctl з csi.IOCTL_TRIGGER_AUTO_FOCUS — датчик один раз переміщує мотор фокусування та фіксується на об’єкті перед ним:
csi0.ioctl(csi.IOCTL_TRIGGER_AUTO_FOCUS)
Повторно надсилайте ioctl щоразу, коли змінюється сцена — автофокус є однократним, а не безперервним.