v1.6.0

v1.6.0 يضيف وحدة زمن الطيران (tof)، وimage.find_displacement() (تدفق بصري بارتباط طور FFT)، وواجهة برمجة تجميع (pooling) للصور، وsensor.set_windowing()، وخيارات بحث image.find_template(). أصبحت find_template() الآن تفرض منطقة اهتمامها — اقرأ التغييرات الكاسرة أدناه.

أبرز النقاط

  • وحدة tof — دعم مستشعر المسافة بزمن الطيران.

  • image.find_displacement() — ارتباط طور FFT (تدفق بصري).

  • التجميعmidpoint_pool() / mean_pool() والمتغيّرات المجمّعة.

  • sensor.set_windowing() — نوفذة / تجميع المستشعر، مع أحجام إطارات جديدة منخفضة الدقة.

  • find_template() — أُضيفت خيارات step / search (SEARCH_EX / SEARCH_DS) / roi.

  • كاسر: أصبحت image.find_template() الآن تفرض منطقة اهتمام صالحة — راجع التغييرات الكاسرة.

ميزات جديدة

  • tof — أُضيفت وحدة زمن الطيران مع tof.init() / tof.deinit() / tof.read_frame() / tof.draw_frame() / tof.write_reg() (دعم مستشعر ToF عبر I2C).

  • image.find_displacement() — أُضيف إزاحة بارتباط طور FFT (مع دقة دون البكسل وجودة النتيجة)، مع مثال للتدفق البصري.

  • التجميع — أُضيفت Image.midpoint_pool() / midpoint_pooled() / mean_pool() / mean_pooled().

  • sensor.set_windowing((x, y, w, h)) — نوفذة/تجميع المستشعر، مع أحجام إطارات جديدة sensor.B40x30 / B64x32 / B64x64 للتدفق البصري.

  • image.find_template() — أُضيفت وسائط مفتاحية step وsearch (image.SEARCH_EX الافتراضي / image.SEARCH_DS بحث ماسي سريع) وroi.

  • Image.copy_to_fb() — نسخ صورة إلى مخزن الإطارات (مع إزاحة اختيارية (x, y)) ومثال copy2fb.py.

تغييرات وتحسينات أخرى

  • يُحسّن البحث الماسي في find_template() خطوته بدقة أكبر (أكثر دقة، أبطأ)؛ ويُمكَّن التجميع تلقائياً لأحجام الإطارات فوق VGA على OpenMV 2؛ ويُعطَّل التكبير/التحجيم التلقائي عند VGA على OV7725.

إصلاحات الأخطاء

  • أُصلحت حسابات الصورة التكاملية والصورة التكاملية المربّعة (المؤثّرة في دقة Haar / الميزات / مطابقة القوالب)، وFFT أحادي/ثنائي الأبعاد وارتباط الطور، وتغيير حجم مخزن الإطارات عند التجميع في المكان.

العتاد ودعم اللوحات

  • مستشعر مسافة زمن الطيران (ToF) عبر I2C.

  • أحجام إطارات جديدة منخفضة الدقة (B40x30 / B64x32 / B64x64) للتدفق البصري.

تغييرات واجهة البرمجة الكاسرة

الكسور في واجهة البرمجة المرئية للمستخدم بين v1.5.0 وv1.6.0. النطاق: وحدات Python بلغة C في modules/ ومكتبات Python في scripts/libraries/.

التغيير الكاسر هو تغيير في السلوك (واجهة برمجة واحدة، نتيجة مختلفة) — أعد فحص البرامج النصية المتأثرة. يرتبط كل تجزئة (hash) للالتزام بفرقه (diff) على GitHub.

image.find_template() تفرض منطقة اهتمامها (سلوك)

أصبحت image.find_template() الآن تتحقق من منطقة اهتمامها وتطلق استثناءً ("Region of interest is bigger than image!") عندما تكون منطقة الاهتمام غائبة/مفرطة الحجم أو أصغر من القالب. مرّر roi=(x, y, w, h) صالحة لا تقلّ عن حجم القالب وتتسع داخل الصورة.

الالتزامات: a25e0c162

قائمة مراجعة الترحيل

مرّر roi صالحة (≥ حجم القالب، داخل الصورة) إلى image.find_template() (تغيير find_template). تعمل جميع البرامج النصية الأخرى دون تغيير.