Yolo فيجن شنتشن
شنتشن
انضم الآن
مسرد المصطلحات

JSON

تعرف على كيفية قيام JSON بتبسيط تبادل بيانات الذكاء الاصطناعي. اكتشف كيفية تصدير تنبؤات Ultralytics إلى JSON من أجل تكامل API ونشر النماذج بسلاسة.

JSON، أو JavaScript Object Notation، هو تنسيق نصي خفيف الوزن يستخدم لتخزين ونقل البيانات. في مجال الذكاء الاصطناعي والتعلم الآلي، يعمل كمعيار عالمي لتبادل البيانات بين الخوادم وتطبيقات الويب ومحركات الاستدلال. هيكله، المكون من أزواج من القيم والمفاتيح وقوائم مرتبة، سهل القراءة والكتابة للبشر، كما أنه سهل التحليل والتوليد للآلات. نظرًا لأنه مستقل عن اللغة، يسهل JSON التواصل السلس بين نموذج مدرب في Python نشر تعمل على JavaScript أو C++ أو Go.

JSON في خطوط أنابيب الذكاء الاصطناعي والنشر

عندما يتم نشر نموذج الرؤية الحاسوبية في الإنتاج، فإنه يتفاعل عادةً مع مكونات البرامج الأخرى عبر REST API. على سبيل المثال، عندما يرسل نظام المراقبة إطار فيديو إلى خادم يعمل بنموذج كشف الكائنات ، يقوم الخادم بتحليل الصورة وإرجاع النتائج. بدلاً من إرسال صورة ثنائية، يستجيب الخادم بسلسلة JSON تحتوي على إحداثيات المربعات المحيطة، وأسماء الفئات المكتشفة، و درجات الثقة المرتبطة بها. هذه الاستجابة النصية يسهل استخدامها بواسطة لوحات المعلومات الأمامية، أو تطبيقات الهاتف المحمول، أو قواعد بيانات NoSQL مثل MongoDB من أجل التسجيل والتحليل.

بالإضافة إلى الاستدلال، يعتبر JSON ضروريًا لتنظيم بيانات التدريب. يستخدم تنسيق COCO الشهير COCO مخطط JSON شاملًا لتحديد مسارات ملفات الصور ومعلومات الترخيص وإحداثيات التعليقات التوضيحية. وهذا يتناقض مع التنسيقات الأخرى مثل تنسيق YOLO الذي يستخدم ملفات نصية بسيطة مفصولة بمسافات. غالبًا ما تستخدم الأدوات المتقدمة على Ultralytics JSON لإدارة البيانات الوصفية للمشاريع المعقدة وإصدارات مجموعات البيانات في السحابة.

تحويل تنبؤات النموذج إلى JSON

تسهل الأطر الحديثة عملية تسلسل البيانات، مما يسمح للمطورين بتصدير نواتج النموذج مباشرة إلى JSON. ultralytics توفر المكتبة طرقًا مدمجة لتسلسل نتائج الكشف ، مما يجعل من السهل دمجها يولو26 النماذج إلى أنظمة برمجية أكبر.

يوضح المثال التالي كيفية تشغيل الاستدلال باستخدام نموذج YOLO26 وتحويل نتائج الكشف إلى سلسلة JSON موحدة:

import json

from ultralytics import YOLO

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

# Run inference on an image
results = model("https://ultralytics.com/images/bus.jpg")

# Convert the first result object to a JSON string
# This serializes boxes, classes, and confidence scores
json_output = results[0].tojson()

# Parse back to a dict to verify structure
data = json.loads(json_output)
print(f"Detected {len(data)} objects.")

JSON مقابل التنسيقات ذات الصلة

على الرغم من أن JSON منتشر في تطوير الويب وتصميم API ، فمن المهم تمييزه عن تنسيقات تسلسل البيانات الأخرى الشائعة في عمليات التعلم العميق.

  • JSON مقابل YAML: تم تصميم YAML لتحقيق أقصى قدر من القابلية للقراءة البشرية ويدعم التعليقات، مما يجعله الخيار المفضل لملفات التكوين. على سبيل المثال، ضبط المعلمات الفائقة الإعدادات أو مسارات مجموعة البيانات في Ultralytics محددة في .yaml الملفات. JSON أكثر صرامة، ولا يدعم التعليقات، و عموماً أسرع في التحليل من قبل الأجهزة، مما يجعله أكثر ملاءمة لنقل البيانات واستجابات API.
  • JSON مقابل XML: يستخدم XML بنية مفصلة قائمة على العلامات. على الرغم من أنه كان في السابق المعيار لمجموعات البيانات مثل Pascal VOC إلا أنه تم استبداله إلى حد كبير بـ JSON في عمليات التعلم الآلي الحديثة (MLOps) نظرًا لصغر حجم ملفات JSON وبساطة صيغتها.

التوحيد القياسي والتشغيل البيني

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

انضم إلى مجتمع Ultralytics

انضم إلى مستقبل الذكاء الاصطناعي. تواصل وتعاون وانمو مع المبتكرين العالميين

انضم الآن