cwebp

Nome

cwebp -- Comprimi un file immagine in un file WebP

Trama

cwebp [options] input_file -o output_file.webp

Descrizione

cwebp comprime un'immagine utilizzando il formato WebP. Il formato di input può essere PNG, JPEG, TIFF, WebP o campioni Y'CbCr non elaborati. Nota: i file PNG e WebP animati non sono supportati.

Opzioni

Le opzioni di base sono:

-o string
Specifica il nome del file WebP di output. Se omesso, cwebp eseguirà compressione, ma solo statistiche. Utilizzare "-" poiché il nome dell'output indirizzerà l'output a "stdout".
-- string
Specifica in modo esplicito il file di input. Questa opzione è utile se l'input inizia con "-" ad esempio. Questa opzione deve essere visualizzata come last. Eventuali altre opzioni successive verranno ignorate.
-h, -help
Un breve riepilogo dell'utilizzo.
-H, -longhelp
Un riepilogo di tutte le opzioni possibili.
-version
Stampa il numero della versione (come main.minor.revision) ed esci.
-lossless
Codifica l'immagine senza alcuna perdita. Per le immagini con un'area completamente trasparente, i valori dei pixel invisibili (R/G/B o Y/U/V) verranno conservati solo se Viene utilizzata l'opzione -exact.
-near_lossless int
Specifica il livello di pre-elaborazione delle immagini quasi senza perdita di dati. Questa opzione regola pixel per facilitare la comprimibilità, ma ha un impatto minimo sull'elemento qualità. Attiva automaticamente la modalità di compressione senza perdita di dati. L'intervallo va da 0 (massima pre-elaborazione) a 100 (senza pre-elaborazione, predefinita). Il valore tipico è di circa 60. Tieni presente che in perdita con -q 100 a volte può produrre risultati migliori.
-q float

Specifica il fattore di compressione per i canali RGB tra 0 e 100. La Il valore predefinito è 75.

In caso di compressione con perdita di dati (impostazione predefinita), un piccolo fattore produce una riduzione con una qualità inferiore. La qualità migliore si ottiene utilizzando il valore 100.

In caso di compressione senza perdita di dati (specificata dall'opzione -lossless), viene eseguita una fattore piccolo consente una maggiore velocità di compressione, ma produce un file più grande. La compressione massima si ottiene utilizzando il valore 100.

-z int

Attiva la modalità di compressione lossless con il livello specificato compreso tra 0 e 9, dove 0 è il livello più veloce, 9 il più lento. Modalità veloce produce file di dimensioni maggiori di quelli più lenti. Un buon valore predefinito è -z 6. Questa opzione è in realtà una scorciatoia per alcune impostazioni predefinite relative alla qualità e metodo. Se in un secondo momento vengono utilizzate le opzioni -q o -m, invalidano l'effetto di questa opzione.

-alpha_q int

Specifica il fattore di compressione per la compressione alfa tra 0 e 100. La compressione senza perdita di dati alpha si ottiene utilizzando il valore 100, mentre i valori più bassi generano una compressione con perdita. L'impostazione predefinita è 100.

-preset string

Specifica un insieme di parametri predefiniti adatti a un particolare tipo di materiale di origine. I valori possibili sono: default, photo, picture, drawing, icon e text.

Poiché -preset sovrascrive gli altri parametri, (tranne -q) uno), preferibilmente questa opzione dovrebbe apparire per prima nell'ordine argomenti.

-m int

Specifica il metodo di compressione da utilizzare. Questo parametro controlla il livello tra la velocità di codifica e le dimensioni e la qualità del file compresso. I valori possibili sono compresi tra 0 e 6. Il valore predefinito è 4. Quando è più alta vengono utilizzati, l'encoder dedicherà più tempo a ispezionare possibilità di codifica e decidere il guadagno di qualità. Un valore più basso può si traduce in tempi di elaborazione più rapidi a scapito di dimensioni file più grandi e una qualità di compressione inferiore.

-crop x_position y_position width height

Ritaglia l'origine in modo da ottenere un rettangolo con l'angolo in alto a sinistra in corrispondenza delle coordinate (x_position, y_position) e dimensioni width x height. Questo ritaglio deve essere contenuta completamente all'interno del rettangolo di origine. Nota: il ritaglio viene applicata prima di qualsiasi scala.

-resize width height

Ridimensiona l'origine a un rettangolo di dimensioni width x height. Se (ma non entrambi) dei parametri di larghezza o altezza è 0, il valore sarà calcolato mantenendo le proporzioni. Nota: la scalabilità viene applicata dopo ritagliato.

-mt

Se possibile, utilizza il multi-threading per la codifica.

-low_memory

Riduci l'utilizzo della memoria della codifica con perdita di dati consentendo un risparmio di quattro volte dimensioni (in genere). In questo modo la codifica è più lenta e l'output leggermente diverse per dimensioni e distorsione. Questo flag è valido solo per metodi 3 e successivi ed è disattivata per impostazione predefinita. Tieni presente che se lasci questa segnalazione disattivata avrà alcuni effetti collaterali sul bitstream: forza alcuni flussi di bit come il numero di partizioni (forzato a 1). Tieni presente che il report dettagliato sulle dimensioni dei bitstream viene stampato da cwebp quando si utilizza .

Opzioni di perdita

Queste opzioni sono efficaci solo se si esegue la codifica con perdita di dati (impostazione predefinita, o senza alpha).

-size int
Specifica una dimensione target (in byte) per cercare di raggiungere i file compressi come output. Il compressore effettua diversi passaggi della codifica parziale per avvicinarci il più possibile a questo obiettivo. Se -size e Vengono utilizzati -psnr, prevarrà il valore -size.
-psnr float
Specifica un PSNR (in dB) target da raggiungere per l'output compresso. Il compressore effettua diversi passaggi della codifica parziale per ottenere il più vicino possibile a questo target. Se vengono utilizzati sia -size sia -psnr, Prevarrà il valore -size.
-pass int
Imposta un numero massimo di tessere da usare durante la dicotomia utilizzata dalle opzioni -size o -psnr. Il valore massimo è 10, il valore predefinito è 1. Se le opzioni Sono stati utilizzati -size o -psnr, ma -pass non è stato specificato, un valore predefinito di "6" delle tessere. Se viene specificato -pass, ma né -size-psnr sono, verrà utilizzato un PSNR target di 40 dB.
-af
Attiva il filtro automatico. Questo algoritmo dedica più tempo all'ottimizzazione la forza di filtro per raggiungere una qualità ben bilanciata.
-jpeg_like
Modifica la mappatura dei parametri interni in modo che corrisponda meglio alla dimensione prevista del Compressione JPEG. Questo flag generalmente produce un file di output di dimensioni simili all'equivalente JPEG (per la stessa impostazione -q), ma con meno distorsione visiva.

Opzioni avanzate:

-f int
Specifica l'intensità del filtro di blocco tra 0 (nessun filtro) e 100 (filtro massimo). Il valore 0 disattiva qualsiasi filtro. Un valore più alto aumenterà l'efficacia del processo di filtro applicato dopo aver decodificato l'immagine. Maggiore è il valore, più fluida sarà l'immagine . I valori tipici sono generalmente compresi tra 20 e 50.
-sharpness int
Specifica la nitidezza del filtro (se utilizzato). L'intervallo è 0 (più nitido) a 7 (meno diesis). Il valore predefinito è 0.
-strong
Usa un filtro efficace (se il filtro viene utilizzato grazie alla -f ). Il filtro avanzato è attivo per impostazione predefinita.
-nostrong
Disattivare i filtri efficaci (se il filtro viene utilizzato grazie al -f ) e usa un filtro semplice.
-sharp_yuv
Se necessario, utilizza una conversione RGB->YUV più precisa e nitida. Tieni presente che è più lento rispetto al metodo "rapido" predefinito Conversione RGB->YUV.
-sns int
Specifica l'ampiezza del formato del rumore spaziale. Forma del rumore spaziale (o sns in breve) si riferisce a una raccolta generale di algoritmi integrati utilizzata per decidere quale area dell'immagine deve utilizzare un numero relativamente minore di bit, e in quali altri luoghi trasferire meglio questi bit. L'intervallo possibile va da Da 0 (algoritmo disattivato) a 100 (effetto massimo). Il valore predefinito è 50.
-segments int
Modifica il numero di partizioni da utilizzare durante la segmentazione del traffico dell'algoritmo. I segmenti devono essere compresi nell'intervallo 1-4. Il valore predefinito è 4. Questa opzione non ha effetto per i metodi 3 e successivi, a meno che -low_memory non sia in uso.
-partition_limit int
Degrada la qualità limitando il numero di bit utilizzati da alcuni macroblocchi. L'intervallo è da 0 (nessun degrado, il valore predefinito) a 100 (degradazione completa). I valori utili sono in genere intorno a 30-70 per immagini di dimensioni moderatamente grandi. Nella il formato VP8, la cosiddetta partizione di controllo ha un limite di 512k ed è utilizzata per archiviare le seguenti informazioni: se il macroblocco è saltato, a quale segmento appartiene, se codificato come intra 4x4 o modalità 16x16 e infine le modalità di previsione da utilizzare per ciascuna blocchi secondari. Per un'immagine molto grande, 512k lascia spazio a pochi bit al Macroblocco 16 x 16. Il minimo assoluto è di 4 bit per macroblocco. Salta, di testo e le informazioni di modalità possono utilizzare quasi tutti questi 4 bit (sebbene questo caso è improbabile), il che costituisce un problema per le immagini molto grandi. La Il fattore partition_limit controlla la frequenza con cui la modalità più costosa (4x4 intra). Ciò è utile nel caso in cui venga raggiunto il limite di 512.000 e viene visualizzato il seguente messaggio: Codice di errore: 6 (PARTITION0_OVERFLOW: la partizione 0 è troppo grande per adattarsi a 512k). Se utilizzi -partition_limit non è sufficiente per soddisfare il vincolo di 512.000, dovrebbe essere usare meno segmenti al fine di risparmiare più bit di intestazione per macroblocco. Consulta l'opzione -segments. Tieni presente che le opzioni -m e -q influiscono anche sul le decisioni del codificatore e la capacità di raggiungere questo limite.

Opzioni di logging

Queste opzioni controllano il livello di output:

-v
Stampa di informazioni aggiuntive (in particolare il tempo di codifica).
-print_psnr
Calcola e segnala il valore PSNR (rapporto picco-segnale-rumore).
-print_ssim
Calcola e segnala l'SIM media (metrica di somiglianza strutturale), vedi https://en.wikipedia.org/wiki/SSIM per ulteriori dettagli).
-print_lsim
Calcola e segnala la metrica di somiglianza locale (somma degli errori più bassi tra i pixel vicini).
-progress
Segnala l'avanzamento della codifica in percentuale.
-quiet
Non stampare nulla.
-short
Stampa solo informazioni brevi (dimensioni del file di output e PSNR) per il test scopi.
-map int
Genera una mappa ASCII aggiuntiva delle informazioni di codifica. Possibili valori di mappa l'intervallo è compreso tra 1 e 6. Ha il solo scopo di aiutare a eseguire il debug.

Opzioni aggiuntive

Le opzioni più avanzate sono:

-s width height
Specifica che il file di input è effettivamente composto da campioni Y'CbCr non elaborati seguendo la raccomandazione ITU-R BT.601, in formato lineare 4:2:0. La le dimensioni del piano luminario sono width x height.
-pre int
Specifica alcune fasi di pre-elaborazione. L'utilizzo del valore 2 attiverà dithering pseudo-casuale dipendente dalla qualità durante la conversione RGBA->YUVA (solo compressione con perdita di dati).
-alpha_filter string
Specifica il metodo di filtro predittivo per il piano alfa. Uno di none, fast o best, in ordine crescente di complessità e lentezza. Il valore predefinito è fast. Internamente, il filtro alpha viene eseguito utilizzando quattro previsioni possibili (nessuna, orizzontale, verticale, gradiente). best prova ogni modalità una volta alla volta e scegli quella che offre la minore dimensioni. La modalità fast cercherà solo di formulare un'ipotesi a priori senza testare tutte le modalità.
-alpha_method int
Specifica l'algoritmo utilizzato per la compressione alfa: 0 o 1. Algoritmo 0 indica nessuna compressione, 1 utilizza il formato senza perdita di dati WebP per la compressione. Il valore predefinito è 1.
-exact
Conserva i valori RGB in un'area trasparente. L'impostazione predefinita è disattivata, per comprimibilità.
-blend_alpha int
Questa opzione unisce il canale alfa (se presente) alla fonte utilizzando il colore di sfondo specificato in esadecimale come 0xrrggbb. Alfa del canale viene successivamente reimpostato sul valore opaco 255.
-noalpha
Se utilizzi questa opzione, il canale alfa verrà eliminato.
-hint string
Specifica il suggerimento per il tipo di immagine di input. I valori possibili sono: photo, picture o graph.
-metadata string

Un elenco separato da virgole di metadati da copiare dall'input all'output se presenti. Valori validi: all, none, exif, icc, xmp. L'impostazione predefinita è none.

Tieni presente che ogni formato di input potrebbe non supportare tutte le combinazioni.

-noasm

Disattiva tutte le ottimizzazioni degli assiemi.

Bug

Esempi

cwebp -q 50 -lossless picture.png -o picture_lossless.webp
cwebp -q 70 picture_with_alpha.png -o picture_with_alpha.webp
cwebp -sns 70 -f 50 -size 60000 picture.png -o picture.webp
cwebp -o picture.webp -- ---picture.png

Autori

cwebp fa parte di libwebp ed è stato scritto dal team WebP. La struttura di origine più recente è disponibile all'indirizzo https://chromium.googlesource.com/webm/libwebp/

Questa pagina manuale è stata scritta per il progetto Debian (e può essere utilizzata da altri).