Ferramentas necessárias:
pingo: https://css-ig.net/pingo (windows, funciona com wine no linux)
Image Magick : https://imagemagick.org/ (cross-platform)
(opcional) Alacritty: https://github.com/alacritty/alacritty (cross-platform)
Temas a abordar:
– Formatos de imagem (com compressão)
– Formatos de cor
– Introdução às ferramentas
Formatos de imagem
– png (lossless)
– jpg (lossy)
– webp (lossy/lossless)
Para escolher o formato em que se irá guardar a imagem tem de se ter em conta o seu uso e o limite de armazenamento. Por exemplo, webp oferece compressões superiores a png e jpg, mas é menos compatível.
Formatos de cor:
– RGB32
– RGB24
– Gray RGB (Grayscale)
– YUV444
– YUV420
– Y (Grayscale)
RGB
RGB é o formato usado em compressão sem perdas (lossless). A diferença entre RGB24 e RGB32 é o suporte de transparência. A não ser que haja transparência, RGB24 deve ser usado, dado que será menor.
Gray RGB é apenas o formato RGB para imagens grayscale, convertam as vossas imagens para grayscale dado que diminui o tamnho final do arquivo (isto se não forem imagens coloridas, obviamente).
YUV
YUV, ou YCbCr, é um formato de cor que divide a imagem em três planos diferentes, um para a Luma (Y) [brilho] e dois para o Chroma (U,V/Cb,Cr) [cor]. YUV444 é equivalente a RGB24, mas tende a ser mais eficiente.
YUV faz subsampling do Chroma, como podem ver neste exemplo:
Basicamente, YUV420 reduz imensamente o tamanho do ficheiro devido ao chroma subsampling, que basicamente faz downscale dos planos do Chroma para metade. Se usarem o avisynth e fizerem ExtractU()
, irão notar que a imagem é 2x menor.
Tenham em atenção: embora que para um utilizador comum seja quase impossível de distinguir a diferença entre YUV420 e YUV444 (eu não noto), no final do dia existe perda de detalhe e por isso só é suportado por jpg e webp lossy. No fundo, YUV420 é uma boa maneira de comprimir imagens coloridas para o produto final quando existem limitações de tamanho.
Y é apenas o Luma, ou seja, é grayscale. Convertam sempre para Grayscale quando não houver cor, a diferença pode ser gigante. Um exemplo em que converter de YUV444 para RGB Grayscale resultou em grandes poupanças de armazenamento: https://nyaa.si/view/1406405 Nota:Y é apenas suportado por jpg e lossy webp.
Introdução às ferramentas
Image Magick
Este programa tem uma vasta seleção de ferramentas para vários cenários diferentes, mas vou apenas explicar como usar para converter imagens. É usado no terminal/consola e acima disponibilizei um link para descarregar o Alacritty, um terminal cross-platform bastante rápido (mas não tão rápido quanto o kitty).
Sintaxe = magick ferramenta -parâmetro opção -format png -path outputfolder/ inputfolder/*.jpg
ferramenta = o image magick tem imensas ferramentas, para conversão de espaço de cor, usa-se o mogrify
-parâmetro = o parâmetro da ferramenta, neste caso do mogrify
opção = opções dos parâmetros
–format
= o formato em que será guardado-path
= as pastas de saída e entrada, respetivamente, utilizando barras para separar as pastas, como no linux. Portanto, em vez de C:\Users\Pictures\
, terá de ser C:/Users/Pictures/
*.jpg
= vai determinar que todos os ficheiros com a extensão jpg
serão modificados pelo programa, troquem jpg
pela extensão desejada dos ficheiros de entrada
Se eu quiser converter todos os ficheiros .jpg de uma pasta para .png, convertendo-os para grayscale, faço:magick mogrify -graysacle Rec709Luma -format png -path ~/Manga/RAW/Sailor_Moon_Repack/vol_01/ ~/Bloated_Manga/Sailor_Moon/vol_01/.*jpg
Vocês vão querer converter todas as imagens no formato jpg para png antes de abrir no photoshop, visto que o photoshop tem uma má conversão de YUV para RGB. E vão certamente precisar de a imagem for webp, dado que o photoshop não o suporta.
Pingo
O pingo é o melhor otimizador de imagens que conheço e tal como o Image Magick, é usado no terminal/consola.
Sintaxe: pingo -s6 folder diretório
s = nível de otimização, varia entre 1 e 9 (9 é melhor, mas mais demorado)
folder = otimiza ficheiros dentro de subpastas, para não o fazer basta não adicinarem este comando
diretório = substituam com o diretório onde se localizam as imagens que querem otimizar(edited)
Assim chega ao fim do guia, qualquer dúvida podem colocar no servidor do discord, assim como alguma sugestão.