Meet YOLO26: next-gen vision AI.

Link to this sectionتصدير Rockchip RKNN لنماذج Ultralytics YOLO26#

عند نشر نماذج الرؤية الحاسوبية على الأجهزة المدمجة، خاصة تلك التي تعمل بمعالجات Rockchip، يعد الحصول على تنسيق نموذج متوافق أمراً أساسياً. يضمن تصدير نماذج Ultralytics YOLO26 إلى تنسيق RKNN أداءً محسناً وتوافقاً مع أجهزة Rockchip. سيرشدك هذا الدليل خلال عملية تحويل نماذج YOLO26 الخاصة بك إلى تنسيق RKNN، بما في ذلك عمليات التصدير بالفاصلة العائمة وتكميم INT8، مما يتيح النشر الفعال على منصات Rockchip.

Rockchip RKNN export for NPU deployment

ملاحظة

تم اختبار هذا الدليل باستخدام Radxa Rock 5B القائم على Rockchip RK3588 وRadxa Zero 3W القائم على Rockchip RK3566. من المتوقع أن يعمل عبر الأجهزة الأخرى القائمة على Rockchip والتي تدعم rknn-toolkit2 مثل RK3576 وRK3568 وRK3562 وRK2118 وRV1126B وRV1103 وRV1106 وRV1103B وRV1106B. تتطلب الأهداف التي تدعم INT8 فقط مثل RV1103 وRV1106 استخدام quantize=8.

Link to this sectionما هي Rockchip؟#

تشتهر Rockchip بتقديم حلول متنوعة وموفرة للطاقة، وتقوم بتصميم أنظمة متقدمة على رقاقة (SoCs) تشغل مجموعة واسعة من الإلكترونيات الاستهلاكية والتطبيقات الصناعية وتقنيات الذكاء الاصطناعي. بفضل بنيتها القائمة على ARM، ووحدات المعالجة العصبية (NPUs) المدمجة، ودعم الوسائط المتعددة عالي الدقة، تتيح أنظمة Rockchip SoCs أداءً فائقاً للأجهزة مثل الأجهزة اللوحية، والتلفزيونات الذكية، وأنظمة إنترنت الأشياء، وتطبيقات الذكاء الاصطناعي على الحافة. تقدم شركات مثل Radxa و ASUS و Pine64 و Orange Pi و Odroid و Khadas و Banana Pi مجموعة متنوعة من المنتجات القائمة على Rockchip SoCs، مما يزيد من وصولها وتأثيرها عبر أسواق متنوعة.

Link to this sectionمجموعة أدوات RKNN#

تعد RKNN Toolkit مجموعة من الأدوات والمكتبات التي توفرها Rockchip لتسهيل نشر نماذج التعلم العميق على منصات الأجهزة الخاصة بهم. RKNN، أو Rockchip Neural Network، هو التنسيق المملوك الذي تستخدمه هذه الأدوات. تم تصميم نماذج RKNN للاستفادة الكاملة من تسريع الأجهزة الذي توفره وحدة NPU (وحدة المعالجة العصبية) من Rockchip، مما يضمن أداءً عالياً في مهام الذكاء الاصطناعي على أجهزة مثل RK3588 و RK3566 و RV1103 و RV1106 والأنظمة الأخرى التي تعمل بمعالجات Rockchip.

Link to this sectionالميزات الرئيسية لنماذج RKNN#

تقدم نماذج RKNN العديد من المزايا للنشر على منصات Rockchip:

  • مُحسّنة لوحدة NPU: تم تحسين نماذج RKNN خصيصاً للعمل على وحدات NPU الخاصة بـ Rockchip، مما يضمن أقصى قدر من الأداء والكفاءة.
  • زمن انتقال منخفض: يقلل تنسيق RKNN من زمن انتقال الاستدلال، وهو أمر بالغ الأهمية للتطبيقات في الوقت الفعلي على أجهزة الحافة.
  • تخصيص خاص بالمنصة: يمكن تصميم نماذج RKNN لتناسب منصات Rockchip محددة، مما يتيح استخداماً أفضل لموارد الأجهزة.
  • كفاءة الطاقة: من خلال الاستفادة من أجهزة NPU المخصصة، تستهلك نماذج RKNN طاقة أقل من المعالجة القائمة على CPU أو GPU، مما يطيل عمر البطارية للأجهزة المحمولة.

Link to this sectionتثبيت نظام التشغيل على أجهزة Rockchip#

الخطوة الأولى بعد الحصول على جهاز يعتمد على Rockchip هي تثبيت نظام تشغيل بحيث يمكن للجهاز الإقلاع في بيئة عمل. في هذا الدليل، سنشير إلى أدلة البدء للجهازين اللذين اختبرناهما وهما Radxa Rock 5B و Radxa Zero 3W.

Link to this sectionالتصدير إلى RKNN: تحويل نموذج YOLO26 الخاص بك#

قم بتصدير نموذج Ultralytics YOLO26 إلى تنسيق RKNN وقم بتشغيل الاستدلال باستخدام النموذج المُصدّر.

ملاحظة

تأكد من استخدام جهاز كمبيوتر يعمل بنظام Linux قائم على بنية X86 لتصدير النموذج إلى RKNN لأن التصدير على الأجهزة القائمة على Rockchip (ARM64) غير مدعوم.

Link to this sectionالتثبيت#

لتثبيت الحزم المطلوبة، قم بتشغيل:

التثبيت
# Install the required package for YOLO26
pip install ultralytics

للحصول على تعليمات مفصلة وأفضل الممارسات المتعلقة بعملية التثبيت، تحقق من دليل تثبيت Ultralytics الخاص بنا. أثناء تثبيت الحزم المطلوبة لـ YOLO26، إذا واجهت أي صعوبات، فاستشر دليل المشكلات الشائعة للحصول على حلول ونصائح.

Link to this sectionالاستخدام#

ملاحظة

التصدير مدعوم حالياً لنماذج الكشف فقط. سيتم دعم المزيد من النماذج في المستقبل.

يدعم تنسيق RKNN أوضاع Export وPredict وValidate. يتم تشغيل الاستدلال والتحقق من الصحة على أجهزة NPU من Rockchip. قم بتصدير نموذجك، ثم حمّل النموذج المُصدّر لتشغيل الاستدلال أو التحقق من دقته. افتراضيًا، يستخدم تصدير RKNN مسار البناء ذي الفاصلة العائمة (quantize=16) لأهداف Rockchip التي تدعم FP16. استخدم quantize=8 لبناء نموذج RKNN مُكمَّم بـ INT8 باستخدام بيانات المعايرة. لا يوفر تصدير RKNN وضع FP32 منفصلاً؛ حيث لا يطلب الإعداد الافتراضي FP16 استخدام FP32.

التصدير
from ultralytics import YOLO

# Load a YOLO26 model
model = YOLO("yolo26n.pt")

# Export the model to RKNN format
model.export(format="rknn", name="rk3588")  # creates '/yolo26n_rknn_model'

# Export an INT8-quantized RKNN model with calibration data
model.export(format="rknn", name="rk3588", quantize=8, data="coco8.yaml")
التنبؤ
from ultralytics import YOLO

# Load the exported RKNN model
model = YOLO("./yolo26n_rknn_model")

# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
التحقق
from ultralytics import YOLO

# Load the exported RKNN model
model = YOLO("./yolo26n_rknn_model")

# Validate accuracy on the COCO8 dataset
metrics = model.val(data="coco8.yaml")

Link to this sectionوسائط التصدير#

الوسيطالنوعالافتراضيالوصف
formatstr'rknn'تنسيق الهدف للنموذج المُصدّر، مما يحدد التوافق مع بيئات نشر Rockchip.
imgszint أو tuple640حجم الصورة المطلوب لمدخل النموذج. يمكن أن يكون عدداً صحيحاً للصور المربعة أو زوجاً مرتباً (height, width) لأبعاد محددة.
batchint1يحدد حجم استدلال دفعة النموذج المصدر أو الحد الأقصى لعدد الصور التي سيعالجها النموذج المصدر في وقت واحد في وضع predict.
namestr'rk3588'يحدد هدف Rockchip. تدعم rk3588 وrk3576 وrk3566 وrk3568 وrk3562 وrk2118 وrv1126b نمط FP16 (عن طريق quantize=16 أو تركه دون تعيين) ونمط INT8 (عن طريق quantize=8)؛ بينما تقتصر rv1103 وrv1106 وrv1103b وrv1106b على نمط INT8 فقط (عن طريق quantize=8 أو تركه دون تعيين).
quantizeint أو strNoneدقة التكميم: يؤدي تركه دون تعيين أو استخدام 16 إلى بناء FP16 للأهداف التي تدعم FP16؛ ويؤدي تركه دون تعيين تلقائياً إلى تفعيل INT8 للأهداف التي تقتصر على INT8؛ بينما يقوم 8 ببناء INT8. تصدير RKNN لا يحتوي على وضع FP32 منفصل. يستبدل هذا علامات half/int8 التي أصبحت قديمة.
datastrNoneملف YAML الخاص بمجموعة البيانات المستخدم لمعايرة INT8. إذا تم حذفه مع quantize=8، تختار Ultralytics مجموعة بيانات المعايرة الافتراضية لمهمة النموذج.
fractionfloat1.0نسبة صور المعايرة المراد استخدامها لتكميم INT8.
devicestrNoneيحدد الجهاز للتصدير: GPU (device=0)، CPU (device=cpu).
نصيحة

يرجى التأكد من استخدام جهاز Linux x86 عند التصدير إلى RKNN.

لمزيد من التفاصيل حول عملية التصدير، تفضل بزيارة صفحة وثائق Ultralytics حول التصدير.

Link to this sectionنشر نماذج YOLO26 RKNN المُصدّرة#

بمجرد تصدير نماذج Ultralytics YOLO26 بنجاح إلى تنسيق RKNN، فإن الخطوة التالية هي نشر هذه النماذج على الأجهزة القائمة على Rockchip.

Link to this sectionالتثبيت#

لتثبيت الحزم المطلوبة، قم بتشغيل:

التثبيت
# Install the required package for YOLO26
pip install ultralytics

بمجرد التثبيت، قم بتشغيل الاستدلال والتحقق من الصحة على جهاز Rockchip الخاص بك تماماً كما هو موضح في قسم Usage أعلاه — يتم تحميل _rknn_model المُصدّر مباشرة باستخدام YOLO(...).

ملاحظة

إذا واجهت رسالة سجل تشير إلى أن إصدار وقت تشغيل RKNN لا يتطابق مع إصدار RKNN Toolkit وفشل الاستدلال، يرجى استبدال /usr/lib/librknnrt.so بملف librknnrt.so الرسمي.

لقطة شاشة لتصدير RKNN

Link to this sectionتطبيقات العالم الحقيقي#

يمكن استخدام الأجهزة التي تعمل بمعالجات Rockchip مع نماذج YOLO26 RKNN في تطبيقات متنوعة:

  • المراقبة الذكية: نشر أنظمة كشف عن الأشياء فعالة للمراقبة الأمنية مع استهلاك منخفض للطاقة.
  • الأتمتة الصناعية: تنفيذ مراقبة الجودة والكشف عن العيوب مباشرة على الأجهزة المدمجة.
  • تحليلات التجزئة: تتبع سلوك العملاء وإدارة المخزون في الوقت الفعلي دون الاعتماد على السحابة.
  • الزراعة الذكية: مراقبة صحة المحاصيل واكتشاف الآفات باستخدام الرؤية الحاسوبية في الزراعة.
  • الروبوتات المستقلة: تمكين الملاحة القائمة على الرؤية واكتشاف العوائق على المنصات ذات الموارد المحدودة.

Link to this sectionالمقارنات المعيارية#

تم تشغيل معايير YOLO26 أدناه بواسطة فريق Ultralytics على Radxa Rock 5B القائم على Rockchip RK3588 باستخدام تنسيق نموذج rknn لقياس السرعة والدقة.

الأداء
النموذجالتنسيقالحالةالحجم (MB)mAP50-95(B)وقت الاستدلال (ms/im)
YOLO26nrknn7.10.47965.7
YOLO26srknn20.90.57199.2
YOLO26mrknn42.50.610235.3
YOLO26lrknn52.10.630280.5
YOLO26xrknn112.20.666669.1

تم تحديد المعايير باستخدام ultralytics 8.4.23

ملاحظة

تم إجراء التحقق من الصحة للمعايير المذكورة أعلاه باستخدام مجموعة بيانات COCO128. لا يشمل وقت الاستدلال المعالجة المسبقة/اللاحقة.

Link to this sectionملخص#

في هذا الدليل، تعلمت كيفية تصدير نماذج Ultralytics YOLO26 إلى تنسيق RKNN لتعزيز نشرها على منصات Rockchip. تم تعريفك أيضاً على RKNN Toolkit والمزايا المحددة لاستخدام نماذج RKNN لتطبيقات الذكاء الاصطناعي على الحافة.

يوفر الجمع بين Ultralytics YOLO26 وتقنية NPU من Rockchip حلاً فعالاً لتشغيل مهام الرؤية الحاسوبية المتقدمة على الأجهزة المدمجة. يتيح هذا النهج الكشف عن الأشياء في الوقت الفعلي وتطبيقات ذكاء الرؤية الأخرى مع استهلاك طاقة ضئيل وأداء عالٍ.

لمزيد من التفاصيل حول الاستخدام، تفضل بزيارة وثائق RKNN الرسمية.

أيضاً، إذا كنت ترغب في معرفة المزيد عن عمليات تكامل Ultralytics YOLO26 الأخرى، فقم بزيارة صفحة دليل التكامل. ستجد هناك الكثير من الموارد والرؤى المفيدة.

Link to this sectionالأسئلة الشائعة#

Link to this sectionكيف يمكنني تصدير نموذج Ultralytics YOLO الخاص بي إلى تنسيق RKNN؟#

يمكنك بسهولة تصدير نموذج Ultralytics YOLO إلى تنسيق RKNN باستخدام طريقة export() في حزمة Ultralytics Python أو عبر واجهة سطر الأوامر (CLI). تأكد من استخدام جهاز كمبيوتر Linux قائم على x86 لعملية التصدير، حيث أن أجهزة ARM64 مثل Rockchip غير مدعومة لهذه العملية. يمكنك تحديد منصة Rockchip المستهدفة باستخدام وسيط name، مثل rk3588 أو rk3566 أو غيرها. تولد هذه العملية نموذج RKNN محسناً جاهزاً للنشر على جهاز Rockchip الخاص بك، مع الاستفادة من وحدة المعالجة العصبية (NPU) الخاصة به لتسريع الاستدلال.

مثال
from ultralytics import YOLO

# Load your YOLO model
model = YOLO("yolo26n.pt")

# Export to RKNN format for a specific Rockchip platform
model.export(format="rknn", name="rk3588")

Link to this sectionما هي فوائد استخدام نماذج RKNN على أجهزة Rockchip؟#

تم تصميم نماذج RKNN خصيصاً للاستفادة من قدرات تسريع الأجهزة لوحدات المعالجة العصبية (NPUs) من Rockchip. يؤدي هذا التحسين إلى سرعات استدلال أسرع بكثير وزمن انتقال أقل مقارنة بتشغيل تنسيقات النماذج العامة مثل ONNX أو TensorFlow Lite على نفس الأجهزة. يسمح استخدام نماذج RKNN باستخدام أكثر كفاءة لموارد الجهاز، مما يؤدي إلى استهلاك أقل للطاقة وأداء عام أفضل، وهو أمر بالغ الأهمية للتطبيقات في الوقت الفعلي على أجهزة الحافة. من خلال تحويل نماذج Ultralytics YOLO الخاصة بك إلى RKNN، يمكنك تحقيق الأداء الأمثل على الأجهزة التي تعمل بمعالجات Rockchip SoCs مثل RK3588 و RK3566 وغيرها.

Link to this sectionهل يمكنني نشر نماذج RKNN على أجهزة من مصنعين آخرين مثل NVIDIA أو Google؟#

نماذج RKNN مُحسَّنة خصيصاً لمنصات Rockchip ووحدات NPU المدمجة فيها. على الرغم من أنه يمكنك تقنياً تشغيل نموذج RKNN على منصات أخرى باستخدام المحاكاة البرمجية، إلا أنك لن تستفيد من تسريع الأجهزة الذي توفره أجهزة Rockchip. للحصول على أداء مثالي على منصات أخرى، يُوصى بتصدير نماذج Ultralytics YOLO الخاصة بك إلى تنسيقات مُصممة خصيصاً لتلك المنصات، مثل TensorRT لوحدات معالجة الرسومات من NVIDIA أو TensorFlow Lite لـ Edge TPU من Google. تدعم Ultralytics التصدير إلى مجموعة واسعة من التنسيقات، مما يضمن التوافق مع مختلف مُسرّعات الأجهزة.

Link to this sectionما هي منصات Rockchip المدعومة لنشر نماذج RKNN؟#

يدعم تصدير Ultralytics YOLO إلى تنسيق RKNN منصات Rockchip ذات إصدارات RKNN ذات الفاصلة العائمة، بما في ذلك RK3588 وRK3576 وRK3566 وRK3568 وRK3562 وRK2118 وRV1126B. كما يدعم أيضاً تصدير RKNN المُكمَّم بـ INT8 باستخدام quantize=8، وهو أمر مطلوب للأهداف التي تدعم INT8 فقط مثل RV1103 وRV1106 وRV1103B وRV1106B. توجد هذه المنصات بشكل شائع في أجهزة من مُصنِّعين مثل Radxa وASUS وPine64 وOrange Pi وOdroid وKhadas وBanana Pi، مما يتيح لك نشر نماذج RKNN المُحسَّنة الخاصة بك على مجموعة من الأجهزة التي تعمل بمعالجات Rockchip بدءاً من أجهزة الكمبيوتر ذات اللوحة الواحدة وصولاً إلى الأنظمة الصناعية.

Link to this sectionكيف يقارن أداء نماذج RKNN بالتنسيقات الأخرى على أجهزة Rockchip؟#

تتفوق نماذج RKNN عموماً على التنسيقات الأخرى مثل ONNX أو TensorFlow Lite على أجهزة Rockchip نظراً لتحسينها لوحدات NPU الخاصة بـ Rockchip. على سبيل المثال، تُظهر المعايير على Radxa Rock 5B (RK3588) أن YOLO26n بتنسيق RKNN يحقق وقت استدلال يبلغ 65.7 مللي ثانية/صورة، وهو أسرع بكثير من التنسيقات الأخرى. ميزة الأداء هذه متسقة عبر أحجام نماذج YOLO26 المختلفة، كما هو موضح في قسم المعايير. من خلال الاستفادة من أجهزة NPU المخصصة، تقلل نماذج RKNN من زمن الانتقال وتزيد من الإنتاجية، مما يجعلها مثالية للتطبيقات في الوقت الفعلي على أجهزة الحافة القائمة على Rockchip.

التعليقات