تخطي إلى المحتوى

تصدير Rockchip RKNN لنماذج Ultralytics YOLO26

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

تصدير Rockchip RKNN لنشر NPU

ملاحظة

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

ما هو Rockchip؟

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

مجموعة أدوات RKNN

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

الميزات الرئيسية لنماذج RKNN

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

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

تثبيت Flash OS على أجهزة Rockchip

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

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

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

ملاحظة

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

التثبيت

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

التثبيت

# Install the required package for YOLO26
pip install ultralytics

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

الاستخدام

ملاحظة

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

الاستخدام

from ultralytics import YOLO

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

# Export the model to RKNN format
# 'name' can be one of rk3588, rk3576, rk3566, rk3568, rk3562, rv1103, rv1106, rv1103b, rv1106b, rk2118, rv1126b
model.export(format="rknn", name="rk3588")  # creates '/yolo26n_rknn_model'
# Export a YOLO26n PyTorch model to RKNN format
# 'name' can be one of rk3588, rk3576, rk3566, rk3568, rk3562, rv1103, rv1106, rv1103b, rv1106b, rk2118, rv1126b
yolo export model=yolo26n.pt format=rknn name=rk3588 # creates '/yolo26n_rknn_model'

وسائط التصدير

الوسيطةالنوعافتراضيالوصف
formatstr'rknn'تنسيق الهدف للنموذج الذي تم تصديره، والذي يحدد التوافق مع بيئات النشر المختلفة.
imgszint أو tuple640حجم الصورة المطلوب لإدخال النموذج. يمكن أن يكون عددًا صحيحًا للصور المربعة أو صفًا. (height, width) لأبعاد محددة.
batchint1يحدد حجم الاستدلال الدفعي لنموذج التصدير أو الحد الأقصى لعدد الصور التي سيعالجها النموذج المصدر في وقت واحد في predict الوضع.
namestr'rk3588'يحدد نموذج Rockchip (rk3588, rk3576, rk3566, rk3568, rk3562, rv1103, rv1106, rv1103b, rv1106b, rk2118, rv1126b)
devicestrNoneيحدد الجهاز للتصدير: GPU (device=0)، وحدة معالجة مركزية (CPU) (device=cpu).

نصيحة

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

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

نشر نماذج YOLO26 RKNN المصدرة

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

التثبيت

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

التثبيت

# Install the required package for YOLO26
pip install ultralytics

الاستخدام

الاستخدام

from ultralytics import YOLO

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

# Run inference
results = rknn_model("https://ultralytics.com/images/bus.jpg")
# Run inference with the exported model
yolo predict model='./yolo26n_rknn_model' source='https://ultralytics.com/images/bus.jpg'

ملاحظة

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

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

تطبيقات عملية في أرض الواقع

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

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

المعايير

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

الأداء

النموذجالتنسيقالحالةالحجم (ميجابايت)mAP50-95(B)وقت الاستدلال (مللي ثانية / صورة)
YOLO11nrknn7.40.50571.5
YOLO11srknn20.70.57898.9
YOLO11mrknn41.90.629235.3
YOLO11lrknn53.30.633282.0
YOLO11xrknn114.60.687679.2

تم القياس باستخدام ultralytics 8.3.152

ملاحظة

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

ملخص

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

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

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

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

الأسئلة الشائعة

كيف يمكنني تصدير نموذج 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")
yolo export model=yolo26n.pt format=rknn name=rk3588

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

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

هل يمكنني نشر نماذج RKNN على أجهزة من شركات تصنيع أخرى مثل NVIDIA أو Google؟

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

ما هي منصات Rockchip المدعومة لنشر نموذج RKNN؟

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

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

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



📅 تم الإنشاء قبل 1 عام ✏️ تم التحديث قبل 5 أيام
glenn-jocherlakshanthadlakshanthadLaughing-qRizwanMunawaroDestroyeRoIvorZhu331

تعليقات