Ultralytics VS-Code-Erweiterung
Führen Sie Beispielcode mit Ultralytics YOLO in weniger als 20 Sekunden aus! 🚀
Merkmale und Vorteile
✅ Sie sind Datenwissenschaftler oder Ingenieur für maschinelles Lernen und entwickeln Computer-Vision-Anwendungen mit Ultralytics?
✅ Verabscheuen Sie es, immer wieder die gleichen Codeblöcke zu schreiben?
✅ Vergessen Sie immer die Argumente oder Standardwerte für die Methoden export, predict, train, track oder val?
✅ Sie möchten mit Ultralytics beginnen und wünschen sich eine einfachere Möglichkeit, auf Codebeispiele zu verweisen oder sie auszuführen?
✅ Möchten Sie Ihren Entwicklungszyklus bei der Arbeit mit Ultralytics beschleunigen?
Wenn Sie Visual Studio Code verwenden und eine der oben genannten Fragen mit "Ja" beantwortet haben, dann ist die Ultralytics-snippets Erweiterung für VS Code genau das Richtige für Sie! Lesen Sie weiter, um mehr über die Erweiterung zu erfahren, wie man sie installiert und wie man sie verwendet.
Inspiriert durch die Gemeinschaft Ultralytics
Die Inspiration für diese Erweiterung kam aus der Ultralytics Community. Fragen aus der Community zu ähnlichen Themen und Beispielen trieben die Entwicklung dieses Projekts voran. Da einige Mitglieder des Ultralytics Teams auch VS Code verwenden, nutzen wir es auch als Werkzeug, um unsere Arbeit zu beschleunigen ⚡.
Warum VS Code?
Visual Studio Code ist bei Entwicklern weltweit äußerst beliebt und wurde in der Stack Overflow Developer Survey 2021, 2022, 2023 und 2024 als beliebteste Software eingestuft. Aufgrund des hohen Maßes an Anpassbarkeit, der integrierten Funktionen, der breiten Kompatibilität und der Erweiterbarkeit von VS Code ist es keine Überraschung, dass so viele Entwickler es verwenden. Angesichts der Beliebtheit in der breiteren Entwickler-Community und innerhalb der Ultralytics Discord-, Discourse-, Reddit- und GitHub-Communitys war es sinnvoll, eine VS Code-Erweiterung zu entwickeln, um Ihren Workflow zu optimieren und Ihre Produktivität zu steigern.
Möchten Sie uns mitteilen, was Sie für die Entwicklung von Code verwenden? Gehen Sie zu unserer Discourse-Community-Umfrage und lassen Sie es uns wissen! Und wenn Sie schon mal da sind, sehen Sie sich vielleicht einige unserer Lieblingsmemes aus den Bereichen Computer Vision, maschinelles Lernen, KI und Entwickler an oder posten Sie sogar Ihr Lieblingsmemo!
Installation der Erweiterung
Hinweis
Jede Code-Umgebung, die die Installation von VS Code-Erweiterungen ermöglicht sollte sein kompatibel mit der Erweiterung Ultralytics-snippets. Nach der Veröffentlichung der Erweiterung wurde festgestellt, dass neovim kann mit VS Code-Erweiterungen kompatibel gemacht werden. Um mehr zu erfahren, siehe die neovim
Installationsbereich der Readme-Datei im Ultralytics-Schnipsel-Repository.
Installieren in VS-Code
-
Navigieren Sie zum Menü Erweiterungen in VS Code oder verwenden Sie die Tastenkombination Strg+Umschalt⇑+x, und suchen Sie nach Ultralytics-snippets.
-
Klicken Sie auf die Schaltfläche Installieren.
Installation über den VS Code Extension Marketplace
-
Besuchen Sie den VS Code Extension Marketplace und suchen Sie nach Ultralytics-snippets oder gehen Sie direkt zur Erweiterungsseite auf dem VS Code Marketplace.
-
Klicken Sie auf die Schaltfläche Installieren und lassen Sie Ihren Browser eine VS Code-Sitzung starten.
-
Folgen Sie den Aufforderungen, um die Erweiterung zu installieren.
Visual Studio Code Extension Marketplace-Seite für Ultralytics-Schnipsel
Verwendung der Ultralytics-Erweiterung für Schnipsel
-
🧠 Intelligente Code-Vervollständigung: Schreiben Sie Code schneller und präziser mit erweiterten Code-Vervollständigungsvorschlägen, die auf die Ultralytics API zugeschnitten sind.
-
⌛ Höhere Entwicklungsgeschwindigkeit: Sparen Sie Zeit, indem Sie sich wiederholende Codierungsaufgaben eliminieren und vorgefertigte Code-Block-Snippets nutzen.
-
🔬 Verbesserte Code-Qualität: Schreiben Sie sauberen, konsistenten und fehlerfreien Code mit intelligenter Code-Vervollständigung.
-
💎 Optimierter Workflow: Konzentrieren Sie sich auf die Kernlogik Ihres Projekts, indem Sie allgemeine Aufgaben automatisieren.
Übersicht
Die Erweiterung funktioniert nur, wenn die Sprache Modus ist für Python konfiguriert 🐍. Damit soll verhindert werden, dass bei der Arbeit an einem anderen Dateityp Snippets eingefügt werden. Alle Snippets haben ein Präfix, das mit ultra
und geben Sie einfach ein ultra
in Ihrem Editor, nachdem Sie die Erweiterung installiert haben, wird eine Liste mit möglichen Snippets angezeigt. Sie können auch den VS Code öffnen Befehlspalette mit Strg+Verschiebung ⇑+p und die Ausführung des Befehls Snippets: Insert Snippet
.
Code-Schnipsel-Felder
Viele Snippets haben "Felder" mit Standardplatzhalterwerten oder -namen. Zum Beispiel kann die Ausgabe des vorhersagen Methode könnte in einer Python Variablen mit dem Namen r
, results
, detections
, preds
oder was auch immer ein Entwickler wählt, weshalb Snippets "Felder" enthalten. Verwendung von Registerkarte ⇥ auf Ihrer Tastatur drücken, nachdem ein Snippet eingefügt wurde, bewegt sich Ihr Cursor schnell zwischen den Feldern. Sobald ein Feld ausgewählt ist, wird durch die Eingabe eines neuen Variablennamens nicht nur diese Instanz, sondern auch jede andere Instanz im Code des Snippets für diese Variable geändert!
Nach dem Einfügen des Snippets, Umbenennung model
als world_model
aktualisiert alle Instanzen. Drücken Sie Registerkarte ⇥ bewegt sich zum nächsten Feld, das ein Dropdown-Menü öffnet und die Auswahl eines Modellmaßstabs ermöglicht, und das nächste Feld bietet ein weiteres Dropdown-Menü zur Auswahl von world
oder worldv2
Modellvariante.
Code-Schnipsel-Abschlüsse
Noch kürzere Abkürzungen
Es ist nicht erforderlich, das vollständige Präfix des Snippets einzugeben oder gar mit der Eingabe am Anfang des Snippets zu beginnen. Siehe das Beispiel im Bild unten.
Die Snippets sind so beschreibend wie möglich benannt, aber das bedeutet, dass man viel tippen muss, was kontraproduktiv wäre, wenn man etwas bewegen will. schneller. Glücklicherweise lässt VS Code die Benutzer eingeben ultra.example-yolo-predict
, example-yolo-predict
, yolo-predict
oder sogar ex-yolo-p
und erreichen trotzdem die gewünschte Snippet-Option! Wenn das beabsichtigte Snippet eigentlich ultra.example-yolo-predict-kwords
und dann einfach die Pfeiltasten der Tastatur benutzen ↑ oder ↓ um das gewünschte Snippet zu markieren, und drücken Sie eingeben ↵. oder Registerkarte ⇥ fügt den richtigen Codeblock ein.
Tippen ex-yolo-p
wird immer noch das richtige Snippet zu finden.
Schnipsel-Kategorien
Dies sind die aktuellen Snippet-Kategorien, die für die Erweiterung Ultralytics-snippets verfügbar sind. In Zukunft werden weitere hinzukommen. Achten Sie also darauf, dass Sie auf Aktualisierungen achten und die automatische Aktualisierung der Erweiterung aktivieren. Sie können auch zusätzliche Snippets anfordern, wenn Sie der Meinung sind, dass noch welche fehlen.
Kategorie | Start-Präfix | Beschreibung |
---|---|---|
Beispiele | ultra.examples |
Beispielcode zum Erlernen oder für die ersten Schritte mit Ultralytics. Beispiele sind Kopien von oder ähnlichem Code von Dokumentationsseiten. |
Kwargs | ultra.kwargs |
Beschleunigen Sie die Entwicklung, indem Sie Snippets für die Methoden train, track, predict und val mit allen Schlüsselwortargumenten und Standardwerten hinzufügen. |
Einfuhren | ultra.imports |
Snippets für den schnellen Import gängiger Ultralytics Objekte. |
Modelle | ultra.yolo |
Einfügen von Codeblöcken für die Initialisierung verschiedener Modelle (yolo , sam , rtdetr usw.), einschließlich Dropdown-Konfigurationsoptionen. |
Ergebnisse | ultra.result |
Codeblöcke für gängige Operationen bei der Arbeit mit Inferenzergebnissen. |
Versorgungsunternehmen | ultra.util |
Ermöglicht den schnellen Zugriff auf gängige Dienstprogramme, die in das Paket Ultralytics integriert sind; weitere Informationen dazu finden Sie auf der Seite Einfache Dienstprogramme. |
Lernen mit Beispielen
Die ultra.examples
Snippets sind für jeden nützlich, der die Grundlagen der Arbeit mit Ultralytics YOLO erlernen möchte. Die Beispiel-Snippets sind so konzipiert, dass sie nach dem Einfügen ausgeführt werden (einige haben auch Dropdown-Optionen). Ein Beispiel dafür ist die Animation auf der Seite top dieser Seite, auf der nach dem Einfügen des Snippets der gesamte Code ausgewählt und interaktiv ausgeführt wird, indem Verschiebung ⇑+eingeben ↵..
Beispiel
Genau wie die Animationsshows auf der top dieser Seite, können Sie das Snippet ultra.example-yolo-predict
um das folgende Codebeispiel einzufügen. Nach dem Einfügen ist die einzige konfigurierbare Option der Modellmaßstab, der eine der folgenden sein kann: n
, s
, m
, l
, oder x
.
Beschleunigung der Entwicklung
Das Ziel für andere Snippets als die ultra.examples
sind dazu da, die Entwicklung einfacher und schneller zu machen, wenn man mit Ultralytics arbeitet. Ein üblicher Codeblock, der in vielen Projekten verwendet wird, ist die Iteration der Liste von Results
die bei der Verwendung des Modells zurückgegeben werden vorhersagen Methode. Die Website ultra.result-loop
Snippet kann dabei helfen.
Beispiel
Die Verwendung des ultra.result-loop
fügt den folgenden Standardcode (einschließlich Kommentare) ein.
Da Ultralytics jedoch zahlreiche Aufgabenwenn Arbeiten mit Ableitungsergebnissen gibt es andere Results
Attribute, auf die Sie möglicherweise zugreifen möchten, und hier kommt der Schnipsel-Felder wird mächtig sein.
Sobald Sie die Registerkarte boxes
erscheint ein Dropdown-Menü, aus dem Sie bei Bedarf ein anderes Attribut auswählen können.
Schlüsselwörter Argumente
Es gibt über 💯 Schlüsselwortargumente für alle verschiedenen Ultralytics Aufgaben und Modi! Das ist eine Menge, die man sich merken muss, und man kann es leicht vergessen, wenn das Argument save_frame
oder save_frames
(es ist definitiv save_frames
nebenbei bemerkt). Dies ist der Ort, an dem die ultra.kwargs
Schnipsel können helfen!
Beispiel
Zum Einfügen der vorhersagen Methode, einschließlich aller Schlussfolgerungsargumenteverwenden ultra.kwargs-predict
die den folgenden Code (einschließlich Kommentare) einfügt.
model.predict(
source=src, # (str, optional) source directory for images or videos
imgsz=640, # (int | list) input images size as int or list[w,h] 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 Schlüsselwortargumente, aber auch für model
und src
für den Fall, dass Sie in Ihrem Code eine andere Variable verwendet haben. In jeder Zeile, die ein Schlüsselwortargument enthält, wird eine kurze Beschreibung als Referenz angegeben.
Alle Codeschnipsel
Der beste Weg, um herauszufinden, welche Snippets verfügbar sind, ist, die Erweiterung herunterzuladen, zu installieren und auszuprobieren! Wenn Sie neugierig sind und vorher einen Blick auf die Liste werfen möchten, können Sie das Repo oder die Erweiterungsseite auf dem VS Code-Marktplatz besuchen, um die Tabellen für alle verfügbaren Snippets zu sehen.
Schlussfolgerung
Die Ultralytics-Snippets-Erweiterung für VS Code wurde entwickelt, um Datenwissenschaftler und Ingenieure für maschinelles Lernen in die Lage zu versetzen, Computer-Vision-Anwendungen mit Ultralytics YOLO effizienter zu erstellen. Durch die Bereitstellung vorgefertigter Codeschnipsel und nützlicher Beispiele helfen wir Ihnen, sich auf das Wesentliche zu konzentrieren: die Entwicklung innovativer Lösungen. Bitte teilen Sie uns Ihr Feedback mit, indem Sie die Erweiterungsseite auf dem VS Code-Marktplatz besuchen und eine Bewertung hinterlassen. ⭐
FAQ
Wie kann ich ein neues Snippet anfordern?
Neue Snippets können über die Issues im Ultralytics-Snippets Repository angefordert werden.
Wie viel kostet die Ultralytics-Erweiterung?
Es ist 100% kostenlos!
Warum sehe ich keine Vorschau der Codeausschnitte?
VS Code verwendet die Tastenkombination Strg+Leertaste, um mehr oder weniger Informationen im Vorschaufenster anzuzeigen. Wenn Sie bei der Eingabe eines Code-Snippet-Präfixes keine Snippet-Vorschau sehen, sollten Sie diese Tastenkombination verwenden, um die Vorschau wiederherzustellen.
Wie kann ich die Erweiterungsempfehlung in Ultralytics deaktivieren?
Wenn Sie VS Code verwenden und eine Meldung angezeigt wird, die Sie auffordert, die Erweiterung Ultralytics-snippets zu installieren, und Sie diese Meldung nicht mehr sehen möchten, gibt es zwei Möglichkeiten, diese Meldung zu deaktivieren.
-
Installieren Sie Ultralytics-snippets und die Meldung wird nicht mehr angezeigt 😆!
-
Sie können mit
yolo settings vscode_msg False
um die Anzeige der Meldung zu deaktivieren, ohne die Erweiterung installieren zu müssen. Sie können mehr über die Ultralytics Einstellungen über die Schnellstart Seite, falls Sie damit nicht vertraut sind.
Ich habe eine Idee für ein neues Ultralytics Code Snippet, wie kann ich es hinzufügen?
Besuchen Sie das Ultralytics-snippets repo und öffnen Sie einen Issue oder Pull Request!
Wie deinstalliere ich die Ultralytics-Snippets Extension?
Wie jede andere VS Code-Erweiterung können Sie sie deinstallieren, indem Sie zum Menü "Erweiterungen" in VS Code navigieren. Suchen Sie die Erweiterung Ultralytics-snippets im Menü und klicken Sie auf das Zahnradsymbol (⚙) und dann auf "Deinstallieren", um die Erweiterung zu entfernen.