Модуль камери 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 щоразу, коли змінюється сцена — автофокус є однократним, а не безперервним.