Guida Upscaling/miglioramento con IA

FernBox11

Lurker
Iscritto dal
10 Nov 2022
Messaggi
6
Reazioni
0
- Questa sarà una piccola introduzione all'upscaling/miglioramento delle immagini con l'IA. Cercherò di aggiornare questo post man mano che imparo cose nuove, così resta utile e migliora di qualità (oltre a riscrivere alcune parti per renderle più chiare, corrette e meglio formattate). Si incoraggiano discussioni su tecniche di upscaling, esperienze, software, valutazioni di questi software, ecc.

- Sono sicuro che sapete tutti cos'è l'upscaling, ma non tutti sanno bene cos'è l'upscaling con l'IA e come usarlo. L'IA di cui parlo è una rete neurale artificiale di Deep Learning, cioè in pratica un'IA addestrata su un enorme set di dati (in questo caso un'infinità di immagini) per 'imparare'. Il risultato è un'IA che riesce a ingrandire un'immagine in modo più preciso, aggiungendo dettagli che l'upscaling tradizionale non può dare.

- L'upscaling delle immagini non è un processo magico. Per esempio, se nell'immagine c'è un testo completamente illeggibile su un libro, l'upscaling non lo sistemerà. È semplicemente un modo per aumentare la risoluzione delle immagini in modo gradevole, con più nitidezza, chiarezza e realismo rispetto all'upscaling tradizionale. Questo non vuol dire che non valga la pena usare l'upscaling con IA al posto di quello tradizionale/resampling, anzi, ne vale eccome. I risultati non sono sempre buoni, ma di certo non sono nemmeno sempre pessimi, e continueranno solo a migliorare col tempo. A volte un'immagine viene upscalata così bene che è praticamente perfetta. Inoltre, l'upscaling con IA si può usare anche solo per ripulire un'immagine da rumore e artefatti di compressione, quindi anche se non ti serve aumentare la risoluzione ci sono comunque altri potenziali vantaggi.

- Metterò una breve lista di alcune opzioni di upscaling con prezzo, piattaforma su cui sono disponibili e limiti di upscaling. Non valuterò la qualità degli upscale, primo perché è un po' soggettiva, e secondo perché non ho testato tutto qui. Chissà, magari prima o poi lo faccio e metto le immagini per confrontarle, ma magari no, dipende da cosa decido.

- Alcune opzioni di upscaling sono web, il che comporta la comodità di poter fare upscaling praticamente da qualsiasi dispositivo con un browser decente e una connessione a internet. Gli svantaggi sono che hanno capacità limitate, richiedono un abbonamento e richiedono una connessione a internet. Potrebbe non essere la scelta migliore per chi ha una connessione lenta, instabile o con limiti di traffico. Inoltre non sai mai cosa fanno davvero con le tue immagini, quindi se hai foto sensibili da upscalare, forse è meglio optare per una soluzione non web.

- Altre si possono scaricare come software, che di solito ha il vantaggio di non richiedere internet e di avere meno restrizioni (o nessuna) sull'upscaling. Gli svantaggi sono che il software deve essere disponibile per la piattaforma che vuoi usare, e ti serve anche un dispositivo in grado di farlo girare, perché a differenza di un'opzione web dove ci pensano altri server al carico di calcolo, qui è il tuo dispositivo a dover fare tutto il lavoro.

Gigapixel AILets EnhanceWaifu2xVertexshare Image Upscaler
Prezzo$99.99Prime 5 immagini gratis, abbonamento da $12 al mese per upscalare 100 immagini al meseGratisGratis
Limite di upscaling32,000 x 32,00064 megapixel per le 5 immagini gratis; 256 megapixel con abbonamento normale; 500 megapixel con abbonamento business (da $72 al mese)Non si possono caricare immagini più grandi di 1,500 x 1,500 o 5 MB. Opzioni di upscaling 1.6x o 2xNon si possono caricare immagini diverse da JPG o PNG e niente di più grande di 1,200 x 1,200 o 5 MB. Uniche opzioni di upscaling: 2x e 4x
WebNYYY
WindowsYNY*N
MacYNY*N
LinuxY**NY*N
App mobileNNY*N

*Il codice sorgente è disponibile su GitHub
**Tramite WINE

- Queste non sono le uniche opzioni, ce ne sono molte altre, quindi se nessuna fa per te cerca qualcosa tipo "AI Image Upscaling Software". Puoi anche dare un'occhiata a questo link che riporta una lista di altre opzioni con pro e contro di ciascuna. Personalmente uso Gigapixel AI perché gira sul mio PC e non ha limiti importanti che io sappia, a parte l'impossibilità di upscalare oltre 32,000 x 32,000, che per me non è un problema. Se per qualche motivo vuoi/devi upscalare un'immagine oltre il gigapixel, puoi sempre tagliarla in pezzi più piccoli, upscalare i pezzi e poi fonderli e ricucirli insieme.

- Una volta scelto cosa usare per l'upscaling, ci sono alcune cose da fare per ottenere il miglior risultato finale. Prima di tutto, stai usando la versione migliore dell'immagine che vuoi upscalare? Perché, come sai, quasi ogni foto online esiste in più copie e non sono tutte della stessa qualità. Quindi se hai preso l'immagine da internet e non è una foto unica o uno screenshot di un fotogramma specifico di un video fatto da te, conviene provare una ricerca inversa per immagini. Ci sono varie opzioni, come Google, Bing, TinEye, ecc. con cui fare una ricerca inversa (vale la pena farla con più di uno, perché non mostrano sempre gli stessi risultati). Puoi anche usare un'estensione del browser per aiutarti nella ricerca inversa, come Search by Image. Ricorda che solo perché un'immagine è più vecchia, ha una risoluzione più alta o un file più pesante, non significa che quella versione sia di qualità migliore. Un modo per aumentare le probabilità di trovare l'originale è capire chi/cosa mostra l'immagine, quando/dove è stata scattata/pubblicata, ecc., e usare queste info per rintracciare una versione di qualità migliore, se non la fonte stessa. Per esempio, magari l'immagine viene da un servizio fotografico specifico o da un evento. Sapere queste cose può aiutare.

- Una volta che hai la migliore copia dell'immagine da upscalare (o almeno la migliore che riesci a trovare), conviene occuparsi di dati e archiviazione. Intendo che, per assicurarti che la foto che userai sia a posto e resti disponibile per tutti, consiglio un paio di cose. Prima di tutto, usa VirusTotal per scansionare non solo l'URL della pagina dove si trova l'immagine, ma anche il link diretto all'immagine e il file stesso una volta scaricato. Non è proprio necessario, ma io faccio così. Consiglio anche di archiviare l'URL della pagina dove hai trovato l'immagine e il link diretto usando sia Wayback Machine che Archive.Today. Poi rinomina l'immagine scaricata con un nome sensato e comprensibile (a meno che non ce l'abbia già). Poi uso spesso FileOptimizer per ridurre il più possibile il peso del file (solo ottimizzazione lossless, così non si perdono dati (qualità)) in modo che occupi meno spazio, si carichi più in fretta e si scarichi più in fretta.

- Okay, ora si fa l'upscaling! Forse. Vedi, a volte un'immagine richiede almeno qualche piccolo ritocco prima di essere upscalata. Se l'immagine ha molto rumore (che sia rumore cromatico , di luminanza, ecc.) l'upscaler potrebbe (ma anche no, dipende dal caso) fare fatica a distinguere il rumore dal dettaglio, e questo può dare upscale strani. Quindi una cosa da provare è ridurre il rumore dell'immagine prima dell'upscaling. A volte il denoise porta a un upscale peggiore, quindi sta a te confrontare. Altre volte l'immagine è già stata upscalata con un metodo tradizionale. In questo caso conviene guardare l'immagine a vari livelli di zoom sotto il 100% finché non trovi il 'punto ideale' in cui non si notano più gli artefatti dell'upscaling tradizionale, come blocchettoni o aliasing. Un buon punto di partenza è lo zoom al 50%. Una volta trovato il 'punto ideale', riduci l'immagine a quella stessa dimensione (a volte è meglio un semplice ridimensionamento, altre volte si ottengono risultati migliori riducendo con resampling, tipo lanczos o bicubica, ecc.). Come per il denoise prima dell'upscale, non sempre porta a risultati migliori, quindi confronta. Altre cose che possono dare un upscale migliore sono sfocare un po' l'immagine, o magari aumentarne la nitidezza, o a volte anche fare un upscale/resampling.

- Una volta caricata l'immagine nell'upscaler, scelte le impostazioni perfette e pronto a upscalare, potrebbe esserti chiesto in che formato e qualità esportare. Consiglio di esportare in un formato lossless come PNG, così le modifiche successive funzionano meglio. Ok, hai upscalato l'immagine e ottenuto un buon risultato, e adesso? Potresti caricarla così com'è, senza altri ritocchi, va benissimo, ma qualche piccolo ritocco in più può dare un risultato più bello. Ogni tanto negli upscale compare del rumore, anche se nell'immagine originale non sembrava essercene molto. In questo caso è meglio ripulirlo il più possibile così sembra un filo migliore. L'immagine (tutta o solo certe parti) potrebbe anche sembrare un po', come dire, liscia? Tipo plastica? Qualcosa del genere. In questo caso un modo facile per migliorarla è aggiungere un po' di grana. Personalmente preferisco una grana fine a una grossa, ma sei libero di scegliere. La grana aggiunge una specie di 'falso dettaglio' e secondo me rende l'immagine un po' più materica. Può essere utile anche ridurre le dimensioni dell'immagine, perché l'upscale può avere dettagli strani, e il downscale ne riduce la visibilità mantenendo i miglioramenti visivi. Se vuoi combinare denoise, downscale e grana, l'ordine è questo: Denoise → Downscale → Grana.

- L'immagine potrebbe anche richiedere (o almeno beneficiare di) qualche ritocco manuale con Photoshop o GIMP. Però al momento non ho esperienza in questo, ma potrebbe cambiare in futuro e allora potrò scrivere una piccola sezione sui ritocchi manuali dell'upscale. Quindi, passando oltre, il tuo upscale dovrebbe essere finito. Prima di caricarlo, valuta se ridurre le dimensioni o comprimere l'immagine con compressione lossy, perché gli upscale a volte generano file enormi (anche centinaia di megabyte per una sola immagine). Io preferisco caricare l'immagine originale (senza alterazioni e nel formato originale, ma ottimizzata in lossless), una versione WEBP lossless dell'upscale (che di solito comprime meglio del PNG), una versione JPG lossy e un PNG lossless (per la compatibilità). Così chi scarica ha l'immagine originale e può scegliere quale versione dell'upscale preferisce: un JPG lossy con il file più leggero, un WEBP lossless più piccolo del PNG, oppure un PNG lossless con più supporto e compatibilità del WEBP.
 
Corso accelerato di upscaling video:

Procurati una copia di Topaz Video AI 3.1.6 (edit: da quando ho fatto questo post è uscito Topaz 5, puoi prendere quello). Artemis resta il modello di riferimento; per convertire a 60fps puoi usare Apollo con l'opzione di duplicazione dei frame disattivata.

Dovresti farlo solo con una scheda video potente. Io uso una 3080. Magari con una CPU threadripper o un Intel veloce con tanti core funziona, ma non mi andava di provare.

Controlla le impostazioni in modo che elabori con la tua GPU, se ce l'hai, e con alto uso di VRAM.

Metti il tuo file nel programma.

Se è sotto i 720p non fare upscale oltre i 1280x720p. Usa Artemis LQ o Iris. Un bel 720p che sia anche a 60 FPS verrà meglio di un upscale 1080p scadente a 30 fps.

Se è un file di qualità decente intorno ai 720 o più, puoi andare a 1920x1080 (ovvero 1080p) o alla percentuale di upscale diretto che ci si avvicina (ad es. se hai un vecchio file quadrato). Usa Artemis High Quality.

Il 4k richiede un'eternità, quindi per il solo porno non rompersi a fare l'upscale, accontentati se il file è già 1080p, a meno che tu non abbia un sacco di tempo e non debba fare altro col PC per un po'. Fare l'upscale a 4k di un file di un'ora può richiedere letteralmente giorni.

Se vuoi migliorare il framerate e fare upscaling, ti consiglio di fare PRIMA l'upscale e poi usare Apollo per aumentare gli FPS (scegli semplicemente 60fps, di più è sprecato e può essere difficile da riprodurre).

Puoi tagliare inizio e fine. Di solito lo faccio in handbrake invece che in topaz, perché topaz in passato ha avuto problemi col taglio. Farlo prima in handbrake significa che puoi solo impostare l'upscale e lasciarlo andare.

Se vuoi tenere l'audio, assicurati di avere selezionata l'opzione per mantenere l'audio.

Non devi fare molto di più che impostare inizio e fine e premere il tasto go.

Si consiglia di dargli una passata in handbrake dopo, i file spesso sono piuttosto grandi ed è più facile lasciare la qualità di default e poi ridurli con qualcosa come la codifica GPU NVENC a CQ 27.

Un altro consiglio è disattivare TUTTI I FILTRI in handbrake. Non ne serve nessuno, e se usi un metodo di codifica NVENC (progettato per codificare più velocemente sfruttando la potenza di una GPU Nvidia), alcuni di questi filtri sono solo CPU e faranno produrre alla tua CPU un sacco di calore rallentando anche la codifica.

edit - Preferisco h264 per i file video a 1080p o meno. Se sei uno streamer o usi il 4k, h.265 è probabilmente una scelta migliore. Ho avuto qualche problema con file codificati in 265 su alcuni dispositivi, quindi preferisco andare sul sicuro, dato che il risparmio di spazio extra del 265 non mi interessa più di tanto.

Riepilogo Handbrake:
Summary: Format MP4. Web Optimized.
Dimensions: Anamorphic None, Modulus 2, Cropping Automatic.
Filters: All OFF.
Video: H.264 Nvidia NVENC (se hai una GPU Nvidia recente, che ti serve comunque per l'upscaling). Constant framerate. Constant Quality 27 (28 occupa meno spazio ma ha qualità più bassa, 26 ha qualità più alta ma più spazio. Sopra 28 prima o poi inizia a fare artefatti, sotto 26 mantieni la qualità ma la dimensione del file sale). Slow encoder preset. Profile auto, encoder level auto. Nessuna opzione avanzata.
Audio: Io uso AAC (AVOCODEC) con Bitrate: 160, Stereo.

Esempi - Dovrai aprire direttamente il file per vedere le immagini a dimensione piena.

Sorgente 720:

HS-Source.png


Upscale 1080:

HS-Upscaled.png


Questo è un caso da 'scenario peggiore': la sorgente è una clip da 400x300 vecchissima, probabilmente non l'originale e piuttosto granulosa, ed è ingrandita 3,5x, che puoi confrontare con il passaggio da 1280x720 a 1080p che è solo 1,5x

Source.png


Upscale 1438x1080:

Upscale.png


Ho trovato che passare da 720p a 1080p va benissimo per guardare su schermi grandi (TV, monitor PC ecc).

Sotto i 720p mi fermerei a 2x, di più non dà buoni risultati nella mia esperienza e fa solo perdere tempo/energia. I risultati su schermi grandi non sono eccezionali, ma su telefoni/ipad li trovo perfettamente accettabili.
 
Sì, purtroppo questo contenuto non è disponibile al grande pubblico
 
fratello qual è la migliore impostazione del grain per questo? ho incasinato le impostazioni e ho dimenticato le dimensioni originali
 
Io lo lascio semplicemente spento.

I valori predefiniti sembrano essere Amount 1.7, Size 0.92.

Ho fatto un test veloce e non ho visto alcuna differenza. Quindi sì, lascialo spento.
 
"Serena 18", file vecchissimo con upscale. La luminosità è un po' alta ma è un problema del file sorgente e correggerla non è che abbia aiutato molto. Onestamente non ho altro posto dove buttarlo.

https://gofile.io/d/TpxwpE
 
Per poter fare upscale e remaster dei video ti serve almeno una scheda video 1660 super, o meglio ancora una 2080 super

Scheda vecchia: 36-48 ore, scheda più nuova: 12-16 ore
 
Domanda (spero che rispondi prima che i mod la vedano, perché cancellano ogni commento che scrivo): se fai l'upscale da 480 a 720 e poi lo riscali da 720 a 1080, funzionerebbe/verrebbe bene?

E se puoi, spiega le diverse qualità video in input, il tipo e il tipo di artefatti? Mi sembra che non ci sia un tipo di artefatto davvero equilibrato, quindi sono curioso di sapere quale funzionerebbe meglio, diciamo per video di 5-7 anni fa....
 
Non l'ho mai fatto io, ma è una cosa che altre persone che hanno usato questo software dicono possa valere la pena. Faccio raramente da 480 a 1080p quindi non l'ho mai provato, vado direttamente da 480 a 1080 e non ho mai avuto troppi problemi con i risultati. Se fosse un file che è davvero importante mantenere in alta qualità, allora forse lo farei.

Il tipo di qualità in ingresso si giudica più a occhio. Puoi avere un video a risoluzione 480 che è comunque abbastanza nitido, o un 480 con una qualità di bit davvero bassa. I video più vecchi degli anni '90 o 2000 sono spesso molto compressi a causa delle basse velocità di internet dell'epoca. Questo può creare artefatti, cioè roba come blocchettoni o scarsa qualità del colore. Altri problemi di qualità possono essere l'esposizione o il contrasto, o la classica sfocatura del softcore anni '80.

Direi che se la qualità dell'immagine del file ti sembra buona, usa Artemis High quality. Se ci sono artefatti o è a basso bitrate, usa Artemis Low Quality. Non vale solo per i video 480p, perché ho visto anche dei video 720p di qualità veramente pessima.
 
Se vuoi un semplice upscaler IA per Android, io uso questa app, in particolare la versione 6.1. C'è un limite di 10 immagini prima di dover iniziare a guardare le pubblicità; ma se hai l'apk, puoi semplicemente disinstallarla e reinstallarla usando l'APK, e il limite si azzera. Non so se funziona nelle versioni successive alla 6.1, ma preferisco non provare.

https://m.apkpure.com/ai-enlarger-for-photo-anime/com.app.aiimglarger/versions
 
qualcuno può aiutare? Ho scaricato topaz video enhance da fonti diverse ma ogni volta posso migliorare solo con filigrana e mi chiede il login, qualche consiglio? grazie :MLADY:
 
sto sbagliando qualcosa? riesco a vedere l'anteprima dell'upscale ma non a elaborare, resta bloccato sul caricamento del modello IA, qualcuno può aiutarmi?
 
I modelli sono piuttosto grandi e, per quanto ne so, vengono messi solo nella cartella principale di installazione di Windows. Quindi se hai poco spazio su quel disco potrebbero non scaricarsi.

Potresti anche andare nelle preferenze e controllare se "disable model downloading" è attivo, perché potrebbe impedire il download dei modelli.
 
Ho un video che è piuttosto scuro e poco nitido, ho provato ogni programma possibile da premiere a topaz a (inserisci qui il nome di terze parti) senza molta fortuna. Saresti disposto a provare a schiarirlo e migliorarlo per me? Posso mostrarti il meglio che sono riuscito a ottenere finora insieme all'originale. Posso lasciarti qualche euro se viene bene, se ti va.
 
Indietro
Top