Referenz für ultralytics/utils/checks.py
Hinweis
Diese Datei ist verfügbar unter https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/utils/checks .py. Wenn du ein Problem entdeckst, hilf bitte mit, es zu beheben, indem du einen Pull Request 🛠️ einreichst. Vielen Dank 🙏!
ultralytics.utils.checks.parse_requirements(file_path=ROOT.parent / 'requirements.txt', package='')
Analysiert die Datei requirements.txt und ignoriert dabei Zeilen, die mit "#" beginnen, sowie jeden Text nach "#".
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
file_path |
Path
|
Pfad zur Datei requirements.txt. |
parent / 'requirements.txt'
|
package |
str
|
Python Paket anstelle der Datei requirements.txt zu verwenden, d.h. package='ultralytics'. |
''
|
Retouren:
Typ | Beschreibung |
---|---|
List[Dict[str, str]]
|
Liste der geparsten Anforderungen als Wörterbücher mit |
Beispiel
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.parse_version(version='0.0.0')
Konvertiert eine Versionszeichenkette in ein Tupel aus ganzen Zahlen und ignoriert dabei alle zusätzlichen nicht-numerischen Zeichenfolgen, die an die Version angehängt sind. Diese Funktion ersetzt die veraltete Funktion 'pkg_resources.parse_version(v)'.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
version |
str
|
Versionsstring, z.B. '2.0.1+cpu' |
'0.0.0'
|
Retouren:
Typ | Beschreibung |
---|---|
tuple
|
Tupel aus ganzen Zahlen, die den numerischen Teil der Version und den zusätzlichen String darstellen, d.h. (2, 0, 1) |
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.is_ascii(s)
Prüfe, ob eine Zeichenkette nur aus ASCII-Zeichen besteht.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
s |
str
|
Zu prüfende Zeichenfolge. |
erforderlich |
Retouren:
Typ | Beschreibung |
---|---|
bool
|
True, wenn der String nur aus ASCII-Zeichen besteht, sonst False. |
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_imgsz(imgsz, stride=32, min_dim=1, max_dim=2, floor=0)
Überprüfe, ob die Bildgröße in jeder Dimension ein Vielfaches der angegebenen Schrittweite ist. Wenn die Bildgröße kein Vielfaches der Stride, aktualisiere sie auf das nächste Vielfache des Stride, das größer oder gleich dem angegebenen Floor-Wert ist.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
imgsz |
int | cList[int]
|
Bildgröße. |
erforderlich |
stride |
int
|
Schrittwert. |
32
|
min_dim |
int
|
Mindestanzahl der Abmessungen. |
1
|
max_dim |
int
|
Maximale Anzahl von Dimensionen. |
2
|
floor |
int
|
Minimal zulässiger Wert für die Bildgröße. |
0
|
Retouren:
Typ | Beschreibung |
---|---|
List[int]
|
Aktualisierte Bildgröße. |
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_version(current='0.0.0', required='0.0.0', name='version', hard=False, verbose=False, msg='')
Überprüfe die aktuelle Version mit der gewünschten Version oder dem gewünschten Bereich.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
current |
str
|
Aktuelle Version oder Name des Pakets, von dem die Version geholt werden soll. |
'0.0.0'
|
required |
str
|
Erforderliche Version oder Bereich (im pip-ähnlichen Format). |
'0.0.0'
|
name |
str
|
Name, der in der Warnmeldung verwendet werden soll. |
'version'
|
hard |
bool
|
Wenn True, wird ein AssertionError ausgelöst, wenn die Anforderung nicht erfüllt ist. |
False
|
verbose |
bool
|
Wenn True, wird eine Warnmeldung ausgegeben, wenn die Anforderung nicht erfüllt ist. |
False
|
msg |
str
|
Zusätzliche Meldung, die angezeigt wird, wenn sie ausführlich ist. |
''
|
Retouren:
Typ | Beschreibung |
---|---|
bool
|
True, wenn die Anforderung erfüllt ist, sonst False. |
Beispiel
# Check if current version is exactly 22.04
check_version(current='22.04', required='==22.04')
# Check if current version is greater than or equal to 22.04
check_version(current='22.10', required='22.04') # assumes '>=' inequality if none passed
# Check if current version is less than or equal to 22.04
check_version(current='22.04', required='<=22.04')
# Check if current version is between 20.04 (inclusive) and 22.04 (exclusive)
check_version(current='21.10', required='>20.04,<22.04')
Quellcode in ultralytics/utils/checks.py
175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 |
|
ultralytics.utils.checks.check_latest_pypi_version(package_name='ultralytics')
Gibt die neueste Version eines PyPI-Pakets zurück, ohne es herunterzuladen oder zu installieren.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
package_name |
str
|
Der Name des Pakets, für das du die neueste Version suchst. |
'ultralytics'
|
Retouren:
Typ | Beschreibung |
---|---|
str
|
Die neueste Version des Pakets. |
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_pip_update_available()
Überprüft, ob eine neue Version des Pakets ultralytics auf PyPI verfügbar ist.
Retouren:
Typ | Beschreibung |
---|---|
bool
|
True, wenn ein Update verfügbar ist, sonst False. |
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_font(font='Arial.ttf')
Finde die Schrift lokal oder lade sie in das Konfigurationsverzeichnis des Benutzers herunter, wenn sie noch nicht vorhanden ist.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
font |
str
|
Pfad oder Name der Schriftart. |
'Arial.ttf'
|
Retouren:
Name | Typ | Beschreibung |
---|---|---|
file |
Path
|
Pfad der Schriftartdatei aufgelöst. |
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_python(minimum='3.8.0')
Überprüfe die aktuelle python Version mit der erforderlichen Mindestversion.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
minimum |
str
|
Erforderliche Mindestversion von python. |
'3.8.0'
|
Retouren:
Typ | Beschreibung |
---|---|
bool
|
Ob die installierte Version von Python die Mindestanforderungen erfüllt. |
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_requirements(requirements=ROOT.parent / 'requirements.txt', exclude=(), install=True, cmds='')
Überprüfe, ob die installierten Abhängigkeiten die Anforderungen von YOLOv8 erfüllen und versuche, bei Bedarf ein automatisches Update durchzuführen.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
requirements |
Union[Path, str, List[str]]
|
Pfad zu einer requirements.txt-Datei, eine einzelne Paketanforderung als String oder eine Liste von Paketanforderungen als Strings. |
parent / 'requirements.txt'
|
exclude |
Tuple[str]
|
Tupel von Paketnamen, die von der Prüfung ausgeschlossen werden sollen. |
()
|
install |
bool
|
Wenn True, wird versucht, Pakete, die die Anforderungen nicht erfüllen, automatisch zu aktualisieren. |
True
|
cmds |
str
|
Zusätzliche Befehle, die bei der automatischen Aktualisierung an den Befehl pip install übergeben werden. |
''
|
Beispiel
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_torchvision()
Überprüft die installierten Versionen von PyTorch und Torchvision, um sicherzustellen, dass sie kompatibel sind.
Diese Funktion überprüft die installierten Versionen von PyTorch und Torchvision und warnt, wenn sie nicht kompatibel sind. der bereitgestellten Kompatibilitätstabelle, die auf https://github.com/pytorch/vision#installation.
Die Kompatibilitätstabelle ist ein Wörterbuch, in dem die Schlüssel PyTorch Versionen und die Werte Listen von kompatiblen Torchvision-Versionen sind.
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_suffix(file='yolov8n.pt', suffix='.pt', msg='')
Überprüfe die Datei(en) auf akzeptable Suffixe.
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_yolov5u_filename(file, verbose=True)
Ersetze die alten YOLOv5 Dateinamen durch aktualisierte YOLOv5u Dateinamen.
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_model_file_from_stem(model='yolov8n')
Gibt einen Modell-Dateinamen aus einem gültigen Modellstamm zurück.
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_file(file, suffix='', download=True, hard=True)
Datei suchen/herunterladen (falls nötig) und Pfad zurückgeben.
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_yaml(file, suffix=('.yaml', '.yml'), hard=True)
YAML-Datei suchen/herunterladen (falls nötig) und Pfad zurückgeben, Suffix prüfen.
ultralytics.utils.checks.check_is_path_safe(basedir, path)
Überprüfe, ob der aufgelöste Pfad unter dem beabsichtigten Verzeichnis liegt, um eine Pfadumgehung zu verhindern.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
basedir |
Path | str
|
Das gewünschte Verzeichnis. |
erforderlich |
path |
Path | str
|
Der Weg zur Kontrolle. |
erforderlich |
Retouren:
Typ | Beschreibung |
---|---|
bool
|
True, wenn der Pfad sicher ist, sonst False. |
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_imshow(warn=False)
Prüfe, ob die Umgebung Bildanzeigen unterstützt.
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_yolo(verbose=True, device='')
Gib eine menschenlesbare YOLO Software- und Hardware-Zusammenfassung zurück.
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.collect_system_info()
Erfasse und drucke relevante Systeminformationen wie Betriebssystem, Python, RAM, CPU und CUDA.
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.check_amp(model)
Diese Funktion überprüft die PyTorch Automatic Mixed Precision (AMP) Funktionalität eines YOLOv8 Modells. Wenn die Prüfungen fehlschlägt, bedeutet das, dass es Anomalien mit AMP im System gibt, die zu NaN-Verlusten oder Null-MAP-Ergebnissen führen können, sodass AMP während des Trainings deaktiviert werden.
Parameter:
Name | Typ | Beschreibung | Standard |
---|---|---|---|
model |
Module
|
Eine YOLOv8 Modellinstanz. |
erforderlich |
Beispiel
Retouren:
Typ | Beschreibung |
---|---|
bool
|
Gibt True zurück, wenn die AMP-Funktionalität korrekt mit dem YOLOv8 Modell funktioniert, sonst False. |
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.git_describe(path=ROOT)
Liefert eine menschenlesbare Git-Beschreibung, z.B. v5.0-5-g3e25f1e https://git-scm.com/docs/git-describe.
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.print_args(args=None, show_file=True, show_func=False)
Funktionsargumente ausgeben (optionales args-Diktat).
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.cuda_device_count()
Ermittelt die Anzahl der in der Umgebung verfügbaren NVIDIA-GPUs.
Retouren:
Typ | Beschreibung |
---|---|
int
|
Die Anzahl der verfügbaren NVIDIA-GPUs. |
Quellcode in ultralytics/utils/checks.py
ultralytics.utils.checks.cuda_is_available()
Prüfe, ob CUDA in deiner Umgebung verfügbar ist.
Retouren:
Typ | Beschreibung |
---|---|
bool
|
True, wenn ein oder mehrere NVIDIA-GPUs verfügbar sind, sonst False. |
Erstellt am 2023-11-12, Aktualisiert am 2024-05-08
Autoren: Burhan-Q (1), glenn-jocher (3), Laughing-q (1)