تصدير تعليقات LabelMe إلى YOLO ومنصة Ultralytics Platform#
LabelMe هي أداة تعليق توضيحي للصور دون اتصال بالإنترنت مع تطبيق Python مفتوح المصدر. لا يوجد اتصال مباشر بـ LabelMe أو مفتاح API لتكوينه في Ultralytics Platform. التكامل الكامل هو سير عمل محلي: التعليق في LabelMe، وتحويل تعليقات LabelMe JSON إلى تنسيق YOLO باستخدام LabelMe Toolkit، وتحميل ملف ZIP الناتج كبيانات مجموعة بيانات للـ Platform.
1. تعليق الصور في LabelMe#
قم بتثبيت LabelMe باستخدام تطبيق سطح المكتب أو حزمة Python مفتوحة المصدر، ثم افتح الدليل الذي يحتوي على صورك. يقوم LabelMe بحفظ التعليقات التوضيحية لكل صورة في ملف JSON مطابق.
لسير عمل الكشف YOLO في هذا الدليل، ارسم مستطيلات حول كل كائن وقم بتعيين اسم فئة. يغطي دليل البدء السريع لـ LabelMe فتح الصور، وרسم الأشكال، وحفظ التعليقات التوضيحية، بينما يغطي دليل بيانات LabelMe مراجعة وإعداد مجموعة بيانات معلقة بالكامل.
يجب أن يحتوي دليلك المصدر على الصور وملفات LabelMe JSON:
your_dataset/
├── image_001.jpg
├── image_001.json
├── image_002.jpg
└── image_002.json2. تثبيت مجموعة أدوات LabelMe#
قم بتثبيت LabelMe Toolkit باتباع دليل تثبيت مجموعة الأدوات الخاص بـ LabelMe. تعمل مجموعة الأدوات وصادراتها محلياً.
export-to-yolo هو جزء من LabelMe Pro Toolkit، ويتطلب تنزيل المثبت الخاص به تسجيل الدخول إلى LabelMe. هذا مطلب لمنتج LabelMe؛ ويمكن تحميل ملف ZIP الناتج على أي خطة Platform.
تحقق من التثبيت، ثم قم بسرد كل تسمية موجودة في مجموعة البيانات المصدر:
labelmetk --version
labelmetk list-labels your_dataset/راجع المخرجات قبل التصدير. يتم تخطي التسميات المستبعدة من --class-names، والترتيب الذي توفره يصبح ترتيب معرف فئة YOLO.
3. التصدير إلى تنسيق YOLO#
قم بتشغيل export-to-yolo مع دليل المصدر وقائمة مفصولة بفواصل من أسماء الفئات:
labelmetk export-to-yolo your_dataset/ --class-names crack,normalاستبدل crack,normal بالتسميات التي أرجعتها list-labels. يكتب LabelMe النتيجة إلى your_dataset.export/:
your_dataset.export/
├── classes.txt
├── images/
│ ├── image_001.jpg
│ └── image_002.jpg
└── labels/
├── image_001.txt
└── image_002.txtclasses.txt يحافظ على أسماء الفئات بنفس التترتيب المستخدم بواسطة ملفات تسميات YOLO. احتفظ به في الجذر الخاص بالتصدير.
يقوم LabelMe Toolkit بتصدير المستطيلات كمربعات إحاطة YOLO. كما أنه يقلل الأقنعة والمضلعات إلى مربعات إحاطة محاذية للمحور، لذا فإن export-to-yolo لا يحافظ على هندسة التجزيء. ارسم مستطيلات عند إعداد مجموعة بيانات الكشف باستخدام سير العمل هذا.
4. إنشاء أرشيف ZIP#
اضغط محتويات your_dataset.export/، وليس الدليل المحيط بها. على نظام macOS أو Linux:
cd your_dataset.export
zip -r ../your_dataset.zip classes.txt images labelsعلى Windows PowerShell:
Compress-Archive -Path .\your_dataset.export\* -DestinationPath .\your_dataset.zipافتح ملف ZIP قبل التحميل وتأكد من أن classes.txt، وimages/، وlabels/ توجد في جذره. يمنع الغلاف الإضافي your_dataset.export/ Platform من العثور على قائمة الفئات الجذرية.
5. التحميل إلى Ultralytics Platform#
- افتح Settings > Integrations > LabelMe.
- انقر على تحميل التصدير.
- قم بتحميل
your_dataset.zipوانهِ إنشاء مجموعة البيانات. - انتظر حتى يكتمل المعالجة، ثم مراجعة الصور والفئات والتعليقات.
- قم بتعديل التعليقات التوضيحية، وتدريب نموذج، ونشره من نفس مساحة العمل.

يظل LabelMe وتصدير YOLO بلا اتصال بالإنترنت بالكامل. يتم إرسال ملف ZIP الذي تحدده في مربع الحوار للتحميل فقط إلى المنصة.
استكشاف الأخطاء وإصلاحها#
- الفئات مسماة
class0، وclass1، وهكذا: تأكد من وجودclasses.txtفي جذر ملف ZIP. - بعض التعليقات التوضيحية مفقودة: قم بتشغيل
labelmetk list-labels your_dataset/مرة أخرى وقم بتضمين كل تسمية مطلوبة في--class-names. - تحولت المضلعات إلى مربعات: هذا هو السلوك الموثق لـ
export-to-yoloفي LabelMe؛ فهو يحول الأشكال التي ليست على شكل مستطيل إلى مربعات إحاطة. - لا تحتوي مجموعة البيانات على صور: تأكد من تضمين الدليل المصدر
images/المُصدر داخل ملف ZIP. - لا يمكن لـ Platform العثور على الفئات: قم بإزالة أي دليل خارجي من الأرشيف بحيث تكون
classes.txt، وimages/، وlabels/هي المدخلات في المستوى الأعلى.
لسير العمل المحلي الكامل، راجع دليل تدريب YOLO الخاص بـ LabelMe ومرجع export-to-yolo.