Opções de codificação WebP
O formato de imagem WebP do ImageMagick aceita uma grande variedade de opções de codificação, detalhadas abaixo. As opções de codificação padrão são:
- quality = 75
- alpha-filtering = 1
- alpha-quality = 100
- autofilter = 0
- filter-sharpness = 0
- filter-strength = 60
- lossless = 0
- method = 4
- pass = 1
- preprocessing = 0
- segments = 4
- sns-strength = 50
- target-psnr = 0
- target-size = 0
Para fotos digitais, como retratos e fotos em ambientes internos, considere estes defines:
-define webp:sns-strength=80
-define webp:filter-sharpness=4
-define webp:filter-strength=35
-define webp:preprocessing=0
Para fotografias ao ar livre, com iluminação natural, considere estes defines:
-define webp:sns-strength=80
-define webp:filter-sharpness=3
-define webp:filter-strength=30
-define webp:preprocessing=2
Para desenhos à mão ou de linha, com detalhes de alto contraste, considere estes defines:
-define webp:sns-strength=25
-define webp:filter-sharpness=6
-define webp:filter-strength=10
Para imagens coloridas de tamanho pequeno, considere estes defines:
-define webp:sns-strength=0
-define webp:filter-strength=0
-define webp:preprocessing=0
Para imagens de texto, considere estes defines:
-define webp:sns-strength=0
-define webp:filter-strength=0
-define webp:preprocessing=0
-define webp:segments=2
O ImageMagick define pass=6 se target-psnr ou target-size forem especificados. No entanto, ele não define target-psnr=40 se pass for especificado sem target-psnr ou target-size.
Se quality for especificado, o ImageMagick define near_lossless com o mesmo valor. near_lossless não pode ser definido diretamente. Se quality for definido como 100 ou mais, o ImageMagick define lossless=1. Você pode substituir isso com: -quality 100 -define webp:lossless=false
Aqui está uma lista completa das opções de codificação WebP:
| Opção | Descrição |
|---|---|
| alpha-compression=value | codifica o plano alfa: 0 = nenhum, 1 = comprimido. |
| alpha-filtering=value | método de filtragem preditiva para o plano alfa: 0=nenhum, 1=rápido, 2=melhor. |
| alpha-quality=value | o valor de compressão para a compressão alfa entre 0 e 100. A compressão sem perdas do alfa é obtida com o valor 100, enquanto valores menores resultam em compressão com perdas. O padrão é 100. |
| exact=true, false | preserva os valores RGB na área transparente. É desativado por padrão para ajudar na compressibilidade. |
| auto-filter=true, false | quando ativado, o algoritmo gasta tempo adicional otimizando a intensidade da filtragem para alcançar uma qualidade bem equilibrada. |
| emulate-jpeg-size=true, false | retorna uma compressão semelhante à do JPEG, mas com menos degradação. |
| filter-sharpness=value | nitidez do filtro. |
| filter-strength=value | a intensidade do filtro de desblocagem, entre 0 (sem filtragem) e 100 (filtragem máxima). O valor 0 desativa qualquer filtragem. Valores maiores aumentam a intensidade do processo de filtragem aplicado após a decodificação da imagem. Quanto maior o valor, mais suave a imagem aparece. Os valores típicos costumam estar na faixa de 20 a 50. |
| filter-type=value | tipo de filtro: 0 = simples, 1 = forte |
| image-hint=default, photo, picture, graph | a dica sobre o tipo de imagem. |
| lossless=true, false | codifica a imagem sem qualquer perda. |
| low-memory=true, false | reduz o uso de memória. |
| method=value | o método de compressão a usar. Controla o equilíbrio entre a velocidade de codificação e o tamanho e a qualidade do arquivo comprimido. Os valores possíveis variam de 0 a 6. O valor padrão é 4. Quando valores maiores são utilizados, o codificador gasta mais tempo inspecionando possibilidades adicionais de codificação e decidindo sobre o ganho de qualidade. Valores menores podem resultar em tempo de processamento mais rápido à custa de um arquivo maior e menor qualidade de compressão. |
| preprocessing=value | escolha entre: 0=nenhum, 1=segment-smooth, 2=pontilhamento pseudoaleatório. |
| partitions=value | decodificação progressiva: escolha de 0 a 3. |
| partition-limit=value | escolha 0 para nenhuma degradação de qualidade e 100 para degradação máxima. |
| pass=value | número máximo de passagens para atingir o tamanho de compressão ou o PSNR alvo. |
| segments=value | escolha de 1 a 4, o número máximo de segmentos a usar. |
| show-compressed=true, false | |
| sns-strength=value | a amplitude do modelamento de ruído espacial. O modelamento de ruído espacial (SNS) refere-se a uma coleção geral de algoritmos embutidos usados para decidir qual área da imagem deve usar relativamente menos bits e para onde transferir melhor esses bits. A faixa possível vai de 0 (algoritmo desligado) a 100 (efeito máximo). O valor padrão é 80. |
| target-size=value | um tamanho alvo (em bytes) a ser tentado para a saída comprimida. O compressor faz várias passagens de codificação parcial para chegar o mais próximo possível desse alvo. |
| target-psnr=value | distorção mínima desejada. |
| thread-level=value | ativa a codificação multithread: 0 = desativado, 1 = ativado. |
| use-sharp-yuv=value | se necessário, usa a conversão RGB→YUV nítida (e lenta). |