In breve
- Il banding dei gradienti è la comparsa di strisce o gradini visibili in quella che dovrebbe essere una sfumatura di colore liscia.
- Il banding si verifica perché la maggior parte delle immagini memorizza solo 256 livelli per canale di colore, quindi una sfumatura sottile su una grande area deve saltare tra un piccolo numero di tonalità.
- Il banding è peggiore nei gradienti scuri, nei gradienti sottili, nei gradienti grandi e nelle immagini o nei video molto compressi.
- Aggiungere una grana fine o un dither è il rimedio più affidabile, perché la variazione casuale nasconde i bordi tra i gradini.
- Esportare in alta qualità, evitare i formati a 256 colori come il GIF e ampliare la gamma di colori della sfumatura riducono ancora il banding.
In questa pagina
Il banding dei gradienti si ha quando un gradiente liscio mostra strisce o gradini visibili invece di una sfumatura continua. Succede perché le immagini digitali possono memorizzare solo un numero limitato di tonalità per colore, di solito 256 per canale, e quando un gradiente cambia lentamente su un’area ampia, ogni tonalità deve coprire una banda di pixel. Il tuo occhio è molto bravo a individuare i bordi, quindi nota quelle bande. Il rimedio di solito è aggiungere una grana fine, esportare con meno compressione o dare alla sfumatura più colore con cui lavorare.
Cosa causa il banding dei gradienti
La maggior parte delle immagini usa 8 bit per canale: 256 valori possibili ciascuno per rosso, verde e blu. Sembra molto, e per un gradiente marcato lo è. Il problema comincia quando i colori alle due estremità sono vicini.
Prendi un gradiente grigio da #202020 a #303030 su uno schermo largo 1920 pixel. Ogni canale si muove solo da 32 a 48, cioè 16 gradini. Quindi il gradiente contiene 16 tonalità distinte, ciascuna larga circa 120 pixel. Nessun software può renderlo più liscio, perché non ci sono tonalità intermedie da usare.
Dove il banding si vede di più
| Situazione | Perché fa banding |
|---|---|
| Gradienti scuri | Le persone vedono facilmente le piccole differenze tra toni scuri, e le sfumature scure spesso coprono solo pochi valori |
| Sfumature sottili e a basso contrasto | Pochi gradini tra i colori alle estremità, quindi ogni banda è larga |
| Aree grandi | Lo stesso numero di gradini distribuito su più pixel dà bande più larghe |
| JPEG e caricamenti sui social | La compressione semplifica le aree lisce in blocchi piatti |
| Video | I codec di streaming e il video a 8 bit appiattiscono le rampe dolci, soprattutto nelle scene scure |
| GIF e PNG-8 | Solo 256 colori in tutta l’immagine, per tutti i canali insieme |
Ecco perché gli sfondi con gradiente scuro e i gradienti aurora richiedono la massima cura. La loro bellezza dipende da lunghe rampe dolci tra toni scuri, ed è proprio la ricetta del banding.
Come correggere il banding dei gradienti
- 1
Aggiungi grana o dither
Uno strato fine di rumore casuale sparge i pixel tra tonalità vicine, così l’occhio non riesce più a trovare i bordi. È il rimedio più affidabile, e fa anche sembrare più ricca la superficie. Vedi i gradienti granulosi.
- 2
Dai alla sfumatura più gamma
Differenze più ampie di luminosità o tinta tra i colori alle estremità significano più gradini disponibili e bande più strette. Un gradiente che sposta anche un po’ la tinta usa più combinazioni di rosso, verde e blu di una rampa di sola luminosità.
- 3
Lavora a 16 bit dove puoi
Gli editor di immagini che supportano 16 bit per canale mantengono molti più livelli mentre lavori. Converti a 8 bit solo in esportazione, con il dithering attivo.
- 4
Esporta in alta qualità
Usa il PNG per la grafica piatta, oppure il JPEG a un’impostazione di alta qualità per le immagini fotografiche. Evita GIF e PNG-8, che mantengono solo 256 colori in totale.
- 5
Esporta alla dimensione finale
Ingrandire una piccola immagine con gradiente ne allarga le bande. Genera o esporta alla dimensione esatta, o più grande, invece di ingrandire.
Correggere il banding nei gradienti CSS
I browser generano i gradienti CSS dal vivo, quindi non c’è un’impostazione di esportazione da cambiare. Aiutano due cose. Primo, allarga la rampa o aggiungi uno spostamento di tinta. Secondo, sovrapponi al gradiente uno strato sottile di rumore, che funziona esattamente come la grana in un’immagine. La texture rumore in CSS mostra modi leggeri per fare quello strato senza grandi file immagine.
Fa banding
linear-gradient(#0b0b12, #14141f)su uno schermo intero- Una sola tinta da quasi nero a un nero appena meno nero
- Nessuna texture sulla superficie
Regge
linear-gradient(#0b0b12, #1e1b4b 60%, #312e81)con più gamma- Una rampa scura che vira anche dal grigio verso l’indaco
- Uno strato di rumore fine a bassa opacità sopra
Correggere il banding in video e caricamenti sui social
Le piattaforme social ricomprimono ciò che carichi, e i codec video sono progettati per scartare esattamente il tipo di dettaglio sottile che mantiene lisci i gradienti. La grana aiuta due volte: nasconde i gradini e dà all’encoder dettagli veri da conservare. Carica alla dimensione consigliata dalla piattaforma così non viene ridimensionato di nuovo, ed esporta il video con un’impostazione di qualità generosa. Se codifichi con ffmpeg, x264 ha un’impostazione tarata per conservare la grana.
# High-quality H.264 that keeps fine grain instead of smoothing it into bands
ffmpeg -i gradient-loop.mov \
-c:v libx264 -preset slow -crf 16 -tune grain \
-pix_fmt yuv420p -movflags +faststart \
gradient-loop.mp4-crf più basso significa qualità più alta. -tune grain dice all’encoder di conservare il rumore invece di eliminarlo.Gli sfondi video in loop sono particolarmente soggetti a questo problema, perché di solito sono scuri e lenti. I video in loop senza stacchi tratta il resto dell’esportazione.
Prevenire il banding fin dall’inizio
- Scegli gradienti con abbastanza cambio di luminosità o di tinta per la loro dimensione
- Pianifica la grana fin dall’inizio invece di aggiungerla come salvataggio
- Tieni i gradienti scuri un po’ schiariti invece di farli scivolare fino al nero puro
- Controlla su un telefono dopo il caricamento, non solo sul monitor di design
Ogni Mark di Gradiently viene generato dal vivo alla dimensione in cui progetti, con la sua grana come parte della ricetta, e i design fatti con un Mark riservato si esportano in PNG o JPEG fino a tre volte la dimensione del design, così un gradiente non deve mai essere ingrandito da una piccola immagine.
Le domande più frequenti
Cos’è il banding dei gradienti?
Il banding dei gradienti sono strisce o gradini visibili in un gradiente che dovrebbe sembrare liscio, causati da troppo poche tonalità disponibili tra i suoi colori.
Perché i gradienti scuri fanno più banding?
Le sfumature scure spesso coprono solo pochi valori per canale, e le persone notano facilmente le piccole differenze tra toni scuri, quindi ogni gradino è largo e visibile.
Aggiungere rumore risolve il banding?
Di solito sì. Un rumore fine o un dither sparge i pixel tra tonalità vicine, così l’occhio non vede i bordi tra i gradini.
Quale formato di file è il migliore per i gradienti?
PNG per la grafica e JPEG di alta qualità per le immagini fotografiche. Evita GIF e PNG-8, che mantengono solo 256 colori.
Perché il mio gradiente fa banding dopo il caricamento sui social?
Le piattaforme ricomprimono immagini e video. Aggiungi grana, carica alla dimensione consigliata ed esporta in alta qualità per dare all’encoder dettagli da conservare.
Scritto da Gradiently
Il team dietro Gradiently, uno strumento di design costruito attorno ai Mark: gradienti vivi che fanno sembrare tuo tutto ciò che progetti.
Vedi il nostro profilo


