KITTI-Datensatz
Der kitti-Datensatz ist einer der einflussreichsten Benchmark-Datensätze für autonomes Fahren und Computer Vision. Er wurde vom Karlsruher Institut für Technologie und dem Toyota Technological Institute at Chicago veröffentlicht und enthält Stereo-Kamera-, LiDAR- und GPS/IMU-Daten, die in realen Fahrszenarien gesammelt wurden.
Watch: How to Train Ultralytics YOLO26 on the KITTI Dataset 🚀
Er wird häufig zur Evaluierung von Algorithmen in den Bereichen Objekterkennung, Tiefenschätzung, optischer Fluss und visuelle Odometrie verwendet. Der Datensatz ist vollständig mit Ultralytics YOLO26 für 2D-Objekterkennungsaufgaben kompatibel und lässt sich einfach in die Ultralytics-Plattform für Training und Evaluierung integrieren.
Datensatzstruktur
Der ursprüngliche Testdatensatz von kitti ist hier ausgeschlossen, da er keine Ground-Truth-Annotationen enthält.
Insgesamt umfasst der Datensatz 7.481 Bilder, die jeweils mit detaillierten Annotationen für Objekte wie Autos, Fußgänger, Radfahrer und andere Verkehrsteilnehmer versehen sind. Der Datensatz ist in zwei Haupt-Teilmengen unterteilt:
- Trainingsmenge: Enthält 5.985 Bilder mit annotierten Labels, die für das Modelltraining verwendet werden.
- Validierungsmenge: Enthält 1.496 Bilder mit entsprechenden Annotationen, die für die Leistungsbewertung und das Benchmarking verwendet werden.
Anwendungen
Der kitti-Datensatz ermöglicht Fortschritte im autonomen Fahren und in der Robotik und unterstützt Aufgaben wie:
- Wahrnehmung autonomer Fahrzeuge: Training von Modellen zur Erkennung und Verfolgung von Fahrzeugen, Fußgängern und Hindernissen für eine sichere Navigation in selbstfahrenden Systemen.
- 3D-Szenenverständnis: Unterstützung von Tiefenschätzung, Stereovision und 3D-Objektlokalisierung, um Maschinen beim Verständnis räumlicher Umgebungen zu helfen.
- Optischer Fluss und Bewegungsvorhersage: Ermöglicht Bewegungsanalysen, um die Bewegung von Objekten vorherzusagen und die Trajektorienplanung in dynamischen Umgebungen zu verbessern.
- Computer Vision Benchmarking: Dient als Standard-Benchmark zur Bewertung der Leistung über mehrere Vision-Aufgaben hinweg, einschließlich Objekterkennung und -verfolgung.
Datensatz-YAML
Ultralytics definiert die kitti-Datensatzkonfiguration mithilfe einer YAML-Datei. Diese Datei spezifiziert Datensatzpfade, Klassenlabels und Metadaten, die für das Training erforderlich sind. Die Konfigurationsdatei ist unter https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/kitti.yaml verfügbar.
# Ultralytics 🚀 AGPL-3.0 License - https://ultralytics.com/license
# KITTI dataset by Karlsruhe Institute of Technology and Toyota Technological Institute at Chicago
# Documentation: https://docs.ultralytics.com/datasets/detect/kitti/
# Example usage: yolo train data=kitti.yaml
# parent
# ├── ultralytics
# └── datasets
# └── kitti ← downloads here (390.5 MB)
# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: kitti # dataset root dir
train: images/train # train images (relative to 'path') 5985 images
val: images/val # val images (relative to 'path') 1496 images
names:
0: car
1: van
2: truck
3: pedestrian
4: person_sitting
5: cyclist
6: tram
7: misc
# Download script/URL (optional)
download: https://github.com/ultralytics/assets/releases/download/v0.0.0/kitti.zipVerwendung
Um ein YOLO26n-Modell auf dem kitti-Datensatz für 100 epochs mit einer Bildgröße von 640 zu trainieren, verwende die folgenden Befehle. Weitere Details findest du auf der Seite Training.
from ultralytics import YOLO
# Load a pretrained YOLO26 model
model = YOLO("yolo26n.pt")
# Train on kitti dataset
results = model.train(data="kitti.yaml", epochs=100, imgsz=640)Du kannst auch Evaluierungs-, inference- und export-Aufgaben direkt über die Befehlszeile oder die Python API unter Verwendung derselben Konfigurationsdatei durchführen.
Beispielbilder und Annotationen
Der kitti-Datensatz bietet vielfältige Fahrszenarien. Jedes Bild enthält Bounding-Box-Annotationen für 2D-Objekterkennungsaufgaben. Die Beispiele zeigen die große Vielfalt des Datensatzes, die eine robuste Generalisierung des Modells unter verschiedenen realen Bedingungen ermöglicht.
Zitate und Danksagungen
Wenn du den kitti-Datensatz in deiner Forschung verwendest, zitiere bitte das folgende Paper:
@article{Geiger2013IJRR,
author = {Andreas Geiger and Philip Lenz and Christoph Stiller and Raquel Urtasun},
title = {Vision meets Robotics: The KITTI Dataset},
journal = {International Journal of Robotics Research (IJRR)},
year = {2013}
}Wir danken der KITTI Vision Benchmark Suite für die Bereitstellung dieses umfassenden Datensatzes, der weiterhin Fortschritte in den Bereichen Computer Vision, Robotik und autonome Systeme prägt. Besuche die kitti-Website für weitere Informationen.
FAQs
Wofür wird der kitti-Datensatz verwendet?
Der kitti-Datensatz wird hauptsächlich für die Forschung im Bereich Computer Vision für autonomes Fahren verwendet und unterstützt Aufgaben wie Objekterkennung, Tiefenschätzung, optischen Fluss und 3D-Lokalisierung.
Wie viele Bilder sind im kitti-Datensatz enthalten?
Der Datensatz umfasst 5.985 annotierte Trainingsbilder und 1.496 Validierungsbilder, die in städtischen, ländlichen und Autobahnszenen aufgenommen wurden. Der ursprüngliche Testdatensatz ist hier ausgeschlossen, da er keine Ground-Truth-Annotationen enthält.
Welche Objektklassen sind im Datensatz annotiert?
kitti enthält Annotationen für Objekte wie Autos, Fußgänger, Radfahrer, Lastwagen, Straßenbahnen und verschiedene andere Verkehrsteilnehmer.
Kann ich Ultralytics YOLO26-Modelle mit dem kitti-Datensatz trainieren?
Ja, kitti ist vollständig mit Ultralytics YOLO26 kompatibel. Du kannst Modelle direkt mithilfe der bereitgestellten YAML-Konfigurationsdatei train und validate.
Wo finde ich die kitti-Datensatzkonfigurationsdatei?
Du kannst auf die YAML-Datei unter https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/kitti.yaml zugreifen.