Erkunden Sie die 3D-Objekterkennung: Wie LiDAR, Punktwolken und Deep Learning präzise 3D-Bounding Boxes für autonome Fahrzeuge, Robotik und AR erstellen.
Die 3D-Objekterkennung ist eine anspruchsvolle Computer Vision (CV) Technik, die Objekte im dreidimensionalen Raum identifiziert, klassifiziert und lokalisiert Objekte in einem dreidimensionalen Raum. Im Gegensatz zur traditionellen 2D Objekterkennung, bei der ein flacher rechteckiger Bounding Box um ein Objekt in einer Bildebene zeichnet, schätzt die 3D Objekterkennung einen orientierten 3D-Begrenzungsrahmen - einen Quader, der durch seine zentralen Koordinaten (x, y, z) definiert ist, Abmessungen (Länge, Breite, Höhe) und Orientierung (Neigungswinkel) definiert ist. Diese Fähigkeit ermöglicht es Künstliche Intelligenz (KI) Systeme können die reale Größe, Entfernung und Position von Objekten wahrzunehmen, was für die physische Interaktion und Navigation.
Um Tiefe und Volumen wahrzunehmen, sind 3D-Objekterkennungsmodelle auf Datenquellen angewiesen, die die räumliche Geometrie erfassen. Während 2D Methoden ausschließlich auf der Pixelintensität beruhen, verarbeiten 3D-Methoden Daten von modernen Sensoren:
Spezialisierte Architekturen verarbeiten diese Daten. Zum Beispiel, PointNet direkt die rohen Punktwolken, während VoxelNet den 3D-Raum in volumetrische Gitter unterteilt (Voxel) aufteilt, um Faltungsoperationen anzuwenden. Diese Modelle geben die genauen 3D-Koordinaten und die Ausrichtung von Objekten aus, Dadurch können Maschinen nicht nur verstehen , was ein Objekt ist, sondern auch , wo genau es sich in der physischen Welt befindet. Welt befindet.
Der Hauptunterschied liegt in der räumlichen Dimensionalität und den bereitgestellten Informationen:
Für Anwendungen, die eine partielle räumliche Wahrnehmung ohne vollen 3D-Overhead erfordern, Oriented Bounding Box (OBB) Erkennung dient als einen Mittelweg, indem sie gedrehte Bounding Boxes in 2D vorhersagt, um Objekte wie Schiffe oder Fahrzeuge in Luftbildern besser zu erfassen.
Die 3D-Objekterkennung ist der Wahrnehmungsmotor für Branchen, die mit der physischen Welt interagieren:
Während YOLO11 in erster Linie ein 2D-Detektor ist, spielt er spielt er eine wichtige Rolle in vielen 3D-Detektionspipelines. Ein gängiger Ansatz, bekannt als "kegelstumpfbasierte Erkennung", verwendet verwendet ein Hochgeschwindigkeits-2D-Modell, um den interessierenden Bereich in einem Bild zu identifizieren. Diese 2D-Box wird dann in den 3D-Raum extrudiert um die Punktwolke zu beschneiden, wodurch der Suchraum für das 3D-Modell erheblich reduziert wird.
Das folgende Beispiel zeigt, wie der erste 2D-Erkennungsschritt mit Ultralytics YOLO11 durchgeführt werden kann. als Vorschlag für ein 3D-Lifting-Modul dient:
from ultralytics import YOLO
# Load the YOLO11 model (optimized for 2D detection)
model = YOLO("yolo11n.pt")
# Run inference on an image (e.g., from a vehicle camera)
results = model("path/to/driving_scene.jpg")
# In a 3D pipeline, these 2D boxes (x, y, w, h) are used to
# isolate the corresponding region in the LiDAR point cloud.
for result in results:
for box in result.boxes:
print(f"Class: {int(box.cls)}, 2D Box: {box.xywh.numpy()}")