Ultralytics YOLO27:
Torna al glossario di Ultralytics

Fréchet Inception Distance (FID)

Scopri come la distanza di Fréchet Inception (FID) valuta la qualità, la fedeltà e la diversità delle immagini generate dall'IA e come calcolare e interpretare i punteggi.

Fréchet Inception Distance (FID) è una metrica per confrontare immagini prodotte da un modello generativo con un set di riferimento di immagini reali. Converte entrambi i set in feature visive apprese, riassume ciascuna distribuzione di feature e misura la distanza tra di esse. Un FID inferiore indica generalmente che le immagini generate sono più simili a quelle reali sia nella qualità visiva che nella diversità, mentre un FID superiore suggerisce artefatti, variazione mancante o una discrepanza nei contenuti.

Come funziona FID#

FID valuta set di immagini anziché singole coppie di immagini. Questo lo rende utile per valutare sistemi di generative AI come le generative adversarial networks e i diffusion models.

Il calcolo segue quattro passaggi principali:

  1. Le immagini reali e generate passano attraverso un Inception v3 feature extractor, tipicamente preaddestrato su ImageNet.
  2. La rete converte ciascuna immagine in un embedding, una rappresentazione numerica delle sue caratteristiche visive di livello superiore.
  3. FID stima la media e la covariance matrix dei set di feature reali e generate. La media rappresenta i loro centri, mentre la covarianza descrive come le feature variano insieme.
  4. Combina la distanza al quadrato tra le medie con la differenza tra le matrici di covarianza. Questo calcolo include una matrix square root.

Il punteggio FID risultante non è negativo. Distribuzioni di feature identiche produrrebbero zero nel limite idealizzato, sebbene campioni finiti ed effetti numerici significhino che persino due sottoinsiemi di immagini reali possono produrre un punteggio diverso da zero.

Interpretazione di un punteggio FID#

Valori inferiori sono migliori, ma non esiste una soglia universale per un punteggio FID "buono". L'interpretazione dipende dal dataset, dalla risoluzione dell'immagine, dal numero di campioni, dalla pipeline di preprocessing e dal feature extractor. I punteggi dovrebbero essere confrontati solo quando queste condizioni sono coerenti.

FID risponde a due aspetti importanti delle immagini generate:

  • Fedeltà: Immagini sfocate, texture irrealistiche, oggetti distorti e altri artefatti visivi possono allontanare le feature generate dalla distribuzione reale.
  • Diversità: Output ripetitivi o il model collapse riducono la variazione delle feature, modificando la covarianza della distribuzione generata.

Tuttavia, FID non spiega perché un punteggio è cambiato. Può anche trascurare casi di errore rari ma importanti, immagini memorizzate, allineamento errato dei prompt o il dataset bias. I team dovrebbero quindi combinare FID con l'ispezione visiva, test specifici per l'applicazione e analisi dei sottogruppi.

FID rispetto alle metriche correlate#

FID viene spesso confuso con altre metriche di generazione di immagini e visione artificiale:

  • Inception Score: Valuta le immagini generate senza confrontarle direttamente con le immagini di riferimento reali. FID è generalmente più informativo sulla discrepanza di distribuzione perché utilizza sia campioni reali che generati.
  • Kernel Inception Distance: Confronta anche le distribuzioni delle feature ma utilizza uno stimatore basato su kernel. Può essere utile quando una stima efficiente dei campioni o non distorta è importante.
  • Mean average precision: Misura se un rilevatore di oggetti classifica e localizza correttamente gli oggetti etichettati. FID valuta le distribuzioni delle immagini generate, non l'accuratezza del rilevamento.
  • Somiglianza percettiva: Di solito confronta coppie di immagini corrispondenti. FID valuta invece se due raccolte hanno statistiche generali simili.

Applicazioni nel mondo reale#

Un'applicazione pratica è la valutazione di synthetic data per l'ispezione manifatturiera. Un team potrebbe generare immagini di graffi, crepe o componenti mancanti e calcolare FID rispetto a fotografie di riserva di una vera linea di produzione. Un punteggio alto può rivelare che l'illuminazione sintetica, le texture o le forme dei difetti non assomigliano alle condizioni di distribuzione. Dopo aver migliorato il generatore, il team dovrebbe comunque addestrare il proprio rilevatore e utilizzare la Ultralytics validation mode per verificare le prestazioni specifiche dell'attività.

Un secondo esempio è la generazione simulata di scenari stradali. Gli ingegneri possono creare immagini notturne, di pioggia o di nebbia per ampliare i dati di addestramento alla guida autonoma. FID può confrontare ciascuna condizione sintetica con i fotogrammi reali di quell'ambiente. Una grande distanza avverte di una discrepanza di dominio che potrebbe fare in modo che un rilevatore a valle impari sfondi irrealistici o artefatti atmosferici anziché feature stradali trasferibili.

Ultralytics Platform dataset management può aiutare i team a organizzare, ispezionare e controllare le versioni dei dataset di immagini reali e sintetiche prima dell'addestramento e della distribuzione.

Calcolo di FID in Python#

La documentata TorchMetrics FID implementation accetta batch di immagini reali e generate:

import torch
from torchmetrics.image.fid import FrechetInceptionDistance

generator = torch.Generator().manual_seed(7)

real_images = torch.randint(0, 256, (64, 3, 64, 64), dtype=torch.uint8, generator=generator)
generated_images = torch.randint(32, 224, (64, 3, 64, 64), dtype=torch.uint8, generator=generator)

fid = FrechetInceptionDistance(feature=64)
fid.set_dtype(torch.float64)

fid.update(real_images, real=True)
fid.update(generated_images, real=False)

print(f"FID: {fid.compute().item():.3f}")

Questo piccolo esempio utilizza feature a 64 dimensioni per una rapida dimostrazione. I confronti di benchmark standard utilizzano tipicamente la rappresentazione predefinita a 2.048 dimensioni e molte più immagini. Per una valutazione affidabile, mantieni fissi il preprocessing e il conteggio dei campioni, riporta la configurazione esatta, ripeti le misurazioni quando possibile e completa FID con il Ultralytics model evaluation workflow quando i dati generati supportano un'attività di visione a valle.

Explore solutions

Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai 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 vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più
Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai 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 vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più
Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai 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 vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'AI!

Inizia il tuo percorso verso il futuro del machine learning