Scopri come il riconoscimento delle immagini utilizza l'intelligenza artificiale e il deep learning per identificare i dati visivi. Esplora le applicazioni reali e implementa Ultralytics per ottenere risultati all'avanguardia.
Il riconoscimento delle immagini è una tecnologia fondamentale nell'ambito più ampio della visione artificiale (CV) che consente ai sistemi software di identificare oggetti, persone, luoghi e testi all'interno di immagini digitali. Analizzando il contenuto dei pixel di un' immagine o di un fotogramma video, questa tecnologia cerca di imitare le capacità di percezione visiva dell'occhio e del cervello umani. Basato sull'intelligenza artificiale (AI), il riconoscimento delle immagini trasforma i dati visivi non strutturati in informazioni strutturate e utilizzabili, fungendo da base per l'automazione in settori che vanno dall'assistenza sanitaria al trasporto autonomo.
I moderni sistemi di riconoscimento delle immagini hanno superato la tradizionale programmazione basata su regole per affidarsi in larga misura agli algoritmi di deep learning (DL). L'architettura più diffusa utilizzata per questi compiti è la rete neurale convoluzionale (CNN). Una CNN elabora le immagini come una griglia di valori, che in genere rappresentano i canali di colore rosso, verde e blu (RGB), e le fa passare attraverso più livelli di operazioni matematiche.
Durante questo processo, la rete esegue l' estrazione delle caratteristiche. Gli strati iniziali possono detect modelli geometrici come bordi o angoli, mentre gli strati più profondi aggregano questi modelli per riconoscere strutture complesse come occhi, ruote o foglie. Per ottenere un'elevata precisione, questi modelli richiedono grandi quantità di dati di addestramento etichettati. Set di dati pubblici su larga scala, come ImageNet, aiutano i modelli ad apprendere la probabilità statistica che una specifica disposizione visiva corrisponda a un concetto come "gatto", "bicicletta" o "segnale di stop ".
Sebbene il termine "riconoscimento delle immagini" sia spesso utilizzato come espressione generica, esso si distingue da altre specifiche attività di visione artificiale. Comprendere queste sfumature è fondamentale per selezionare il modello giusto per un progetto:
L'utilità del riconoscimento delle immagini abbraccia praticamente tutti i settori in cui vengono generati dati visivi.
Per sviluppatori e ricercatori, l'implementazione del riconoscimento delle immagini è diventata molto più accessibile grazie a
modelli all'avanguardia come YOLO26, che supporta
classificazione, rilevamento e segmentazione in modo nativo. L'esempio seguente mostra come eseguire il riconoscimento
(in particolare il rilevamento di oggetti) su un'immagine utilizzando il ultralytics Pacchetto Python .
from ultralytics import YOLO
# Load a pre-trained YOLO26 model (n for nano, fastest speed)
model = YOLO("yolo26n.pt")
# Run inference on an image to recognize and locate objects
# The source can be a file path, URL, or webcam (source=0)
results = model("https://ultralytics.com/images/bus.jpg")
# Display the results with bounding boxes and labels
results[0].show()
Per i team che desiderano annotare i propri set di dati e addestrare modelli personalizzati nel cloud, la Ultralytics offre un ambiente semplificato per gestire l' intero ciclo di vita di un progetto di riconoscimento delle immagini, dalla raccolta dei dati alla distribuzione.
Con l'aumento della potenza di calcolo, il riconoscimento delle immagini si sta evolvendo nella comprensione dei video, in cui i sistemi analizzano il contesto temporale tra i fotogrammi. Inoltre, l'integrazione dell' IA generativa consente ai sistemi non solo di riconoscere le immagini, ma anche di generare descrizioni testuali dettagliate delle stesse, colmando il divario tra l' elaborazione del linguaggio naturale (NLP) e la visione.