Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Licenza YOLO
Torna al glossario di Ultralytics

Implicit Neural Representations (INRs)

Le rappresentazioni neurali implicite codificano un'immagine, una forma o una scena 3D in una rete neurale che mappa coordinate a valori e può essere interrogata a qualsiasi risoluzione.

Le rappresentazioni neurali implicite (INR) memorizzano un segnale come funzione continua appresa da una rete neurale, di solito un piccolo percettrone multistrato (MLP), che mappa coordinate in valori. Un'immagine diventa una funzione che mappa la posizione di un pixel (x, y) in un colore, una forma 3D diventa una funzione che mappa un punto (x, y, z) nella sua distanza con segno dalla superficie e una scena diventa una funzione che mappa un punto e una direzione di visualizzazione in colore e densità. I pesi della rete costituiscono la rappresentazione: non esiste una griglia di pixel o voxel, quindi è possibile interrogare il segnale a qualsiasi coordinata, la memoria non cresce con la risoluzione dell'output e le derivate sono disponibili gratuitamente tramite differenziazione automatica. Le INR sono chiamate anche reti basate su coordinate o campi neurali e sono alla base dei campi di radianza neurale e di gran parte della moderna ricostruzione 3D.

Come funzionano le rappresentazioni neurali implicite#

Una INR viene adattata a un segnale alla volta. L'addestramento campiona coordinate, confronta l'output della rete con i valori reali in corrispondenza di quelle coordinate e aggiorna i pesi tramite discesa del gradiente: l'adattamento è quindi un overfitting intenzionale, perché l'obiettivo è memorizzare quel segnale. Un semplice MLP con attivazioni ReLU ha difficoltà, perché le reti apprendono le basse frequenze molto più rapidamente di quelle alte: un effetto che Nasim Rahaman e colleghi hanno chiamato bias spettrale nel 2019. Se riceve coordinate grezze, la rete produce una versione sfocata del segnale. Nel 2020 due soluzioni hanno reso pratiche le INR: mappare le coordinate tramite seni e coseni a molte frequenze, le caratteristiche di Fourier di Matthew Tancik e colleghi e la codifica posizionale di NeRF, e sostituire ReLU con una funzione di attivazione sinusoidale, come in SIREN di Vincent Sitzmann e colleghi.

Questo esempio in PyTorch adatta due volte lo stesso MLP a una foto, una volta con coordinate grezze e una volta con caratteristiche di Fourier:

import torch
from skimage import data, transform
from torch import nn

torch.manual_seed(0)

# The signal: a 128 x 128 grayscale photo, and the (x, y) coordinate of every pixel in [-1, 1]
image = torch.tensor(transform.resize(data.camera(), (128, 128)), dtype=torch.float32).reshape(-1, 1)
grid = torch.linspace(-1, 1, 128)
coords = torch.stack(torch.meshgrid(grid, grid, indexing="ij"), dim=-1).reshape(-1, 2)

# Fourier features: sines and cosines of the coordinates at 128 random frequencies
proj = torch.pi * coords @ (10 * torch.randn(2, 128))
inputs = {"Raw coordinates": coords, "Fourier features": torch.cat([proj.sin(), proj.cos()], dim=-1)}

for name, x in inputs.items():
    # The INR: a small MLP from coordinate to gray value, fit to this one image
    mlp = nn.Sequential(nn.Linear(x.shape[1], 256), nn.ReLU(), nn.Linear(256, 256), nn.ReLU(), nn.Linear(256, 1))
    optimizer = torch.optim.Adam(mlp.parameters(), lr=1e-3)
    for _ in range(1000):
        loss = (mlp(x) - image).pow(2).mean()
        optimizer.zero_grad()
        loss.backward()
        optimizer.step()
    print(f"{name}: PSNR {-10 * torch.log10(loss).item():.1f} dB")

Dopo 1.000 passaggi, la rete con coordinate grezze raggiunge un rapporto segnale-rumore di picco di 22.0 dB e produce un'immagine sfocata, mentre la rete con caratteristiche di Fourier raggiunge 46.0 dB, ottenendo una copia quasi esatta. La scala delle frequenze, qui pari a 10, si regola in base al segnale: se è troppo bassa l'adattamento resta sfocato, se è troppo alta la rete memorizza i campioni con valori rumorosi tra loro. Il Segment Anything Model di Meta, eseguito nel pacchetto Ultralytics, codifica le coordinate dei prompt a punto e a riquadro usando le stesse caratteristiche di Fourier gaussiane casuali prima di passarle al decoder delle maschere.

Forme, scene e velocità#

Le INR per le forme 3D sono arrivate nel 2019, quando DeepSDF prevedeva la distanza con segno e Occupancy Networks la probabilità che un punto 3D si trovasse all'interno o all'esterno, consentendo di estrarre una mesh a qualsiasi risoluzione. Nel 2020 è arrivato NeRF, che mappa posizione e direzione di visualizzazione in colore e densità per la sintesi di nuove viste. Gli MLP puri sono lenti da addestrare e interrogare, quindi i modelli ibridi memorizzano caratteristiche apprese in una griglia e le decodificano con un piccolo MLP. Instant-NGP di Thomas Müller e colleghi di NVIDIA usa una tabella hash multirisoluzione di caratteristiche e adatta un NeRF in pochi secondi anziché in ore.

Le INR si distinguono dalle rappresentazioni esplicite, come griglie di pixel, griglie di voxel, mesh e nuvole di punti, che memorizzano direttamente i valori e crescono con la risoluzione, in modo cubico nel caso dei voxel. Lo splatting gaussiano è una recente alternativa esplicita a NeRF che esegue il rendering più rapidamente rasterizzando milioni di gaussiane 3D. Poiché una INR di base viene adattata a un singolo segnale, per generalizzare a molti segnali serve ulteriore strumentazione: iperreti che producono i pesi INR a partire da un codice latente oppure meta-apprendimento di un'inizializzazione che adatta un nuovo segnale in pochi passaggi.

Applicazioni nel mondo reale#

  • Imaging medico: le INR ricostruiscono volumi CT e MRI da misurazioni sparse o sottocampionate, poiché la funzione continua colma gli spazi tra i campioni acquisiti con un volume regolare e coerente con i dati.
  • Super-risoluzione: funzioni d'immagine implicite locali come LIIF prevedono un colore a qualsiasi coordinata continua a partire dalle caratteristiche vicine, consentendo a un singolo modello di ingrandire le immagini con fattori arbitrari.
  • Creazione di contenuti 3D: i generatori da testo a 3D e da immagine a 3D spesso ottimizzano o prevedono campi neurali, che vengono poi convertiti in mesh per videogiochi ed effetti visivi.
  • Compressione: COIN, realizzato da Emilien Dupont e colleghi nel 2021, memorizza un'immagine come pesi quantizzati di un piccolo MLP e supera JPEG a bassi bitrate.

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