high_fps.py

# هذا العمل مرخص بموجب ترخيص MIT.
# حقوق النشر (c) 2013-2023 OpenMV LLC. جميع الحقوق محفوظة.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# مثال معدل إطارات عالٍ
#
# يوضح هذا المثال كيفية جعل معدل إطارات كاميرا الغالق الشامل
# عاليًا جدًا. للقيام بذلك تحتاج إلى تعيين الدقة إلى قيمة منخفضة بحيث يتم تفعيل تجميع البكسلات (pixel binning)
# على الكاميرا، ثم تقليل أقصى زمن للتعريض الضوئي.
#
# عندما تكون الدقة 320x240 أو أقل، تقرأ الكاميرا البكسلات بسرعة أكبر بمقدار الضعف. عندما تكون
# الدقة 160x120 أو أقل، تقرأ الكاميرا البكسلات بسرعة أكبر بأربعة أضعاف. يحدث هذا بسبب
# تجميع البكسلات الذي يتم تفعيله تلقائيًا لزيادة سرعة القراءة.
#
# بينما قد تزداد سرعة القراءة، يجب على الكاميرا مع ذلك تعريض الصورة للمدة
# المطلوبة، لذا لن تحصل على أقصى سرعة قراءة إلا إذا قللت زمن التعريض الضوئي أيضًا.
# ينتج عن ذلك صورة مظلمة، لذا تحتاج إلى الكثير من الإضاءة للحصول على معدل إطارات عالٍ.

import csi
import time

csi0 = csi.CSI()
csi0.reset()  # إعادة ضبط المستشعر وتهيئته.
csi0.pixformat(csi.GRAYSCALE)  # تعيين صيغة البكسل إلى GRAYSCALE
csi0.framesize(csi.QQVGA)  # تعيين حجم الإطار إلى QQVGA (160x120)
csi0.snapshot(time=2000)  # انتظر حتى تدخل الإعدادات حيز التنفيذ.
clock = time.clock()  # أنشئ كائن ساعة (clock) لتتبع معدل الإطارات (FPS).

csi0.auto_exposure(True, exposure_us=5000)  # اجعلها أصغر لتصبح أسرع

while True:
    clock.tick()  # تحديث ساعة معدل الإطارات (FPS).
    img = csi0.snapshot()  # التقاط صورة وإرجاعها.
    print(clock.fps())  # ملاحظة: تعمل كاميرا OpenMV بحوالي نصف السرعة عند الاتصال
    # بالـ IDE. يجب أن يزداد معدل الإطارات (FPS) بعد قطع الاتصال.

results matching ""

    No results matching ""