Ultralytics Solutions: Nutze YOLO26 zur Lösung von Problemen aus der Praxis#
Ultralytics Solutions bieten modernste Anwendungen von YOLO-Modellen und ermöglichen reale Lösungen wie Objektzählung, Weichzeichnen und Sicherheitssysteme, wodurch Effizienz und Genauigkeit in verschiedenen Branchen gesteigert werden. Entdecke die Leistungsfähigkeit von YOLO26 für praktische, wirkungsvolle Implementierungen.
![]()
Watch: How to Run Ultralytics Solutions from the Command Line (CLI) | Ultralytics YOLO26 🚀
Lösungen#
Hier ist unsere zusammengestellte Liste von Ultralytics-Lösungen, mit denen du großartige Computer Vision-Projekte erstellen kannst.
- Analytics: Führe eine umfassende Datenanalyse durch, um Muster zu erkennen und fundierte Entscheidungen zu treffen, indem du YOLO26 für deskriptive, prädiktive und präskriptive Analysen nutzt.
- Distance Calculation: Berechne Abstände zwischen Objekten mithilfe von bounding box-Schwerpunkten in YOLO26, was für die räumliche Analyse unerlässlich ist.
- Heatmaps: Verwende Detektions-Heatmaps, um die Datenintensität über eine Matrix hinweg zu visualisieren, was klare Einblicke in Computer-Vision-Aufgaben ermöglicht.
- Instance Segmentation with Object Tracking: Implementiere Instance Segmentation und Objektverfolgung mit YOLO26, um präzise Objektgrenzen und eine kontinuierliche Überwachung zu erreichen.
- Live Inference with Streamlit: Nutze die Leistungsfähigkeit von YOLO26 für Echtzeit-object detection direkt über deinen Webbrowser mit einer benutzerfreundlichen Streamlit-Oberfläche.
- Object Blurring: Wende das Weichzeichnen von Objekten mit YOLO26 an, um die Privatsphäre bei der Bild- und Videoverarbeitung zu schützen.
- Object Counting: Lerne, wie du eine Echtzeit-Objektzählung mit YOLO26 durchführst. Erwerbe das Fachwissen, um Objekte in Live-Videostreams genau zu zählen.
- Object Counting in Regions: Zähle Objekte in bestimmten Regionen mit YOLO26 für eine präzise Detektion in verschiedenen Bereichen.
- Object Cropping: Meistere das Zuschneiden von Objekten mit YOLO26 für eine präzise Extraktion von Objekten aus Bildern und Videos.
- Parking Management: Organisiere und steuere den Fahrzeugfluss auf Parkplätzen mit YOLO26, um die Raumnutzung und die Benutzererfahrung zu optimieren.
- Queue Management: Implementiere effiziente Warteschlangen-Managementsysteme, um Wartezeiten zu minimieren und die Produktivität mit YOLO26 zu steigern.
- Security Alarm System: Erstelle ein Sicherheitsalarmsystem mit YOLO26, das Alarme auslöst, wenn neue Objekte erkannt werden. Passe das System an deine spezifischen Bedürfnisse an.
- Similarity Search: Ermögliche eine intelligente Bildsuche durch die Kombination von OpenAI CLIP-Einbettungen mit Kosinus-Ähnlichkeitssuche, wodurch natürlichsprachliche Abfragen wie „Person mit Tasche“ oder „bewegte Fahrzeuge“ möglich werden.
- Speed Estimation: Schätze die Objektgeschwindigkeit mit YOLO26 und Objektverfolgungstechniken ab, was für Anwendungen wie autonome Fahrzeuge und Verkehrsüberwachung von entscheidender Bedeutung ist.
- Track Objects in Zone: Erfahre, wie du Objekte innerhalb bestimmter Zonen von Videoframes mit YOLO26 verfolgst, um eine präzise und effiziente Überwachung zu gewährleisten.
- VisionEye View Objects Mapping: Entwickle Systeme, die den Fokus des menschlichen Auges auf bestimmte Objekte nachahmen, wodurch die Fähigkeit des Computers verbessert wird, Details zu erkennen und zu priorisieren.
- Workouts Monitoring: Entdecke, wie du Workouts mit YOLO26 überwachen kannst. Lerne, verschiedene Fitness-Routinen in Echtzeit zu verfolgen und zu analysieren.
Lösungsargumente#
| Argument | Typ | Standard | Beschreibung |
|---|---|---|---|
model | str | None | Pfad zu einer Ultralytics YOLO-Modelldatei. |
region | list oder dict | None | Punkte, die die Region von Interesse definieren – entweder eine Liste von (x, y)-Tupeln oder ein Dictionary, das Regionsnamen auf Punktlisten für mehrere Regionen abbildet (nur RegionCounter). Wenn None, greifen Lösungen, die eine Region erfordern, auf einen vordefinierten Standardwert zurück. |
show_in | bool | True | Flag zur Steuerung, ob die 'in'-Zähler im Videostream angezeigt werden sollen. |
show_out | bool | True | Flag zur Steuerung, ob die 'out'-Zähler im Videostream angezeigt werden sollen. |
analytics_type | str | 'line' | Art des Graphen, d. h. line, bar, area oder pie. |
colormap | int | cv2.COLORMAP_DEEPGREEN | Zu verwendende Farbkarte für die Heatmap. |
json_file | str | None | Pfad zur JSON-Datei, die alle Parkkoordinatendaten enthält. |
up_angle | float | 145.0 | Winkelschwellenwert für die 'up'-Pose. |
kpts | list[int] | '[6, 8, 10]' | Liste von drei Keypoint-Indizes für die Workout-Überwachung. Diese entsprechen Körpergelenken oder Teilen wie Schultern, Ellbogen und Handgelenken für Übungen wie Liegestütze, Klimmzüge, Kniebeugen und Bauchmuskeltraining. |
down_angle | int | 90 | Winkelschwellenwert für die 'down'-Pose. |
blur_ratio | float | 0.5 | Passt den Prozentsatz der Unschärfeintensität an, mit Werten im Bereich 0.1 - 1.0. |
crop_dir | str | 'cropped-detections' | Verzeichnisname zum Speichern der zugeschnittenen Detektionen. |
records | int | 5 | Gesamtzahl der Detektionen, um eine E-Mail mit dem Sicherheitsalarmsystem auszulösen. |
vision_point | tuple[int, int] | (20, 20) | Der Punkt, an dem VisionEye Objekte verfolgt und Pfade zeichnet. |
source | str | None | Pfad zur Eingangsquelle (Video, RTSP, etc.). Nur mit dem Solutions-CLI (Command Line Interface) verwendbar. |
figsize | tuple[float, float] | (12.8, 7.2) | Figurengröße für analytische Diagramme wie Heatmaps oder Graphen. |
fps | float | 30.0 | Bilder pro Sekunde für Geschwindigkeitsberechnungen. |
max_hist | int | 5 | Maximale Anzahl historischer Punkte pro Objekt für Geschwindigkeits-/Richtungsberechnungen. |
meter_per_pixel | float | 0.05 | Skalierungsfaktor für die Umrechnung von Pixelabständen in reale Einheiten. |
max_speed | int | 120 | Maximales Geschwindigkeitslimit in visuellen Overlays (verwendet für Warnungen). |
data | str | 'images' | Pfad zum Bildverzeichnis für die Ähnlichkeitssuche. |
imgsz | int | 640 | Eingangsbildgröße für die Modellinferenz. |
Solutions unterstützen auch einige der Argumente von track, einschließlich Parametern wie conf, line_width, tracker, model, show, verbose und classes.
| Argument | Typ | Standard | Beschreibung |
|---|---|---|---|
tracker | str | 'tracktrack.yaml' | Gibt den zu verwendenden Tracking-Algorithmus an. Integrierte Optionen: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.1 | Legt den Konfidenz-Schwellenwert für Detektionen fest; niedrigere Werte ermöglichen die Verfolgung von mehr Objekten, können aber zu falsch-positiven Ergebnissen führen. |
iou | float | 0.7 | Legt den Schwellenwert für die Intersection over Union (IoU) zum Filtern überlappender Detektionen fest. |
classes | list | None | Filtert Ergebnisse nach Klassenindex. Zum Beispiel verfolgt classes=[0, 2, 3] nur die angegebenen Klassen. |
verbose | bool | True | Steuert die Anzeige der Tracking-Ergebnisse und bietet eine visuelle Ausgabe der verfolgten Objekte. |
device | str | None | Gibt das Gerät für die Inferenz an (z. B. cpu, cuda:0 oder 0). Ermöglicht Benutzern die Auswahl zwischen CPU, einer spezifischen GPU oder anderen Rechengeräten für die Modellausführung. |
Du kannst show_conf, show_labels und andere genannte Argumente verwenden, um die Visualisierung anzupassen.
| Argument | Typ | Standard | Beschreibung |
|---|---|---|---|
show | bool | False | Falls True, werden die annotierten Bilder oder Videos in einem Fenster angezeigt. Nützlich für unmittelbares visuelles Feedback während der Entwicklung oder des Testens. |
line_width | int or None | None | Gibt die Linienstärke von Bounding Boxes an. Falls None, wird die Linienstärke automatisch basierend auf der Bildgröße angepasst. Bietet visuelle Anpassungsmöglichkeiten für mehr Klarheit. |
show_conf | bool | True | Zeigt den Konfidenzwert für jede Erkennung neben dem Label an. Bietet Einblick in die Gewissheit des Modells für jede Erkennung. |
show_labels | bool | True | Zeigt Labels für jede Erkennung in der visuellen Ausgabe an. Ermöglicht ein sofortiges Verständnis der erkannten Objekte. |
Nutzung von SolutionAnnotator#
Alle Ultralytics Solutions verwenden die separate Klasse SolutionAnnotator, die die Hauptklasse Annotator erweitert und über die folgenden Methoden verfügt:
| Methode | Rückgabetyp | Beschreibung |
|---|---|---|
draw_region() | None | Zeichnet eine Region unter Verwendung spezifizierter Punkte, Farben und Dicke. |
queue_counts_display() | None | Zeigt Warteschlangenzahlen in der spezifizierten Region an. |
display_analytics() | None | Zeigt Gesamtstatistiken für das Parkplatzmanagement an. |
estimate_pose_angle() | float | Berechnet den Winkel zwischen drei Punkten in einer Objektpose. |
draw_specific_kpts() | np.ndarray | Zeichnet spezifische Keypoints auf das Bild. |
plot_workout_information() | int | Zeichnet ein beschriftetes Textfeld auf das Bild. |
plot_angle_and_count_and_stage() | None | Visualisiert Winkel, Wiederholungsanzahl und Phase für das Workout-Monitoring. |
plot_distance_and_line() | None | Zeigt den Abstand zwischen Schwerpunkten an und verbindet sie mit einer Linie. |
display_objects_labels() | None | Annotiert Bounding Boxes mit Objektklassen-Labels. |
sweep_annotator() | None | Visualisiert eine vertikale Sweep-Linie und ein optionales Label. |
visioneye() | None | Mappt und verbindet Objektschwerpunkte mit einem visuellen "Augenpunkt". |
adaptive_label() | None | Zeichnet ein kreisförmiges oder rechteckiges Hintergrundlabel in die Mitte einer Bounding Box. |
Arbeiten mit SolutionResults#
Mit Ausnahme von Similarity Search gibt jeder Solution-Aufruf ein SolutionResults-Objekt zurück.
- Bei der Objektzählung umfassen die Ergebnisse
in_count,out_countundclasswise_count.
import cv2
from ultralytics import solutions
im0 = cv2.imread("path/to/img")
region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]
counter = solutions.ObjectCounter(
show=True, # display the output
region=region_points, # pass region points
model="yolo26n.pt", # model="yolo26n-obb.pt" for object counting with OBB model.
# classes=[0, 2], # count specific classes i.e. person and car with COCO pretrained model.
# tracker="botsort.yaml" # Choose trackers i.e "bytetrack.yaml"
)
results = counter(im0)
print(results.in_count) # display in_counts
print(results.out_count) # display out_counts
print(results.classwise_count) # display classwise_countSolutionResults-Objekte haben die folgenden Attribute:
| Attribut | Typ | Beschreibung |
|---|---|---|
plot_im | np.ndarray | Bild mit visuellen Overlays wie Zählungen, Weichzeichner-Effekten oder lösungsspezifischen Erweiterungen. |
in_count | int | Gesamtanzahl der Objekte, die den definierten Bereich im Videostream betreten haben. |
out_count | int | Gesamtanzahl der Objekte, die den definierten Bereich im Videostream verlassen haben. |
classwise_count | Dict[str, int] | Dictionary zur Aufzeichnung klassenspezifischer Ein-/Ausgangsobjektzahlen für fortgeschrittene Analysen. |
queue_count | int | Anzahl der Objekte, die sich aktuell in einer vordefinierten Warteschlange oder einem Wartebereich befinden (geeignet für Warteschlangenmanagement). |
workout_count | list[int] | Wiederholungszahlen pro Track aus dem AI Gym (ein Eintrag pro aktuell verfolgter Person). |
workout_angle | list[float] | Übungswinkel pro Track aus dem AI Gym (ein Eintrag pro aktuell verfolgter Person). |
workout_stage | list[str] | Aktuelle Trainingsphase pro Track aus dem AI Gym (ein Eintrag pro aktuell verfolgter Person). |
pixels_distance | float | Pixelbasierte Distanz zwischen zwei Objekten oder Punkten, z. B. Bounding Boxes. (Geeignet für Distanzberechnung). |
available_slots | int | Anzahl der freien Plätze in einem überwachten Bereich (geeignet für Parkplatzmanagement). |
filled_slots | int | Anzahl der belegten Plätze in einem überwachten Bereich. (Geeignet für Parkplatzmanagement) |
email_sent | bool | Gibt an, ob eine Benachrichtigungs- oder Alarm-E-Mail erfolgreich gesendet wurde (geeignet für Sicherheitsalarm). |
total_tracks | int | Gesamtanzahl der während der Videoanalyse beobachteten eindeutigen Objekt-Tracks. |
region_counts | Dict[str, int] | Objektzahlen innerhalb benutzerdefinierter Regionen oder Zonen. |
speed_dict | Dict[str, float] | Track-spezifisches Dictionary berechneter Objektgeschwindigkeiten, nützlich für Geschwindigkeitsanalysen. |
total_crop_objects | int | Gesamtanzahl der zugeschnittenen Objektbilder, die durch die ObjectCropper-Lösung generiert wurden. |
speed | Dict[str, float] | Dictionary, das Leistungsmetriken für Tracking und Lösungsprozessierung enthält. |
Weitere Details findest du in der SolutionResults-Klassendokumentation.
Nutzung von Solutions über CLI#
Die meisten Solutions können direkt über das Command-Line Interface verwendet werden, einschließlich:
Count, Crop, Blur, Workout, Heatmap, Isegment, Visioneye, Speed, Queue, Analytics, Inference, Trackzone
Syntax
yolo SOLUTIONS SOLUTION_NAME ARGS
- SOLUTIONS ist ein erforderliches Schlüsselwort.
- SOLUTION_NAME ist eines von:
['count', 'crop', 'blur', 'workout', 'heatmap', 'isegment', 'queue', 'speed', 'analytics', 'trackzone', 'inference', 'visioneye', 'region', 'security', 'parking']. - ARGS (optional) sind benutzerdefinierte
arg=value-Paare wieshow_in=True, um Standardeinstellungen zu überschreiben.
yolo solutions count show=True # for object counting
yolo solutions count source="path/to/video.mp4" # specify video file pathTrage zu unseren Solutions bei#
Wir begrüßen Beiträge aus der Community! Wenn du einen speziellen Aspekt von Ultralytics YOLO gemeistert hast, der in unseren Solutions noch nicht abgedeckt ist, ermutigen wir dich, dein Fachwissen zu teilen. Einen Guide zu schreiben ist eine großartige Möglichkeit, der Community etwas zurückzugeben und uns dabei zu helfen, unsere Dokumentation umfassender und benutzerfreundlicher zu gestalten.
Um loszulegen, lies bitte unseren Contributing Guide für Richtlinien zum Erstellen eines Pull Requests (PR) 🛠️. Wir freuen uns auf deine Beiträge!
Lass uns zusammenarbeiten, um das Ultralytics YOLO-Ökosystem robuster und vielseitiger zu machen 🙏!
FAQ#
Ultralytics YOLO26 kann für die Echtzeit-Objektzählung verwendet werden, indem seine fortschrittlichen Funktionen zur Objekterkennung genutzt werden. Du kannst unserer detaillierten Anleitung zum Object Counting folgen, um YOLO26 für die Live-Videostream-Analyse einzurichten. Installiere einfach YOLO26, lade dein Modell und verarbeite Video-Frames, um Objekte dynamisch zu zählen.
Ultralytics YOLO26 verbessert Sicherheitssysteme, indem es Objekterkennung und Benachrichtigungsmechanismen in Echtzeit bietet. Durch den Einsatz von YOLO26 kannst du ein Sicherheitsalarmsystem erstellen, das Alarme auslöst, wenn neue Objekte im Überwachungsbereich erkannt werden. Erfahre, wie du ein Security Alarm System mit YOLO26 für eine robuste Sicherheitsüberwachung einrichtest.
Ultralytics YOLO26 kann Warteschlangen-Managementsysteme erheblich verbessern, indem es Personen in Warteschlangen genau zählt und verfolgt, wodurch Wartezeiten verkürzt und die Serviceeffizienz optimiert werden. Folge unserer detaillierten Anleitung zum Queue Management, um zu erfahren, wie du YOLO26 für eine effektive Überwachung und Analyse von Warteschlangen implementierst.
Ja, Ultralytics YOLO26 kann effektiv zur Überwachung von Workouts eingesetzt werden, indem Fitness-Routinen in Echtzeit verfolgt und analysiert werden. Dies ermöglicht eine präzise Bewertung von Übungsform und -leistung. Erkunde unseren Leitfaden zum Workouts Monitoring, um zu erfahren, wie du ein KI-gestütztes Workout-Überwachungssystem mit YOLO26 einrichtest.
Ultralytics YOLO26 kann Heatmaps generieren, um die Datenintensität in einem bestimmten Bereich zu visualisieren und Regionen mit hoher Aktivität oder starkem Interesse hervorzuheben. Diese Funktion ist besonders nützlich, um Muster und Trends bei verschiedenen Computer-Vision-Aufgaben zu verstehen. Erfahre mehr über das Erstellen und Verwenden von Heatmaps mit YOLO26 für eine umfassende Datenanalyse und -visualisierung.