Meet YOLO26: next-gen vision AI.

Link to this sectionUltralytics VS Code Extension#



Watch: How to use Ultralytics Visual Studio Code Extension | Ready-to-Use Code Snippets | Ultralytics YOLO 🎉

Link to this sectionFunktionen und Vorteile#

✅ Bist du ein Data Scientist oder Machine Learning-Ingenieur, der Computer-Vision-Anwendungen mit Ultralytics entwickelt?

✅ Nervt es dich, ständig dieselben Codeblöcke neu schreiben zu müssen?

✅ Vergisst du immer wieder die Argumente oder Standardwerte für die Methoden export, predict, train, track oder val?

✅ Möchtest du mit Ultralytics durchstarten und wünschst dir eine einfachere Möglichkeit, Code-Beispiele nachzuschlagen oder auszuführen?

✅ Möchtest du deinen Entwicklungszyklus bei der Arbeit mit Ultralytics beschleunigen?

Wenn du Visual Studio Code nutzt und eine der obigen Fragen mit „Ja“ beantwortet hast, dann ist die Ultralytics-snippets-Erweiterung für VS Code genau das Richtige für dich! Lies weiter, um mehr über die Erweiterung zu erfahren und zu lernen, wie du sie installierst und verwendest.


Snippet Prediction Preview
Run example code using Ultralytics YOLO in under 20 seconds! 🚀

Link to this sectionInspiriert durch die Ultralytics Community#

Die Inspiration für diese Erweiterung kam aus der Ultralytics Community. Fragen aus der Community zu ähnlichen Themen und Beispielen haben die Entwicklung dieses Projekts vorangetrieben. Zudem nutzen viele Mitglieder des Ultralytics-Teams VS Code, um ihre eigene Arbeit zu beschleunigen ⚡.

Link to this sectionWarum VS Code?#

Visual Studio Code ist bei Entwicklern weltweit extrem beliebt und wurde in der Stack Overflow Developer Survey in den Jahren 2021, 2022, 2023 und 2024 als beliebteste Umgebung bewertet. Aufgrund der hohen Anpassungsfähigkeit, der integrierten Funktionen, der breiten Kompatibilität und der Erweiterbarkeit von VS Code ist es kein Wunder, dass so viele Entwickler darauf setzen. Angesichts der Popularität in der breiteren Entwickler-Community sowie innerhalb der Discord, Discourse, Reddit und GitHub Communities von Ultralytics, war es nur logisch, eine VS Code-Erweiterung zu entwickeln, um deinen Workflow zu optimieren und deine Produktivität zu steigern.

Möchtest du uns mitteilen, was du für die Code-Entwicklung verwendest? Besuche unsere Discourse-Community-Umfrage und lass es uns wissen! Wenn du schon dabei bist, schau dir doch unsere liebsten Memes aus den Bereichen Computer Vision, Machine Learning, KI und Entwicklung an oder poste dein eigenes!

Link to this sectionInstallation der Erweiterung#

Hinweis

Jede Code-Umgebung, die die Installation von VS Code-Erweiterungen erlaubt, sollte mit der Ultralytics-snippets-Erweiterung kompatibel sein. Nach der Veröffentlichung der Erweiterung wurde entdeckt, dass neovim ebenfalls mit VS Code-Erweiterungen kompatibel gemacht werden kann. Um mehr zu erfahren, sieh dir den neovim-Installationsabschnitt im Readme des Ultralytics-Snippets-Repository an.

Link to this sectionInstallation in VS Code#

  1. Navigiere zum Erweiterungsmenü in VS Code oder nutze das Kürzel Ctrl+Shift ⇑+x und suche nach Ultralytics-snippets.

  2. Klicke auf den Install-Button.


VS Code extension menu

Link to this sectionInstallation über den VS Code Extension Marketplace#

  1. Besuche den VS Code Extension Marketplace, suche nach Ultralytics-snippets oder gehe direkt zur Erweiterungsseite auf dem VS Code Marketplace.

  2. Klicke auf den Install-Button und erlaube deinem Browser, eine VS Code-Sitzung zu starten.

  3. Befolge alle Anweisungen, um die Erweiterung zu installieren.


VS Code marketplace extension install
Visual Studio Code Extension Marketplace page for Ultralytics-Snippets

Link to this sectionVerwendung der Ultralytics-Snippets-Erweiterung#

  • 🧠 Intelligente Code-Vervollständigung: Schreibe Code schneller und präziser mit erweiterten Vervollständigungsvorschlägen, die auf die Ultralytics API zugeschnitten sind.

  • Erhöhte Entwicklungsgeschwindigkeit: Spare Zeit, indem du repetitive Programmieraufgaben eliminierst und vorgefertigte Code-Snippet-Blöcke nutzt.

  • 🔬 Verbesserte Code-Qualität: Schreibe saubereren, konsistenteren und fehlerfreien Code mit intelligenter Code-Vervollständigung.

  • 💎 Optimierter Workflow: Konzentriere dich auf die Kernlogik deines Projekts, indem du häufige Aufgaben automatisierst.

Link to this sectionÜbersicht#

Die Erweiterung funktioniert nur, wenn der Sprachmodus auf Python 🐍 eingestellt ist. Dies verhindert, dass Snippets bei anderen Dateitypen eingefügt werden. Alle Snippets haben ein Präfix, das mit ultra beginnt. Wenn du nach der Installation der Erweiterung einfach ultra in deinen Editor tippst, wird eine Liste möglicher Snippets angezeigt. Du kannst auch die VS Code Befehlspalette mit Ctrl+Shift ⇑+p öffnen und den Befehl Snippets: Insert Snippet ausführen.

Link to this sectionCode-Snippet-Felder#

Viele Snippets enthalten "Felder" mit Standard-Platzhalterwerten oder Namen. Zum Beispiel könnte die Ausgabe der predict-Methode in einer Python-Variablen namens r, results, detections, preds oder einem anderen Namen gespeichert werden, den ein Entwickler wählt – deshalb enthalten Snippets "Felder". Wenn du nach dem Einfügen eines Snippets Tab ⇥ auf deiner Tastatur drückst, springt dein Cursor schnell zwischen den Feldern hin und her. Sobald ein Feld ausgewählt ist, ändert das Eingeben eines neuen Variablennamens nicht nur diese Instanz, sondern jede weitere Instanz dieser Variablen im Snippet-Code!


Multi-update field and options
After inserting snippet, renaming model as world_model updates all instances. Pressing Tab ⇥ moves to the next field, which opens a dropdown menu and allows for selection of a model scale, and moving to the next field provides another dropdown to choose either world or worldv2 model variant.

Link to this sectionCode-Snippet-Vervollständigungen#

Noch _kürzere_ Abkürzungen

Es ist nicht erforderlich, das vollständige Präfix des Snippets zu tippen oder überhaupt am Anfang des Snippets zu beginnen. Siehe das Beispiel im Bild unten.

Die Snippets sind so beschreibend wie möglich benannt, aber das bedeutet auch, dass es viel zu tippen geben kann, was kontraproduktiv wäre, wenn das Ziel darin besteht, schneller voranzukommen. Glücklicherweise erlaubt VS Code Benutzern, ultra.example-yolo-predict, example-yolo-predict, yolo-predict oder sogar ex-yolo-p zu tippen und trotzdem das gewünschte Snippet zu erreichen! Falls das beabsichtigte Snippet eigentlich ultra.example-yolo-predict-kwords war, markierst du es einfach mit den Pfeiltasten oder deiner Tastatur und drückst Enter ↵ oder Tab ⇥, um den richtigen Codeblock einzufügen.


VS Code incomplete code snippet preview
Typing ex-yolo-p will still arrive at the correct snippet.

Link to this sectionSnippet-Kategorien#

Dies sind die aktuell verfügbaren Snippet-Kategorien für die Ultralytics-snippets-Erweiterung. Weitere werden in Zukunft hinzugefügt. Achte also darauf, nach Updates zu suchen und die automatischen Updates für die Erweiterung zu aktivieren. Du kannst auch zusätzliche Snippets anfordern, falls du das Gefühl hast, dass etwas fehlt.

KategorieStart-PräfixBeschreibung
Beispieleultra.examplesBeispielcode zum Lernen oder für den Einstieg in Ultralytics. Beispiele sind Kopien von oder ähnlich dem Code aus den Dokumentationsseiten.
Kwargsultra.kwargsBeschleunige die Entwicklung durch Snippets für train, track, predict und val-Methoden mit allen Keyword-Argumenten und Standardwerten.
Importsultra.importsSnippets zum schnellen Importieren gängiger Ultralytics-Objekte.
Modelleultra.yoloCodeblöcke zum Initialisieren verschiedener Modelle (yolo, sam, rtdetr etc.) inklusive Dropdown-Konfigurationsoptionen einfügen.
Ergebnisseultra.resultCodeblöcke für allgemeine Operationen bei der Arbeit mit Inferenz-Ergebnissen.
Hilfsprogrammeultra.utilBietet schnellen Zugriff auf allgemeine Dienstprogramme, die in das Ultralytics-Paket integriert sind. Erfahre mehr darüber auf der Seite für einfache Dienstprogramme.

Link to this sectionLernen mit Beispielen#

Die ultra.examples-Snippets sind sehr nützlich für jeden, der lernen möchte, wie man mit den Grundlagen von Ultralytics YOLO beginnt. Beispiel-Snippets sind so konzipiert, dass sie sofort nach dem Einfügen ausführbar sind (einige haben auch Dropdown-Optionen). Ein Beispiel dafür zeigt die Animation ganz oben auf dieser Seite, bei der nach dem Einfügen des Snippets der gesamte Code markiert und interaktiv mit Shift ⇑+Enter ↵ ausgeführt wird.

Beispiel

Just like the animation shows at the top of this page, you can use the snippet ultra.example-yolo-predict to insert the following code example. Once inserted, the only configurable option is for the model scale which can be any one of: n, s, m, l, or x.

from ultralytics import ASSETS, YOLO

model = YOLO("yolo26n.pt", task="detect")
results = model(source=ASSETS / "bus.jpg")

for result in results:
    print(result.boxes.data)
    # result.show()  # uncomment to view each result image

Link to this sectionEntwicklung beschleunigen#

Das Ziel der Snippets außer ultra.examples ist es, die Entwicklung bei der Arbeit mit Ultralytics einfacher und schneller zu machen. Ein häufiger Codeblock in vielen Projekten ist das Iterieren durch die Liste der Results, die von der Modellmethode predict zurückgegeben werden. Das ultra.result-loop-Snippet kann dabei helfen.

Beispiel

Die Verwendung von ultra.result-loop fügt den folgenden Standard-Code ein (inklusive Kommentaren).

# reference https://docs.ultralytics.com/modes/predict/#working-with-results

for result in results:
    result.boxes.data  # torch.Tensor array

Da Ultralytics jedoch zahlreiche Aufgaben unterstützt, gibt es bei der Arbeit mit Inferenz-Ergebnissen andere Results-Attribute, auf die du eventuell zugreifen möchtest – hier sind die Snippet-Felder besonders leistungsfähig.


VS Code YOLO results visualization options
Once tabbed to the boxes field, a dropdown menu appears to allow selection of another attribute as required.

Link to this sectionKeyword-Argumente#

Es gibt über 💯 Keyword-Argumente für all die verschiedenen Ultralytics-Aufgaben und -Modi! Das ist viel, das man sich merken muss, und man vergisst leicht, ob das Argument save_frame oder save_frames heißt (es ist übrigens definitiv save_frames). Hier helfen die ultra.kwargs-Snippets weiter!

Beispiel

Um die predict-Methode inklusive aller Inferenz-Argumente einzufügen, verwende ultra.kwargs-predict. Dies fügt den folgenden Code ein (inklusive Kommentaren).

model.predict(
    source=src,  # (str, optional) source directory for images or videos
    imgsz=640,  # (int | list) input images size as int or list[h,w] 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
)

Dieses Snippet enthält Felder für alle Keyword-Argumente, aber auch für model und src, falls du eine andere Variable in deinem Code verwendet hast. In jeder Zeile, die ein Keyword-Argument enthält, ist eine kurze Beschreibung als Referenz beigefügt.

Link to this sectionAlle Code-Snippets#

Am besten findest du heraus, welche Snippets verfügbar sind, indem du die Erweiterung herunterlädst, installierst und ausprobierst! Falls du neugierig bist und dir die Liste vorab ansehen möchtest, kannst du das Repo oder die Erweiterungsseite auf dem VS Code Marketplace besuchen, um die Tabellen für alle verfügbaren Snippets anzusehen.

Link to this sectionFazit#

Die Ultralytics-Snippets-Erweiterung für VS Code wurde entwickelt, um Data Scientists und Machine Learning-Ingenieuren dabei zu helfen, Computer Vision-Anwendungen mit Ultralytics YOLO effizienter zu erstellen. Durch die Bereitstellung vorgefertigter Code-Snippets und nützlicher Beispiele unterstützen wir dich dabei, dich auf das Wesentliche zu konzentrieren: innovative Lösungen zu schaffen. Bitte teile dein Feedback, indem du die Erweiterungsseite auf dem VS Code Marketplace besuchst und eine Bewertung hinterlässt. ⭐

Link to this sectionFAQ#

Link to this sectionWie fordere ich ein neues Snippet an?#

Neue Snippets können über die Issues im Ultralytics-Snippets-Repo angefordert werden.

Link to this sectionWie viel kostet die Ultralytics-Erweiterung?#

Sie ist 100% kostenlos!

Link to this sectionWarum sehe ich keine Code-Snippet-Vorschau?#

VS Code verwendet die Tastenkombination Ctrl+Space, um mehr oder weniger Informationen im Vorschaufenster anzuzeigen. Wenn du beim Tippen eines Code-Snippet-Präfixes keine Vorschau siehst, sollte diese Tastenkombination die Vorschau wiederherstellen.

Link to this sectionWie deaktiviere ich die Erweiterungsempfehlung in Ultralytics?#

Wenn du VS Code verwendest und eine Nachricht erhalten hast, die dich auffordert, die Ultralytics-snippets-Erweiterung zu installieren, und diese Nachricht nicht mehr sehen möchtest, gibt es zwei Wege, dies zu deaktivieren.

  1. Installiere Ultralytics-snippets und die Nachricht wird nicht mehr angezeigt 😆!

  2. Du kannst yolo settings vscode_msg=False verwenden, um die Anzeige der Nachricht zu unterdrücken, ohne die Erweiterung installieren zu müssen. Falls du dich nicht auskennst, erfährst du mehr über die Ultralytics Einstellungen auf der Quickstart-Seite.

Link to this sectionIch habe eine Idee für ein neues Ultralytics-Code-Snippet, wie kann ich es hinzufügen lassen?#

Besuche das Ultralytics-snippets-Repo und öffne ein Issue oder einen Pull Request!

Link to this sectionWie deinstalliere ich die Ultralytics-Snippets-Erweiterung?#

Wie jede andere VS Code-Erweiterung kannst du sie deinstallieren, indem du zum Erweiterungsmenü in VS Code navigierst. Suche die Ultralytics-snippets-Erweiterung im Menü, klicke auf das Zahnrad-Symbol (⚙) und dann auf „Uninstall“, um die Erweiterung zu entfernen.


VS Code extension menu

Kommentare