Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Licenza YOLO
Guide

Rilevamento di oggetti piccoli con il tiling delle immagini in Ultralytics YOLO, da Python a Rust

Scopri quando il tiling delle immagini aiuta YOLO a rilevare oggetti piccoli, confrontane i costi ed esegui l'inferenza integrata con tiling in Python o Rust senza SAHI.

Onuralp SezerOnuralp Sezer16 min di lettura
Veduta aerea di un incrocio trafficato con auto racchiuse nei riquadri da Ultralytics YOLO26s usando tile da 640 pixel; linee tratteggiate indicano i bordi dei tile

Perché un rilevatore che funziona bene con le foto normali non rileva la maggior parte delle persone in un fotogramma ripreso da un drone? Spesso perché non le vede mai a dimensione intera. Con il valore predefinito imgsz=640, Ultralytics YOLO riduce un fotogramma di 1920 x 1080 tre volte prima che il modello lo analizzi, quindi un pedone alto 15 pixel finisce per essere alto circa 5 pixel.

Il tiling delle immagini può preservare questi dettagli degli oggetti piccoli eseguendo il modello su finestre sovrapposte dell'immagine a piena risoluzione e unendo i risultati. In un fotogramma VisDrone della nostra documentazione, ha portato Ultralytics YOLO26s da 35 rilevamenti a 161. Il prezzo è un maggior carico di lavoro per fotogramma: otto input tile invece di una sola immagine per quel fotogramma.

Ora il tiling è integrato in entrambe le fasi della distribuzione. Il pacchetto Python include l'argomento tile dalla versione Ultralytics 8.4.204 del 6 novembre, mentre il crate Rust ha aggiunto il flag --tile nella versione Ultralytics Inference 0.0.57 del 9 novembre. Questa guida spiega quando il tiling recupera gli oggetti piccoli, quanto costa e come eseguirlo in entrambi i casi.

Il ridimensionamento nasconde gli oggetti piccoli#

Il rilevamento di oggetti piccoli è difficile per un motivo semplice: un oggetto dispone solo dei pixel che ha. Un modello di rilevamento di oggetti apprende le forme da una manciata di pixel per oggetto e, quando l'intero fotogramma viene ridotto a 640 pixel sul lato più lungo, persone, veicoli e difetti distanti diventano troppo piccoli perché la rete riesca a distinguerli dalla trama e dal rumore.

Questo problema è più evidente nelle immagini aeree, nell'analisi delle immagini satellitari, nelle telecamere grandangolari per il traffico e la sicurezza e nelle foto ad alta risoluzione per le ispezioni. VisDrone è un benchmark aereo pubblico molto utilizzato: la sua documentazione descrive oggetti che spesso occupano solo qualche decina di pixel nel fotogramma e compaiono in gruppi densi e fortemente occlusi.

Il tiling conserva quei pixel. Con tile impostato sulla dimensione di input del modello, il modello analizza diverse finestre alla risoluzione nativa invece di elaborare una sola volta un fotogramma ridotto. L'idea è quella che il paper SAHI definisce inferenza iper-efficiente assistita da slicing, valutata dai suoi autori sui dataset aerei VisDrone e xView.

Nella guida al tiling ad alta risoluzione, YOLO26s su un fotogramma VisDrone di 1920 x 1080 con la soglia di confidenza predefinita restituisce 35 rilevamenti sull'intera immagine con imgsz=640 e 161 con tile=640, inclusi pedoni, ciclisti e auto distanti. La guida mostra entrambe le immagini affiancate. Si tratta del numero di predizioni, non di una valutazione con punteggio. Entrambi i conteggi sono stati ottenuti con gli stessi pesi; anche il tiling ha modificato il contesto visto da ciascuna finestra.

Lo stesso incrocio aereo mostrato due volte: poche auto racchiuse nei riquadri dopo aver ridimensionato l'intero fotogramma a 640 pixel, la maggior parte delle auto racchiuse nei riquadri usando tile da 640 pixel

Un secondo fotogramma di convalida VisDrone da 1920 x 1080, YOLO26s con la confidenza predefinita: 8 rilevamenti sull'intero fotogramma con imgsz=640, 128 con tile=640. È mostrata una porzione della strada, con riquadri senza etichette di classe.

Il tiling aggiunge un input del modello per ogni finestra#

La guida definisce con precisione la suddivisione in finestre. Le finestre si sovrappongono per una percentuale iniziale del 20% e l'ultima riga e l'ultima colonna si allineano al bordo dell'immagine, perciò le finestre ai bordi possono sovrapporsi maggiormente. Un'immagine più piccola della finestra viene suddivisa in un'unica finestra a immagine intera.

In questo modo è facile prevedere il costo. Un fotogramma di 1920 x 1080 con tile=640 usa otto finestre: quattro in orizzontale e due in verticale. Anche un fotogramma di 3840 x 2160 con tile=1280 usa otto finestre. Applicando la stessa regola del 20% a un fotogramma di 3840 x 2160 con tile=640 si ottengono otto colonne e quattro righe, cioè 32 finestre; dimezzare la dimensione della finestra su un fotogramma 4K quadruplica quindi gli input tile.

Un fotogramma aereo di 1920 x 1080 suddiviso in otto finestre sovrapposte di 640 x 640, con le fasce di sovrapposizione ombreggiate

Le otto finestre usate da tile=640 su un fotogramma di 1920 x 1080: le colonne iniziano a x = 0, 512, 1024 e 1280, le righe a y = 0 e 440. Le fasce ombreggiate sono visibili in più di una finestra.

Il batching modifica il modo in cui questi input raggiungono il modello. In Python, batch imposta quante finestre vengono elaborate insieme dal modello in una singola chiamata di inferenza; il crate Rust fa lo stesso con --batch su un modello esportato con batch dinamico. Il batching può migliorare il throughput, ma misura la latenza sul tuo hardware; la nostra guida all'inferenza batch con Ultralytics YOLO spiega perché.

Ecco come si confronta il tiling con gli altri modi per assegnare più pixel agli oggetti piccoli:

ApproccioInput del modello per un fotogramma di 1920 x 1080Cosa vede il modelloIdeale quando
Immagine intera, imgsz=6401Fotogramma ridotto di 3 volteGli oggetti restano ben visibili dopo il ridimensionamento
Immagine intera, imgsz=12801, con un costo di calcolo circa 4 volte superiore a quello di 640Fotogramma ridotto di 1,5 volteLa memoria e la latenza consentono un input più grande
tile=True con imgsz=6408Finestre da 640 pixel alla risoluzione nativaImmagini molte volte più grandi dell'input del modello
tile=400 con imgsz=640Più di 8Finestre ingrandite a 640Oggetti larghi solo pochi pixel anche alla risoluzione nativa

Ogni tile è un normale input del modello, quindi il tiling gestisce immagini molto grandi senza aumentare imgsz. Gli output alla risoluzione originale, come le maschere e le mappe di profondità, richiedono comunque memoria proporzionale all'immagine originale, mentre max_det limita il numero di maschere delle istanze conservate.

Quando il tiling è utile e quando è controproducente#

Il tiling è utile quando gli oggetti sono piccoli rispetto al fotogramma e il fotogramma è molto più grande dell'input del modello. Rientrano in questa categoria le immagini da droni e satelliti, il traffico visto dall'alto, le folle, gli scaffali fotografati da lontano e le immagini di ispezione visiva di intere schede o pannelli.

È controproducente quando gli oggetti sono grandi. Una finestra vede solo una parte di un camion che occupa metà del fotogramma, e la guida lo dice chiaramente: gli oggetti più grandi della sovrapposizione possono comunque essere suddivisi, perché nessuna finestra li vede per intero, e l'unione non ricompone i frammenti separati. Inoltre, elimina il contesto globale, che è particolarmente importante per la classificazione e la profondità, dove gli output dei tile possono non coincidere nell'immagine.

Le finestre più piccole comportano un ulteriore compromesso. Ingrandire una finestra da 400 pixel a 640 aiuta con gli oggetti larghi solo pochi pixel, ma ingrandisce anche il disordine dello sfondo, che può causare falsi positivi. Confronta due o tre dimensioni di tile sul tuo set di convalida e monitora sia la precisione sia il richiamo.

Come vengono ricomposti i tile in un unico risultato#

Ogni finestra produce le proprie predizioni nelle coordinate della finestra. Il tiling le riporta alle coordinate dell'immagine sorgente e restituisce un oggetto Results per ogni immagine originale, così il codice a valle che legge result.boxes continua a funzionare senza modifiche.

A causa della sovrapposizione, un oggetto vicino a un bordo può essere rilevato due volte. Per il rilevamento, i duplicati vengono eliminati con la soppressione dei massimi non locali usando le impostazioni iou, agnostic_nms e max_det; la nostra guida alla regolazione della soglia IoU di NMS si applica quindi direttamente agli output con tiling. Un riquadro tagliato dal bordo di una finestra viene scartato quando un'altra finestra vede l'oggetto lontano dai propri bordi e un riquadro conservato lo copre, così lungo il bordo rimane la predizione più completa. Se non c'è una corrispondenza migliore, il riquadro tagliato viene conservato.

Riquadri di finestre adiacenti lungo un bordo: riquadri tagliati delle finestre della riga superiore accanto a riquadri interi delle finestre della riga inferiore, poi un solo riquadro per auto dopo l'unione

Illustrazione della gestione del bordo in corrispondenza di y = 640 nello stesso fotogramma. I riquadri ciano sono tagliati dal bordo inferiore delle finestre della riga superiore, quelli magenta provengono dalle finestre della riga inferiore e il pannello di destra mostra il riquadro più completo conservato per ogni auto dopo l'unione.

Ogni attività di Ultralytics YOLO esegue l'unione a modo proprio:

  • Rilevamento, segmentazione, posa e OBB riportano riquadri, maschere, punti chiave o riquadri ruotati alle coordinate sorgente e applicano la selezione dei riquadri, con NMS ruotata per OBB.
  • Segmentazione semantica ricompone le mappe di classe, scegliendo il tile più centrale nelle zone di sovrapposizione tra finestre.
  • Profondità fonde le mappe di profondità sovrapposte usando pesi che aumentano verso il centro di ogni tile.
  • Classificazione calcola la media delle probabilità dei tile.

La pipeline Python applica il tiling anche alle predizioni di YOLO-World, YOLOE, RT-DETR e FastSAM. SAM mantiene la propria pipeline di ritaglio e non accetta tile.

Inferenza con tiling in Python usando l'argomento tile#

Il tiling richiede Ultralytics 8.4.204 o una versione successiva e non necessita di pacchetti aggiuntivi. In modalità predict, passa tile=True per usare imgsz come dimensione della finestra, oppure un intero per impostare separatamente la dimensione della finestra:

from ultralytics import YOLO

model = YOLO("yolo26s.pt")

# Baseline: un'unica elaborazione del fotogramma ridotto a 640 pixel
full = model.predict("intersection.jpg", imgsz=640)

# Con tiling: finestre da 640 pixel alla risoluzione nativa, 8 finestre per batch
tiled = model.predict("intersection.jpg", imgsz=640, tile=640, batch=8)

print(len(full[0].boxes), len(tiled[0].boxes))

Lo stesso argomento funziona dalla CLI con yolo predict model=yolo26s.pt source=large-image.tif tile=640 imgsz=640 batch=8. Per i video, passa stream=True per mantenere limitato il consumo di memoria. In modalità track, il tracker viene eseguito una volta per fotogramma sulle predizioni unite.

Il tiling non serve solo per le predizioni. Quando le immagini sono molto più grandi di imgsz, addestra e convalida usando la stessa impostazione:

  1. Addestra sui tile con model.train(data="aerial.yaml", tile=True, imgsz=640). Le etichette vengono ritagliate per ciascuna finestra, le istanze che conservano meno del 10% dell'area del riquadro originale vengono rimosse e le finestre vuote vengono mantenute come esempi negativi.
  2. Convalida sui risultati uniti con model.val(data="aerial.yaml", tile=True, imgsz=640). Le predizioni vengono unite prima di essere valutate rispetto alle annotazioni originali, così mAP riflette ciò che distribuirai.
  3. Memorizza nella cache le sorgenti di grandi dimensioni con cache="ram", perché durante l'addestramento i tile vengono mescolati e, altrimenti, la stessa immagine grande verrebbe decodificata molte volte.
  4. Confronta il modello con una baseline a immagine intera sullo stesso split di convalida prima di mantenere il modello con tiling. Per altri modi di migliorare i punteggi sugli oggetti minuscoli, consulta la nostra checklist per mAP sugli oggetti piccoli.

L'addestramento sui tile mostra al modello gli oggetti alla scala a cui li vedrà durante le predizioni con tiling. La nostra guida ai dataset per il rilevamento da droni illustra l'intero ciclo di addestramento, tiling e valutazione su fotogrammi 4K.

Anche i modelli esportati supportano il tiling. Poiché il tiling viene eseguito nella pipeline di predizione Python, un modello esportato in ONNX o TensorRT mantiene il normale grafo di input e YOLO("yolo26s.onnx").predict(source, tile=640) funziona come al solito, anche con dimensioni di batch di esportazione fisse e con l'ultimo batch parziale.

La pagina del dataset VisDrone in Ultralytics Platform che mostra le sue immagini aeree

Il dataset VisDrone in Ultralytics Platform, un benchmark già pronto per provare le dimensioni dei tile prima di etichettare i tuoi dati.

Per provare prima le dimensioni dei tile su dati pubblici, parti dal dataset VisDrone su Ultralytics Platform. Per monitorare un'esecuzione con tiling insieme alla tua baseline, copia il comando Local Training dalla finestra di dialogo di addestramento di Platform, imposta project sul progetto Platform della tua baseline e aggiungi tile=True per inviare le metriche dell'esecuzione con tiling.

Inferenza con tiling in Rust usando il nuovo flag --tile#

Ultralytics Inference è il nostro crate Rust e la nostra CLI per eseguire modelli ONNX esportati tramite ONNX Runtime e modelli OpenVINO IR in modo nativo, senza runtime Python durante l'inferenza. È pensato per server, container e dispositivi edge con CPU, CUDA, TensorRT, CoreML, OpenVINO e altri execution provider. La versione 0.0.57 adotta lo stesso approccio di tiling di Python: sovrapposizione iniziale delle finestre del 20%, risultati riportati all'immagine sorgente e duplicati rimossi per classe.

Una telecamera per il traffico e un computer edge compatto montati su un palo sopra uno svincolo autostradale all'ora dorata

A scopo illustrativo. Una telecamera stradale con un computer edge, il tipo di distribuzione senza Python a cui è destinato il crate Rust.

Il team ha verificato gli output con tiling rispetto a Ultralytics Python usando ONNX Runtime su CPU, OpenVINO su CPU, GPU e NPU, CUDA e TensorRT, per immagini, video e webcam. Sono supportati i modelli di rilevamento, segmentazione, segmentazione semantica, profondità, classificazione, posa e OBB.

Dalla CLI, aggiungi --tile con una dimensione della finestra oppure passalo senza valore per usare --imgsz. L'esportazione del modello è un passaggio Python da eseguire una sola volta; per l'inferenza basta il binario Rust:

# One-time export in Python: a dynamic-batch ONNX model so several windows run per call
pip install -U "ultralytics[export-base]>=8.4.204"
yolo export model=yolo26s.pt format=onnx dynamic=True

# Install the Rust CLI
cargo install ultralytics-inference

# Tiled inference on a large image: 640-pixel windows, 8 per batch
ultralytics-inference predict --model yolo26s.onnx --source aerial.jpg --tile 640 --batch 8

Come libreria, imposta il tiling una sola volta in InferenceConfig e ogni chiamata predict verrà eseguita con tiling. with_tile(0) usa la dimensione di inferenza:

use ultralytics_inference::{InferenceConfig, YOLOModel};

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let config = InferenceConfig::new().with_tile(640);
    let mut model = YOLOModel::load_with_config("yolo26s.onnx", config)?;
    let results = model.predict("aerial.jpg")?;
    if let Some(ref boxes) = results[0].boxes {
        println!("{} detections", boxes.len());
    }
    Ok(())
}

I riquadri duplicati tra finestre vengono eliminati con NMS per classe alla soglia configurata --iou, che dalla stessa versione è impostata a 0.5 per impostazione predefinita, in linea con i valori predefiniti delle predizioni di Ultralytics. Il tiling è disattivato per impostazione predefinita, perché ogni finestra aggiunge un input del modello. Attivalo dove i dettagli sono importanti, misura la latenza di inferenza sul dispositivo di destinazione e scegli l'execution provider più adatto; il nostro confronto tra ONNX e TensorRT è utile con l'hardware NVIDIA e la guida a NVIDIA Jetson illustra la configurazione sul dispositivo.

Chi usa SAHI può passare all'argomento tile integrato#

Se suddividi già le immagini con la libreria SAHI, l'argomento integrato svolge lo stesso compito all'interno di Ultralytics, senza un secondo pacchetto o un formato dei risultati separato. La nostra guida all'integrazione di SAHI è ora deprecata a favore di tile.

Per migrare uno script SAHI, basta perlopiù modificare gli argomenti:

SAHITiling integrato
AutoDetectionModel.from_pretrained(model_type="ultralytics", ...)YOLO("yolo26s.pt")
get_sliced_prediction(image, model, slice_height=256, slice_width=256, ...)model.predict(image, tile=256)
overlap_height_ratio, overlap_width_ratioSovrapposizione iniziale fissa del 20%, finestre ai bordi allineate al bordo dell'immagine
PredictionResult di SAHIResults standard di Ultralytics

Le finestre sono quadrate e la sovrapposizione e l'unione seguono le regole descritte sopra, anziché la post-elaborazione configurabile di SAHI; aspettati quindi riquadri simili, ma non identici. Dopo il passaggio, ricontrolla le soglie su un set di convalida.

La differenza pratica è l'integrazione. tile si integra con l'addestramento, la convalida, le predizioni e il tracking di Ultralytics usando lo stesso argomento, restituisce oggetti Results standard e offre un'opzione corrispondente nel crate Rust, così una dimensione dei tile convalidata in un notebook può essere usata anche in un binario Rust sul dispositivo edge.

Chi dovrebbe attivare il tiling#

Attiva il tiling se esegui Ultralytics YOLO su immagini molte volte più grandi dell'input del modello e la convalida mostra oggetti piccoli non rilevati: team che lavorano con droni e satelliti, integratori di sistemi per il traffico e la sicurezza che usano telecamere grandangolari e team che ispezionano schede, pannelli o scaffali interi fotografati. Chi usa Rust ottiene lo stesso approccio di tiling sull'hardware edge, senza runtime Python.

Lascialo disattivato quando gli oggetti sono grandi rispetto al fotogramma, quando un imgsz più grande li rileva già in un solo passaggio o quando il budget di latenza non può sostenere diversi input tile per fotogramma. In ogni caso, confronta i risultati con tiling e a immagine intera sullo stesso split di convalida e con la stessa soglia di confidenza, valutando richiamo, falsi positivi e latenza; mantieni il tiling solo dove il vantaggio giustifica il lavoro aggiuntivo.

Ultralytics Platform raccoglie tutti questi confronti in un unico posto: etichetta le tue immagini ad alta risoluzione o parti da VisDrone, addestra una baseline a immagine intera su GPU cloud, addestra un'altra baseline con un imgsz più grande e registra un'esecuzione con tiling dal tuo computer nello stesso progetto. La guida al tiling ad alta risoluzione descrive le opzioni di tiling, mentre la documentazione di Ultralytics Inference illustra la distribuzione Rust.

Sia il pacchetto Python sia il crate Rust sono disponibili con licenza AGPL-3.0. Se il rilevamento con tiling viene integrato in un prodotto closed source o in un dispositivo edge che distribuisci ai clienti, una licenza Ultralytics Enterprise consente l'uso commerciale del software Ultralytics coperto senza gli obblighi di divulgazione del codice sorgente previsti da AGPL-3.0, nel rispetto dei relativi termini.

Domande frequenti

  • Il tiling delle immagini suddivide un'immagine grande in finestre sovrapposte, esegue il rilevatore su ogni finestra e ricompone i riquadri sull'immagine originale. Quando la finestra corrisponde alla dimensione di input del modello, gli oggetti piccoli conservano i pixel che perderebbero se l'intera immagine venisse ridimensionata. In Ultralytics YOLO, l'argomento tile svolge questa operazione con una sovrapposizione iniziale del 20% e restituisce un risultato per immagine.

  • Per prima cosa, verifica se il problema è il ridimensionamento: se gli oggetti si riducono a pochi pixel con imgsz=640, prova un valore più grande per imgsz o tile=True. Addestra con la stessa impostazione che userai per le predizioni, così il modello apprende gli oggetti alla scala a cui verrà usato, e convalida per dimensione e classe. Il tiling è adatto alle immagini molte volte più grandi dell'input del modello.

  • Aggiunge un input del modello per ogni finestra: un fotogramma di 1920 x 1080 con tile=640 produce otto input tile invece di una sola immagine. Elaborare più tile in una singola chiamata batch, con batch in Python o --batch usando un modello esportato con batch dinamico in Rust, può migliorare il throughput. Misura la latenza sul tuo hardware di destinazione.

  • No. Dalla versione Ultralytics 8.4.204, l'argomento integrato tile gestisce l'inferenza con slicing senza pacchetti aggiuntivi e applica il tiling anche all'addestramento, alla convalida e al tracking. La guida a SAHI nella nostra documentazione è deprecata a favore di tile.

  • Sì. In Python, i modelli esportati mantengono il normale grafo di input e puoi passare tile a predict come al solito. In Rust, Ultralytics Inference 0.0.57 aggiunge --tile alla CLI e with_tile a InferenceConfig; il supporto è stato verificato rispetto a Python con ONNX Runtime su CPU, OpenVINO, CUDA e TensorRT.

  • Inizia con tile=True, che usa imgsz come dimensione della finestra. Usa una finestra più piccola, ad esempio tile=400 con imgsz=640, quando gli oggetti sono larghi solo pochi pixel anche alla risoluzione nativa, e una più grande quando rischiano di essere tagliati in corrispondenza delle giunzioni. Confronta alcune dimensioni sul tuo set di validazione, prestando attenzione sia al recall sia ai falsi positivi.

Scritto da

Onuralp Sezer
Onuralp Sezer

Senior Machine Learning Engineer · Ultralytics

Onuralp Sezer è Senior Machine Learning Engineer presso Ultralytics, dove lavora per far progredire le tecnologie di computer vision come YOLO e contribuisce allo sviluppo open source. Organizzatore di lunga data del Google Developer Group (GDG) e collaboratore open source, è attivo nella community di sviluppatori come relatore sui temi del machine learning e della computer vision e ha contribuito in precedenza al Fedora Project.

Commenti

Fai una domanda, condividi i tuoi risultati o aiuta qualcun altro.

Esplora le soluzioni

La visione artificiale nello sport

La visione artificiale nello sport

Scopri come Ultralytics YOLO alimenta la computer vision nello sport con il tracciamento di giocatori e palloni, l'analisi delle prestazioni, gli approfondimenti per gli allenatori e la riabilitazione degli atleti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini aeree e riprese da drone in informazioni utili in tempo reale per agricoltura, acquacoltura, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Applica la visione artificiale nel settore aerospaziale con Ultralytics YOLO per l'ispezione degli aeromobili, il rilevamento di FOD sulle piste, le operazioni di terra aeroportuali e il rilevamento di difetti nei materiali compositi.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'IA!

Inizia il tuo percorso verso il futuro del machine learning