YOLO Vision 2026:

Come definire gli obiettivi per il tuo progetto di computer vision#

Per definire un progetto di computer vision, scrivi un'enunciazione del problema che identifichi la questione centrale, l'ambito, le parti interessate e i vincoli; stabilisci obiettivi misurabili e con scadenze temporali; e mappa il problema sull'attività di computer vision che determina le tue decisioni relative a modello, dataset e distribuzione. Questa guida illustra ogni passaggio con un esempio pratico.



Watch: How to define Computer Vision Project's Goal | Problem Statement and VisionAI Tasks Connection 🚀

Per una panoramica del flusso di lavoro completo, dalla raccolta dei dati al deployment, consulta la nostra guida su i passaggi chiave in un progetto di computer vision.

Come scrivere un'enunciazione del problema di computer vision#

Un'enunciazione del problema chiara è il primo grande passo verso la ricerca della soluzione più efficace. Si compone di quattro parti:

  • Identifica la questione principale: Individua la sfida specifica che il tuo progetto di computer vision mira a risolvere.
  • Determina l'ambito: Definisci i confini del tuo problema.
  • Considera gli utenti finali e gli stakeholder: Identifica chi sarà influenzato dalla soluzione.
  • Analizza i requisiti e i vincoli del progetto: Valuta le risorse disponibili (tempo, budget, personale) e identifica eventuali vincoli tecnici o normativi.

Esempio di una dichiarazione di problema aziendale#

Immagina un progetto di computer vision in cui desideri stimare la velocità dei veicoli su un'autostrada. Il problema principale è che gli attuali metodi di monitoraggio della velocità sono inefficienti e soggetti a errori a causa di sistemi radar obsoleti e processi manuali. L'obiettivo del progetto è sviluppare un sistema di computer vision in tempo reale in grado di sostituire i sistemi legacy di stima della velocità.

Vehicle speed estimation on a highway using Ultralytics YOLO

Gli utenti principali includono le autorità di gestione del traffico e le forze dell'ordine, mentre gli stakeholder secondari sono i pianificatori autostradali e il pubblico che beneficia di strade più sicure. I requisiti chiave prevedono la valutazione di budget, tempi e personale, oltre ad affrontare esigenze tecniche come telecamere ad alta risoluzione e elaborazione dei dati in tempo reale. Inoltre, è necessario considerare i vincoli normativi in materia di privacy e sicurezza dei dati.

Impostazione di obiettivi misurabili#

Definire obiettivi misurabili è fondamentale per il successo di un progetto di computer vision. Gli obiettivi efficaci seguono i criteri SMART:

CriterioCosa significa
SpecificoDefinisci obiettivi chiari e dettagliati.
MisurabileAssicurati che gli obiettivi siano quantificabili.
RaggiungibileFissa traguardi realistici basati sulle tue capacità.
RilevanteAllinea gli obiettivi con le finalità generali del tuo progetto.
Definito nel tempoStabilisci scadenze per ogni obiettivo.

Per l'esempio della stima della velocità in autostrada, gli obiettivi SMART potrebbero essere:

  • Raggiungere almeno il 95% di accuratezza nel rilevamento della velocità entro sei mesi, utilizzando un dataset di 10.000 immagini di veicoli.
  • Il sistema dovrebbe essere in grado di elaborare feed video in tempo reale a 30 fotogrammi al secondo con un ritardo minimo.

Impostando obiettivi specifici e quantificabili, puoi monitorare efficacemente i progressi, identificare le aree di miglioramento e assicurarti che il progetto rimanga sulla buona strada.

Come scegliere l'attività di computer vision corretta#

La tua enunciazione del problema ti aiuta a concettualizzare quale attività di computer vision possa risolvere la tua questione. Le attività più popolari includono classificazione delle immagini, object detection e segmentazione delle immagini; consulta la pagina delle attività di Ultralytics per un confronto dettagliato.

Comparison of image classification, object detection, and image segmentation outputs

Ad esempio, se il tuo problema è monitorare la velocità dei veicoli su un'autostrada, il task è object detection, eseguito in track mode. Il tracciamento assegna a ogni veicolo rilevato un ID persistente tra i fotogrammi video, che è ciò di cui il calcolo della velocità ha bisogno.

La sola rilevazione non basta in questo caso: individua i veicoli in ogni fotogramma ma non mantiene l'identità di ciascun veicolo tra i fotogrammi e, senza quell'identità, il sistema non può misurare il movimento nel tempo. La modalità di tracciamento aggiunge quell'identità. Una volta identificato il task di computer vision appropriato, esso guida diversi aspetti critici del tuo progetto, come la selezione del modello, la preparazione del dataset e gli approcci di addestramento del modello.

Cosa viene prima: modello, dati o approccio di addestramento?#

L'ordine tra selezione del modello, preparazione del dataset e approccio di addestramento dipende dalle specifiche del tuo progetto:

La tua situazioneInizia conEsempio
Problema e obiettivi ben definitiSelezione del modelloPer un sistema di monitoraggio del traffico che stima la velocità dei veicoli, scegli un modello di rilevamento da eseguire in modalità di tracciamento, raccogli e annota video autostradali, quindi addestra con tecniche per l'elaborazione video in tempo reale.
Dati unici o limitatiPreparazione del datasetPer un sistema di riconoscimento facciale con un piccolo dataset, annota prima i dati, quindi seleziona un modello che funzioni bene con dati limitati, come un modello pre-addestrato per il transfer learning, e pianifica il data augmentation per espandere il dataset.
La sperimentazione è cruciale (ricerca)Approccio di addestramentoIn un progetto che esplora nuovi metodi per rilevare difetti di produzione, sperimenta prima su un piccolo sottoinsieme di dati. Una volta trovata una tecnica promettente, seleziona un modello su misura per quei risultati e prepara un dataset completo.

Se inizi dai dati, la Ultralytics Platform semplifica l'organizzazione, l'annotazione e l'addestramento del dataset man mano che il tuo progetto evolve.

Come le opzioni di distribuzione influenzano il tuo progetto#

Le opzioni di deployment del modello influiscono in modo critico sulle performance del tuo progetto di computer vision, quindi tienine conto fin dall'inizio. L'ambiente di deployment deve gestire il carico computazionale del tuo modello:

Opzione di distribuzioneIdeale perTecnologie di esempio
Dispositivi EdgeSmartphone e dispositivi IoT con risorse computazionali limitate; modelli leggeriLiteRT, ONNX Runtime
Server cloudModelli complessi con maggiori richieste computazionali; hardware che si adatta al progettoAWS, Google Cloud, Azure
Server on-premiseElevate esigenze di privacy dei dati e sicurezza; pieno controllo su dati e infrastrutturaServer GPU autogestiti
Soluzioni ibrideBilanciamento di prestazioni, costi e latenza; elaborazione edge più analisi cloudCombinazione di runtime edge e piattaforme cloud

Ogni opzione offre vantaggi e sfide diverse, e la scelta dipende dai requisiti specifici del progetto come prestazioni, costi e sicurezza.

Conclusione#

Un progetto di computer vision di successo inizia con una chiara enunciazione del problema, obiettivi SMART misurabili e la giusta attività di computer vision per il lavoro: queste decisioni guidano tutto ciò che segue, dalla selezione del modello al deployment. Come passo successivo, impara a raccogliere e annotare dati o discuti il tuo progetto con altri sviluppatori su GitHub e sul server Discord di Ultralytics.

FAQ#

  • Una chiara enunciazione del problema nomina la questione centrale che il tuo progetto risolve, il suo ambito, gli utenti finali e gli stakeholder, e i tuoi vincoli di risorse e normativi. Affronta queste quattro parti in ordine, quindi valida l'enunciazione con gli stakeholder prima di prendere decisioni tecniche. Vedi Come scrivere un'enunciazione del problema di computer vision per l'analisi completa e un esempio pratico.

  • Allinea l'output richiesto dal tuo problema al task che lo produce: una singola etichetta per immagine punta a image classification, le posizioni degli oggetti puntano a object detection, i confini a livello di pixel puntano a image segmentation, e le identità mantenute tra i fotogrammi video richiedono lo stesso modello di rilevamento eseguito in track mode. Il monitoraggio della velocità dei veicoli, ad esempio, richiede il tracciamento perché la velocità viene calcolata dal movimento di ciascun veicolo nel tempo. Vedi la Ultralytics tasks page per tutti i task supportati.

  • Usa i criteri SMART: Specifici (Specific), Misurabili (Measurable), Raggiungibili (Achievable), Rilevanti (Relevant) e Tempificati (Time-bound). Ad esempio, "Raggiungere il 95% di accuratezza nel rilevamento della velocità entro sei mesi utilizzando un dataset di 10.000 immagini di veicoli." Questo approccio aiuta a monitorare i progressi e identifica le aree di miglioramento. Leggi di più su come impostare obiettivi misurabili.

  • No, i modelli pre-addestrati non "ricordano" le classi nel senso tradizionale. Apprendono schemi da dataset massicci e, durante il custom training (fine-tuning), questi schemi vengono adattati per il tuo task specifico. La capacità del modello è limitata e concentrarsi su nuove informazioni può sovrascrivere alcuni apprendimenti precedenti.

    Overview of transfer learning from a pretrained model to a custom model

    Se vuoi usare le classi su cui il modello è stato pre-addestrato, un approccio pratico è usare due modelli: uno mantiene le prestazioni originali e l'altro viene adattato per il tuo task specifico. In questo modo, puoi combinare gli output di entrambi i modelli. Ci sono altre opzioni come il congelamento dei layer, l'uso del modello pre-addestrato come feature extractor e il branching specifico per il task, ma queste sono soluzioni più complesse e richiedono maggiore competenza.

  • Le opzioni di deployment determinano quali dimensioni e formati di modello sono fattibili, quindi plasmano il tuo progetto fin dall'inizio. I dispositivi edge necessitano di modelli leggeri serviti tramite formati e runtime come LiteRT o ONNX Runtime, i server cloud gestiscono modelli complessi su hardware scalabile, i server on-premise offrono il pieno controllo dei dati per progetti sensibili alla privacy, e le configurazioni ibride bilanciano le due cose. Confrontale nella tabella delle opzioni di deployment o consulta la guida alle opzioni di deployment del modello per i dettagli.

  • Le sfide comuni includono:

    • Dichiarazioni del problema vaghe o troppo ampie.
    • Obiettivi irrealistici.
    • Mancanza di allineamento degli stakeholder.
    • Comprensione insufficiente dei vincoli tecnici.
    • Sottostima dei requisiti dei dati.

    Affronta queste sfide attraverso una ricerca iniziale approfondita, una comunicazione chiara con gli stakeholder e il perfezionamento iterativo dell'enunciazione del problema e degli obiettivi. Per il flusso di lavoro completo del progetto, vedi i passaggi chiave in un progetto di computer vision.

Commenti