מודול מצלמה OV5640 FPC

מודול המצלמה OV5640 FPC הוא חיישן צבע 5MP קומפקטי מסוג rolling-shutter עם מיקוד אוטומטי. הוא מותקן על לוחות הבסיס של OpenMV Cam דרך מחבר לוח-ללוח עבור בנייה דקה במיוחד.

OV5640

ל-datasheet המלא, תמונות והזמנה ראו את עמוד המוצר OV5640.

הערה

אינו נתמך ב-OpenMV N6 בשלב זה.

עיקרי הדברים

  • חיישן 5MP (2592x1944) מסוג rolling-shutter

  • מיקוד אוטומטי, צמצם 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 יש עדשת מיקוד אוטומטי המופעלת על ידי מנוע סליל קולי (voice-coil-actuator). הפעילו מעבר מיקוד אוטומטי יחיד באמצעות csi.CSI.ioctl עם csi.IOCTL_TRIGGER_AUTO_FOCUS — החיישן סורק את מנוע המיקוד פעם אחת ונועל על מה שנמצא מולו:

csi0.ioctl(csi.IOCTL_TRIGGER_AUTO_FOCUS)

הוציאו מחדש את ה-ioctl בכל פעם שהסצנה משתנה — המיקוד האוטומטי הוא חד-פעמי, לא רציף.