Ultralytics ملحق رمز VS
قم بتشغيل مثال على التعليمات البرمجية باستخدام Ultralytics YOLO في أقل من 20 ثانية! 🚀
الميزات والفوائد
✅ هل أنت عالم بيانات أو مهندس تعلّم آلي تقوم ببناء تطبيقات الرؤية الحاسوبية باستخدام Ultralytics ؟
✅ هل تحتقر كتابة نفس كتل التعليمات البرمجية بشكل متكرر؟
✅ هل تنسى دائمًا الوسيطات أو القيم الافتراضية لطرق التصدير أو التنبؤ أو التدريب أو التتبع أو القيمة؟
✅ هل تتطلع إلى البدء في استخدام Ultralytics وتتمنى لو كانت لديك طريقة أسهل للرجوع إلى الأمثلة البرمجية أو تشغيلها ؟
✅ هل تريد تسريع دورة التطوير الخاصة بك عند العمل مع Ultralytics ؟
إذا كنت تستخدم Visual Studio Code وأجبت بـ "نعم" على أي مما سبق، فإن امتداد Ultralytics-snippets لـ VS Code موجود هنا لمساعدتك! تابع القراءة لمعرفة المزيد عن الإضافة وكيفية تثبيتها وكيفية استخدامها.
مستوحاة من مجتمع Ultralytics
جاء الإلهام لبناء هذا الامتداد من مجتمع Ultralytics . الأسئلة التي طرحها المجتمع حول مواضيع وأمثلة مشابهة غذت عملية تطوير هذا المشروع. بالإضافة إلى ذلك، نظرًا لأن بعض أعضاء فريق Ultralytics يستخدمون أيضًا VS Code، فإننا نستخدمه أيضًا كأداة لتسريع عملنا أيضًا ⚡.
لماذا كود VS Code؟
يحظى برنامج Visual Studio Code بشعبية كبيرة بين المطورين في جميع أنحاء العالم، وقد صُنِّف الأكثر شعبية في استطلاع Stack Overflow Developer في 2021 و2022 و2023 و2024. نظرًا للمستوى العالي من التخصيص الذي يتميز به Visual Studio Code، والميزات المدمجة، والتوافق الواسع، وقابلية التوسع، فليس من المستغرب أن يستخدمه الكثير من المطورين. نظرًا لشعبيته في مجتمع المطورين الأوسع وداخل مجتمعات Ultralytics Discord و Discourse و Reddit و GitHub، كان من المنطقي إنشاء امتداد VS Code للمساعدة في تبسيط سير عملك وتعزيز إنتاجيتك.
هل تريد إخبارنا بما تستخدمه لتطوير التعليمات البرمجية؟ توجه إلى استطلاع مجتمع Discourse وأخبرنا بذلك! أثناء وجودك هناك، ربما يمكنك الاطلاع على بعض الميمات المفضلة لدينا في مجال الرؤية الحاسوبية والتعلم الآلي والذكاء الاصطناعي والمطورين، أو حتى نشر ما تفضله!
تثبيت الامتداد
ملاحظة
أي بيئة برمجية تسمح بتثبيت ملحقات VS Code يجب أن يكون متوافق مع امتداد Ultralytics-snippets. بعد نشر الامتداد، تم اكتشاف أن نيوفيم متوافقًا مع امتدادات VS Code. لمعرفة المزيد راجع neovim
قسم التثبيت من الدليل التمهيدي في Ultralyticsمستودع القصاصات -مستودع القصاصات.
التثبيت في كود VS
-
انتقل إلى قائمة الامتدادات في VS Code أو استخدم الاختصار Ctrl+Shift⇑+x، وابحث عن Ultralytics-snippets.
-
انقر على زر التثبيت.
التثبيت من VS Code Extension Marketplace (سوق ملحقات VS Code)
-
قم بزيارة سوق ملحقات VS Code Extension Marketplace وابحث عن Ultralytics-snippets أو انتقل مباشرةً إلى صفحة الامتداد في سوق VS Code.
-
انقر على زر التثبيت واسمح للمتصفح بتشغيل جلسة VS Code.
-
اتبع أي مطالبات لتثبيت الامتداد.
صفحة سوق ملحقات كود فيجوال ستوديو المرئي لـ Ultralytics-مقتطفات
استخدام الملحق Ultralytics-Snippets
-
🧠 إكمال الكود الذكي: اكتب التعليمات البرمجية بشكل أسرع وأكثر دقة مع اقتراحات إكمال التعليمات البرمجية المتقدمة المصممة خصيصًا لواجهة برمجة التطبيقات Ultralytics .
-
⌛ زيادة سرعة التطوير: توفير الوقت من خلال التخلص من مهام الترميز المتكررة والاستفادة من مقتطفات كتل التعليمات البرمجية المبنية مسبقًا.
-
🔬 تحسين جودة التعليمات البرمجية: كتابة أكواد برمجية أنظف وأكثر اتساقًا وخالية من الأخطاء مع إكمال ذكي للأكواد البرمجية.
-
💎 سير عمل مبسط: حافظ على تركيزك على المنطق الأساسي لمشروعك من خلال أتمتة المهام الشائعة.
لمحة عامة
لن يعمل التمديد إلا عندما يكون وضع اللغة تم تكوينه على Python 🐍. وذلك لتجنب إدراج المقتطفات عند العمل على أي نوع آخر من الملفات. جميع المقتطفات لها بادئة تبدأ بـ ultra
، وببساطة كتابة ultra
في المحرر الخاص بك بعد تثبيت الامتداد، سيعرض لك قائمة بالمقتطفات الممكن استخدامها. يمكنك أيضًا فتح كود VS Code لوحة الأوامر باستخدام السيطرة+التحول ⇑+p وتشغيل الأمر Snippets: Insert Snippet
.
حقول مقتطفات التعليمات البرمجية
تحتوي العديد من المقتطفات على "حقول" ذات قيم أو أسماء عناصر نائبة افتراضية. على سبيل المثال، الإخراج من توقع يمكن حفظه في متغير Python باسم r
, results
, detections
, preds
أو أي شيء آخر يختاره المطور، ولهذا السبب تتضمن المقتطفات "حقولاً". استخدام علامة التبويب 𡹞 على لوحة المفاتيح بعد إدراج مقتطف، سينتقل المؤشر بين الحقول بسرعة. بمجرد تحديد أحد الحقول، ستؤدي كتابة اسم متغير جديد إلى تغيير هذا المثيل، وأيضًا كل مثيل آخر في كود المقتطف لهذا المتغير!
بعد إدراج المقتطف، إعادة تسمية model
كما world_model
تحديث جميع المثيلات. الضغط على علامة التبويب 𡹞 الانتقال إلى الحقل التالي، والذي يفتح قائمة منسدلة ويسمح باختيار مقياس النموذج، والانتقال إلى الحقل التالي يوفر قائمة منسدلة أخرى لاختيار إما world
أو worldv2
متغير الطراز.
إكمال مقتطفات التعليمات البرمجية
اختصارات أقصر الطرق المختصرة
ليس مطلوبًا كتابة البادئة الكاملة للمقتطف، أو حتى البدء بالكتابة من بداية المقتطف. انظر المثال في الصورة أدناه.
تتم تسمية المقتطفات بأكثر طريقة وصفية ممكنة، ولكن هذا يعني أنه قد يكون هناك الكثير من الكتابة وهذا سيكون له نتائج عكسية إذا كان الهدف هو التحرك أسرع. لحسن الحظ أن VS Code يتيح للمستخدمين كتابة ultra.example-yolo-predict
, example-yolo-predict
, yolo-predict
أو حتى ex-yolo-p
ولا تزال تصل إلى خيار المقتطف المقصود! إذا كان المقتطف المقصود في الواقع ultra.example-yolo-predict-kwords
، ثم باستخدام أسهم لوحة المفاتيح فقط ↑ أو ↓ لتمييز المقتطف المطلوب والضغط على أدخل ↵ أو علامة التبويب 𡹞 سيدرج الكتلة الصحيحة من الشيفرة البرمجية.
الطباعة ex-yolo-p
سوف لا يزال الوصول إلى المقتطف الصحيح.
فئات المقتطفات
هذه هي فئات المقتطفات الحالية المتاحة لملحق Ultralytics-snippets. سيتم إضافة المزيد في المستقبل، لذا تأكد من التحقق من التحديثات وتمكين التحديثات التلقائية للملحق. يمكنك أيضاً طلب إضافة مقتطفات إضافية إذا شعرت أن هناك أي مقتطفات ناقصة.
الفئة | بادئة البداية | الوصف |
---|---|---|
أمثلة | ultra.examples |
أمثلة على التعليمات البرمجية للمساعدة في التعلم أو لبدء استخدام Ultralytics. الأمثلة هي نسخ من كود من صفحات التوثيق أو مشابهة له. |
كوارغز | ultra.kwargs |
تسريع التطوير عن طريق إضافة مقتطفات لطرق القطار والتتبع والتنبؤ و val مع جميع وسيطات الكلمات الرئيسية والقيم الافتراضية. |
الواردات | ultra.imports |
مقتطفات لاستيراد كائنات Ultralytics الشائعة بسرعة. |
النماذج | ultra.yolo |
إدراج كتل التعليمات البرمجية لتهيئة مختلف الموديلات (yolo , sam , rtdetr إلخ)، بما في ذلك خيارات التكوين المنسدلة. |
النتائج | ultra.result |
كتل التعليمات البرمجية للعمليات الشائعة عند العمل مع نتائج الاستدلال. |
المرافق | ultra.util |
يوفر وصولاً سريعًا إلى الأدوات المساعدة الشائعة المضمنة في الحزمة Ultralytics ، تعرف على المزيد حول هذه الأدوات المساعدة البسيطة. |
التعلم بالأمثلة
إن ultra.examples
المقتطفات مفيدة لأي شخص يتطلع إلى تعلم كيفية البدء في أساسيات العمل مع Ultralytics YOLO . أمثلة المقتطفات مخصصة للتشغيل بمجرد إدراجها (بعضها يحتوي على خيارات منسدلة أيضًا). يظهر مثال على ذلك في الرسم المتحرك في أعلى من هذه الصفحة، حيث بعد إدراج المقتطف، يتم تحديد جميع التعليمات البرمجية وتشغيلها بشكل تفاعلي باستخدام التحول ⇑+أدخل ↵.
مثال على ذلك
تماماً مثل عروض الرسوم المتحركة في أعلى من هذه الصفحة، يمكنك استخدام المقتطف ultra.example-yolo-predict
لإدراج مثال الكود التالي. بمجرد الإدراج، فإن الخيار الوحيد القابل للتكوين هو لمقياس النموذج الذي يمكن أن يكون أي واحد من: n
, s
, m
, l
أو x
.
تسريع عجلة التنمية
الهدف من المقتطفات غير ultra.examples
لجعل التطوير أسهل وأسرع عند العمل مع Ultralytics. من الكتل البرمجية الشائعة التي تُستخدم في العديد من المشاريع، هي تكرار قائمة Results
العائد من استخدام النموذج توقع الطريقة. إن ultra.result-loop
يمكن أن يساعد المقتطف في ذلك.
مثال على ذلك
استخدام ultra.result-loop
سيدرج الرمز الافتراضي التالي (بما في ذلك التعليقات).
ومع ذلك، نظرًا لأن Ultralytics يدعم العديد من المهامعندما العمل مع نتائج الاستدلال هناك Results
التي قد ترغب في الوصول إليها، وهو المكان الذي يوجد فيه حقول المقتطفات ستكون قوية.
بمجرد تبويبه إلى boxes
تظهر قائمة منسدلة للسماح باختيار سمة أخرى حسب الحاجة.
حجج الكلمات المفتاحية
يوجد أكثر من 💯 وسيطات الكلمات الرئيسية لجميع Ultralytics المهام و الأوضاع! هذا كثير لنتذكره ويمكن أن يكون من السهل نسيانه إذا كانت الحجة save_frame
أو save_frames
(إنه بالتأكيد save_frames
بالمناسبة). هذا هو المكان الذي ultra.kwargs
مقتطفات يمكن أن تساعد في المساعدة!
مثال على ذلك
لإدخال توقع بما في ذلك جميع حجج الاستدلال، استخدم ultra.kwargs-predict
، والذي سيدرج الرمز التالي (بما في ذلك التعليقات).
model.predict(
source=src, # (str, optional) source directory for images or videos
imgsz=640, # (int | list) input images size as int or list[w,h] for predict
conf=0.25, # (float) minimum confidence threshold
iou=0.7, # (float) intersection over union (IoU) threshold for NMS
vid_stride=1, # (int) video frame-rate stride
stream_buffer=False, # (bool) buffer incoming frames in a queue (True) or only keep the most recent frame (False)
visualize=False, # (bool) visualize model features
augment=False, # (bool) apply image augmentation to prediction sources
agnostic_nms=False, # (bool) class-agnostic NMS
classes=None, # (int | list[int], optional) filter results by class, i.e. classes=0, or classes=[0,2,3]
retina_masks=False, # (bool) use high-resolution segmentation masks
embed=None, # (list[int], optional) return feature vectors/embeddings from given layers
show=False, # (bool) show predicted images and videos if environment allows
save=True, # (bool) save prediction results
save_frames=False, # (bool) save predicted individual video frames
save_txt=False, # (bool) save results as .txt file
save_conf=False, # (bool) save results with confidence scores
save_crop=False, # (bool) save cropped images with results
stream=False, # (bool) for processing long videos or numerous images with reduced memory usage by returning a generator
verbose=True, # (bool) enable/disable verbose inference logging in the terminal
)
يحتوي هذا المقتطف على حقول لجميع وسيطات الكلمات الرئيسية، وكذلك model
و src
في حال استخدمت متغيرًا مختلفًا في شفرتك. في كل سطر يحتوي على وسيطة كلمة رئيسية، يتم تضمين وصف موجز للرجوع إليها.
جميع مقتطفات الرموز
أفضل طريقة لمعرفة المقتطفات المتاحة هي تنزيل الإضافة وتثبيتها وتجربتها! إذا كنت فضوليًا وترغب في إلقاء نظرة على القائمة مسبقًا، يمكنك زيارة صفحة الريبو أو صفحة الإضافة على سوق VS Code لعرض جداول جميع المقتطفات المتاحة.
الخاتمة
تم تصميم ملحق Ultralytics-Snippets لـ VS Code لتمكين علماء البيانات ومهندسي التعلم الآلي من إنشاء تطبيقات الرؤية الحاسوبية باستخدام Ultralytics YOLO بشكل أكثر كفاءة. من خلال توفير مقتطفات التعليمات البرمجية المبنية مسبقًا وأمثلة مفيدة، نساعدك على التركيز على ما هو أكثر أهمية: إنشاء حلول مبتكرة. يُرجى مشاركة ملاحظاتك من خلال زيارة صفحة الإضافة على سوق VS Code وترك تعليق. ⭐
الأسئلة الشائعة
كيف يمكنني طلب مقتطف جديد؟
يمكن طلب مقتطفات جديدة باستخدام الإصدارات الموجودة على الريبو Ultralytics-Snippets.
ما هي تكلفة التمديد Ultralytics-Extension؟
إنه مجاني 100%!
لماذا لا أرى معاينة مقتطفات التعليمات البرمجية؟
يستخدم VS Code تركيبة المفاتيح Ctrl+Space لإظهار معلومات أكثر/ أقل في نافذة المعاينة. إذا كنت لا ترى معاينة مقتطف عند كتابة بادئة مقتطف شيفرة، فإن استخدام تركيبة المفاتيح هذه يجب أن يعيد المعاينة.
كيف يمكنني تعطيل توصية الامتداد في Ultralytics ؟
إذا كنت تستخدم VS Code وبدأت في رؤية رسالة تطالبك بتثبيت ملحق Ultralytics-snippets، ولا تريد رؤية الرسالة بعد الآن، فهناك طريقتان لتعطيل هذه الرسالة.
-
قم بتثبيت Ultralytics-snippets ولن تظهر الرسالة بعد ذلك 😆!
-
يمكنك استخدام
yolo settings vscode_msg False
لتعطيل الرسالة من الظهور دون الحاجة إلى تثبيت الإضافة. يمكنك معرفة المزيد عن Ultralytics الإعدادات على بداية سريعة الصفحة إذا كنت غير مألوف لديك.
لديّ فكرة لمقتطف كود جديد Ultralytics ، كيف يمكنني الحصول على إضافة واحدة؟
قم بزيارة الريبو Ultralytics-snippets وافتح مشكلة أو طلب سحب!
كيف يمكنني إلغاء تثبيت ملحق Ultralytics-Snippets؟
مثل أي امتداد VS Code آخر، يمكنك إلغاء تثبيته بالانتقال إلى قائمة الامتدادات في VS Code. ابحث عن الامتداد Ultralytics-snippets في القائمة وانقر على أيقونة الترس (⚙) ثم انقر على "إلغاء التثبيت" لإزالة الامتداد.