v3.6.0¶
يجلب الإصدار v3.6.0 دعمًا كاملًا لكاميرا OV5640 بدقة 5 ميجابكسل مع أحجام إطارات جديدة عالية الدقة (HD / FHD / QHD / QXGA / WQXGA)، ويُحدِّث النواة إلى MicroPython 1.12، ويُحسِّن بشكل كبير مُرمِّز JPEG البرمجي وكشف AprilTag / الخطوط، ويضيف UVC (فيديو USB) على OpenMV Cam H7 Plus، ويدعم ذاكرة فلاش QSPI حتى 32 ميجابايت. وقد تغيّر سلوك MicroPython وget_histogram() — اقرأ التغييرات الكاسرة أدناه.
أبرز النقاط¶
OV5640 بدقة 5 ميجابكسل — برنامج تشغيل كامل للكاميرا مع أحجام إطارات جديدة HD / FHD / QHD / QXGA / WQXGA / WQXGA2.
MicroPython 1.12 — حُدِّثت النواة المرفقة.
خط أنابيب أسرع — تحسين كبير لترميز JPEG البرمجي، وكشف AprilTag، وكشف خطوط LSD، و
histeq()، وفك ترميز رموز QR.UVC على H7 Plus — يمكن لـ OpenMV Cam H7 Plus أن يعمل كجهاز فيديو USB.
تغيير كاسر: تغيّر سلوك MicroPython، وتسوية
image.get_histogram()، وخرج JPEG/تدرج الرمادي على OpenMV 3 — راجع التغييرات الكاسرة.
ميزات جديدة¶
OV5640 — أُضيف دعم كامل لكاميرا OV5640 بدقة 5 ميجابكسل (إعداد الساعة الخارجية في تهيئة المستشعر) وثوابت أحجام الإطارات الجديدة
sensor.HD/FHD/QHD/QXGA/WQXGA/WQXGA2.TIM4 — حُرِّر بحيث أصبح قابلًا للاستخدام من MicroPython.
أُضيف مثال للكتابة الموقوتة عبر DAC (
dac_write_timed.py) وأُعيدت تسميةdac_control.pyإلىdac_write.py.
تغييرات وتحسينات أخرى¶
تحديث MicroPython المرفق إلى 1.12؛ وتحسين كبير لمُرمِّز JPEG البرمجي (مسار VGA، ومسارات تدرج الرمادي/الثنائي، وحساب صحيح بدلًا من حساب الفاصلة العائمة، وتحسين التقاط MCU)، و
find_line_segments()الخاص بـ LSD، وكشف AprilTag، وImage.histeq()، وتحويل رموز QR / RGB إلى تدرج الرمادي؛ وإضافة دعم ذاكرة فلاش QSPI للرقائق حتى 32 ميجابايت؛ وإزالة مثال CMSIS-CNNcnn.pyالقديم.
إصلاح الأخطاء¶
الكاميرا والتصوير:
إصلاح فساد ترميز JPEG عند HQQQVGA، وضغط الصور الثنائية (1 بت) ← JPEG، وانحدار في
find_line_segments()(إعادة تمكين فحصNOTDEFغير المحاذى)، ومشكلات طفيفة في برنامج تشغيل OV2640.
النظام والإقلاع:
إصلاح فساد الاختبار الذاتي / نظام الملفات (يعمل
selftest.pyالآن قبل تمكين USB MSC، ويُمكَّن USB MSC عند حدوث خطأ فادح بحيث يستطيع المضيف قراءة سجل الأخطاء)، وwrite_timed()الخاص بـpyb.DAC، وتوقيتاتmachine.I2Cعلى H7، وإعادة تمكين overdrive في F7 بعد وضع الإيقاف، وفاصلrtc.wakeup()فيstop_mode.py.
العتاد ودعم اللوحات¶
OV5640 — برنامج تشغيل كامل لكاميرا 5 ميجابكسل مع أحجام إطارات عالية الدقة.
OpenMV Cam H7 Plus — دعم UVC (فيديو USB)؛ وأُعيدت تسمية هدف اللوحة
OPENMV4RإلىOPENMV4P.ذاكرة فلاش QSPI — أصبحت الرقائق حتى 32 ميجابايت مدعومة الآن.
تغييرات كاسرة في واجهة البرمجة (API)¶
كسور مرئية للمستخدم في واجهة البرمجة بين v3.5.2 و v3.6.0. النطاق: وحدات Python بلغة C في modules/ ومكتبات Python في scripts/libraries/.
التغييرات الكاسرة الثلاثة جميعها تغييرات سلوك (واجهة البرمجة نفسها، نتائج مختلفة) — أعد فحص البرامج النصية المتأثرة. ويرتبط كل تجزئة (hash) للالتزام بفرقه (diff) على GitHub.
تحديث MicroPython إلى 1.12 (سلوك)¶
حُدِّثت نواة MicroPython المرفقة إلى 1.12. ويتبع سلوك المكتبة القياسية واللغة إصدار MicroPython 1.12 الأصلي؛ أعد فحص البرامج النصية التي تعتمد على سلوك micropython / الوحدات القياسية الخاص بإصدار محدد.
الالتزامات: eafd431ea
تغيّرت تسوية العتبة في image.get_histogram() (سلوك)¶
تُسوّي image.get_histogram() (وget_statistics()) مع عتبات الألوان الآن بحسب عدد البكسلات المُعتَّبة بدلًا من منطقة الاهتمام بأكملها، وتستخدم الأرضية (floor) بدلًا من التقريب لفهرسة الخانات. وتختلف قيم المدرج التكراري/الإحصاءات للاستدعاءات المُعتَّبة عن الإصدارات السابقة — أعد ضبط الشيفرة التي قارنت بقيم مدرج تكراري مطلقة.
الالتزامات: 7cf0f8089
تغيّر خرج JPEG/تدرج الرمادي على OpenMV 3 (سلوك)¶
لتوفير ذاكرة الفلاش، عُطِّل جدول البحث YUV على OpenMV 3 (M7)، لذا تُحسب قيم بكسلات خرج JPEG وتدرج الرمادي على نحو مختلف قليلًا على OpenMV 3. ولا يزال الخرج صالحًا لكنه يختلف اختلافًا طفيفًا عن الإصدارات السابقة؛ أعد فحص المقارنات الدقيقة على مستوى البكسل على OpenMV 3.
الالتزامات: 0e4b46e41
قائمة التحقق للترحيل¶
أعد التحقق من البرامج النصية التي تعتمد على سلوك MicroPython الخاص بإصدار محدد مقابل 1.12 (ترقية MicroPython)، وأعد ضبط الشيفرة التي قارنت بقيم get_histogram() / get_statistics() المطلقة عند استخدام عتبات الألوان (تغيير المدرج التكراري)، وأعد فحص المقارنات الدقيقة على مستوى البكسل على OpenMV 3 (تغيير خرج OpenMV 3). وتعمل جميع البرامج النصية الأخرى دون تعديل.