Estensione Chrome gratuita — ritagli sul dispositivo

Perché al primo avvio si scarica un modello

Al primo utilizzo l’estensione può scaricare i dati del modello necessari all’inferenza sul dispositivo. È il compromesso del ritaglio locale: invece di mandare ogni foto a un server, porti il modello sul computer una volta (e dopo gli aggiornamenti).

Quel download non è l’upload della tua foto. Sono i parametri del modello, non la tua galleria.

Perché il modello non è incluso in ogni startup

Un’estensione contiene codice di interfaccia, icone, istruzioni e logica di elaborazione. Un modello di segmentazione utile è un diverso tipo di risorsa. I suoi pesi possono essere molto maggiori del codice necessario per aprire l’editor.

Recuperare il modello quando è necessario presenta vantaggi pratici:

C’è un costo: la prima inferenza non può iniziare finché non arrivano i file richiesti e il runtime non li inizializza. Su una connessione veloce potrebbe sembrare una breve schermata di configurazione. In una connessione lenta o limitata può trattarsi della parte più lunga della prima sessione.

Cosa viene scaricato

Il download contiene i dati del modello necessari per l’inferenza. Considerali come parametri per una funzione numerica specializzata, non una libreria delle tue foto e non una richiesta di ricerca sul soggetto nella tua immagine.

Dopo il caricamento, il runtime del browser utilizza questi parametri per calcolare una maschera dai pixel selezionati. Il percorso quotidiano (decodificare l’immagine, eseguire la segmentazione, perfezionare la maschera ed esportare) è progettato per avvenire nell’ambiente di estensione.

Questa distinzione è importante quando si legge l’attività di rete. Una richiesta per una risorsa modello fissa non equivale a una richiesta che trasporta l’immagine corrente. L’accesso alla rete da solo non risponde a dove avviene l’inferenza dell’immagine; il percorso dei dati lo fa.

Cosa cambia nella memorizzazione nella cache

Senza la memorizzazione nella cache, ogni lancio dell’editor potrebbe pagare lo stesso costo di download. Il browser può conservare l’asset del modello in modo che una sessione successiva possa riutilizzarlo. Ciò cambia la sequenza normale:

  1. La prima sessione verifica se il modello richiesto è disponibile.
  2. Se manca, il browser lo scarica.
  3. Il runtime inizializza il modello ed esegue il ritaglio.
  4. Le sessioni ordinarie successive di solito possono caricare la copia memorizzata nella cache.

“Di solito” è intenzionale. Una cache è un archivio riutilizzabile, non una garanzia permanente. La cancellazione dei dati del browser o dell’estensione, la modifica dei profili, l’utilizzo di un altro dispositivo, il volume di spazio di archiviazione o l’aggiornamento del modello possono rendere nuovamente il file non disponibile.

Perché potrebbe apparire un altro download

Un download successivo non significa necessariamente che la memorizzazione nella cache non sia riuscita. Le spiegazioni comuni includono:

La domanda diagnostica utile non è “L’ho mai scaricato?” ma “Il modello attualmente richiesto è disponibile in questo ambiente di estensione?”

Il tempo di download non è il tempo di inferenza

Due attese possono sembrare simili pur rappresentando un lavoro diverso.

Il tempo di download è il trasferimento della risorsa modello. Dipende fortemente dalla velocità di connessione, dalla consegna delle risorse e dallo stato della cache.

L’inizializzazione e il tempo di inferenza avvengono dopo che la risorsa è disponibile. Il runtime prepara il modello, converte l’immagine in un input adatto, calcola una maschera e restituisce il risultato. Questi passaggi dipendono maggiormente dal dispositivo, dal browser, dalle dimensioni dell’immagine e dalla memoria disponibile.

Un messaggio di avanzamento durante la prima configurazione può coprire più di una fase. Se il modello è già memorizzato nella cache ma un’immagine di grandi dimensioni richiede ancora tempo, la riconnessione ripetuta alla rete non renderà istantaneo il calcolo locale.

Cosa succede se la connessione si interrompe

Se il modello richiesto non è memorizzato nella cache e il download non può essere completato, la rimozione automatica non può iniziare. Il browser non dispone ancora dei pesi numerici necessari. La risposta corretta è ripristinare una connessione stabile e consentire il completamento della configurazione.

Una volta memorizzato nella cache il modello necessario, l’elaborazione ordinaria dipende meno dalla connessione. “Offline-friendly” è ancora più accurato che promettere che ogni stato del browser e ogni primo avvio funzioni senza rete. Un nuovo profilo senza file di modello deve ottenere quel file in qualche modo.

Se la configurazione si riavvia ripetutamente, controlla se i dati dell’estensione vengono cancellati tra le sessioni, se lo spazio di archiviazione è estremamente limitato o se un criterio di rete blocca la richiesta di risorsa. La guida Risoluzione dei problemi tratta i controlli generali degli errori.

Privacy: consegna delle risorse rispetto all’elaborazione delle immagini

Easy Background Remover è costruito in modo che i ritagli vengano eseguiti nel browser. L’immagine scelta viene decodificata ed elaborata nell’editor e nel lavoratore dell’estensione. Una breve cronologia locale può anche memorizzare gli originali e i risultati recenti nella memoria del browser.

La richiesta del modello di prima esecuzione non altera il percorso dell’immagine. Ottiene il componente riutilizzabile necessario per l’inferenza locale. Anche l’analisi dei siti web, ove presente sulle pagine dei prodotti, è separata dai pixel dell’immagine e dalla cronologia delle modifiche delle estensioni. Il testo completo attuale è sulla Privacy.

Evitare affermazioni più forti di quelle supportate dall’architettura. “Chrome non utilizza mai la rete” sarebbe impreciso. “La pipeline di ritaglio è progettata per mantenere locale l’elaborazione delle immagini, mentre la prima esecuzione può scaricare il modello” è preciso.

Cosa fa il browser dopo il download

Il modello deve ancora essere inizializzato da un runtime di inferenza del browser. L’immagine selezionata viene decodificata in pixel, preparata come input numerico e inviata a un lavoratore per un calcolo complesso. Il lavoratore restituisce una maschera che l’editor utilizza per l’anteprima e il perfezionamento.

Quella maschera non è una seconda immagine recuperata da un server. È il risultato calcolato dall’input dell’immagine locale e dai pesi del modello scaricato. Cosa vede un modello di ritaglio sul dispositivo spiega il passaggio da pixel a maschera; Nozioni di base sull’elaborazione delle immagini di Web Worker spiega perché il calcolo è separato dal lavoro dell’interfaccia.

Una lista di controllo realistica per la prima esecuzione

Per il primo test più pulito:

  1. Apri l’editor con una connessione stabile.
  2. Attendere il completamento dell’impostazione del modello prima di valutare la velocità di elaborazione.
  3. Inizia con un’immagine di dimensioni ragionevoli con un soggetto chiaro.
  4. Esporta una volta per verificare il percorso completo.
  5. Riaprire l’editor in un secondo momento e verificare che la configurazione sia più breve con il modello memorizzato nella cache.

Se l’aggiornamento del modello alla fine causa un altro download, lascialo completare prima di confrontare i risultati. Versioni di modelli diversi possono produrre maschere leggermente diverse, quindi registrare la versione di estensione quando la riproducibilità è importante.

L’attesa della prima esecuzione comporta un compromesso pratico: ottenere il modello di elaborazione una volta o occasionalmente, quindi riutilizzarlo per i ritagli locali. Per la sequenza più ampia dai pixel da esportare, consulta Come funziona la rimozione dello sfondo locale.

Continua a esplorare

Contenuti interessanti