Riferimento per ultralytics/utils/checks.py
Nota
Questo file è disponibile su https://github.com/ultralytics/ ultralytics/blob/main/ ultralytics/utils/checks .py. Se noti un problema, contribuisci a risolverlo inviando una Pull Request 🛠️. Grazie 🙏!
ultralytics.utils.checks.parse_requirements(file_path=ROOT.parent / 'requirements.txt', package='')
Analizza un file requirements.txt, ignorando le righe che iniziano con '#' e tutto il testo dopo '#'.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
file_path |
Path
|
Percorso del file requirements.txt. |
parent / 'requirements.txt'
|
package |
str
|
Python da utilizzare al posto del file requirements.txt, ad esempio package='ultralytics'. |
''
|
Restituzione:
Tipo | Descrizione |
---|---|
List[Dict[str, str]]
|
Elenco dei requisiti analizzati come dizionari con |
Esempio
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.parse_version(version='0.0.0')
Converte una stringa di versione in una tupla di numeri interi, ignorando qualsiasi stringa extra non numerica allegata alla versione. Questa sostituisce il deprecato "pkg_resources.parse_version(v)".
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
version |
str
|
Stringa della versione, ad esempio '2.0.1+cpu'. |
'0.0.0'
|
Restituzione:
Tipo | Descrizione |
---|---|
tuple
|
Tupla di numeri interi che rappresentano la parte numerica della versione e la stringa extra, ad esempio (2, 0, 1) |
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.is_ascii(s)
Controlla se una stringa è composta solo da caratteri ASCII.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
s |
str
|
Stringa da controllare. |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
bool
|
Vero se la stringa è composta solo da caratteri ASCII, Falso altrimenti. |
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_imgsz(imgsz, stride=32, min_dim=1, max_dim=2, floor=0)
Verifica che la dimensione dell'immagine sia un multiplo dello stride dato in ogni dimensione. Se la dimensione dell'immagine non è un multiplo dello stride, aggiornala al multiplo più vicino dello stride che sia maggiore o uguale al valore floor indicato. aggiorna la dimensione dell'immagine al multiplo più vicino dello stride che sia maggiore o uguale al valore minimo indicato.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
imgsz |
int | cList[int]
|
Dimensioni dell'immagine. |
richiesto |
stride |
int
|
Valore del passo. |
32
|
min_dim |
int
|
Numero minimo di dimensioni. |
1
|
max_dim |
int
|
Numero massimo di dimensioni. |
2
|
floor |
int
|
Valore minimo consentito per le dimensioni dell'immagine. |
0
|
Restituzione:
Tipo | Descrizione |
---|---|
List[int]
|
Dimensioni dell'immagine aggiornate. |
Codice sorgente 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='')
Controlla la versione corrente rispetto alla versione o all'intervallo richiesto.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
current |
str
|
Versione attuale o nome del pacchetto da cui ottenere la versione. |
'0.0.0'
|
required |
str
|
Versione o intervallo richiesto (in formato pip). |
'0.0.0'
|
name |
str
|
Nome da utilizzare nel messaggio di avviso. |
'version'
|
hard |
bool
|
Se Vero, solleva un AssertionError se il requisito non è soddisfatto. |
False
|
verbose |
bool
|
Se Vero, stampa un messaggio di avviso se il requisito non è soddisfatto. |
False
|
msg |
str
|
Messaggio extra da visualizzare se verboso. |
''
|
Restituzione:
Tipo | Descrizione |
---|---|
bool
|
Vero se il requisito è soddisfatto, Falso altrimenti. |
Esempio
# 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')
Codice sorgente 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')
Restituisce l'ultima versione di un pacchetto PyPI senza scaricarlo o installarlo.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
package_name |
str
|
Il nome del pacchetto per cui trovare l'ultima versione. |
'ultralytics'
|
Restituzione:
Tipo | Descrizione |
---|---|
str
|
L'ultima versione del pacchetto. |
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_pip_update_available()
Controlla se una nuova versione del pacchetto ultralytics è disponibile su PyPI.
Restituzione:
Tipo | Descrizione |
---|---|
bool
|
Vero se è disponibile un aggiornamento, Falso altrimenti. |
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_font(font='Arial.ttf')
Trova il font localmente o lo scarica nella directory di configurazione dell'utente se non esiste già.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
font |
str
|
Percorso o nome del font. |
'Arial.ttf'
|
Restituzione:
Nome | Tipo | Descrizione |
---|---|---|
file |
Path
|
Percorso del file di font risolto. |
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_python(minimum='3.8.0')
Controlla la versione attuale di python rispetto alla versione minima richiesta.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
minimum |
str
|
È richiesta la versione minima di python. |
'3.8.0'
|
Restituzione:
Tipo | Descrizione |
---|---|
bool
|
Se la versione di Python installata soddisfa i vincoli minimi. |
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_requirements(requirements=ROOT.parent / 'requirements.txt', exclude=(), install=True, cmds='')
Controlla se le dipendenze installate soddisfano i requisiti di YOLOv8 e tenta l'aggiornamento automatico se necessario.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
requirements |
Union[Path, str, List[str]]
|
Percorso di un file requirements.txt, un singolo requisito del pacchetto come stringa o un elenco di requisiti del pacchetto come stringhe. o un elenco di requisiti del pacchetto come stringhe. |
parent / 'requirements.txt'
|
exclude |
Tuple[str]
|
Tupla di nomi di pacchetti da escludere dal controllo. |
()
|
install |
bool
|
Se Vero, tenta di aggiornare automaticamente i pacchetti che non soddisfano i requisiti. |
True
|
cmds |
str
|
Comandi aggiuntivi da passare al comando pip install durante l'aggiornamento automatico. |
''
|
Esempio
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_torchvision()
Controlla le versioni installate di PyTorch e Torchvision per verificare che siano compatibili.
Questa funzione controlla le versioni installate di PyTorch e Torchvision e avverte se sono incompatibili in base alla tabella di compatibilità fornita. secondo la tabella di compatibilità fornita, basata su: https://github.com/pytorch/vision#installation.
La tabella di compatibilità è un dizionario in cui le chiavi sono le versioni di PyTorch e i valori sono elenchi di versioni di Torchvision compatibili. Torchvision compatibili.
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_suffix(file='yolov8n.pt', suffix='.pt', msg='')
Controlla che i file abbiano un suffisso accettabile.
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_yolov5u_filename(file, verbose=True)
Sostituisci i nomi dei file YOLOv5 con quelli aggiornati di YOLOv5u.
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_model_file_from_stem(model='yolov8n')
Restituisce il nome di un file di un modello valido.
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_file(file, suffix='', download=True, hard=True)
Cerca/scarica il file (se necessario) e restituisce il percorso.
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_yaml(file, suffix=('.yaml', '.yml'), hard=True)
Cerca/scarica il file YAML (se necessario) e restituisce il percorso, controllando il suffisso.
ultralytics.utils.checks.check_is_path_safe(basedir, path)
Controlla se il percorso risolto si trova sotto la directory desiderata per evitare l'attraversamento del percorso.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
basedir |
Path | str
|
La directory prevista. |
richiesto |
path |
Path | str
|
Il percorso da controllare. |
richiesto |
Restituzione:
Tipo | Descrizione |
---|---|
bool
|
Vero se il percorso è sicuro, Falso altrimenti. |
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_imshow(warn=False)
Controlla se l'ambiente supporta la visualizzazione di immagini.
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_yolo(verbose=True, device='')
Restituisce un riepilogo del software e dell'hardware di YOLO leggibile dall'uomo.
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.collect_system_info()
Raccogli e stampa le informazioni rilevanti sul sistema, tra cui OS, Python, RAM, CPU e CUDA.
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.check_amp(model)
Questa funzione verifica la funzionalità AMP (Automatic Mixed Precision) di PyTorch di un modello YOLOv8 . Se i controlli fallisce, significa che ci sono anomalie con AMP sul sistema che possono causare perdite NaN o risultati zero-mAP, quindi AMP verrà sarà disabilitata durante l'addestramento.
Parametri:
Nome | Tipo | Descrizione | Predefinito |
---|---|---|---|
model |
Module
|
Un'istanza del modello YOLOv8 . |
richiesto |
Esempio
Restituzione:
Tipo | Descrizione |
---|---|
bool
|
Restituisce True se la funzionalità AMP funziona correttamente con il modello YOLOv8 , altrimenti False. |
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.git_describe(path=ROOT)
Restituisce una descrizione git leggibile, ad esempio v5.0-5-g3e25f1e https://git-scm.com/docs/git-describe.
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.print_args(args=None, show_file=True, show_func=False)
Stampa gli argomenti della funzione (dict args opzionale).
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.cuda_device_count()
Ottiene il numero di GPU NVIDIA disponibili nell'ambiente.
Restituzione:
Tipo | Descrizione |
---|---|
int
|
Il numero di GPU NVIDIA disponibili. |
Codice sorgente in ultralytics/utils/checks.py
ultralytics.utils.checks.cuda_is_available()
Controlla se CUDA è disponibile nell'ambiente.
Restituzione:
Tipo | Descrizione |
---|---|
bool
|
Vero se sono disponibili una o più GPU NVIDIA, Falso altrimenti. |