Spaces:
Running on Zero
Running on Zero
|
Download README.md from tailot/universal-upscale: direct link, hf CLI and curl.
- Browser
- Download file 5.58 kB
-
https://huggingface.co/spaces/tailot/universal-upscale/resolve/main/README.md
- Command line
-
hf download hf://spaces/tailot/universal-upscale/README.md
-
curl -L -o README.md https://huggingface.co/spaces/tailot/universal-upscale/resolve/main/README.md
5.58 kB
| title: Universal Upscale | |
| emoji: 🔍 | |
| colorFrom: blue | |
| colorTo: indigo | |
| sdk: gradio | |
| sdk_version: 5.20.0 | |
| app_file: app.py | |
| pinned: false | |
| license: cc-by-nc-4.0 | |
| tags: | |
| - image-super-resolution | |
| - super-resolution | |
| - image-upscaling | |
| - arbitrary-scale-sr | |
| # Universal Upscale 🚀 | |
| Benvenuto su **Universal Upscale**, l'applicazione per l'upscaling e super-resolution di immagini a qualsiasi risoluzione o fattore di scala. | |
| Questo Space esegue il checkpoint **LIIF v4 GAN** (4.60 M parametri): un unico modello a scala | |
| arbitraria, esportato come `model.safetensors` + `model_scripted.pt` nel repo | |
| [tailot/universal-upscale](https://huggingface.co/tailot/universal-upscale). | |
| ## Quale modello scegliere / Which model to pick | |
| Il menu **Model** passa ai due pesi pubblicati dal progetto / The **Model** menu switches between | |
| the two weights this project publishes: | |
| | Model | Cosa è / What it is | Quando sceglierlo / Pick it when | | |
| |---|---|---| | |
| | 🔍 **Universal Upscale** (default) | LIIF v4 GAN, 4.60 M parametri, `model_scripted.pt` con tiled inference integrata | qualsiasi fattore 1x-9.2x o una dimensione target esatta, immagini grandi | | |
| | ⚡ **Universal Upscale Distilled** | student knowledge-distilled, 1.30 M parametri, TorchScript `model_distilled.pt` che gira sullo stesso device del modello di default | serve 9x in un solo passaggio: più leggero e veloce | | |
| Lo Student distillato ha una scala nativa **fissa**: sotto 9x l'output viene | |
| ricampionato in area-downsample, sopra viene ricampionato in bicubico. Quando lo selezioni dalla UI, | |
| però, i campi **Scale Factor** e **Target Long Side** vengono disabilitati e portati alla scala | |
| nativa 9x, così il submit usa sempre il modello con la sua resa massima. L'output | |
| resta soggetto al cap dello Space sul lato lungo, quindi input molto grandi possono comunque essere | |
| ricampionati. La riga di stato indica quale modello ha girato e se l'output è stato ricampionato. | |
| Model card: | |
| [tailot/universal-upscale-distilled](https://huggingface.co/tailot/universal-upscale-distilled). | |
| ## Come usare lo Space / How to use this Space | |
| 1. **Carica un'immagine / Upload an image**: trascina o carica un'immagine dal tuo dispositivo. | |
| 2. **Scegli il modello / Pick the model**: lascia **Universal Upscale** (default) oppure passa a | |
| **Universal Upscale Distilled** (nativo 9x, usa la stessa GPU del modello di default). | |
| 3. **Imposta la scala / Set the scale**: | |
| - **Scale Factor**: scegli un fattore di scala da **1x fino a 9.2x** (passo 0.2x, es. 2x, 3.6x, 4x, 9.2x). | |
| - **Target Long Side (px)**: in alternativa, specifica la dimensione in pixel del lato più lungo desiderato (es. 2048, 3000, 4096). | |
| - Se selezioni **Universal Upscale Distilled**, questi campi si disabilitano automaticamente e | |
| il modello usa la scala nativa 9x. | |
| 4. **Genera / Upscale**: clicca su **Upscale Image** per ottenere l'immagine ad alta risoluzione. | |
| > **Limite di scala testato / Tested scale limit**: 9.2x è il valore massimo del cursore | |
| > ed il fattore di scala più alto raccomandato per questi pesi (la tabella completa del benchmark, | |
| > fino a 10x, si trova nel model card del modello). Richieste oltre questo valore vengono riportate | |
| > a 9.2x dal cursore; usando "Target Long Side" puoi comunque arrivare a 4096 px sul lato | |
| > lungo. | |
| ## Caratteristiche principali / Features | |
| - **Scale Arbitrarie (LIIF)**: Ingrandimento continuo a qualsiasi fattore o dimensione target senza vincoli rigidi (es. solo 2x/4x). | |
| - **Tiled Inference**: Elaborazione a tasselli sovrapposti per gestire immagini ad alta risoluzione senza esaurire la memoria (OOM). | |
| - **ZeroGPU Acceleration**: Supporto all'accelerazione hardware dinamica su Hugging Face Spaces. | |
| ## 📓 Colab per misure da cartellone / Billboard-size outputs | |
| **Notebook su Google Drive:** <https://drive.google.com/file/d/14B1cu8vW4MFPqzPo-C7Nb4JfxZqFtcEI/view?usp=sharing> → aprilo in Colab e scegli *Runtime → Cambia tipo di runtime → GPU (T4)*. | |
| Il notebook usa il **modello base** pubblicato qui (`model_scripted.pt`, scaricato con `hf_hub_download`): **nessun retraining, nessun fine-tuning, nessun peso aggiuntivo**. Quello che aggiunge è il contorno: l'immagine viene divisa in una griglia **N×N di settori**, ogni settore viene ingrandito dal modello con un margine di contesto preso dai settori vicini (così le cuciture non si vedono), i settori vengono ricuciti in un'unica tela e, se la misura richiesta è ancora fuori portata, l'intero passaggio viene ripetuto sulla tela fino a raggiungere esattamente la misura voluta. | |
| **Grazie a questa implementazione il notebook può ingrandire un'immagine di qualunque risoluzione** (misure da cartellone, non solo 4K): il limite non è il modello, ma la macchina su cui gira. | |
| | Risorsa / Resource | Cosa limita | | |
| |---|---| | |
| | **GPU VRAM** | la dimensione di un singolo settore (default 4096 px per lato in uscita) | | |
| | **GPU compute power** | il tempo totale: ogni settore è una forward pass e ogni passaggio extra riesegue l'intera griglia | | |
| | **System RAM** | la tela ricucita tenuta in memoria (default 300 megapixel ≈ 3 byte/pixel, Colab free ≈ 12 GB) | | |
| | **SSD storage space** | l'output salvato più i file opzionali dei singoli settori; il disco di Colab è temporaneo, scarica prima di chiudere il runtime | | |
| > ⚠️ Oltre **9.2x** i dettagli sono in gran parte **inventati**: ogni passaggio reinterpreta il risultato del precedente, quindi l'immagine diventa più grande ma non più fedele. Controlla le anteprime intermedie. | |