اكتشف كيف ينشئ تقدير العمق خرائط العمق من الصور - المجسمة، والتركيز الترددي الترددي، والليدار، والتعلم العميق الأحادي - لتشغيل الروبوتات والواقع المعزز/الواقع الافتراضي والإدراك ثلاثي الأبعاد.
تقدير العمق هو مهمة أساسية في الرؤية الحاسوبية (CV) التي تتضمن تحديد مسافة الأجسام في المشهد بالنسبة للكاميرا. من خلال حساب قيمة العمق لكل بكسل في الصورة, تقوم هذه العملية بتحويل البيانات القياسية ثنائية الأبعاد إلى تمثيل ثلاثي الأبعاد غني، وغالبًا ما يشار إليه باسم خريطة العمق. هذه الإمكانية ضرورية للآلات لإدراك العلاقات المكانية، مما يمكّنها من التنقل في البيئات, والتلاعب بالأشياء وفهم هندسة العالم مثلما يفعل النظام البصري البشري.
يمكن تحقيق تقدير العمق من خلال طرق مختلفة، بدءاً من الاستشعار النشط كثيف الأجهزة إلى نهج التعلم العميق القائم على البرمجيات (DL).
إن القدرة على إدراك البُعد الثالث يفتح وظائف مهمة في مختلف الصناعات.
في مجال المركبات ذاتية القيادة، يُعد تقدير العمق يعد تقدير العمق أمراً حيوياً للسلامة والملاحة. تدمج السيارات ذاتية القيادة بيانات الكاميرا مع الليدار detect العوائق, وتقدير المسافة إلى المركبات الأخرى، وإنشاء خريطة للطريق في الوقت الفعلي. وبالمثل، في الروبوتات، يتيح إدراك العمق للأذرع الآلية إجراء عمليات "الالتقاط والتركيب" من خلال الحكم بدقة على موضع وشكل العناصر في سير عمل أتمتة التصنيع.
بالنسبة لـ الواقع المعزز لكي تكون التجارب غامرة، يجب أن تتفاعل الأجسام الافتراضية بشكل واقعي مع العالم المادي. تقدير العمق يمكّن الأجهزة المحمولة من فهم هندسة الغرفة، مما يسمح بوضع الأثاث أو الشخصيات الافتراضية على على الأرض أو إخفائها خلف الأجسام الواقعية (الانسداد)، مما يحسّن تجربة المستخدم بشكل كبير.
بينما توجد نماذج العمق المخصصة، غالبًا ما يستخدم المطورون نماذج العمق ثنائية الأبعاد
اكتشاف الأجسام إلى جانب بيانات المعايرة لـ
المسافة التقريبية. إن ultralytics تبسط المكتبة ذلك من خلال وحدة الحلول الخاصة بها، مما يسمح للمستخدمين
تقدير مسافة الأجسام المتعقَّبة بناءً على مواضع مربعاتها المحدودة.
يوضح الرمز التالي كيفية استخدام YOLO11track الأجسام وحساب المسافة التقريبية التقريبي من الكاميرا.
import cv2
from ultralytics import YOLO, solutions
# Load the YOLO11 model for object detection
model = YOLO("yolo11n.pt")
# Initialize the DistanceCalculation solution
# This estimates distance based on bounding box centroids
dist_obj = solutions.DistanceCalculation(names=model.names, view_img=True)
# Open a video file or camera stream
cap = cv2.VideoCapture("path/to/video.mp4")
while cap.isOpened():
success, im0 = cap.read()
if not success:
break
# Track objects and calculate distance
tracks = model.track(im0, persist=True, show=False)
im0 = dist_obj.start_process(im0, tracks)
# Display result (or save/process further)
cv2.imshow("Distance Estimation", im0)
if cv2.waitKey(1) == ord("q"):
break
cap.release()
cv2.destroyAllWindows()
من المهم التمييز بين تقدير العمق والمصطلحات المماثلة في منظومة الذكاء الاصطناعي:
التطورات الحديثة في الذكاء الاصطناعي التوليدي والنماذج التأسيسية تعمل النماذج التأسيسية على سد الفجوة بين الأبعاد الثنائية والثلاثية الأبعاد. تقنيات مثل حقول الإشعاع العصبي (NeRF) التي تستخدم صوراً متناثرة ثنائية الأبعاد لإعادة بناء مشاهد معقدة ثلاثية الأبعاد، بالاعتماد بشكل كبير على مبادئ العمق الأساسية. كما تحسن تحسين النموذج أصبح تقدير العمق عالي الدقة ممكناً على الأجهزة المتطورة، مما يدعم الجيل القادم من الطائرات الذكية بدون طيار وروبوتات الخدمة وأجهزة الحوسبة المكانية.