Esplora i fondamenti della classificazione delle immagini, dalle CNN agli utilizzi dell'IA nel mondo reale. Impara ad addestrare e implementare classificatori all'avanguardia con Ultralytics .
La classificazione delle immagini è un'attività fondamentale nella visione artificiale (CV), in cui un modello di apprendimento automatico analizza un'intera immagine e le assegna un'unica etichetta da un insieme predefinito di categorie. In sostanza, risponde alla domanda: "Qual è il soggetto principale di questa immagine?" Come componente fondamentale dell' intelligenza artificiale (AI), questo processo consente ai sistemi automatizzati di organizzare, classificare e interpretare i dati visivi su larga scala. Anche se può sembrare semplice all'occhio umano, consentire ai computer di riconoscere i modelli richiede sofisticati algoritmi di apprendimento automatico (ML) per colmare il divario tra i pixel grezzi e i concetti significativi.
La classificazione moderna delle immagini si basa in larga misura sulle architetture di deep learning (DL) note come reti neurali convoluzionali (CNN). Queste reti sono progettate per imitare il modo in cui la corteccia visiva biologica elabora le informazioni. Attraverso un processo chiamato estrazione delle caratteristiche, il modello impara a identificare attributi di basso livello come bordi e texture nei primi livelli, combinandoli infine per riconoscere forme e oggetti complessi nei livelli più profondi.
Per costruire un classificatore, gli sviluppatori utilizzano l' apprendimento supervisionato, alimentando il modello con grandi quantità di dati di addestramento contenenti esempi etichettati. Grandi set di dati pubblici come ImageNet sono stati fondamentali per migliorare l' accuratezza di questi sistemi. Durante la fase di inferenza, il modello genera un punteggio di probabilità per ciascuna categoria, spesso utilizzando una funzione softmax per determinare la classe più probabile .
È importante distinguere la classificazione delle immagini dalle funzionalità correlate della visione artificiale, poiché la scelta della tecnica dipende dal problema specifico:
La classificazione delle immagini alimenta un'ampia gamma di applicazioni AI nel mondo reale in diversi settori:
Nel campo medico, i modelli di classificazione assistono i radiologi nell'analisi delle scansioni diagnostiche. Gli strumenti di analisi delle immagini mediche possono rapidamente classificare le radiografie o le risonanze magnetiche come "normali" o "anormali" oppure identificare condizioni specifiche come il rilevamento di tumori, consentendo un triage e una diagnosi più rapidi dei pazienti.
Le fabbriche utilizzano ispezioni visive automatizzate per mantenere gli standard dei prodotti. Le telecamere sulle linee di assemblaggio catturano le immagini dei componenti e i modelli di classificazione li etichettano istantaneamente come "conformi" o "non conformi" in base ai difetti visibili. Questo controllo di qualità automatizzato garantisce che solo gli articoli non difettosi raggiungano la fase di imballaggio.
Gli agricoltori sfruttano l'intelligenza artificiale in agricoltura per monitorare la salute delle colture. Classificando le immagini scattate da droni o smartphone, i sistemi possono identificare i segni di malattie, carenze nutrizionali o infestazioni di parassiti, consentendo interventi mirati di agricoltura di precisione.
Il framework Ultralytics , famoso per il rilevamento, offre prestazioni all'avanguardia per le attività di classificazione delle immagini. La sua architettura è ottimizzata per garantire velocità e precisione, rendendolo adatto alle applicazioni in tempo reale.
Ecco un esempio sintetico di come caricare un modello pre-addestrato e classify utilizzando il
ultralytics Pacchetto Python :
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Run inference on an image source
results = model("https://ultralytics.com/images/bus.jpg")
# Print the top predicted class name
print(f"Prediction: {results[0].names[results[0].probs.top1]}")
Per i team che desiderano ottimizzare il proprio flusso di lavoro, Ultralytics semplifica l'intera pipeline. Consente agli utenti di gestire set di dati di classificazione, eseguire la formazione basata su cloud e distribuire modelli in vari formati come ONNX o TensorRT senza un'infrastruttura di codifica estesa.