Visual Prompting
استكشف التلقين البصري لتوجيه نماذج الذكاء الاصطناعي باستخدام النقاط والمربعات. تعرّف على كيفية تمكين Ultralytics YOLO وSAM من التقسيم الدقيق وتسريع وسم البيانات.
التحفيز البصري هو تقنية ناشئة في مجال الرؤية الحاسوبية، حيث يقدّم المستخدمون إشارات مكانية أو بصرية—مثل النقاط أو مربعات الإحاطة أو الخطوط الحرة—لتوجيه تركيز نموذج الذكاء الاصطناعي نحو كائنات أو مناطق محددة داخل الصورة. وعلى خلاف هندسة التحفيز التقليدية التي تعتمد أساسًا على الأوصاف النصية، يتيح التحفيز البصري تفاعلًا أكثر دقة وبديهية مع أنظمة الذكاء الاصطناعي (AI). وتستفيد هذه الطريقة من إمكانات النماذج الأساسية الحديثة لتنفيذ مهام مثل التجزئة والكشف من دون الحاجة إلى إعادة تدريب مكثفة أو مجموعات بيانات كبيرة موسومة. ومن خلال "الإشارة" بفاعلية إلى ما يهم، يستطيع المستخدمون تكييف النماذج عامة الغرض مع المهام الجديدة بشكل فوري، مما يسد الفجوة بين نية الإنسان وإدراك الآلة.
آليات التحفيز البصري#
في جوهره، يعمل التحفيز البصري من خلال حقن المعلومات المكانية مباشرةً في مسار معالجة النموذج. فعندما ينقر المستخدم على كائن أو يرسم مربعًا، تُحوَّل هذه المدخلات إلى تضمينات قائمة على الإحداثيات، تدمجها الشبكة العصبية مع ميزات الصورة. وتُعد هذه العملية محورية في البنى التفاعلية مثل نموذج تجزئة أي شيء (SAM)، حيث يتنبأ النموذج بالأقنعة استنادًا إلى المحفزات الهندسية.
تتيح مرونة التحفيز البصري أنواعًا متنوعة من التفاعل:
- محفزات النقاط: ينقر المستخدم على بكسل محدد للإشارة إلى الكائن موضع الاهتمام. ثم يوسّع النموذج هذا التحديد ليشمل حدود الكائن بالكامل.
- محفزات المربعات: يوفّر رسم مربع إحاطة تحديدًا مكانيًا تقريبيًا، ويشير إلى النموذج لتجزئة كل ما يقع داخل تلك المنطقة أو تصنيفه.
- محفزات الخطوط الحرة: يمكن أن تساعد الخطوط المرسومة يدويًا فوق كائن في إزالة الالتباس من المشاهد المعقدة التي تتداخل فيها الكائنات أو تتشابه أنسجتها.
تُبرز الأبحاث الحديثة المقدمة في CVPR 2024 كيف يقلل التحفيز البصري بدرجة كبيرة الوقت اللازم لـوسم البيانات، إذ يستطيع المعلّقون البشريون تصحيح تنبؤات النموذج في الوقت الفعلي بنقرات بسيطة بدلًا من رسم المضلعات يدويًا.
التحفيز البصري مقابل التحفيز النصي#
مع أن كلتا التقنيتين تهدفان إلى توجيه سلوك النموذج، فمن المهم التمييز بين التحفيز البصري والأساليب القائمة على النص. يعتمد توليد النص إلى الصورة أو الكشف من دون تدريب مسبق على معالجة اللغة الطبيعية (NLP) لتفسير الأوصاف الدلالية (مثل: "اعثر على السيارة الحمراء"). غير أن اللغة قد تكون ملتبسة أو غير كافية لوصف المواقع المكانية الدقيقة أو الأشكال المجردة.
يعالج التحفيز البصري هذا الالتباس من خلال تثبيت التعليمات في فضاء البكسلات نفسه. فعلى سبيل المثال، في تحليل الصور الطبية، يكون نقر اختصاصي الأشعة على عقدة مشبوهة أدق بكثير من محاولة وصف إحداثياتها الدقيقة وشكلها غير المنتظم نصيًا. وغالبًا ما تجمع أقوى مسارات العمل بين النهجين—باستخدام النص للتصفية الدلالية والمحفزات البصرية لتحقيق الدقة المكانية—وهو مفهوم يُعرف باسم التعلم متعدد الوسائط.
التطبيقات الواقعية#
أدى تكيف التحفيز البصري إلى اعتماده السريع في قطاعات متنوعة:
- التشخيص الطبي التفاعلي: يستخدم الأطباء أدوات التحفيز البصري لعزل الأورام أو الأعضاء في فحوصات التصوير بالرنين المغناطيسي. ومن خلال النقر ببساطة على منطقة موضع الاهتمام، يمكنهم إنشاء قياسات حجمية ثلاثية الأبعاد فورًا، مما يساعد في الكشف عن الأورام بدقة والتخطيط الجراحي.
- تحرير الصور الذكي: في برمجيات المستهلكين مثل Adobe Photoshop أو تطبيقات الأجهزة المحمولة، يوفّر التحفيز البصري أدوات "التحديد السحري". ويمكن للمستخدمين النقر على شخص أو كائن لإزالة الخلفية أو تطبيق مرشحات مستهدفة، مستفيدين من تقنيات تجزئة الكائنات الأساسية من دون الحاجة إلى مهارات إخفاء يدوية.
- المعالجة الروبوتية: في الذكاء الاصطناعي في الروبوتات، يمكن توجيه الروبوتات لالتقاط عناصر محددة من خلال واجهة بصرية. إذ ينقر المشغّل على كائن في بث كاميرا الروبوت، موفرًا محفزًا بصريًا يترجمه الروبوت إلى إحداثيات الإمساك، مما يسهّل الأتمتة ضمن حلقة الإنسان في المستودعات.
التنفيذ باستخدام Ultralytics#
تدعم منظومة Ultralytics مسارات عمل التحفيز البصري، ولا سيما من خلال نماذج مثل FastSAM وSAM. وتتيح هذه النماذج للمطورين تمرير إحداثيات النقاط أو المربعات برمجيًا لاسترداد أقنعة التجزئة.
يوضح المثال التالي كيفية استخدام الحزمة ultralytics لتطبيق محفز نقطة على صورة، وتوجيه النموذج إلى تجزئة الكائن الموجود عند إحداثيات محددة.
from ultralytics import SAM
# Load the Segment Anything Model (SAM)
model = SAM("sam2.1_b.pt")
# Apply a visual point prompt to the image
# The 'points' argument accepts [x, y] coordinates
# labels: 1 indicates a foreground point (include), 0 indicates background
results = model("https://ultralytics.com/images/bus.jpg", points=[[300, 350]], labels=[1])
# Display the segmented result
results[0].show()الارتقاء برشاقة النموذج#
يمثل التحفيز البصري تحولًا نحو الرؤية الحاسوبية "القابلة للتحفيز"، حيث لم تعد النماذج "صناديق سوداء" ثابتة، بل أصبحت أدوات تفاعلية. وتُعد هذه الإمكانية ضرورية لحلقات التعلم النشط، التي تتحسن فيها النماذج بسرعة من خلال دمج ملاحظات المستخدم.
بالنسبة إلى المطورين الذين يتطلعون إلى دمج هذه الإمكانات في بيئات الإنتاج، توفّر منصة Ultralytics أدوات لإدارة مجموعات البيانات ونشر النماذج القادرة على التعامل مع المدخلات الديناميكية. ومع تقدم الأبحاث، نتوقع رؤية تكامل أوثق بين المحفزات البصرية ونماذج اللغة الكبيرة (LLMs)، مما يتيح أنظمة تستطيع الاستدلال بشأن المدخلات البصرية بالطلاقة نفسها التي تتعامل بها حاليًا مع النصوص.









